3OS Architecture
3OS Architecture
Views of OS
Three views of an operating system
• Application View: what services does it provide?
• System View: what problems does it solve?
• Implementation View: how is it built
Application View of an Operating System
The OS provides an execution environment for running programs.
The execution environment
• provides a program with the processor time and memory space that it needs
to run.
• provides interfaces through which a program can use networks, storage, I/O
devices, and other system hardware components.
• Interfaces provide a simplified, abstract view of hardware to application programs.
• isolates running programs from one another and prevents undesirable
interactions among them.
System View
The OS manages the hardware resources of a computer system.
Resources include processors, memory, disks and other storage
devices, network interfaces, I/O devices such as keyboard, mouse and
monitor, and so on.
The operating system allocates resources among running programs.
It controls the sharing of resources among programs.
The OS itself also uses resources, which it must share with application
programs.
Implementation View
• The OS is a concurrent, real-time program.
• Concurrency arises naturally in an OS when it supports concurrent
applications, and because it must interact directly with the hardware.
• Hardware interactions also impose timing constraints
OS Implementation
How An Operating System Is Put Together
A SIMPLE STRUCTURE:
Example of MS-DOS.
Application Programming
MS-DOS Drivers
System Services
Windows Security
VM Process
MGR Reference
Manager Manager
& GDI Monitor
IO
Graphics Manager
Device Windows 2000 Kernel
Drivers
In a Virtual Machine - each process "seems" to execute on its own processor with its own
memory, devices, etc.
The resources of the physical machine are shared. Virtual devices are sliced out of the
physical ones. Virtual disks are subsets of physical ones.
Useful for running different OS simultaneously on the same machine.
Protection is excellent, but no sharing possible.
Virtual privileged instructions are trapped.
Virtual User
Physical User
Virtual Machine
DOS APPLICATION
Physical User
BIOS DRIVERS