Kernel Architecture & OS Internals Questions

How an operating system kernel is structured and what it is responsible for: kernel subsystems (scheduler, memory manager, drivers, interrupt handling), kernel vs. user space and the cost of crossing between them, and the boot and initialization path. Includes the core mechanisms the kernel provides: process and thread lifecycle (creation, zombies and orphans, uninterruptible sleep) and context switching, processes vs. threads as an architectural choice, CPU scheduling (CFS, priorities, preemption models, real-time policies on a general-purpose kernel), virtual memory (address translation, multi-level page tables and entry formats, TLB misses and shootdowns, page faults, copy-on-write, memory-mapped files, userfaultfd, swapping, page replacement, kernel allocators, process address-space layout, page-level protection such as NX and ASLR as mechanisms, hugepages, page coloring, overcommit and the OOM killer as kernel mechanisms), interrupts and softirqs, and how loadable modules and device drivers extend the kernel. Includes worked exercises such as page-replacement traces, address-translation arithmetic and small page-table, TLB or scheduler simulations. Covers the concepts and internals, not microcontroller interrupt and ISR design, RTOS and real-time scheduling theory, day-to-day host administration, system-call and POSIX API semantics, OS-level performance tuning, or forensic and security analysis of a host.

EasyTechnical
68 practiced

What does the kernel track for a process versus a thread, and what do threads of one process share? When would you choose several processes over several threads for a server, and why?

HardTechnical
72 practiced

After a process forks, parent and child appear to have separate memory but no copying has happened yet. How does copy-on-write make that work at the page-table level, and what goes wrong for a workload that writes heavily to memory right after the fork?

That is every published Kernel Architecture & OS Internals question for Backend Developer so far. Browse the other topics in this category, or practice this one interactively.