The role of emulation and virtualization in cybersecurity through history
The capability of executing a program with instrumentation – that is, extra code is added to observe particular behaviors – and being able to understand sources and sinks of functions and how an input may influence the state of a system, exploit it, or crash it has become of fundamental importance. Predicting corner cases in programs may save lives, such as in software running in machines in hospitals, airplanes, or dishwashers, among others. Also, security and safety often interleave themselves and mangle in such a way that programs need to be tested for months, if not years, to ensure that plausible issues can be explored. There are many documented cases of rockets and probes self-destructing because of software errors (https://medium.com/swlh/some-of-the-most-famous-bugs-in-software-history-bb16a2ee3f8e).
It is not incidental that one of the most comprehensive documentation on QEMU internals...