← 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