Interrupts & Polling
Hardware interrupts, IRQ handling, and interrupt bottom halves (tasklets, workqueues) for robust I/O processing.
Hardware interrupts, IRQ handling, and interrupt bottom halves (tasklets, workqueues) for robust I/O processing.
Master FCFS, SSTF, SCAN, C-SCAN, and elevator algorithms for disk arm scheduling in modern operating systems.
How file systems use write-ahead logging and journal checksums to ensure consistency and enable recovery from system crashes without data loss.
Explore monolithic, microkernel, and hybrid kernel design trade-offs and understand why your operating system's architecture matters for performance, security, and reliability.
A comprehensive guide to writing Linux kernel modules, character drivers, and ioctl interfaces for extending kernel functionality.
Atomic operations, CAS (Compare-And-Swap), and concurrent queue implementations
Understanding address translation, segmentation, and how the operating system constructs a virtual memory view that differs from the actual physical memory layout.
How the Linux kernel allocates memory internally — from the slab allocator and buddy system to memory zones and the subtle differences between kmalloc and vmalloc.
Understanding the memory hierarchy from registers to storage drives — speed vs capacity trade-offs, cache behavior, and why locality determines performance.
Learn about POSIX mq_* and System V message queues, message priorities, kernel implementation, and how to use queues for async inter-process communication.