Upload
ralf-kelly
View
218
Download
0
Embed Size (px)
Citation preview
Overview
• 1.1 What is an operating system
• 1.2 History of operating systems
• 1.3 The operating system zoo
• 1.4 Computer hardware review
• 1.5 System Calls
Computer System
• A Computer System Consists of– Hardware
• Internal: CPU, CPU support, memory, bus, adapters, disk drives
• External: display, keyboard, disk drives, printers
– Software• Firmware
• Operating System
• Other System Software
• Application Programs
A Computer System
• A computer system consists of– hardware– system programs– application programs
Physical devices
Microprogramming system
Machine Language interface
Kernel
Compilers EditorsInterpreters
Office Suite Web Browsers
Hardware
Operating System
Applications Multimedia tools
What is an Operating System
• It is an extended machine– Hides the messy details which must be performed– Presents user with a virtual machine, easier to use
• It is a resource manager– Each program gets time with the resources– Each program gets space on the resources
History of Computer Systems• First generation 1945 - 1955
– Technology: vacuum tubes, plug boards
– Sign up for time, exclusive use of the machine
– Languages: none
– OS: no operating system
• Second generation 1955 - 1965– Technology: transistors, punch cards
– Mainframes
– Languages: FORTRAN, COBOL,
– Jobs
– OS: batch systems, libraries
• Third generation 1965 – 1980– Technology: Integrated Circuits
– Large mainframes and smaller machines (IBM 360 family)
– Minicomputers (DEC)
– OS: multiprogramming, large systems (multipart), batch and timesharing, emergence of Unix
• Fourth generation 1980 – present– Technology: Mass production of integrated circuits (chips and boards)
– Personal computers/servers/Internet
– OS: embedded -> supercomputer, CP/M -> Windows, PARC->Macintosh, Unix -> Linux/Solaris
System Life Cycle
• Ontogeny Recapitulates Phylogeny (Ernst Haeckel, 1866)
• Ontogeny = "the development of an individual organism from egg to maturity”
• Recapitulates = “repeats”
• Phylogeny = “the development over time of a kind of organism”
The Operating System Taxonomy
• Mainframe operating systems• Server operating systems• Multiprocessor operating systems• Personal computer operating systems• Real-time operating systems• Embedded operating systems• Smart card operating systems• Virtual systems• Clusters and grids
Computer Hardware
• Components of a typical computer
Bus
Memory CPUVideo
AdapterDisk
ControllerKeyboardController
MouseController
NetworkAdapter
DisplayMonitor
Hard Disks
DVD/CD Disk
Keyboard Mouse
Types of Devices
• Categories– CPU– Memory– Clock– Bus control: Arbitration, Interrupt, DMA– Block devices– Character– Memory mapped– Networking
• Performance• Wide range from 10 byes/sec (keyboard) to several hundred
megabytes/sec (PCI bus)
CPU Architecture
• Memory Cache
• Instruction Decoding
• Arithmetic Logic Units
• Floating Point Unit
• Internal Buses
Computer Hardware• Typical memory hierarchy
– numbers shown are rough approximations
Type Access Time Size
Registers 1 nanosecond < 1KB
Cache 2 nanoseconds 1 MB
Main Memory 10 nanoseconds 256 MB - 4 GB
Disk 10 microseconds 100 GB - 1 TB
Tape 10 seconds 200 GB - ?
Disks• Types
– Magnetic (fixed and removable, internal and external, RAID)
– Optical (CD-ROM, CD-R, DVD)
• Interfaces– IDE, SCSI, USB, Fiber Channel, etc.
• Recall basic structure– Cylinders, tracks, sectors– Issues: Cylinder skew, sector interleaving, virtual
geometry, logical block addressing– Architecture
• Integrated disk drive (drive with embedded computer system)• Bus-interface controller (interfaces between system bus and
cable to integrated disk drive)
Computer Hardware Review
(a) Steps in starting an I/O device and getting interrupt(b) How the CPU is interrupted
(a) (b)
Kernel-based Systems (Monolithic)
System calls
File Management
Process Management
Interprocess Communication Management
Memory Management
General Purpose Functions Device tables Device Drivers
Steps for System Call
• 1-3) Push registers on stack• 4) call library function• 5) place function # in register (or stack)• 6) execute TRAP instruction• 7) dispatch to call handler• 8) runs a handler• 9) returns to library function• 10) returns back to program• 11) cleans up the stack
Steps in Making a System Call
There are 11 steps in making the system call read (fd, buffer, nbytes)
Operating System Concepts
• A process tree– A created two child processes, B and C– B created three child processes, D, E, and F