How Can Multiple Threads Modify the Same Data Without Locks? The Science of Lock-Free Programming and the ABA Problem
Why Old Game Consoles Can Be Recreated in Software: The Architecture of Emulation — Interpreters, JIT Dynamic Recompilation, Fastmem, and Cycle Accuracy
Why Computers Can't Add 0.1 and 0.2: The Science of IEEE 754 Floating-Point Arithmetic and Precision Errors