4 ms·
While academically interesting, I'll wager a guess that QEMU wins in every performance comparison, right? While writing a TCG-style thunking generator is not "s
by Locke1689 15y ago
While academically interesting, I'll wager a guess that QEMU wins in every performance comparison, right? While writing a TCG-style thunking generator is not "simple", it is extremely fast.
I'm also not really sure what instruction set you're targeting here. This is a very small subset of IA-32(e) if I'm not mistaken.
- lobster_johnson 15y agoThis is, as I understand it, not an emulator but a VM core for running bytecode. A better comparison would be the JVM, or LLVM, or any of the VMs used by popular languages such as Ruby and Python.
- Locke1689 15y agoAh yes, a language VM, not an OS VM. My mistake.
- erikb 15y agoCan you explain the difference? From my point of view, both are in principle loops that execute a set of Assembly-like instructions.
- lobster_johnson 15y agoEmulators like QEMU are designed to emulate an existing instruction set such as x86, and they also need to emulate a specific memory model, interrupt model, I/O subsystem etc. VMs such as in this post are designed without such constraints. Both are designed around the core principle of a "virtual machine" — decode some kind of stream of machine code instructions, execute each instruction, and maintain the stack and memory state along the way — but they target different use cases with different nuances in the implementation.