- User Interface
- Memory management
- File management
- Security
- Interrupt handling
- Processor scheduling
Hides the complexity of the hardware from the user by providing a user interface
Avavilable memory which is physically divided into fixed size chunks
- It allows programs to share/allocate memory to each other
- It allows programs larger than RAM to run
- Organises RAM use by converting logical addresses to physical addresses
- Memory is physically divided into fixed size chunks
- Each page has an address
- Used for virtual memory
Where memory is logically divided into segments which acn be different lengths
- They're logical divisions
- They're complete sections of programs
- They're different sizes
- Both allow programs to run even with insufficient memory
- Both are stored on a disk
- Both are transferred to memory when needed
Extra storage for when RAM is too full
Where pages are repeatedly swapped in & out of virtual memory causing the computer to slow down
They're temporarily moved into virtual memory by paging
A signal from an app/device to a processor indicating it needs attention
- A printer running out of paper
- An error occurring in a program
- Power Failiure
At the end
- They're processed in the order of priority
- They can interrupt themselves if the new interrupt is of a higher priority
Coordinates the processing of a single job across multiple computers
In an online shopping site, where one server handles your basket whilst another handles querying of items
An OS that provides limited specialist functionality
- Washing machine
- Traffic lights
- Air Fryer
- Tumble dryer
An OS designed to perform a task within a guaranteed time range
- Hospital monitoring machines
- Burglar Alarms
- Smoke detectors
- Aircraft autopilot systems
In safety critical environments
- It boots up the computer
- Responsible for loading the OS when the computer switches on
- Stored in ROM
Checks if the hardware it needs is connected and working using a power on self test(POST)
The program responsible for starting up the OS
Stored in flash memory so they can be changed and retained when switched off
A software that enables communication between the OS & a hardware device
A program that provides an interface for the OS to interact with the user
To allow the OS to control hardware devices
Where an entire OS runs inside another OS
They create isolated test environments that leaves the host OS unaffected. This allows a developer to see how their software affects system performance
The processor checks for interrupts at the end of the FDE cycle. If there's an interrupt of a higher priority than the process being executed, the current contents in the special purpose registers are pushed into a stack. The interrupt is then executed. Once the interrupt is completed, the processor restores the contents of the registers.
It translates the OS's instructions into a series of instructions that the hardware will understand