Operating System
1 Introduction to Operating System
Operating System: Special layer of software that provides application software access to hardware resources.
In short, OS abstracts these hardware details from the applications.
Functions of OS
Illusionist: Provide clean, easy-to-use abstractions of physical resources.
OS translates from hardware interface to application interface, and provides each running program with its own process.
Referee: Manage protection, isolation, and sharing of resources.
OS isolates processes from each other, isolates itself from other processes, even though they are actually running on the same hardware.
Glue: Common services.
OS provides common services in the form of I/O.
2 Process
Process: An instance of a program in execution.
Two key abstractions with the concept of process:
Private Address Space
Logical Control Flow
2.1 Logical Control Flow
From startup to shutdown, each CPU core simply reads and executesa sequence of machine instruction, one at a time, this sequence is called logical control flow.

Processes provide each program with the illusion that it has exclusive use of the processor. In the example above, the execution of the three logical flows is interleaved.