Operating systems notes
I/O Hardware & Software Layers
How one read() call reaches a disk, a keyboard or a network card, and stays the same shape for all of them. Every section is a drawn page beside a clear written explanation, about 17 minutes in all.
- Chapter 26 of 37
- About 17 minutes
- 8 sections
Sign in with Google or GitHub and you land straight on this page. DSA comes with the all labs plan and every ChaiCode batch.

In this chapter
- Why I/O is genuinely hard
- Device controllers & their registers
- Talking to a device: polling
- Interrupts: let the device tell you
- DMA: moving bulk data without the CPU
- The I/O software layers
- Device drivers & the uniform interface
- Buffering, caching & why engineers care
Next chapters
Read the whole chapter
Sign in and the chapter opens with every drawn page, and all 38 operating systems chapters beside it.
DSA comes with the all labs plan and every ChaiCode batch.