Operating Systems Vivek Pai Lecture 1 Sep 12, 2002

advertisement
Operating Systems
Vivek Pai
Lecture 1
Sep 12, 2002
Introduction
Who I am



Why I do this
Vivek Pai
PhD 99/00, Rice
Research: OS,
networking, highperformance apps
Sep 12, 2002




Fun
Interesting
Design
opportunities
“Profitable”
COS 318 - Operating Systems, Vivek Pai
2
About this course…
Goals
Principles




OS design
Some theory
Rationale
Practice
Not trade school
Sep 12, 2002



Understand OS
decisions
Basis for future
learning
Get hands dirty
Not “elite hacker”
COS 318 - Operating Systems, Vivek Pai
3
Expect (Some) Pain
Fast pace
Lots of projects (programming)
Hard material
Course changing based on feedback
Not the end of the world – course favorably received
last year, under much more trying circumstances
Sep 12, 2002
COS 318 - Operating Systems, Vivek Pai
4
What Works & Doesn’t
Works
 Solid C background
 Flexible approach
 Grasping Prereqs
 Open mind
 Einstein
 Feedback sheets
Sep 12, 2002
Doesn’t
 Schedule overload
 Missing
background
 Mathematical
precision
COS 318 - Operating Systems, Vivek Pai
5
Why So Many Grades?



Programming projects
Midterm & final exams
Quizzes (see me about health/school absences)
Intended to reduce pressure/anxiety
More data points = less noise
Somewhat generous extra credit
Sep 12, 2002
COS 318 - Operating Systems, Vivek Pai
6
Some Relief
Grades based on
mean/deviation
People have done
generally well in the
past
25 / 38 As
17 / 11 Bs
4 / 7 Cs
Sep 12, 2002
Honor System
 Use common sense
 Ask for clarification
 Cooperation OK
 Work is your own
(pairs for labs)
COS 318 - Operating Systems, Vivek Pai
7
There Is No Magic
This Is Engineering




Tradeoffs
Constraints
Optimizations
Imperfection
Nothing’s Permanent




Sep 12, 2002
High rate of change
Lots of inertia
Cost/benefit
analyses
Human error
COS 318 - Operating Systems, Vivek Pai
8
Mechanics – Info





My home page
Course home page
Newsgroup
Precepts
Design reviews
Sep 12, 2002
COS 318 - Operating Systems, Vivek Pai
9
Mechanics – Grading






Assigned readings
20% quizzes
20% midterm
20% final
40% projects – some extra credit
Late policy:
6 hours: 91%
12 hours: 84%
24 hours: 71%
48 hours: 50%
Sep 12, 2002
COS 318 - Operating Systems, Vivek Pai
10
Mechanics - People
See web site – it’s up to date!
 Basically

– Me – quizzes, exams
– TAs – precepts, labs
– Office hours – T, W, Th or by Appt
Sep 12, 2002
COS 318 - Operating Systems, Vivek Pai
11
Mechanics – Readings
Modern Operating Systems
Tannenbaum
Different from last time
Available at Ustore
Various readings – will be available from my
home page (course web site)
Sep 12, 2002
COS 318 - Operating Systems, Vivek Pai
12
Mechanics - Projects

6 projects, 2 themes
– Build parts of a mini-OS
– Write applications that interact with OS



2 weeks each
Uses Linux, sort of
Partners – be decent to each other
Option – one big project – only for the brave
Sep 12, 2002
COS 318 - Operating Systems, Vivek Pai
13
Send Me Your Details








Name
Year
Major
E-mail address
Phone #
Picture via URL
Why you’re taking the class
What you’d like/hope to learn
Sep 12, 2002
COS 318 - Operating Systems, Vivek Pai
14
What Is an OS?
Sep 12, 2002
COS 318 - Operating Systems, Vivek Pai
15
What Is an OS?
“Code” that:



Sits between programs & hardware
Sits between different programs
Sits betweens different users
But what does it do?
Sep 12, 2002
COS 318 - Operating Systems, Vivek Pai
16
What Is an OS?
Resources
 Allocation
 Protection
 Reclamation
 Virtualization
Services
 Abstraction
 Simplification
 Convenience
 Standardization
Makes computers simpler
Sep 12, 2002
COS 318 - Operating Systems, Vivek Pai
17
What Is an OS?
Resources
 Allocation
 Protection
 Reclamation
 Virtualization
Sep 12, 2002
Finite resources
Competing demands
Examples:
 CPU
 Memory
 Disk
 Network
COS 318 - Operating Systems, Vivek Pai
18
What Is an OS?
Resources
 Allocation
 Protection
 Reclamation
 Virtualization
Sep 12, 2002
You can’t hurt me
I can’t hurt you
Implies some degree
of safety & security
COS 318 - Operating Systems, Vivek Pai
19
What Is an OS?
Resources
 Allocation
 Protection
 Reclamation
 Virtualization
Sep 12, 2002
The OS giveth
The OS taketh away
Voluntary at run time
Implied at termination
Involuntary
Cooperative
COS 318 - Operating Systems, Vivek Pai
20
What Is an OS?
Resources
 Allocation
 Protection
 Reclamation
 Virtualization
Illusion of infinite,
private resources
Memory versus disk
Timeshared CPU
More extreme cases
possible (& exist)
Sep 12, 2002
COS 318 - Operating Systems, Vivek Pai
21
Mechanism & Policy
Mechanism – tool to achieve some effect
Policy – decisions on how to use tool
Examples:
 All users treated equally
 All program instances treated equally
 Preferred users treated better
 No deterministic behavior at all
Sep 12, 2002
COS 318 - Operating Systems, Vivek Pai
22
Is There a Perfect OS?
Sep 12, 2002
COS 318 - Operating Systems, Vivek Pai
23
Is Any OS Complete?
Portability
Security
Fairness
Robustness
Efficiency
Interfaces
Sep 12, 2002
COS 318 - Operating Systems, Vivek Pai
24
History Lessons
60’s-70’s - Mainframes
 Rise of IBM
70’s - 80’s – Minicomputers
 Rise of Digital Equipment
80’s - 90’s – PCs
 Rise of Intel, Microsoft
Now – Post-PC
 Distributed applications
Sep 12, 2002
COS 318 - Operating Systems, Vivek Pai
25
Historical Comparison
Mainframe
Mini
Micro
System $/ 10:1 –
100:1
worker
Goal
System
utilization
10:1 –
1:1
1:10-1:100
Overall
cost
Productivity
Target
Features Ease of
Use
Sep 12, 2002
Capacity
COS 318 - Operating Systems, Vivek Pai
26
Constant Employment?
New hardware
 New features
 New approaches

Examples: Palm, Java, WWW
Sep 12, 2002
COS 318 - Operating Systems, Vivek Pai
27
May You Live in
Interesting Times…
Processors double in 18 months
 Disk doubling every 12 months
 Global bandwidth every 6 months
 “Sweet spot” constantly decaying

Do people ever double?
Sep 12, 2002
COS 318 - Operating Systems, Vivek Pai
28
Send To vivek@cs…








Name
Year
Major
E-mail address
Phone #
Picture via URL
Why you’re taking the class
What you’d like/hope to learn
Consider this a grade
Sep 12, 2002
COS 318 - Operating Systems, Vivek Pai
29
And Now For
Something Completely
Different…
Sep 12, 2002
COS 318 - Operating Systems, Vivek Pai
30
Download