Words

Twenty-eight words the machines share. Each one says what the word means in a few dozen words and then points at the machine that actually explains it, because the explanation belongs on a machine you can operate rather than in a definition you can only read.

A word earns its place here only if more than one machine needs it. That is the same rule the method already applies to groundings, at the grain of a term rather than a topic.

A link here says that two pages use the same meaning, not just the same spelling. A window of data in flight is not a refresh window; an error burst is not a burst of sound. The links come from reviewed passages. Matching a word proposes a candidate, and the candidate earns a link only after that distinction has been checked.

The vocabulary

28 words. Each one points at the machine that explains it and stops there.

alignment

Whether a piece of data starts where the hardware would prefer it to. Get it wrong and something that looks like one access becomes two, or two things that look independent land on the same line and stop being independent.

Explained in False Sharing.

Also used by The Call Stack, Fragmentation, SIMD.

alphabet

The fixed set of things a code is allowed to say. Its size sets the floor on how long the codes must be, so choosing the alphabet is already most of the design. Everything after it is a question of which symbol gets which code.

Explained in Morse.

Also used by Baudot, Punch Cards, Huffman, ASCII, Z-Characters, LZW.

atomic

Happening completely or not at all, with nothing able to observe a half-done version. It is a claim about what others can see rather than about speed, and almost every concurrency bug here is something that was assumed atomic and was not.

Explained in Compare and Swap.

Also used by Race, False Sharing, Shell Expansion, Futex.

bias

A systematic preference or error, as opposed to trial-to-trial noise. An estimator can lean high; a shuffle can favour some orderings over others. Repeating the experiment reveals that pattern instead of averaging it away. A repeatable answer can still be a biased one.

Explained in Count Distinct.

Also used by The Shuffle.

burst

Errors arriving together rather than scattered. Most codes are built for scattered errors and fall over on a run of them, which is why a burst is usually broken up before it is corrected rather than corrected where it lies.

Explained in Interleave.

Also used by Hamming, CRC.

codeword

One complete valid pattern in an error-control code. Its redundancy separates it from other valid patterns so damage can be detected or repaired within the code’s limits. The message need not appear unchanged inside it: Reed–Solomon here sends polynomial values instead.

Explained in Reed-Solomon.

Also used by CRC, Interleave.

dictionary

The table of things already seen, used to write later repeats short. The interesting trick is that both ends can build the same table from the data itself, so the table never has to be sent.

Explained in LZW.

Also used by LZ77.

entropy

The average information per symbol under a stated probability model. For independent symbols with those probabilities it gives the ideal average coding rate. An individual message may cost less or more, and a coder exploiting correlations may beat a model that counted only single symbols.

Explained in Arithmetic Coding.

Also used by Huffman, PNG Filters.

eviction

Choosing what to remove when something new needs the space. Every cache is a bet that what it kept will be wanted again, and the eviction rule is the bet. Getting it wrong costs more than not caching at all.

Explained in CPU Cache.

Also used by Page Fault, Cache Coherence.

kernel

The part that runs with the privilege to touch everything, so that ordinary programs do not have to. Its size is a design argument: everything inside it is trusted by everything outside it.

Explained in Context Switch.

Also used by The Inode, The System Call, Line Discipline, Shell Expansion, Futex.

offset

How far into something a piece sits, counted from its start. Splitting an address into a which-block part and a how-far-in part is what lets the first part be translated or looked up while the second is carried through untouched.

Explained in Page Fault.

Also used by Fifteen Planes, The Inode, False Sharing.

overflow

When arithmetic produces a value outside the format’s range. A fixed-width integer may keep only low bits; a decimal reel display may roll back to zero. The result depends on the representation, so a carry out and signed overflow are different questions.

Explained in Two's Complement.

Also used by Score Reel, The Interrupt, The System Call, Futex.

parity

A check value formed by combining data values. A parity bit records whether there is an odd or even number of ones; RAID can XOR corresponding bytes. Error-correcting codes also use parity symbols, with their own combining rules. What can be recovered depends on those rules.

Explained in RAID Parity.

Also used by Hamming, ASCII, Interleave, UTF-8, Reed-Solomon.

pointer

A value whose meaning is where something else is. Following one costs a trip, so the shape of a structure is largely a question of how many pointers must be followed before the thing you wanted is in your hands.

Explained in B-tree.

Also used by LZ77, The Call Stack.

precision

How finely a format can distinguish two nearby values. It is not accuracy: a value can be stored to many digits and still be wrong. Running out of precision is what makes two different things compare as equal.

Explained in Z-Buffer.

Also used by Dithering, Premultiplied Alpha, Floating Point, Spectre, Arithmetic Coding, Sampling, Catastrophic Cancellation.

quantisation

Replacing a continuous range with a limited set of steps. It is where information is deliberately thrown away, and the whole craft is choosing what to discard so the loss lands somewhere nobody looks.

Explained in JPEG.

Also used by CORDIC, Masking.

redundancy

Bits that carry no message and exist only so that a change can be noticed. Add none and any corruption reads as data; add plenty and you can find or repair the damage. What you get back is always paid for in what you send.

Explained in CRC.

Also used by RAID Parity, Reed-Solomon.

