Operating Systems / Linux
39 notes
Some notes are currently available only in Chinese. English translations are shown when available.
- 1.1 Operating Systemshistorical
What an operating system manages: processes, memory, devices, files, protection, and the boundary between applications and hardware.
- Linux Overviewhistorical
Linux kernel responsibilities, processes, memory, filesystems, networking, devices, and user space.
- Linux Threadshistorical
Thread execution, shared process resources, scheduling, stacks, TLS, and synchronization.
- Linux Processeshistorical
Process address spaces, credentials, file descriptors, parent/child lifecycle, signals, and scheduling.
- Process Managementhistorical
Process/thread lifecycle, scheduling, context switching, states, resources, synchronization, and IPC.
- 2.4 Inter-Process Communication (IPC)historical
Core IPC mechanisms: shared memory, pipes, FIFOs, message queues, signals, semaphores, and sockets, with their trade-offs.
- 2.5 Synchronization and Mutual Exclusionhistorical
Critical sections, mutual exclusion, ordering, semaphores, mutexes, condition variables, and classic synchronization problems.
- 2.6 Deadlockhistorical
Deadlock conditions, prevention, avoidance, detection, recovery, and practical lock-ordering strategies.
- 2.7 Programs, Processes, and Threadshistorical
The relationship between programs, processes, threads, and user-space tasks, including address spaces, scheduling, isolation, and context-switch costs.
- Linux Memory Managementhistorical
Virtual address spaces, page tables, anonymous/file-backed memory, page cache, reclaim, swap, and OOM.