0x0
The Basic Structure of Operating Systems
6 min read
Series opener: what an operating system is through the Cambridge, ISO, and Merriam-Webster definitions; its central tasks per Tanenbaum; then the Von Neumann architecture — CPU and its two units, main memory, I/O, and the bus — plus the five-step execution cycle.
0x1
Introduction to Operating Systems
3 min read
Kernel space versus user space: why does the OS split memory? How does a user program talk to the kernel through system calls — the printf-to-write() example — and their Windows API counterparts.
0x2
Interrupts
7 min read
Your reference for understanding interrupts in operating systems: computer-system organization with controllers and drivers, an I/O operation up to the interrupt, the interrupt vector table, state save and restore, priority levels, and interrupt chaining on Intel processors.
0x3
Processes & Threads
4 min read
The heart of every OS: what a process is and its KProcess/PCB and EProcess structures in memory on the doubly-linked list, threads versus processes and the three thread states, the 32-bit virtual address space's 2GB split, virtual-to-physical translation, and synchronization via mutexes.
0x4
Scheduling
3 min read
How does the OS choose what to run? I/O-bound versus CPU-bound processes, the ready and wait queues, the short-term scheduler with its efficiency worked out by example, mid-term scheduling and swapping, and context switching.
0x5
Memory Management
14 min read
How do operating systems manage main memory? Base and limit registers, logical versus physical addresses and the MMU, contiguous allocation with its three strategies and fragmentation, paging from address translation to the TLB and effective access time, page table structures, and swapping.
0x6
File-System Interface
8 min read
Series finale: the file as a logical storage unit with its attributes, operations, and open-file tables; sequential, direct, and indexed access; the evolution of directory structures from single-level to trees and soft/hard links; owner/group/other protection; and memory-mapped files.