Our primary course book is Arpaci-Dusseau et al.: Operating Systems: Three Easy Pieces (Version 1.00). We will also occasionally refer to the MIPS R4000 Microprocessor User’s Manual (2nd Edition), the RISC-V Iinstruction Set Manuals (unprivileged and privileged), and the Intel 64 and IA-32 Architectures Software Developer’s Manual (Version 325462-084).

If, for any reason, you need more information, there are other excellent books that can help you study. Favorites include:

None of these books follows the course exactly, but all contain enough material to suffice as a learning material.

A good book on the computer systems background is Patterson et al.: Computer Organization and Design.

For those who do not regularly work with Linux or C, we recommend our introduction to Linux and our system programming course.

Manuals

Blogs and other more informal resources

Selected topics from other courses