← OS & ArchitectureOS & ARCHITECTURE 3.3
Kernel/User Boundary & Syscall Flow
Not started yet — privilege levels, the address-space split, and the full syscall trap-to-return path. 6 bytes — short, but it sets up everything in Phase 4.
What this topic will cover
- Privilege levels — user mode vs. kernel mode (ARM EL0/EL1, x86 ring3/ring0).
- Address space split — why the kernel is mapped high in every process, and why user code can't touch it.
- Syscall flow, step by step — trap instruction, mode switch, syscall number, syscall table, handler, return.
- Syscall vs. library call — why printf isn't a syscall, and what the difference costs.
- Process vs. interrupt context — what counts as each, and what's forbidden in interrupt context.
- Kernel preemption — the CONFIG_PREEMPT one-liner.
Not yet catalogued — check back once this topic is underway.
Notes from readers
Comments — via GitHub