Basic Concepts: Operating Systems CS222
Basic Concepts: Operating Systems CS222
Basic Concepts: Operating Systems CS222
Operating Systems
CS222
----¤----
Most Slides contents have been arranged by Dr. Matthew Dailey, based on © Silberschatz, Galvin, and Gagne, 2002
----¤----
1
Operating Systems
The software that turns a hunk of electronics into something you can use.
This semester, we will learn how OS’s work.
As users, this helps us get more out of any OS.
As programmers, this helps us
– build our own large end-user applications
– exploit the special features of particular OS’s
4
Purpose of Operating Systems
The OS is an
intermediary between
the system’s hardware
and its users.
9
History of Operating Systems
The computer’s main memory address space
Early days: mainframe batch systems Memory location 0
Memory location 0
job 2
Increases CPU utilization
job 3
job 4
Memory location 512K
IO Request
RUNNING BLOCKED
IO Completion
Kernel Selection
READY
Desktop systems:
– Initially simple, with batch operation e.g. MS-DOS
– Evolved multiprogramming and time sharing in 80s and 90s
– Evolved graphical user interfaces
– Maximal convenience for user; efficiency secondary
Multiprocessor systems:
– More than one CPU to divide the workload
– Symmetric multiprocessing: all CPUs run same OS
– Asymmetric multiprocessing: master CPU assigns individual tasks to
slave CPUs
– Increasingly common in network servers and even desktops
21
Von Neumann Architecture, Modern Style
[“Trap” is a metaphor for falling through a door from user space execution to kernel mode execution.]
…
System call system call routine:
Check access privileges
sequence for I/O Jump to routine for
system call n
MONITOR
RESIDENT
…
read routine:
perform the read (2) Perform
return control to user the I/O
(1) Trap to …
Monitor
…
USER system call n (e.g. a read) (3) Return
PROGRAM … control
to user