Notes based on Operating Systems: Three Easy Pieces by Remzi & Andrea Arpaci-Dusseau
Advanced/Related Topics
I’ve made a brief OS history tree in XMind which is available here.
Certain chapters of the OSTEP book are not included in this reading note, please read if interested:
Chapters 47-51: distributed file systems, NFS, AFS Chapters 52-57: security aspects of computer systems I have a (relatively broad) set of course notes (similar to this reading note) on topics in computer systems, beyond the basic knowledge of single-node Operating Systems covered in this note:
Computer Architecture (structured) Computer Language & Compilers (structured) Parallel Computing (structured) Database Management Systems (structured) Computer Networks (structured) Computer Systems Security (structured) Distributed Systems (structured) Distributed Systems (miscellaneous) Distributed Systems (paper-oriented) Adv. Operating Systems (paper-oriented) TBU I have written several blog posts on topics around computer systems:
Cache Eviction Algorithms OS Kernel Model & VM Types Multicore Locking Summary Cache Side-Channel Attacks LSM Tree Summary I/O Interfaces Summary Modern Storage Hierarchy Distributed Consistency Models Serializable Transactions Blockchain Essentials Building & Debugging Linux TBU With regard to the practical aspect of implementing an actual operating system, there are good open-source projects:
The xv6 from MIT, widely used in OS education Oppermann’s OS in Rust I have a WIP project named Hux Of course, the Linux kernel …