Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

QEMU is an emulator, not virtualization. It allows the user to run an OS designed for one type of CPU on a host system of a different type. i.e running Raspbian (ARM Linux) through QEMU on an X64 Linux Host running on an X64 machine.

Virtualization, by contrast, allows the user to run a guest OS designed for the same architecture as the physical hardware. i.e running x64 Linux guest on an X64 host that runs Windows as a host OS.



QEMU can do both the complete emulation you describe and accelerated virtualization similar to that offered by VMWare.


But to add to the complexity, many virtualization systems use QEMU as a support library to achieve stuff.


That's hardly the point. Many virtualization systems do indeed use QEMU for device emulation, but they don't use it to emulate the entire CPU functionality itself. A key point about virtualization is that most code run native while privileged instructions are trapped and handled by the hypervisor, allowing multiple guest OSes to coexist. This gives guest OSes the illusion that it's in sole control of the hardware.


I'm not nearly smart enough on that stuff. I fear I will need to get deeply into it in order to setup tooling that will run on the new Macs for embedded development.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: