CS 519: Operating Systems Theory
Instructor: Thu D. Nguyen
Time & Location: W 6:40-9:30pm, Hill Center 254
Logistics
Lecture and Reading Schedule:
Introduction (1/23)
Processes, Threads & Synchronization
(1/30 & 2/6)
- D. M. Ritchie, K. Thompson. The UNIX Timesharing
System. Communications of the ACM 17(7), July
1974.
- [Just skim for fun] Apple Corp. Mac OS X for UNIX Users.
Technology Brief.
- M. Herlihy. A Methodology for Implementing Highly Concurrent
Data Objects. ACM Transactions on Programming Languages
15(5), Nov. 1993.
- [Optional] A. D. Birrell. An Introduction to Programming with
Threads. SRC Research Report 35, 1989.
Processor Scheduling (2/13)
- C. Waldspurger, W. Weihl. Lottery Scheduling: Flexible
Proportional-Share Resource Management. In Proceedings
of the First USENIX Symposium on Operating System Design and
Implementation (OSDI), Nov. 1994.
- K. J. Duda, D. R. Cheriton. Borrowed-Virtual-Time (BVT)
Scheduling: Supporting Latency-Sensitive Threads in a General-Purpose
Scheduler. In Proceedings of the 17th ACM Symposium on
Operating Systems Principles (SOSP), Dec. 1999.
File Systems (2/20)
- M. Rosenblum, J. K. Ousterhout.
The Design and Implementation of a Log-Structured File
System. ACM Transactions on Computer Systems 10(1),
Feb. 1992.
- [Optional] M. K. McKusick, W. N. Joy, S.J. Leffler, R. S. Fabry.
A Fast File System for UNIX. ACM Transactions on Computer Systems
2(3), Aug. 1984.
Virtual Memory (2/27)
- J. Chase, H. Levy, M. Feeley, E. Lazowska.
Sharing and Protection in a Single Address Space Operating
System. ACM Transactions on Computer Systems 12(4),
Nov. 1994.
Midterm (3/5)
I/O & Communication (3/12)
- A. Basu, V. Buch, W. Vogels, T. von Eicken. U-Net: A
User-Level Network Interface for Parallel and Distributed
Computing. In Proceedings of the 15th
ACM Symposium on Operating Systems Principles (SOSP), December
1995.
- B. Bershad, T. Anderson, E. Lazowska, H. Levy. Lightweight
Remote Procedure Call. ACM Transactions on Computer Systems
8(1), Feb. 1990.
Spring Break (3/19)
Security (3/26)
- M. Burrows, M. Abadi, R. Needham. A Logic of Authentication.
ACM Transactions on Computer Systems 8(1), Feb 1990.
- X. Qie, R. Pang, L. Peterson. Defensive Programming: Using an
Annotation Toolkit to Build DoS-Resistant Software. In
Proceedings of the 5th Symposium on Operating Systems Design and
Implementation (OSDI), Dec. 2002.
Reliability (4/2)
- D. Engler, D. Y. Chen, S. Hallem, A. Chou, B. Chelf. Bugs as
Deviant Behavior: A General Approach to Inferring Errors in Systems
Code. In Proceedings of 18th ACM Symposium on Operating Systems
Principles, Oct. 2001.
- M. M. Swift, B. Bershad, H. Levy. Improving the Reliability of
Commodity Operating Systems. ACM Transactions on Computer
Systems 23(1), Feb. 2005.
Structure and Organization (4/9)
- J. Liedtke. On micro-kernel construction.
Proceedings of the fifteenth ACM symposium on
Operating systems principles. Dec. 1995.
- B. Bershad, S. Savage, P. Pardyak, E. Sirer, M. Fiuczynski, D. Becker,
C. Chambers, and S. Eggers. Extensibility,
Safety and Performance in the SPIN Operating System. Proc.
of the 15th ACM. Symp. on Operating Systems Principles, Dec.
1995.
Virtualization (4/16)
- E. Bugnion, S. Devine, and M. Rosenblum. Disco: Running
Commodity Operating Systems on Scalable Multiprocessors. In
Proceedings of the 16th Symposium on Operating Systems Principles
(SOSP), Oct. 1997.
- P. Barham, B. Dragovic, K. Fraser, S. Hand, T. Harris, A. Ho,
R. Neugebauer, I. Pratt, A. Warfield. Xen and the Art of
Virtualization. In Proceedings of the 19th ACM Symposium on
Operating Systems Principles (SOSP), Oct 2003.
Potpourri (4/23)
- TBD.
- S. T. King, P. M. Chen. Backtracking Intrusions. ACM
Transactions on Computer Systems, Feb. 2005.
Parallel Systems (4/30)
- C. McCann, R. Vaswani, J. Zahorjan. A Dynamic Processor
Allocation Policy for Multiprogrammed Shared-Memory
Multiprocessors. ACM Transactions on Computer Systems 11(2),
May 1993.
- TBD.