During Fall 2004, CS 414 will meet in 255 Olin Hall from
10:10-11:25 on Tuesday and Thursday.
CS 415 will meet in Phillips 219 from 3:35 to 4:25 once per week, on Mondays.
Lecture | Date | Topic | HW | Assignments and Reading.
Bold denotes Edition 6 of the textbook. Italics denote Edition 5 of the textbook. H&P denotes the CS314 text. H&P is NOT a required 414 text. |
---|---|---|---|---|
1 Week 1 | Aug26 | Course Overview & OS Evolution. Architectural Support for the OS | S&G
Ch. 1
S&G Ch. 1 | |
Mon 8/30/03, 3:35-4:25 Room PH 219 | Optional review session: CS314 material we use in CS414!
This is also the first cs415 slot | Slide set from 314 review session. | ||
2 Week 2 | Aug 31 | I/O Path and Hardware Architectural Support for the OS. Device drivers | S&G
Ch. 2, H&P Chapter 9
S&G Ch. 2 | |
3 | Sep 2 | Race Conditions. Processes | S&G
Ch. 4.1, 4.2, 5
S&G Ch. 3 | |
4 Week 3 | Sep 7 | Synchronization with hardware instructions. Atomic load/store | S&G
Ch. 7.1 - 7.4
S&G Ch. 4, Ch. 5.1-5.5, 6.1-6.4 | |
5 | Sep 9 | Busy waiting, Semaphores | S&G.
Ch. 7.4
S&G Ch. 6.3-6.4 | |
6 Week 4 | Sep 14 | (Unrelated topic) Linux and Windows System calls | Slide set from Vivek | |
7 | Sep 16 | Classic Synchronization Problems | S&G
Ch. 7.5,7.6
S&G Ch. 6.5-6.8 (skip 6.9) | |
8 Week 5 | Sep 21 | Monitors, Condition Variables and Language Support | S&G
Ch. 7.7
S&G Ch. 6 | |
9 | Sep 23 | Deadlocks, Prevention, Avoidance | S&G
Ch. 8.1-8.5
S&G Ch. 7.1-7.6 | |
10 Week 6 | Sept 28 | Deadlocks, Detection, Recovery | S&G
Ch. 8.5-8.7
S&G Ch. 7.6-7.8 | |
11 | Sep 30 | Midterm 1, in class |
Slide set from review session Everything (including deadlocks and deadlock detection by graph reduction, but not deadlock avoidance or the Banker's Algorithm from Sept 28) | |
12 Week 7 | Oct 5 | Scheduling and related issues: Round robin multi-level feedback queues. Priority issues. Real time operating systems. Costs of context switching. How to trick a scheduler into giving you more than your fair share of a processor. | S&G Ch 6.3-6.4 | |
13 Week 8 | Oct 7 | Networking. Ethernet and LANs. Internet, DNS and IP. | Ethernet:
Distributed Packet Switching for Local Computer Networks. R. Metcalf and D. Boggs. Communications of the ACM, 19(7): 395-403, July 1976. S&G. Ch 15. S&G Ch. 15. | |
Fall Break: October 9-October 12 | ||||
14 | Oct 14 | Internet, DNS and IP. How routing works. Routers can drop packets: Random Early Detection (RED) mechanism (why, how) | End-to-end arguments in system design; J. H. Saltzer, D. P. Reed and D. D. Clark; ACM Trans. Comput. Syst. 2, 4 (Nov. 1984), Pages 277 - 288 | |
15 Week 9 | Oct 19 | DNS, simple reliability problems. How Akamai does web hosting. IP sprayers and using short-lived DNS records and DNS bind to load-balance | S&G Ch 15.4.1. | |
16 | Oct 21 | TCP Congestion control, UDP and IP multicast. |
Vivek's slide set S&G 15.5 and 15.6 | |
17 Week 10 | Oct 26 | Building reliable network software. (How TCP can break channels. Split brain syndrome. Consistency in a distributed failure detection problem. Idea of a system membership and failure-detecting service. Why such a service can solve our consistency problem) | S&G
Ch. 15.
Reliability Through Consistency. IEEE Software (Special Issue on Safety and Reliability), May 1995. Ken Birman and Brad Glade Note: This paper is available in the Engineering Library. Please
read it in the library or make a copy. Don't check out the volume --
that would be antisocial. The library should also be able to access it
via the IEEE URL,
which normally requires individual or institutional membership. | |
18 | Oct 28 | Virtual Memory. Page replacement, FIFO, OPT, LRU | S&G
Ch. 9, 10
S&G Ch. 8 | |
19 Week 11 | Nov 2 | Working Set Algorithm, WSOPT | S&G
Ch. 10.2-10.4
S&G Ch. 8
| |
20 | Nov 4 | Dynamically linked libraries | Shared Libraries in SunOS | |
21 Week 12 | Nov 9 | Midterm 2, in class. | Cumulative, but with a stress on materials subsequent to prelim1 and not including dynamically linked libraries. | |
22 | Nov 11 | Introduction to file systems. Types of files, real and symbolic links, local and remote file systems. Memory mapped files and how they are used. |
S&G
Ch. 10, 11, 12. See H&P for background on disk hardware, DMA, other
physical issues.
S&G Ch. 8 | |
23 Week 13 | Nov 16 | How disks work. How file systems are represented on the disk. Pros and cons of reordering requests in a disk driver |
S&G
Ch. 10, 11, 12. See H&P for background on disk hardware, DMA, other
physical issues.
S&G Ch. 8 | |
24 | Nov 18 | Distributed file systems (NFS, NTFS). RAID. Peer to peer file systems. | PAST paper. Chord paper. | |
25 Week 14 | Nov 23 | Performance profiling tools and challenges. Why do systems people consider this to be such a big issues? What tools exist to understand where a program is spending its time? Profiling tools and micro-instruction level profilers. Building hand-constructed performance evaluations. |
Linux users: Read the "gprof" and "prof" manual pages.
Or read these two documents: overview
sample Windows users: There are many profiler tools out there, but they need to be purchased (we're discussing this with Microsoft). The one Ken uses is from a company called Red Gate and is called the ANT profiler. It works for any .NET program. | |
Nov 24 - Nov 28 | Thanksgiving Recess | |||
26 Week 15 | Nov 30 | Industry
trends. Where are companies like Microsoft "aiming" with
their future products? What about Linux? What
are the hot topics in modern operating systems research? How do CS513,
514 and 614 relate tot his material? In-class review prior prior to
final exam, etc. Note: CS414 course evaluations are done on-line |
Bring any questions you may have! We won't think of this as a formal lecture
and you won't see this material on the final.
As an added incentive, Ken will give at least one hint about a final exam problem. | |
27 | Dec 2 & 16 | Solutions to final |
Closed book, cumulative |