-
Notifications
You must be signed in to change notification settings - Fork 0
M2 Part 0 and Part I: one system call, end to end #3
Copy link
Copy link
Open
Labels
area/pedagogySequencing, the beginner ramp and assessmentSequencing, the beginner ramp and assessmentarea/syscallSyscall entry, the stable ABI, the syscall table and the userspace boundarySyscall entry, the stable ABI, the syscall table and the userspace boundarykind/milestoneA milestone checklist, tracking the issues that close itA milestone checklist, tracking the issues that close itpriority/p0Blocks the current milestoneBlocks the current milestone
Milestone
Description
Activity
Metadata
Metadata
Assignees
Labels
area/pedagogySequencing, the beginner ramp and assessmentSequencing, the beginner ramp and assessmentarea/syscallSyscall entry, the stable ABI, the syscall table and the userspace boundarySyscall entry, the stable ABI, the syscall table and the userspace boundarykind/milestoneA milestone checklist, tracking the issues that close itA milestone checklist, tracking the issues that close itpriority/p0Blocks the current milestoneBlocks the current milestone
Roughly eighteen weeks. Fourteen lessons, Z01 to Z05 and S01 to S09, and the first thing anyone outside the project can judge.
Part 0 gets a reader a kernel they control and the skills to look at it, with no theory at all. Part I then follows one system call, a one byte write followed by an fsync, from the instruction that enters the kernel down to the completion interrupt. That single walk is the spine of the whole book, and Parts VII and VIII walk it again four hundred lessons of depth later.
The build lesson is Z05, fifth, not first. Most kernel books open with the build. It costs a reader an afternoon, teaches them nothing about kernels, and is the single most common place they give up. By Z05 they already have a kernel and already have traces, so they want their own.
Exit criterion. A reader who has never touched a kernel can trace a write call end to end, unassisted, and explain every layer boundary it crosses and which ops struct was crossed at each one. Beginner completion across the fourteen lessons is at or above 70 percent, measured rather than assumed.
Lessons
Everything else