mhtirogla
Home
Systems
API
Pricing
About
Log in
← Back
Home
›
Systems
›
Operating systems and runtimes
os-kernel
operating system kernel
Linux
System
Techniques · 2
Primitives · 21
os-kernel
Block io multiqueue
hardware-os · medium: Per-CPU submission queues mapped to hardware queues, tags and I/O schedulers (blk-mq)
Cpu scheduling eevdf
hardware-os · medium: Fair CPU scheduling: virtual runtime, CFS and EEVDF virtual deadlines, run queues, load balancing
Interrupt handling
hardware-os · low: How a device signal reaches a CPU handler through an interrupt controller and vector table, and how top/bottom halves, polling switch-over and coalescing keep load bounded.
›
Context switching
hardware-os · low: Handing a core to another task by saving and loading registers, stack and address space; the hidden cache and TLB cost outweighs the direct one.
›
Futex-based mutex
concurrency · low: A mutex that is one atomic word in user space and enters the kernel (futex wait/wake) only under contention; how std and glibc locks work.
›
RCU (read-copy-update)
concurrency · low: Readers access shared data with no locks or atomic writes; writers publish a new copy and free the old one after a grace period.
›
Spinlocks ticket mcs
concurrency · low: Test-and-set, ticket and MCS queue spinlocks; when spinning beats sleeping
Cgroups and namespaces
hardware-os · low: Linux namespaces limit what a process can see; cgroup v2 limits and accounts what it may use. Containers, sandboxes and job schedulers are built from the two.
›
Copy-on-write fork
hardware-os · low: fork() gives the child the parent's whole address space by sharing pages read-only and copying one only when someone writes it; vfork and posix_spawn skip even that.
›
DMA and IOMMU
hardware-os · low: How devices move data by direct memory access, and how an IOMMU gives each device its own address space, faults on stray accesses and lets user space or guests own a device safely.
›
mmap and the page cache
hardware-os · low: How read() and mmap reach file data through the kernel page cache, what readahead and madvise do, and why databases use their own buffer pool instead.
›
System call interface
hardware-os · low: The controlled gate between user code and the kernel: number and arguments in registers, a trap instruction, a validated handler, a result or error code.
›
Virtual memory and the TLB
hardware-os · low: How page tables and TLBs translate every address, what TLB reach means, and when 2 MiB or 1 GiB huge pages pay off on Linux.
›
io_uring
networking · low: Linux async I/O through two shared-memory rings (submissions in, completions out), batching or eliminating syscalls for sockets and files alike.
›
Buddy allocator
systems · low: Power-of-two block splitting and coalescing; base of kernel page and GPU heap allocators
Hierarchical timing wheel
systems · low: Timers bucketed by expiry into wheels of slots, coarser wheels for far deadlines: O(1) insert and cancel for millions of timeouts.
›
LRU and CLOCK
systems · low: LRU evicts the least recently used entry via hash map plus linked list; CLOCK approximates it with a reference bit, so hits take no lock.
›
Slab allocator
systems · low: Pre-carve pages into equal-size slots per size class with an in-place free list: O(1) alloc and free, no external fragmentation, cache-warm reuse.
›
+ 5 more primitives
System
Techniques · 2
Primitives · 21
os-kernel
Block io multiqueue
hardware-os · medium: Per-CPU submission queues mapped to hardware queues, tags and I/O schedulers (blk-mq)
Cpu scheduling eevdf
hardware-os · medium: Fair CPU scheduling: virtual runtime, CFS and EEVDF virtual deadlines, run queues, load balancing
Interrupt handling
hardware-os · low: How a device signal reaches a CPU handler through an interrupt controller and vector table, and how top/bottom halves, polling switch-over and coalescing keep load bounded.
›
Context switching
hardware-os · low: Handing a core to another task by saving and loading registers, stack and address space; the hidden cache and TLB cost outweighs the direct one.
›
Futex-based mutex
concurrency · low: A mutex that is one atomic word in user space and enters the kernel (futex wait/wake) only under contention; how std and glibc locks work.
›
RCU (read-copy-update)
concurrency · low: Readers access shared data with no locks or atomic writes; writers publish a new copy and free the old one after a grace period.
›
Spinlocks ticket mcs
concurrency · low: Test-and-set, ticket and MCS queue spinlocks; when spinning beats sleeping
Cgroups and namespaces
hardware-os · low: Linux namespaces limit what a process can see; cgroup v2 limits and accounts what it may use. Containers, sandboxes and job schedulers are built from the two.
›
Copy-on-write fork
hardware-os · low: fork() gives the child the parent's whole address space by sharing pages read-only and copying one only when someone writes it; vfork and posix_spawn skip even that.
›
DMA and IOMMU
hardware-os · low: How devices move data by direct memory access, and how an IOMMU gives each device its own address space, faults on stray accesses and lets user space or guests own a device safely.
›
mmap and the page cache
hardware-os · low: How read() and mmap reach file data through the kernel page cache, what readahead and madvise do, and why databases use their own buffer pool instead.
›
System call interface
hardware-os · low: The controlled gate between user code and the kernel: number and arguments in registers, a trap instruction, a validated handler, a result or error code.
›
Virtual memory and the TLB
hardware-os · low: How page tables and TLBs translate every address, what TLB reach means, and when 2 MiB or 1 GiB huge pages pay off on Linux.
›
io_uring
networking · low: Linux async I/O through two shared-memory rings (submissions in, completions out), batching or eliminating syscalls for sockets and files alike.
›
Buddy allocator
systems · low: Power-of-two block splitting and coalescing; base of kernel page and GPU heap allocators
Hierarchical timing wheel
systems · low: Timers bucketed by expiry into wheels of slots, coarser wheels for far deadlines: O(1) insert and cancel for millions of timeouts.
›
LRU and CLOCK
systems · low: LRU evicts the least recently used entry via hash map plus linked list; CLOCK approximates it with a reference bit, so hits take no lock.
›
Slab allocator
systems · low: Pre-carve pages into equal-size slots per size class with an in-place free list: O(1) alloc and free, no external fragmentation, cache-warm reuse.
›
Io request scheduling
hardware-os · low: Reorder and batch I/O by device position (elevator/SCAN, deadline) for seek-bound media
Nvme queues
hardware-os · low: NVMe submission and completion queue pairs, doorbells and polling from a driver
Order statistic tree
data-structures · low: Balanced tree with subtree counts for O(log n) rank and select
Tickless idle
hardware-os · low: Suppress the periodic tick while idle and compensate time on wake to save power
Memory ordering
concurrency · low: What Relaxed, Acquire, Release and SeqCst atomics actually guarantee, what they cost on x86 and ARM, and which one each pattern needs.
›
Copy for AI
Similar systems
Share the most building blocks with this one.
desktop-os
21 %