Unit content
Operating systems
An operating system coordinates hardware resources and provides common abstractions that application programs can use instead of controlling devices directly.
Resource management
Several programs may want processor time, memory and devices at once. The operating system schedules CPU execution, manages memory and coordinates access to hardware.
Kernel and user space
The privileged core of the operating system is the kernel. Application programs normally run with fewer privileges in user space and request protected operations through system-call interfaces.
This separation prevents an ordinary program from directly controlling all hardware or accessing arbitrary memory.
Abstractions
Operating systems present hardware through reusable concepts such as:
- processes for running programs;
- files and directories for persistent data;
- virtual memory for process address spaces;
- device interfaces for input and output.
Multiprogramming
The CPU can switch among runnable processes quickly, allowing many programs to make progress even when fewer processor cores are available than active programs.
Persistent role
Applications come and go, but the operating system remains responsible for maintaining the execution environment and enforcing boundaries between programs.
The OS is therefore both a resource manager and an abstraction layer between application software and physical hardware.