Operating Systems
Overview
An operating system is a system software that manages computer hardware and software resources, and provides common services for computer programs. According to Dusseau, an operating system is responsible for:
- Virtualization. The OS takes a physical resource and transforms it into a more general, powerful, and easy to use virtual form of itself.
- Concurrency. The OS provides the necessary primitives for correctly executing many concurrently executing threads.
- Persistence. The OS stores data in a durable way by managing various I/O devices. It also uses durable memory to share information between different processes.
The kernel of an operating system refers to the memory-resident part of the OS.
Policies
A policy is an algorithm for making some kind of decision within the OS. For example, a scheduling policy is used to decide which processes should run when the current one is suspended.
A mechanism is a low-level method or protocol that implements some needed functionality.