Beruflich Dokumente
Kultur Dokumente
2017
Introduction
Michael O’Boyle
mob@inf.ed.ac.uk
1
Overview
• Introduction
• Definition of an operating system
– Hard to pin down
• Historical look
• Key functions
– Timesharing
– Multitasking
• Various types of OS
– Depends on platform and scenario
2
Computing systems are everywhere
3
Modern computer system
Disk Graphics
CPU USB controller
controller adapter
System Bus
Memory
controller
Memory
4
Four Components of a Computer System
What is an Operating System?
• A big program
– Linux 3.10 has 15M lines of code
• A program that
– manages a computer’s hardware
• A program that
– acts an intermediary between the user of a computer and computer
hardware
6
Operating System Definition
• OS is a resource allocator
– Manages all resources
– Decides between conflicting requests for efficient
and fair resource use
• OS is a control program
– Controls execution of programs to prevent errors
and improper use of the computer
Operating System Definition (Cont.)
9
The traditional Picture
Applications
OS
Hardware
11
Why Bother with an OS?
• Application benefits
– programming simplicity
• see high-level abstractions (files) instead of low-level hardware details
(device registers)
• abstractions are reusable across many programs
– portability (across machine configurations or architectures)
• device independence: 3com card or Intel card?
• User benefits
– safety
• program “sees” its own virtual machine, thinks it “owns” the computer
• OS protects programs from each other
• OS fairly multiplexes resources across programs
– efficiency (cost and speed)
• share one computer across many users
• concurrent execution of multiple programs
12
Hardware/Software Changes with Time
13
Hardware Complexity Increases
Moore’s Law: 2X
transistors/Chip Every 1.5 years
14
Un
x"v i Millions'of'lines'of'code'
"1
.0
0"
10"
20"
30"
40"
50"
W "(1 60"
W ind 971
in ow )"
d
W Lin o w s " 3
in ux s"N .1"
W dow "ke T"
in s rn 3.1
do "N el "
w T"3 "2.6
s"N .5 .
0
Lin T"3 "(19 "
W . 9
in ux"k 51"( 4)"
do e 19
w rne 95
s " N l"
Lin T" 2.6 )"
ux 4.0 .29
"ke "(1 "
rn 99
el 6)
"2 "
.6
Lin .35
W ux "
i "
W ndo 3.1"
in w
Software Complexity Increases
d o s"X
w P"
s"V
i st
Source: http://bit.ly/KIB_linescode
a"
15
Hardware/Software Changes with Time
17
An OS History Lesson
18
Early days
• 1943
– T.J. Watson (created IBM):
“ I think there is a world market for maybe five
computers.”
19
Simplified early computer
Printer
Disk
CPU Input Device
Memory
20
The OS as a linked library
21
Asynchronous I/O
22
IBM 1401
23
Multiprogramming
24
IBM System 360
25
Timesharing
26
Parallel Systems
27
Personal Computing
28
Distributed OS
29
Client/Server Computing
• etc.
30
Peer-to-Peer (p2p) Systems
client client
31
Virtualization
Applications Applications
Applications OS OS
VM1 VM2
Programming
Virtual Machine Manager
Interface
OS (Hypervisor)
Hardware Hardware
32
Cloud Computing
• Amazon EC2 Customer
• Microsoft Azure Internet requests
• HP Helion Public Cloud
Cloud
Firewall Customer
interface
Cloud
Virtual Virtual Management
Storage
machines machines services
Servers Servers
33
The major OS issues
• Introduction
• Definition of an operating system
– Hard to pin down
• Historical look
• Key functions
– Timesharing
– Multitasking
• Various types of OS
– Depends on platform and scenario
• Next lecture: structure and organisation
36