- Jerome H. Saltzer and M. Frans Kaashoek. Principles of Computer System Design. M.I.T. 6.033 class notes, draft release 3.2 (January 2007).
The class notes are a work in progress. (The class notes will be available as a separate package.)
Introduction to computer systems
- Richard P. Gabriel. The rise of "Worse is better". On-line version of "Worse is Better", From LISP: good news, bad news, how to win BIG, AI Expert 6, 6 (June, 1991) pages 33-35.
- Herbert A. Simon. The architecture of complexity. Proceedings of the American Philosophical Society106, 6 (December, 1962) pages 467-482. Republished as Part 4, pages 84-118, of The Sciences of the Artificial, MIT Press, 1969. ISBN: 0-262-191051-6 (hardbound) 0-262-69023-3 (paperback).
- George D. Gopen and Judith A. Swan. The science of scientific writing. American Scientist 78, 6 (November-December, 1990) pages 550-558.
- Nancy G. Leveson and Clark S. Turner. An investigation of the Therac-25 accidents. Computer 26, 7 (July, 1993) pages 18-41.
Computer system organization
- Robert Scheifler and Jim Gettys. The X window system. ACM Transactions on Graphics 5, 2 (April, 1986) pages 79-109.
- Dennis M. Ritchie and Ken L. Thompson. The UNIX time-sharing system. Bell System Technical Journal 57, 6, part 2 (1978) pages 1905-1930.
- Stefan Savage, Michael
Burrows, Greg Nelson, Patrick Sobalvarro, and Thomas Anderson.
Eraser: a dynamic race detector for multithreaded
programs. ACM Transaction on Computer Systems 15, 4
(November 1997) pages 391-411. Also appeared in
the Proc. Sixteenth ACM Symposium on Operating Systems
Principles (October 1997).
- Jeffrey Dean and Sanjay Ghemawat. MapReduce: Simplified Data Processing on Large Clusters, Proc. 6th Symp. on Operating Systems Design and Implementation (OSDI), San Francisco, CA (December 2004).
- Robert M. Metcalfe and David R. Boggs. Ethernet: Distributed packet switching for local computer networks. Communications of the ACM 19, 7 (July, 1976) pages 395-404.
- J.H. Saltzer, D.P. Reed and D.D. Clark. End-to-end arguments in system design. ACM Trans. on Computer Systems 2, 4 (November, 1984), pp. 277-288.
- Hari Balakrishnan. An Introduction to Wide-Area Internet Routing. 6.033 case study MIT (January 2004).
- Geoff Huston, Anatomy: A Look Inside Network Address Translators. The Internet Protocol Journal, 7(3), (September 2004), pages 2-32.
- Sergy Brin and Lawrence Page. The anatomy of a
large-scale hypertextual web search engine. Proc. of the 7th WWW
Conference, Brisbane, Australia (April 1998). Published in:
COMPUTER NETWORKS, (formerly Computer Networks and ISDN Systems),
Vol 30, 1998, pp 107-117.
Failure recovery, coordination, and atomicity
D. Patterson, G. Gibson, and R.H. Katz. A case for
redundant arrays of inexpensive disks (RAID), Proceedings of the
ACM SIGMOD Conference, 1988.
- Mendel Rosenblum and John K. Ousterhout. The design and implementation of a log-structured file system. Proceedings of the Thirteenth ACM Symposium on Operating Systems Principles, Pacific Grove, California (October 13-16, 1991) pages 1-15. Published as Operating Systems Review 25, 5 (1991). Also appeared in ACM Transactions on Computer Systems 10, 1 (February, 1992) pages 26-52.
- Jonathan Pincus and Brandon Baker. Beyond stack
smashing: recent advances in exploiting buffer overruns.
IEEE Security and privacy, August 2004.
- Ross J. Anderson. Why cryptosystems fail. Proceedings of the 1993 ACM Conference in Computer and Communications Security, (1993) pages 32-40.
- A. Kumar, V. Paxson and N. Weaver. Exploiting
Underlying Structure for Detailed Reconstruction of an Internet
Scale Event. Proc. ACM IMC, October 2005.
- Ken Thompson. Reflections on Trusting Trust. Communications of the ACM 27, 8 (August 1984) pages 761-763.
- Butler W. Lampson. Hints for computer system design. Proceedings of the Ninth ACM Symposium on Operating Systems Principles, Bretton Woods, New Hampshire (October 10-13, 1983), pages 33-48. Published as Operating Systems Review 17, 5 (1983)