CSE 410 Suggested Readings on Operating Systems

This quarter we've only had a brief opportunity to survey some high-level topics in operating systems. A some of the basics are covered in the course textbook Computer Systems: A Programmer's Perspective (CS:APP) by Bryant and O'Hallaron. The Operating Systems: Principles and Practice (OS) book by Anderson and Dahlin provides thorough coverage, but in more detail than we can actually use. This list is a short summary of related readings in both books that cover the OS topics from the last few CSE 410 lectures. You may not find that you need to read in detail if the presentation in lecture was adequate, but you may find these useful.

  • Operating Systems and hardware
    • Role of operating systems (skim): OS 1.1.1-1.1.3
    • Privileged instructions, context switches, and system calls: CS:APP 8.2, OS 2.2, 2.2.1 beginning (skim or skip rest of 2.2), 2.3 to beginning of 2.3.3, beginning of 2.3.4
    • OS Structure: major components: OS skim ch 3 intro, 3.5
  • Processes and threads
    • Processes: OS 3.1 intro, 3.1.2 (Unix processes and threads from OS view)
    • Threads: OS 4.1, 4.4.4
  • File systems
    • Disk characteristics: OS 12.1-12.1.1 (disks, skip performance details but you should have a rough feel for the numbers)
    • Files and directories abstraction (read for high-level structure, not for details): CS:APP 10.1-10.3, OS 11.1, 11.2
    • File system implementation: OS 13-13.2, 13.3 and 13.3.3 (intro and unix file system only, skim details)