Quote:
Originally Posted by
theKbStockpiler
Why emulate the CPU if you have the instruction set?
It's been found useful to break up one big server into many smaller, virtual ones. When you hear the term "virtual server" this is what they're talking about, a virtual environment inside a bigger server in which you can install pretty much whatever OS and software you want. Sometimes the host OS supports virtual environments natively, or it can be done through software like Qemu and VMware. Hardware virtualization has made this reasonably efficient now, but if they had to actually
emulate all these environments instruction by instruction? It wouldn't be practical.
Quote:
The data structure is Really the Emulated CPU is it not?
Data is registers; they just sit there. The
program has to decide what to do to them. In a real CPU, this would be decided in hardware. In a software emulator, it has to do it 'by hand' as it were, decoding which instruction it is with binary logic operations and finding it in a big look-up table or something, then doing operations on the "registers" as appropriate.
Quote:
The emulated CPU would be imaginary besides for its reprentation in a file the emulator would address so I could have registers of how many and what size I could dream up could I not?
Absolutely. I was just talking about optimization.