Required: "End-to-end arguments in
system design", J. H. Saltzer and D. P. Reed and
D. D. Clark, in ACM Transactions on Computer Systems,
Vol. 2, No. 4, pp. 277-288, 1984.
Recommended: "Hints for Computer System
Design", Butler W. Lampson, in SOSP '83: Proceedings of
the ninth ACM symposium on Operating systems principles,
pp. 33--48, 1983. A classic paper, and an entertaining read, full of
accumulated wisdom on how (and how not) to design computer
systems
Lecture 2 Readings
Required: The UNIX time-sharing
system, Dennis M. Ritchie and Ken Thompson, in
Communications of the ACM, Vol. 17, No. 7, pp. 365-375,
1974. Original description of the perennially popular UNIX
system. As you read, take note of how much has remained the
same in today's UNIX variants, and what original features
have changed.
Required: "Mach: A new kernel
foundation for UNIX development", Mike Accetta, Robert
Baron, William Bolosky, David Golub, Richard Rashid, Avadis
Tevanian, and Michael Young, in Proceedings of the 1986
Summer USENIX Technical Conference, 16 pages, 1986. The original description of Mach -- note the absence of
the term "microkernel" anywhere in the paper... that
designation came later. Think about the motivation for
Mach's development. What happened to the small, elegant
system that Ritchie and Thompson descripbed?
Optional: Chapter on Mach from 4th
Edition of Silberschatz et al. text (no longer part of later
editions)