Computer Systems & Networks

Binary representation, CPU architecture and the memory hierarchy, operating systems, and computer networks.

Binary Representation and Computer Arithmetic

Every value a computer works with โ€” a character, an integer, a photograph, a piece of music โ€” is, underneath, a sequence of binary digits. What makes that workable isn't magic; it's a small set of agreed encodings forโ€ฆ

CPU Architecture and Memory Hierarchy

A processor's job, at the lowest level, never really changes: fetch an instruction, work out what it means, and carry it out. Everything covered on this page is either a refinement of that cycle for speed, or an answerโ€ฆ

Operating Systems Fundamentals

An operating system is easy to describe too narrowly as "the thing that runs your programs." Its real job is resource abstraction and arbitration : many programs want to use one CPU, one pool of memory, and one set ofโ€ฆ

Computer Networks Fundamentals

Two things have to be true for one computer's program to talk to another's: both sides need to agree on how bits are packaged and addressed, and both sides need a shared discipline for handling the fact that networksโ€ฆ