I · The linear primitives

Queue

First in, first out.

The story

Older than computer science. Every batch system since the 1940s queued jobs. The interesting question is the implementation: circular buffer, linked list, lock-free ring? Each has a different concurrency story.

How it works

Enqueue at tail, dequeue at head. Two pointers chase each other around a fixed buffer (ring) or grow as needed (linked).

Where it lives

Every web server's pending-request buffer. BFS. Print spoolers. OS scheduler runqueues. Kafka, RabbitMQ, NATS: at the bottom of every message broker.

The key insight

Lock-free queues (Michael-Scott 1996, LMAX Disruptor) are an entire research field. Adding concurrency turns "trivial" into a PhD topic.