← Kernel InternalsKERNEL INTERNALS 4.5

Kernel Building Blocks

Not started yet — the intrusive linked list and container_of in real use, kernel timers and kthreads, and wait queues — how blocking I/O actually blocks. 7 bytes.

What this topic will cover

  • list_head and container_of in action — the payoff of 1.6.F, used constantly in real kernel code.
  • jiffies, HZ, and kernel timers (timer_setup/mod_timer), which run in atomic context.
  • kthreads (kthread_run and the stop protocol).
  • Wait queues — wait_event_interruptible/wake_up, the actual mechanism behind blocking I/O.
  • A recap of likely/unlikely in kernel context, and per-CPU variables at a concept level.

Not yet catalogued — check back once this topic is underway.

Notes from readers

Comments — via GitHub