AYOUB.*
← CS FUNDAMENTALSREPOS ↗

Appendix B · Part V: Reference

Glossary

Every term that this book defines at first use, gathered alphabetically with the chapter that introduces it.

In this chapter
  1. A to C
  2. D to I
  3. K to Q
  4. R to Z

A to C

ACID
Atomicity, consistency, isolation, and durability. The four properties that a database transaction provides. Chapter 7.
AEAD
Authenticated encryption with associated data. An encryption mode that provides confidentiality and integrity together. Chapter 15.
Aggregate
A cluster of domain objects with one root, forming a transactional consistency boundary. Chapter 6.
Amdahl's law
Speedup equals 1 divided by ((1 minus p) plus p over N), where p is the parallel fraction. Chapter 4.
Anticorruption layer
A translation layer that keeps a foreign model out of a bounded context. Chapter 6.
ARIES
The recovery design that most relational engines follow: write-ahead logging, repeating history during redo, and logging undo actions. Chapter 7.
Arithmetic intensity
Floating point operations performed per byte moved from memory. Chapter 1 and Chapter 13.
Backpressure
A signal that travels from a slow consumer to a fast producer, telling it to slow down. Chapter 11.
Bloom filter
A bit array plus several hash functions that answers set membership with no false negatives and a tunable false positive rate. Chapter 3.
Bounded context
The scope inside which one domain model and one language hold. Chapter 6.
Bufferbloat
Added latency caused by a deep network buffer that absorbs excess traffic instead of dropping it. Chapter 9.
Bulkhead
A per-dependency resource pool that stops one slow dependency from consuming every thread. Chapter 11.
Burn rate
The multiple of error budget consumption that exhausts the budget exactly at the end of the window. Chapter 14.
CAP theorem
During a network partition, a replicated system cannot have both linearizability and total availability. Chapter 8.
Cardinality
The number of distinct time series, which is the product of the distinct values of every label. Chapter 14.
Cache line
The unit of transfer between memory levels. 64 bytes on x86-64 and most Arm cores. Chapter 1.
CDC
Change data capture. Reading a database write-ahead log and emitting one event per row change. Chapter 12.
Circuit breaker
A component that stops calls to a failing dependency, with closed, open, and half-open states. Chapter 11.
CNI
Container Network Interface. The plugin contract for creating a pod's network interface. Chapter 10.
Coalescing, memory
Combining the memory accesses of a GPU warp's lanes into one transaction. Chapter 4.
Connascence
A graded measure of coupling, from name through type, meaning, position, algorithm, execution, timing, value, and identity. Chapter 6.
Consistent hashing
A key-to-node mapping that remaps only the keys of a departed node when membership changes. Chapter 9.
Continuous batching
Inference scheduling that admits new requests into freed batch slots at every decode step. Chapter 13.
Coordinated omission
A measurement error where a load generator stops sending during a stall, omitting the worst samples. Chapter 14.
CQRS
Command query responsibility segregation. Separate models for writes and reads. Chapter 6.
CRDT
Conflict-free replicated data type. A type whose merge is commutative, associative, and idempotent, so replicas converge. Chapter 8.
CRI
Container Runtime Interface. The gRPC contract between the kubelet and a high-level container runtime. Chapter 10.
CXL
Compute Express Link. A cache-coherent interconnect for attached memory over the PCIe electrical layer. Chapter 1.

D to I

Deadline propagation
Passing an absolute expiry time through a call chain so each hop knows its remaining budget. Chapter 9.
Deoptimization
Rewriting an optimized stack frame back into interpreter form when a speculation fails. Chapter 5.
Disaggregated serving
Running inference prefill and decode phases on separately sized machines. Chapter 13.
eBPF
A virtual machine inside the Linux kernel that runs user-supplied programs at defined hooks, after a static analyzer proves that they terminate and stay in bounds. Chapter 2.
EEVDF
Earliest Eligible Virtual Deadline First. The Linux normal-class scheduler since kernel 6.6. Chapter 2.
Envelope encryption
Encrypting data with a per-object key and encrypting that key with a key encryption key. Chapter 15.
Error budget
The allowed shortfall from a service level objective, which is one minus the objective. Chapter 14.
Event sourcing
Storing the sequence of changes as the source of truth, with current state as a fold over them. Chapter 6.
Exactly-once
A guarantee that the visible effect happens once, whatever fails. Not the same as delivering a message once. Chapter 12.
External memory model
A cost model that counts block transfers of size B against a fast memory of size M. Chapter 3.
False sharing
Two threads write different variables that share one cache line, so the line moves between cores. Chapter 1.
FLP
The Fischer, Lynch, and Paterson result: no deterministic algorithm solves consensus in an asynchronous system with one crash. Chapter 8.
Futex
The Linux primitive under a mutex, which enters the kernel only when a thread must wait. Chapter 4.
Goodput
Throughput restricted to the work that met its latency target. Chapter 13.
Grouped query attention
Sharing one key and value head across several query heads to shrink the key and value cache. Chapter 13.
Hazard pointer
A published pointer that tells a reclaimer which nodes a thread currently reads. Chapter 4.
Hexagonal architecture
Ports and adapters. The domain defines interfaces and infrastructure implements them, so every dependency points inward. Chapter 6.
HLC
Hybrid logical clock. A timestamp with a physical component and a logical counter. Chapter 8.
HNSW
Hierarchical Navigable Small World. A layered proximity graph for approximate nearest neighbor search. Chapter 3.
Idempotent
Safe to run twice. Running the operation again produces the same effect as running it once. Chapter 8.
Inline cache
A call site record of observed types, which lets a compiler inline a virtual call behind a type guard. Chapter 5.
io_uring
A Linux interface with shared submission and completion rings, which reports completion and amortizes crossings. Chapter 2.

