How the Linux VFS Works: Inodes, Dentries, and Why Paths Are Not Files
An open("/var/log/app.log", O_RDONLY) does not hand the kernel a file. It hands the kernel a string. The Virtual File System (VFS...
An open("/var/log/app.log", O_RDONLY) does not hand the kernel a file. It hands the kernel a string. The Virtual File System (VFS...
A NIC that just received a frame cannot wait for the current process to finish a syscall. The device raises a hardware interrupt. The CPU st...
A process that spends all its time in a tight userspace loop never notices SIGTERM until the kernel has a chance to put that process back on...
A process asks for a few bytes from a file. The kernel may return them without asking the storage device for anything at all—not because the...
A mutex that takes a system call on every lock and unlock would dominate a hot critical section. The uncontended case is a few atomic instru...
A process that accepts ten thousand TCP connections cannot afford to ask the kernel about each socket in turn. select(2) and poll(2) copy ...
A shared linked list in the kernel can be walked by thousands of cores at once. A writer still has to insert or delete a node. If every walk...
A CPU core runs one thread at a time. Everything else that looks concurrent is a lie the operating system maintains by switching. The policy...
A kernel module can do almost anything. That is why loading one is a privileged act and why a bug in one can take the machine with it. eBPF ...