At 3 a.m., she read a footnote in the scanned copy: "The best way to learn system programming is to write one—even a tiny one." Inspired, she coded a minimal two-pass assembler for a toy instruction set. It crashed seven times. On the eighth, it worked.

Use Dhamdhere to pass your university exams with flying colors. For job interviews, pair it with "Operating System Concepts" (Silberschatz) and "Advanced Programming in the UNIX Environment" (Stevens) .

: An overview of essential tools such as editors and debuggers that assist in program development. Part II: Operating Systems

Review & Discussion