K to Q

KPTI
Kernel page table isolation. A Meltdown mitigation that gives the kernel and user space separate page tables. Chapter 2.
Latch crabbing
Releasing a parent node's latch as soon as the child is known to be safe during a tree descent. Chapter 7.
Linearizability
Every operation appears to take effect at one instant between its invocation and its response, respecting real time. Chapter 8.
Little's law
Concurrency equals arrival rate times time in the system. Chapter 4.
LSM-tree
Log-structured merge tree. Writes go to memory, flush to immutable sorted files, and merge in background compaction. Chapter 7.
Metastable failure
A failure state that sustains itself after the trigger is gone, because the state generates the load that keeps it there. Chapter 16.
MESI
The cache coherence protocol family with Modified, Exclusive, Shared, and Invalid line states. Chapter 1.
MGLRU
Multi-generational least recently used. The Linux page reclaim design since kernel 6.1. Chapter 2.
ML-KEM
The NIST-standardized post-quantum key encapsulation mechanism, FIPS 203. Chapter 15.
MVCC
Multi-version concurrency control. Keeping several row versions so readers never block writers. Chapter 7.
NAPI
The Linux driver mechanism that disables receive interrupts under load and polls instead. Chapter 2.
NUMA
Non-uniform memory access. Memory attached to sockets, so local and remote access differ in cost. Chapter 1.
Outbox pattern
Writing an event to a table in the same transaction as the state change, then relaying it. Chapter 6.
PACELC
If partitioned, choose availability or consistency. Else, choose latency or consistency. Chapter 8.
PagedAttention
Managing the key and value cache in fixed-size blocks with a per-sequence block table. Chapter 13.
Prefill
The inference phase that processes the whole prompt at once, which is compute bound. Chapter 13.
PSI
Pressure Stall Information. Kernel counters for the time that tasks waited on memory, I/O, or CPU. Chapter 2.
QUIC
A transport over UDP with per-stream reliability, a connection identifier, and an integrated cryptographic handshake. Chapter 9.

R to Z

RAII
Resource acquisition is initialization. Tying a resource lifetime to an object lifetime. Chapter 5.
Raft
A consensus algorithm structured as leader election, log replication, and safety rules. Chapter 8.
RCU
Read-copy-update. A scheme where readers do no synchronization and writers publish new versions. Chapter 4.
Retry budget
A cap on retries as a fraction of total requests, which keeps the retry amplification loop below gain one. Chapter 11.
RSS
Receive side scaling. Hashing packet headers in the network card to select a hardware queue. Chapter 2.
RUM conjecture
A data structure optimizes at most two of read overhead, update overhead, and memory overhead. Chapter 7.
Saga
A sequence of local transactions with compensating business actions, replacing a distributed transaction. Chapter 6.
Sched_ext
A Linux scheduling class whose policy is supplied by an eBPF program. Chapter 2.
Sequential consistency
All processes see one order of operations, consistent with each process's own program order. Chapter 8.
SIMT
Single instruction multiple threads. The GPU model where a warp executes one instruction across its lanes. Chapter 4.
SLI, SLO
Service level indicator and objective. A measurement of quality and a target for it. Chapter 14.
SoA
Structure of arrays. One array per field, which improves locality and vectorization for field-wise access. Chapter 1.
Speculative decoding
Using a draft model to propose tokens and the full model to accept or reject them in one pass. Chapter 13.
SPIFFE
A workload identity standard with URI-named identities carried in short-lived certificates. Chapter 15.
SSI
Serializable snapshot isolation. Snapshot isolation plus dependency tracking that aborts non-serializable outcomes. Chapter 7.
Swiss table
A hash table that stores seven hash bits per slot in a control byte array and probes sixteen slots per SIMD compare. Chapter 3.
Tail-based sampling
Deciding whether to keep a trace after it completes, so errors and slow traces are kept. Chapter 14.
TLB
Translation lookaside buffer. The cache of virtual to physical address translations. Chapter 1.
TSO
Total store order. The x86-64 memory model, where only a store followed by a load to a different address reorders. Chapter 4.
Vector clock
One counter per node, which distinguishes happened-before from concurrent. Chapter 8.
Watermark
An assertion in a stream that no event earlier than a given time will arrive. Chapter 12.
Write amplification
Bytes written to the device per byte the user wrote. Chapter 7.
XDP
eXpress Data Path. An eBPF hook inside the network driver, before socket buffer allocation. Chapter 2.
Zero trust
An architecture with no implicit trust from network location, requiring continuous verification of every request. Chapter 15.
ZGC
A Java collector that stores metadata in pointer bits and repairs references in a load barrier, giving pause times independent of heap size. Chapter 5.

Appendix B of Computer Science: From First Principles to Production Scale, revision 1.0. Attribution and sole author credit: Ayoub Zulfiqar.