Part III: Kernel Programming
Part III builds one kernel. Chapters 9 to 14 grow it one layer at a
time, from the switch to protected mode to a program loaded from an ext2
disk and run in ring 3; chapter 15 adds fork and
exec on top; chapter 16 is about the kernel that does not
boot, and how to find out why. Every chapter opens with a “Running this
chapter’s code” subsection that tells you how to build, boot and test
the code of that chapter under code/chapterN/os, and ends
with exercises and a few “Check your understanding” questions whose
answers are in Appendix E.