Hello World! An Invitation to Computer Science
Lecture Slides
Operating Systems
Monday April 21, 2008
Recapping the Big Picture
What is an operating system?
It's a resource manager.
- system (as opposed to application) software
- supervising program; manages:
processes (other programs)
file system
memory system
I/O
security/access control
- abstraction: software layer between hardware and application software
- performance and system utilization:
squeezing more efficiency out of system
reducing idle time
UI is not central to OS
- does have to allow user to select actions and dispatch them
- interfaces with I/O (resource management)
- see REPL in fig 6.15 (p 265)
- example of text shell v. GUI
access control/security
- more recent development in OS history
- increasingly important
- resource management: should user X be able to do Y?
- example in *nix terminal
Brief history of operating systems
- early on: "operator" refers to person
- 0th gen - no distinction between system software and application
- 1st gen - no real OS, just run system software as needed
- 2nd gen - batch systems: stacked punch cards, processing w/out intervention
3rd gen - multiprogrammed - multiple programs can exist in memory at one time
introduces risk that bug in one program can effect another
early pc systems - in particular MS DOS
greatly increased complexity of situation
real rise of OS begins with time-sharing systems
networking begins to play a role
remote access and illusion of multiprocessing
time slices
- 4th gen - networked os
Why are batch systems inappropriate for something like an
airline-reservation system?
Process management and multitasking
- a process: a running instance of a program
- state of process: memory, file descriptions, permissions/ownership
- context switching: save state of one process, (re)load another
- what is "real-time" here?
single-user: appearance of simultaneous behavior
multiuser: each user appears to have machine to herself
- scheduler: priorities and preemption
- protected memory
What if time slice too large or too small?