Professional Documents
Culture Documents
User programs
Operating System
Hardware
* (1) API: Application Program interface like web browser, text editor etc.,
(2) System Call: Process request for a specific service
°efinition:
v
è Programming:
è Programming language:
è Tasks:
è OS:
Computer designer is:
è builder and
è programmer and
è operator and
è ³sys admin´
History of Operating Systems
User °ata
System
Program
OS
± OS: á
OSes °eveloped:
è Technology: ð ?à
è Programming: m=
è Computer:
Cheap PCs
Types of Operating Systems
è Parallel computing
Application Programming
System Programming
MS-°OS °rivers
Advantage:
Better application performance
°isadvantage:
All layers can touch the hardware.
Modifying a procedure can introduce bugs in
unrelated parts of the system
Layered Structure:
Application Application
Program Program
User mode
Kernel mode
System Services
File System
Processor Scheduling
Hardware
Components are organized as modules
Each module provides a set of functions which can be called
by other module
Hierarchical organization of modules
Lower layers can be invoked by higher layers, vice-versa is
not true
Advantages:
Each layer of code is given access to only the lower level
interfaces it requires
One layer can be replaced without affecting other parts of the
system
°isadvantage:
Low application performance in comparison to monolithic
structure
Virtual Machine:
Non-Virtual machine Virtual machine
VMWare Structure:
Resources of the physical machine are shared
User-
Operating Operating Operating Level
System System System
Kernel Level
Resource multiplexing: Individual disk blocks, not
disk partitions
Each VM can run its own OS, except that each one
is restricted to using the resources: asked for and been
allocated
Client Server or Microkernel Structure:
Process
Client Application File Server Memory Server
Server User
Mode
Kernel
Mode
Microkernel
Hardware Send
Reply
Moves code from kernel to user space
User modules communicate using message passing
User process (client process) sends a request to the
server process. Server process does the work and
sends the response
Kernel handles the communication between the
client and the server (Validates messages, passes
them between the components and grants access to
hardware)
Advantage:
Easier to port the OS to new architecture
More reliable and secure
Architecture of Unix System:
emacs
sh who
Kernel date
ed
cc Hardware
wc
grep
Other apps
UNIX ARCHITECTURE
rHardware
rOperating system
Inter-process
File Subsystem Process communication
control
Scheduler
subsystem
°evice drivers
Memory
management
Hardware control
Hardware
Hardware Level
User Process Layer
A process has resources (CPU time, files) and attributes that must be
managed.
new terminated
admitted scheduled
ready running exit, kill
interrupt/yield
r switching context
Max throughput
Two schemes: