Concepts (34)
-
2026-09-04
concepts
Assembly
Low-level, machine-oriented programming, one step above machine code.
-
2026-09-04
concepts
Binary Addition
Adding numbers in base 2 — the operation that underlies all arithmetic.
-
2026-09-04
concepts
BIOS Interrupts
BIOS services invoked via software interrupts in real mode, e.g. int 10h for video.
-
2026-09-04
concepts
Bootloader
The first code a computer runs at startup, loading the OS into memory.
-
2026-09-04
concepts
C Macros
Preprocessor macros; protothreads abuse them to simulate yields.
-
2026-09-04
concepts
C++11
The C++11 standard, which introduced lambdas, move semantics and more.
-
2026-09-04
concepts
Capture
How lambdas access variables from the enclosing scope, by value or by reference.
-
2026-09-04
concepts
Carry
The overflow bit propagated to the next column when adding binary digits.
-
2026-09-04
concepts
Character Device
A Linux device that transfers data byte-by-byte through file operations.
-
2026-09-04
concepts
Closure
A function that captures variables from its surrounding scope and carries them along.
-
2026-09-04
concepts
Computer Architecture
How hardware components cooperate to fetch, decode and execute programs.
-
2026-09-04
concepts
Disassembly
Reading machine code back into assembly to understand a binary.
-
2026-09-04
concepts
Embedded
Programming resource-constrained systems without an OS or full libc.
-
2026-09-04
concepts
File Operations
The open/read/write/release callbacks a character driver implements.
-
2026-09-04
concepts
Full Adder
A digital circuit that adds three bits: two inputs plus a carry-in.
-
2026-09-04
concepts
Functor
A struct with an overloaded operator(), an object that behaves like a function.
-
2026-09-04
concepts
Kernel Module
Loadable code that runs in kernel space to extend the OS.
-
2026-09-04
concepts
Lambda
Anonymous inline functions definable anywhere in code. Introduced in C++11.
-
2026-09-04
concepts
Linux Kernel
The core of Linux; device drivers talk to hardware on its behalf.
-
2026-09-04
concepts
Logic Gates
The basic building blocks (AND, OR, XOR, NOT...) of digital circuits.
-
2026-09-04
concepts
Machine Code
The raw binary instructions a CPU directly executes.
-
2026-09-04
concepts
ncurses
A library for building full-screen text user interfaces in the terminal.
-
2026-09-04
concepts
objdump
The GNU tool that disassembles binaries and inspects object files.
-
2026-09-04
concepts
OS Development
Writing kernels and low-level system software from scratch.
-
2026-09-04
concepts
Protothreads
Dunkels' library for stackless, lightweight threading in C, built on macros.
-
2026-09-04
concepts
pthreads
POSIX threads — the standard, but heavyweight, C threading API.
-
2026-09-04
concepts
Raw Mode
Terminal mode that disables line buffering and echo for live key handling.
-
2026-09-04
concepts
Real Mode
The 16-bit x86 mode active at boot, with direct access to hardware and BIOS.
-
2026-09-04
concepts
Reverse Engineering
Analyzing how something was built, often starting from its binary.
-
2026-09-04
concepts
Stackless Concurrency
Concurrency without per-thread stacks, using state machines instead.
-
2026-09-04
concepts
std::sort
The sorting algorithm in <algorithm>; commonly passed a comparison lambda.
-
2026-09-04
concepts
Terminal
The text interface to a computer — a screen of characters.
-
2026-09-04
concepts
TUI
Text user interfaces: full-screen apps inside the terminal, like vim and htop.
-
2026-09-04
concepts
User/Kernel Space
The separation between applications and the privileged kernel.