Tag: design-concurrency
All the articles with the tag "design-concurrency".
-
System Design - How the Python GIL (Global Interpreter Lock) Works
How CPython's Global Interpreter Lock works: the GIL data structure, eval loop integration, tick vs timeout-based switching, GIL release during I/O, impact on threading, and the road to removing it (PEP 703, free-threaded Python 3.13+).
-
System Design - How Serializable Snapshot Isolation (SSI) Works
How Serializable Snapshot Isolation (SSI) works: the theory behind detecting dangerous read-write conflicts in MVCC databases, how PostgreSQL implements it, and why it matters for correctness without sacrificing concurrency.
-
System Design - How Linux cgroups Work
How Linux control groups (cgroups) work: resource isolation and limiting for processes, the filesystem interface, v1 vs v2 architecture, memory/cpu/io/pids controllers, kernel internals, OOM killer integration, and how Docker and Kubernetes use cgroups to build containers.
-
System Design - How CPU Memory Ordering and Memory Models Work
How CPU memory ordering works: why instructions execute out of order, store buffers, the x86-TSO and ARM/RISC-V relaxed models, memory barriers, and how languages like C++ and Go map atomic operations to hardware fences.
-
System Design - How Lamport Clocks and Vector Clocks Work
How logical clocks solve the ordering problem in distributed systems: Lamport clocks, vector clocks, causal ordering, happens-before relation, and real-world usage in databases like DynamoDB, Riak, and CockroachDB.
-
System Design - How WebAssembly (Wasm) Works
How WebAssembly works: binary format, stack-based virtual machine, module structure, linear memory model, compilation from source languages, and the security sandbox.