reference

A way of naming something without holding it. Two references can point at one object, so the object is alive while any of them can still be reached, and dead when none can. Deciding which is which is harder than it sounds.

Explained in Garbage.

Also used by LZ77, Page Replacement.

rounding

Choosing a representable number when the true answer is not one. It is not an error in the sense of a mistake, it is the price of a finite format, and it is decided by a rule rather than by chance. The rule is what makes results reproducible.

Explained in Floating Point.

Also used by Bresenham, Dithering, JPEG, Gamma, Count Distinct, DMA, FFT, Sampling, Catastrophic Cancellation.

scheduler

The part that decides which waiting thing runs next, and for how long. It does not make anything faster; it decides who waits. Nearly every fairness or starvation argument in this collection is really an argument about a scheduler's rule.

Explained in Round Robin.

Also used by Context Switch, Out of Order, Deadlock.

seed

The number a pseudorandom sequence starts from. The same seed gives the same sequence every time, which is what makes a random-looking demonstration reproducible and a failing test re-runnable. Randomness you cannot repeat is randomness you cannot debug.

Explained in The Shuffle.

Also used by Fifteen Planes, Backoff, Longest Prefix, The Middle Square, Packet Switching, Carry-Lookahead Adder, Line Discipline.

state

Whatever a circuit still knows after its inputs stop telling it. A machine with no state answers the same question the same way forever; a machine with state can answer differently because of what already happened to it. Almost every mechanism here that surprises you is storing something.

Explained in Flip-Flop.

Also used by Punch Cards, Core Memory, The Interrupt, Context Switch, ASCII, Deadlock, Sequence Numbers, MVCC, Branch Prediction, Cache Coherence, UTF-8, Spectre, The Middle Square, The Shuffle, Regular Expressions, Memory Ordering, AES, Copy-on-Write, Metastability, Two-Phase Commit, Spanning Tree, Consistent Hashing, The Semaphore, Page Replacement, Consensus, Futex.

symbol

One unit in the alphabet a code works on. It might be a character, a bit, or a byte, depending on the code. Keep that unit separate from the pattern used to represent it, and from the whole message made of many units.

Explained in Huffman.

Also used by LZ77, Interleave, Reed-Solomon, Arithmetic Coding.

syndrome

The pattern produced by a code’s parity checks. Zero means the received pattern passes those checks, not that no corruption occurred. In Hamming’s single-error case the pattern identifies the damaged position; other codes need further work to locate and correct errors.

Explained in Hamming.

Also used by Interleave.

threshold

The boundary at which a rule gives a different answer. A current becomes enough to flip a core; a tone falls below what another tone masks; a window changes how it grows. The units change, so compare a threshold only with the quantity it governs.

Explained in Masking.

Also used by Core Memory, Bloom Filter, Raster, Slow Start, Longest Chain, Count Distinct, Majority, Rowhammer.

transaction

A group of changes that must all happen or none of them. The hard part is not doing the work, it is being able to undo it after a crash that arrived in the middle, which is why the intention is usually written down before the change.

Explained in Write-Ahead Log.

Also used by MVCC, Two-Phase Commit.

trap

A transfer to a handler caused by the instruction being executed: a requested service, or a fault that prevents the instruction from finishing. Architectures give these cases different names. Keep the cause separate from an interrupt arriving from a device.

Explained in Context Switch.

Also used by Page Fault, Copy-on-Write, The System Call.

window

How much may be in flight before the sender has to stop and wait. Widen it and throughput rises until something else is the limit; narrow it and the link idles between acknowledgements. The size is a bet about the round trip.

Explained in Sequence Numbers.

Also used by Slow Start.

What this page does not do

It does not explain anything, on purpose

Every body here is between twenty and sixty words, and that is not enough to explain a mechanism. They are not meant to. A word earns a place only when it points at a machine that already explains it properly, and the entry stops at the pointer. If you find yourself wanting more from an entry, that is the page working: the machine it names is the more.

Six words qualified and were left out

The admission count is now of reviewed uses of one meaning. Twenty-eight are here. Six more cleared the same count of spellings at the earlier selection and were left out: latency, collision, throughput and sector would have repeated a machine or joined different concepts. isolation and exponent also joined spellings that meant different things: transaction isolation is not cross-origin isolation, and a floating-point exponent field is not every use of exponentiation. Those earlier rejection reasons remain recorded. A count can establish that a word is shared; it cannot establish what the word means.

A spelling match no longer publishes a link

The bodies, owning machines and meaning decisions are authored. The build reads the machines’ own prose and checks the passages those decisions cite. Shared introductions, source lists and navigation do not count as a machine explaining a word. A new occurrence needs a decision; a changed passage needs another look. Earlier versions inferred every link from a spelling match, which joined sound to error correction and processor instructions to database commits. The checks now preserve a reviewed relationship. They do not replace the review.

These are not definitions, and some of them are contested

A word like state or atomic carries a different weight in a database, a processor and a network, and no body this short reconciles those. Each entry says what the word means in the sense the machines here use it, which is a narrower and more honest claim than a dictionary would make. Where a machine uses a word in its own particular way, that machine’s page is the authority and this one is not.