Operating Systems
The parts of the OS you hit for real — memory limits, file descriptors, blocked I/O, throttled containers.
5 topics
Processes, memory, and the kernel boundary
What a running program actually owns, why a system call is expensive, and where the memory in your process is going.
core25 minVirtual memory and the memory hierarchy
Every address your program uses is a lie the kernel maintains, and the cost of resolving it spans five orders of magnitude.
core25 minFile descriptors and I/O models
Everything is a file descriptor, they are a finite resource, and how you wait on them decides how many connections one process can serve.
core25 minScheduling and context switching
How the OS shares a few cores among hundreds of threads, and why adding more threads eventually makes things slower.
deep20 minContainers and resource limits
Namespaces and cgroups, not virtual machines — and the limits they impose are the reason your process was killed without a stack trace.
deep20 min