Operating Systems
Vivek Pai
Lecture 1
Sep 13, 2001
Introduction
Who I am
Vivek Pai
PhD 99/00, Rice
Research: OS, networking, highperformance apps
Why I do this
Fun
Interesting
Design opportunities
“Profitable”
Sep 13, 2001 COS 318 - Operating Systems, Vivek Pai 2
About this course…
Principles
OS design
Some theory
Rationale
Practice
Goals
Understand OS decisions
Basis for future learning
Get hands dirty
Not trade school Not “elite hacker”
Sep 13, 2001 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 13, 2001 COS 318 - Operating Systems, Vivek Pai 4
What Works & Doesn’t
Works
Solid C background
Flexible approach
Grasping Prereqs
Open mind
Einsten
Feedback sheets
Doesn’t
Schedule overload
Missing background
Mathematical precision
Sep 13, 2001 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
Fairly generous extra credit
Sep 13, 2001 COS 318 - Operating Systems, Vivek Pai 6
Some Relief
Grades based on mean/deviation
People did generally well last time
38 As
11 Bs
7 Cs
Honor System
Use common sense
Ask for clarification
Cooperation OK
Work is your own
Sep 13, 2001 COS 318 - Operating Systems, Vivek Pai 7
There Is No Magic
This Is Engineering Nothing’s Permanent
Tradeoffs
Constraints
Optimizations
Imperfection
High rate of change
Lots of inertia
Cost/benefit analyses
Human error
Sep 13, 2001 COS 318 - Operating Systems, Vivek Pai 8
Mechanics – Info
My home page
Course home page
Newsgroup
Precepts
Design reviews
Sep 13, 2001 COS 318 - Operating Systems, Vivek Pai 9
Mechanics – Grading
Assigned readings
15% participation (quizzes)
15% midterm
15% final
55% projects
Some extra credit
Late policy TBA
Sep 13, 2001 COS 318 - Operating Systems, Vivek Pai 10
Mechanics – People
Vivek Pai, room 322
8-2086, vivek@cs
Office hours: after class
Precept time/location
TBA
Brian Lai, room 414
8-5388, lai@cs
Office hours: TBA
Ping Ruan, room 217
8-0451, ryuan@cs
Office hours: TBA
Sep 13, 2001 COS 318 - Operating Systems, Vivek Pai 11
Mechanics – Readings
Operating System Design & Implementation
Tannenbaum & Woodhill, 2 nd Edition
Same as last time
Available at Ustore
Various readings – will be available from my home page (course web site)
Sep 13, 2001 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 13, 2001 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 13, 2001 COS 318 - Operating Systems, Vivek Pai 14
What Is an OS?
Sep 13, 2001 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 13, 2001 COS 318 - Operating Systems, Vivek Pai 16
What Is an OS?
Resources
Allocation
Protection
Reclamation
Virtualization
Services
Abstraction
Simplification
Convenience
Standardization
Sep 13, 2001
Makes computers simpler
COS 318 - Operating Systems, Vivek Pai 17
What Is an OS?
Resources
Allocation
Protection
Reclamation
Virtualization
Sep 13, 2001
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
You can’t hurt me
I can’t hurt you
Implies some degree of safety & security
19 Sep 13, 2001 COS 318 - Operating Systems, Vivek Pai
What Is an OS?
Resources
Allocation
Protection
Reclamation
Virtualization
The OS giveth
The OS taketh away
Voluntary at run time
Implied at termination
Involuntary
Cooperative
Sep 13, 2001 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)
COS 318 - Operating Systems, Vivek Pai 21 Sep 13, 2001
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 13, 2001 COS 318 - Operating Systems, Vivek Pai 22
Is There a Perfect OS?
Sep 13, 2001 COS 318 - Operating Systems, Vivek Pai 23
Is Any OS Complete?
Portability
Security
Fairness
Robustness
Efficiency
Interfaces
Sep 13, 2001 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
Sep 13, 2001 COS 318 - Operating Systems, Vivek Pai 25
Historical Comparison
Mainframe Mini Micro
System $/ worker
Goal
Target
10:1 –
100:1
System utilization
10:1
1:1
Overall cost
– 1:10-1:100
Productivity
Capacity Features Ease of
Use
Sep 13, 2001 COS 318 - Operating Systems, Vivek Pai 26
Constant Employment?
New hardware
New features
New approaches
Examples: Palm, Java, WWW
27 Sep 13, 2001 COS 318 - Operating Systems, Vivek Pai
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 13, 2001 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 13, 2001 COS 318 - Operating Systems, Vivek Pai 29