How TLB Shootdowns Work: IPIs, PCIDs, and Why Unmapping a Page Is Not Free
A process that calls munmap on a range it no longer needs expects the virtual addresses to disappear. On a single-core machine that is almo...
A process that calls munmap on a range it no longer needs expects the virtual addresses to disappear. On a single-core machine that is almo...
A process that calls munmap on a range it no longer needs expects the virtual addresses to disappear. On a single-core machine that is almo...
A process that calls send() on a TCP socket expects the bytes to leave the machine eventually. It does not expect the call to wait until the...
A database that calls fsync after a commit expects the bytes it wrote to survive a power cut. A filesystem that just renamed a temporary fil...
A filesystem that wants to write a dirty page does not issue a single system call that waits for the disk. It builds a bio , submits it, and...
A process that calls malloc for a multi-gigabyte buffer on a two-socket server does not receive equal-cost memory. The physical frames behin...
A NIC that has just finished DMA-ing a frame into a host ring buffer does not copy the payload in its hard interrupt handler. The handler do...
A process that calls unshare(CLONE_NEWPID) and then fork does not get a private machine. It gets a private view of process IDs. The child se...
A network interface that just received a frame does not interrupt the CPU so the processor can copy the payload. The device writes the frame...
A packet from a laptop in Mumbai to a server in Frankfurt does not ask the Internet for the shortest path. It follows a route that some netw...
Two threads can each write a flag and then read the other thread's flag, and both reads can return the old value. Nothing in the source ...
A string that looks like one character can be one byte, two bytes, or several code points that a font draws as a single glyph. len in one l...
A statement like 0.1 + 0.2 == 0.3 fails in Python, JavaScript, Java, Go, and C for the same reason. None of those languages stored the deci...