Podcast
Questions and Answers
Which of the following is NOT a primary function of an operating system?
Which of the following is NOT a primary function of an operating system?
- File compression (correct)
- Memory management
- Resource management
- Input/Output management
Segmentation divides memory into equal-sized blocks, while paging divides memory into logical divisions.
Segmentation divides memory into equal-sized blocks, while paging divides memory into logical divisions.
False (B)
What is the term for the condition where a computer 'freezes' due to excessive page swapping between the hard disk and main memory?
What is the term for the condition where a computer 'freezes' due to excessive page swapping between the hard disk and main memory?
disk thrashing
An interrupt is a signal to the processor that a ______ needs attention.
An interrupt is a signal to the processor that a ______ needs attention.
Match the scheduling algorithm with its method:
Match the scheduling algorithm with its method:
Which scheduling algorithm may lead to processor starvation?
Which scheduling algorithm may lead to processor starvation?
A real-time operating system (RTOS) is suitable for applications where tasks must be completed within a guaranteed timeframe.
A real-time operating system (RTOS) is suitable for applications where tasks must be completed within a guaranteed timeframe.
What is the purpose of the POST (Power-On Self Test) performed by the BIOS?
What is the purpose of the POST (Power-On Self Test) performed by the BIOS?
Device drivers facilitate communication between the operating system and the ______.
Device drivers facilitate communication between the operating system and the ______.
What is the primary benefit of using virtual machines for software development?
What is the primary benefit of using virtual machines for software development?
Which of the following is a characteristic of embedded operating systems?
Which of the following is a characteristic of embedded operating systems?
Multi-tasking operating systems execute multiple tasks simultaneously using multiple processors.
Multi-tasking operating systems execute multiple tasks simultaneously using multiple processors.
What is the role of the Interrupt Service Routine (ISR)?
What is the role of the Interrupt Service Routine (ISR)?
The ______ is the first program that runs when a computer is switched on.
The ______ is the first program that runs when a computer is switched on.
Virtual memory uses which part of the computer to simulate RAM?
Virtual memory uses which part of the computer to simulate RAM?
What type of code is run within a virtual machine?
What type of code is run within a virtual machine?
Device drivers are universal across all operating systems and hardware architectures.
Device drivers are universal across all operating systems and hardware architectures.
In the context of scheduling algorithms, what is a 'time slice'?
In the context of scheduling algorithms, what is a 'time slice'?
The program that loads the operating system from the hard disk into main memory is called the ______.
The program that loads the operating system from the hard disk into main memory is called the ______.
Programs that are not currently in use are temporarily moved into virtual memory through which process?
Programs that are not currently in use are temporarily moved into virtual memory through which process?
Flashcards
Operating System
Operating System
A collection of programs that work together to provide an interface between the user and computer.
Paging
Paging
Splitting memory into equal sized sections, swapping pages between main memory and hard disk
Segmentation
Segmentation
Splitting memory into logical divisions of variable size based on the program structure.
Virtual Memory
Virtual Memory
Signup and view all the flashcards
Disk Thrashing
Disk Thrashing
Signup and view all the flashcards
Interrupts
Interrupts
Signup and view all the flashcards
Interrupt Service Routine
Interrupt Service Routine
Signup and view all the flashcards
Round Robin
Round Robin
Signup and view all the flashcards
First Come First Served
First Come First Served
Signup and view all the flashcards
Multilevel Feedback Queues
Multilevel Feedback Queues
Signup and view all the flashcards
Shortest Job First
Shortest Job First
Signup and view all the flashcards
Processor starvation
Processor starvation
Signup and view all the flashcards
Distributed OS
Distributed OS
Signup and view all the flashcards
Embedded OS
Embedded OS
Signup and view all the flashcards
Multi-tasking.
Multi-tasking.
Signup and view all the flashcards
Multi-user
Multi-user
Signup and view all the flashcards
Real Time OS
Real Time OS
Signup and view all the flashcards
BIOS
BIOS
Signup and view all the flashcards
Device Drivers
Device Drivers
Signup and view all the flashcards
Virtual Machines
Virtual Machines
Signup and view all the flashcards
Study Notes
- Computer Science A Level: 1.2.1 Systems Software
Operating Systems
- It is a collection of programs providing an interface between the user and the computer
- Enables users to communicate and perform low-level tasks, managing computer memory and resources
- Commonly found in laptops, mobile phones, and game consoles.
- Examples are Windows, macOS, iOS, and Android
Essential Operating System Features
- Memory management (paging, segmentation, virtual memory).
- Resource management (scheduling).
- File management (moving, editing, deleting files and folders).
- Input/Output management (device drivers).
- Interrupt management.
- Utility software (disk defragmenter, backup, formatting etc.).
- Security (firewall).
- User interface.
Memory Management
- Shares memory fairly between programs because main memory is not big enough to store all of them
- Enables efficient sharing through paging, segmentation and virtual memory
Paging
- Memory splits into equal-sized sections called pages
- Programs consist of equally-sized pages, swapped between main memory and the hard disk as required
Segmentation
- Memory splits into logical divisions (segments) of varied sizes
- Segments reflect program structure and flow, allocating code blocks like conditionals or loops
Virtual Memory
- Uses hard drive section as RAM when main memory is full
- Temporarily moves unused program sections to virtual memory via paging, freeing RAM for active programs
- Key issue is disk thrashing
Disk Thrashing
- Computer 'freezes' due to frequent page swapping between hard disk and main memory
- More time is taken to transfer pages than to run the program, worsening as virtual memory fills
Interrupts
- Signals from software or hardware alerting the processor to a process needing attention
- Different interrupts have different priorities considered by the OS when allocating processor time
- Stored by priority in a priority queue within the interrupt register
- Operating system utilises device drivers to ensure interrupts are serviced fairly
- Examples include printer signalling job completion or peripheral power failure
Interrupt Service Routine
- Processor checks the interrupt register's content at the end of each Fetch-Decode-Execute cycle
- For higher priority interrupts, current contents of CPU registers are moved to a stack
- Processor loads the matching ISR into RAM and the flag is set to show the ISR has begun
Interrupt Handling Completion
- After servicing, the flag is reset
- Interrupt queue checks for further higher-priority interrupts
- Processes are repeated until all priority interrupts are serviced or if no higher priority interrupts remain.
- Contents are transferred back into the registers in memory, and the Fetch-Decode-Execute cycle continues
Scheduling
- Guarantees all jobs receive fair processing time
Pre-emptive Scheduling
- Jobs actively start and stop by the operating system like multi-level feedback queues, shortest remaining time, round robin
Non Pre-emptive Scheduling
- Once started, jobs complete without being stopped like first come first served, shortest job first
Scheduling Algorithms
- The scheduling depends on the task.
Round Robin
- Each job receives a time slice to execute
- Once each job uses the first slice, the system grants an equal slice
- It continues until the job completes and exits the queue
- Longer jobs take longer to complete, even though the job is seen to
- The algorithm doesn't consider job priority
First Come First Served
- Jobs process in chronological order
- Although it is implemented straightforward, FCFS doesn't allcoate processor time based on priority
Multi-level Feedback Queues
- Uses multiple queues which orders based different priorities
- It is difficult to implement due to deciding which job to prioritse based on prioritie
Shortest Job First
- The queue stores job to be processed according to the time
- Most suited to batch systems, where shorter jobs prefer to minimise time
- The process has to calculate how long each job takes
- It risks processeor starvation if short jobs go to the queue
Shortest Remaining Time
- The queue stores the time is ordered to the time left for completion
- It also ricks process starvation if short job is added to the queue
Distributed Operating System
- Runs across multiple devices
- It spreads the load across multiple computer process when runninng the operating systems
Embedded Operating System
- Catered towards s specific device to the operating system
- Low funcionality and hard to update
- Limited functionality
Multi-tasking Operating System
- Uses time slicing to switch between in programs and applications in memory
Multi-user Operating System
- Uses algorithm to allocate process
Real Time Operating System
- Used critical time
- Designed to perfrom a task within a time frame
BIOS
- First program that runs when the switch is turned on
- Register points to start-up of the computer
- Checks CPU clock, memory, hardware
Bootstrap
- Loads the operating system from the hard disk into main memory
Device Drivers
- Allows the operating system to interact with the hardware
- Communicates these requests to the operating system and the request is displayed to the screen
Device Drivers (Architecture)
- Because of the archicture, drivers must be used to different types such as game consoles
VM
- It provides an environment with an translator for code
Intemediate Code
- The code is halfway betweem maching ecode
- Is independent, can be used accross operating system
Virtual Machines
- Tests program on operating system
- It saves time, money
- Runs slower compared to running low-level code
Other uses of VM
- Protection from malware: malware run in the VM
- Running incompatible software: run in VM
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.