The time the x86 emulator team found code so bad that they fixed it during emulation - The Old New Thing
devblogs.microsoft.com · 332 words · saved by 1 readers
Offensive content in the eyes of a software engineer.
During an exchange of war stories, a colleague of mine told one from back in the days when Windows included a processor emulator for x86-32 on systems that natively ran some other processor. (This has happened many times. And no, I don’t know which processor this particular story applied to.) This particular emulator employed binary translation, generating native code to perform the equivalent operations of the original x86-32 code. This offered a significant performance improvement over emulation via interpreter. You can imagine that x86-32 is just a bytecode, and the emulator is a JIT…
saved by
related reading
- Measure What You Optimizecliffle.com
- abseil / Performance Hintsabseil.io
- Things You Should Never Do, Part I – Joel on Softwarejoelonsoftware.com
- The evolution of an x86 virtual machine monitorcourse.ece.cmu.edu
- The Story of Melusers.cs.utah.edu
- Zenbleedlock.cmpxchg8b.com
- All my favorite tracing tools: eBPF, QEMU, Perfetto, new ones I built and more - Tristan Humethume.ca
- Many can write faster asm than the compiler, yet don't. Why? — LessWronglesswrong.com
- 100R - weathering software winter100r.ca
- Chunks of Bytecode · Crafting Interpreterscraftinginterpreters.com
- A fundamental introduction to x86 assembly programmingnayuki.io
- abseil / Performance Hintsabseil.io