Topic domain

Operating Systems

Resource management between hardware and programs.

Articles
80
Clusters
8
Foundational
24
Intermediate
32
Advanced
24

Execution contexts, context switches, and states.

  1. Process States and the Transitions the Kernel Actually Tracks
  2. What fork Copies, and Why Copy-on-Write Defers Almost All of It
  3. What Threads Share and What They Own
  4. The Anatomy of a Context Switch
  5. Zombies, Orphans, and the Mechanics of Reaping
  6. Signal Delivery, Thread Masks, and Which Thread Runs the Handler
All 10 in this cluster →

Policy, fairness, and latency under load.

  1. Run Queues and the Cost of a Context Switch
  2. Tick Accounting and How a Slice Is Measured
  3. Multi-Level Feedback Queues and Priority Decay
  4. Virtual Runtime and Weighted Fair Queuing
  5. Load Balancing and Thread Migration on Symmetric Multiprocessors
  6. Priority Inversion and Inheritance
All 10 in this cluster →

Locks, futexes, and memory ordering.

  1. Atomic Read-Modify-Write and the Mutual Exclusion Problem
  2. Acquire and Release Ordering: What a Lock Actually Guarantees About Memory
  3. Condition Variables and the Lost Wakeup Problem
  4. Futex Wait and Wake: How a Lock Sleeps Without a Syscall on the Fast Path
  5. Spinlock Contention: Ticket Ordering and MCS Queues
  6. Reader-Writer Locks and the Starvation They Invite
All 10 in this cluster →

The kernel boundary and its cost.

  1. How a System Call Transfers Control to the Kernel
  2. System Call ABIs and the Register Argument Convention
  3. Error Returns and the errno Convention
  4. What a System Call Actually Costs
  5. The vDSO and System Calls That Never Trap
  6. Copying Data Across the User-Kernel Boundary
All 10 in this cluster →

Deferred work, softirqs, and clock sources.

  1. How a Hardware Interrupt Reaches a Handler on x86-64
  2. From Hardware Line to Virtual IRQ Number
  3. Interrupt Controllers from the 8259A to Message-Signalled Interrupts
  4. Top Halves and Bottom Halves
  5. Softirqs and the Per-CPU Deferred Queue
  6. Clock Sources, Clock Events, and the Tick
All 10 in this cluster →

Firmware handoff, init, and early boot.

  1. The Reset Vector and the First Instruction Executed
  2. How Firmware Describes Physical Memory to the Kernel
  3. Why Boot Loaders Are Split Into Stages
  4. Entering Long Mode From a Boot Loader
  5. Kernel Decompression and Physical Relocation
  6. Early Console Output Before Drivers Exist
All 10 in this cluster →

Containers, chroots, and resource limits.

  1. Chroot Confines Path Resolution, Not the Process
  2. Mount Namespaces and the Propagation of Mount Events
  3. PID Namespaces and the Special Status of PID 1
  4. User Namespaces and the Mapping of UIDs
  5. Network Namespaces and Virtual Ethernet Pairs
  6. Control Groups v2: How Memory and CPU Limits Are Enforced
All 10 in this cluster →

Modules, debugging, and portability.

  1. How a Loadable Module Resolves Symbols Against the Kernel
  2. Kconfig Options and the Shape of the Compiled Kernel
  3. Kernel Logging: The Ring Buffer Behind printk
  4. Stack Unwinding in the Kernel Without Frame Pointers
  5. Dynamic Tracing by Rewriting Instructions: ftrace and kprobes
  6. Lockdep: Proving Lock Order Without Running the Deadlock
All 10 in this cluster →

All Operating Systems articles