Title: Operating Systems Overview
1Operating Systems Overview
2 3Operating System Concept
Application Software
Operating System
Keyboard
Monitor
Hardware
CPU, Disk
4Computer System Layers
Application Software
Operating System
Users
User
5Windows 2000
6Windows 2000
Security Subsystem
Win 32 Apps
Win 32 Subsystem
Account Manager
Window Manager
Executive
Kernel
Graphic Device Drivers
Hardware Abstraction Layer
Hardware
7Hardware Abstraction Layer
Virtual Machine Interface
Hardware Abstraction Layer
Graphic Device Drivers
Portable over Intel CPUs
Hardware
8Kernel
Processes
Events
Mutants
Interrupts
Mutex
Power status
Threads
Kernel
Profile
Semaphores
HAL
Kernel runs at all times on the computer.
9Executive
10Executive
File systems, Cache management Device
Drivers Network Drivers
Creates, deletes uses threads and processes
Supervises use of all objects
Create, Open, Close, Delete, Query Name, Parse,
Security
11Executive
Recognize and adapt to changes in hardware
configuration
Run-time access validation
Virtual to physical mapping Paging Multiprocessor
Cache Coherence
Client process to OS service message passing
12Typical PC
13Latest PC
System Bus 533 MHz
P4
Cache
AGP Bus 8 Gbytes/sec
North Bridge
Video Card
Main Memory
South Bridge
Audio
PCI
133 MHz
IDE
USB 2.0
480 Mbps
Disks
RAID
14CPU Organization
Program Counter
OPCODE
Instruction Register
Program Status Word
Arithmetic Logic Unit
15Intel 80386 General Registers
Pointers
CS
Segment Registers
Accumulators
DS
Instruction Pointer
IP
EFLAGS
16What is an Operating System?
- Resource manager
- - manages and allocates resources (hardware -
disk space, CPU time...) - Program controller
- - controls the execution of user programs
- - controls operation of I/O devices
17What is an Operating System?
- An operating system is similar to a government
- It performs no useful function by itself
- It provides an environment within which other
programs can do useful work
18Goals of Operating Systems
- User convenience
- - e.g. Graphic User Interfaces
- Efficiency of the computer
- - mainframe code execution
- - e.g. weather modelling and prediction
19Early Batch Systems
Mainframe
- Programs loaded in batches
- (multiple programs in memory)
20Early Batch Systems
Operating System
Operating System
User Program
- Multiprogramming batch with scheduling
21Scheduling
Memory
22Interactive System
Mainframe
- Dynamic interaction with users
- Needs short response times
23Time-Sharing System
Mainframe
- Dynamic allocation of resources
24Time-Sharing System
- Dynamic allocation of resources
25Time-Sharing System
- Dynamic allocation of resources
26Time-Sharing System
- Dynamic allocation of resources
- Virtual memory
27Desktop Systems
- Each user runs own operating system
- Low protection, independent use
28Networked Desktop Systems
- Each user runs own operating system
- More protection, shared resources
29Workstations
CPU 1
CPU 2
...
CPU n
30Multiprocessor Systems
- Increased throughput
- Economy of scale
- - share peripherals
- Increased reliability
- - graceful degradation, fault tolerant
- Parallel systems, tightly coupled systems
31Multiprocessor Systems
- Graceful Degradation
- the ability to continue providing service
proportional to the level of surviving hardware - Fault tolerant system
- systems designed for graceful degradation
32Multiprocessor Systems
CPU 3
CPU 1
CPU 2
Memory
- Symmetric Multiprocessing(SMP)
33Multiprocessor Systems
Master
CPU 3
CPU 1
CPU 2
Memory
- Asymmetric Multiprocessing
34Multiprocessor Systems
- Symmetric Multiprocessing
- each processor runs an identical copy of the
operating system - these copies communicate with one another as
needed - Asymmetric Processing
- each processor is assigned a specific task
- a master processor controls the system
35Networks
- Local Area Network
- exists within a room, a floor or a building
- Wide Area Network
- exists between buildings, cities or countries
- Metropolitan-area network
- links buildings in a city
- Small area network
- between equipment in a room
36Distributed Systems
PC 3
PC 1
PC 2
Network
- Local Area Network (LAN) in site
- Wide Area Network (WAN) between sites
- Loosely coupled systems
37Distributed Systems
PC 3
PC 1
PC 2
Network
Server
- Compute-server system
- File-server system
38Client-Server Systems
- Computer-server systems
- provide an interface to which clients can send
requests to perform an action, then execute the
action and send results to the client - File-server systems
- provide a file-system interface where clients can
create, update, read and delete files
39Peer to Peer Systems
- TCP/IP Peer to Peer Connection
- network between computers with equal status
- allows printer and internet access sharing
40Clustered Systems
PC 3
PC 1
PC 2
Server
LAN
41Clustered Systems
PC 3
PC 1
PC 2
Hot standby
42Clustered Systems
PC 3
PC 1
PC 2
Monitor one another
43Clustered Systems
- Parallel clusters
- (multiple hosts, shared data storage)
- Cluster software
- (Oracle Parallel Server)
- Storage Area Networks (SANs)
- Clustering over a WAN
44Real Time Systems
- Hard real-time
- Soft real-time
45Handheld Systems
Network
- Memory 512 kB - 8 MB
- Low power, slow processors
46Feature Migration
Mainframe Mini Desktop Handheld
MP
LAN
MP
LAN
MP
LAN
LAN
1950 1960 1970 1980 1990 2000 2010
47Future Trends
- Web-based computing
- Web portals, wireless networks
- Network features in software apps
- Embedded computing
- Cars, robots, VCRs, microwave ovens
- Fridges, climate control, security