introduction | slides | |
0. | Welcome, and "going back to the future". | pdf ps |
A. | virtual memory, kernel structures, and extensibility | slides |
1. | R. C. Daley and J. B. Dennis. Virtual Memory, Processes, and Sharing in MULTICS. Communications of the ACM, 11(5), May 1968, pp. 306-312. | pdf ps |
2. | H. M. Levy and P. H. Lipman. Virtual Memory Management in the VAX/VMS Operating Systems. IEEE Computer, 15(3), March 1982, pp. 35-41. | pdf ps |
3. | E. W. Dijkstra. The Structure of the "THE" Multiprogramming System. Communications of the ACM, 11(5), May 1968, pp. 341-346. | pdf ps |
4. | W. A. Wulf, E. Cohen, W. Corwin, A. Jones, R. Levin, C. Pierson, and F. Pollack. HYDRA: The Kernel of a Multiprocessor Operating System. Communications of the ACM, 17(6), June 1974, pp. 337-345. | pdf ps |
5. | M. Young, A. Tevanian, R. Rashid, D. Golub, J. Eppinger, J. Chew, W. Bolosky, D. Black, and R. Baron. The Duality of Memory and Communication in the Implementation of a Multiprocessor Operating System. Proc. 11th SOSP, Operating Systems Review, 21(5), November 1987, pp. 63-76. | pdf ps |
6. | H. Massalin and Calton Pu. Threads and Input/Output in the Synthesis Kernel. Proc. 12th SOSP, Operating Systems Review, 23(5), December 1989, pp. 191-201. | pdf ps |
7. | D. R. Engler, M. F. Kaashoek, and J. O'Toole Jr.. Exokernel: An Operating System Architecture for Application-Level Resource Management. Proc. 15th SOSP, December 1995, pp. 251-266. | pdf ps |
8. | E. Bugnion, S. Devine, and M. Rosenblum. Disco: Running Commodity Operating Systems on Scalable Multiprocessors. Proc. 16th SOSP, October 1997, pp. 143-156. | |
B. | threads, synchronization, and communication | slides |
9. | B. W. Lampson and D. D. Redell. Experience with Processes and Monitors in Mesa. Communications of the ACM, 23(2), February 1980, pp. 105-117. | pdf ps |
10. | A. D. Birrell. An Introduction to Programming with Threads. Tech. Rep. SRC-035, Digital Equipment Corporation, January 1989. | pdf ps |
11. | T. Anderson, B. Bershad, E. Lazowska, and H. Levy. Scheduler Activations: Effective Kernel Support for the User-Level Management of Parallelism. Proc. 13th SOSP, ACM Transactions on Computer Systems, 10(1), February 1992, pp. 53-79. | pdf ps |
12. | A. D. Birrell and B. J. Nelson. Implementing Remote Procedure Calls. ACM Transactions on Computer Systems, 2(1), February 1984, pp. 39-59. | pdf ps |
13. | T. von Eicken, D. E. Culler, S. C. Goldstein, K. E. Schauser. Active Messages: A Mechanism for Integrated Communication and Computation. Proc. 19th ISCA, May 1992, pp. 256-266. | pdf ps |
14. | D. Wetherall. Active network vision and reality: lessons from a capsule-based system. Proc. 17th SOSP, Operating Systems Review, 34(5), December 1999, pp. 64-79. | pdf ps |
C. | storage and file systems, distributed systems | slides |
15. | P. Chen, E. Lee, G. Gibson, R. Katz, and D. Patterson. RAID: High-Performance, Reliable Secondary Storage. ACM Computing Surveys, 26(2), June 1994, pp. 145-188. | pdf ps |
16. | D. M. Ritchie and K. Thompson. The UNIX Time-Sharing System. Communications of the ACM, 17(7), July 1974, pp. 365-375. | pdf ps |
17. | M. K. Mckusick, W. N. Joy, S. J. Leffler, and R. S. Fabry. A Fast File System for UNIX. ACM Transactions on Computer Systems, 2(3), August 1984, pp. 181-197. | pdf ps |
18. | M. Rosenblum and J. Ousterhout. The Design and Implementation of a Log-Structured File System. ACM Transactions on Computer Systems, 10(1), February 1992, pp. 26-52. | pdf ps |
19. | R. Sandberg, D. Goldberg, S. Kleiman, D. Walsh, and B. Lyon. Design and Implementation of the Sun Network Filesystem. Proc. USENIX Summer Conference, June 1985, pp. 119-130. | pdf ps |
20. | J. H. Howard, M. L. Kazar, S. G. Menees, D. A. Nichols, M. Satyanarayanan, R. N. Sidebotham, and M. J. West. Scale and Performance in a Distributed File System. ACM Transactions on Computer Systems, 6(1), February 1988, pp. 51-81. | |
21. | B. Walker, G. Popek, R. English, C. Kline, and G. Thiel. The LOCUS Distributed Operating System. Proc. 9th SOSP, Operating Systems Review, 17(5), November 1983, pp. 49-70. | |
22. | M. N. Nelson, B. B. Welch, and J. K. Ousterhout. Caching in the Sprite Network File System. ACM Transactions on Computer Systems, 6(1), February 1988, pp. 134-154. | |
23. | K. Li and P. Hudak. Memory Coherence in Shared Virtual Memory Systems. ACM Transaction on Computer Systems, 7(4), November 1989, pp. 321-359. (guest lecture by Prof. Arvind Krishnamurthy, Yale.) | pdf ps |
24. | T. E. Anderson, M. D. Dahlin, J. M. Neefe, D. A. Patterson, D. S. Roselli, and R. Y. Wang. Serverless Network File Systems. Proc. 15th SOSP, ACM Transactions on Computer Systems, 14(1), February 1996, pp. 41-79. | pdf ps |
25. | F. Dabek, M. F. Kaashoek, D. Karger, R. Morris, and I Stoica. Wide-area cooperative storage with CFS. Proc. 18th SOSP, October 2001. | pdf ps |
D. | experiences | slides |
26. | C. A. R. Hoare, The Emperor's Old Clothes. Communications of the ACM, 24(2), February 1981, pp. 75-83. | |
27. | B. W. Lampson, Hints for Computer System Design. Proc. 9th SOSP, Operating System Review, 17(5), Special Issue, October 1983, pp. 33-48. | |
28. | J. Ousterhout and D. Patterson, How to give a bad talk. | pdf ps |