4 ms·
I know next to nothing about hardware / instruction set support from the CPU side, but there are several hypervisors who are open source and thus available for
by krylon 5y ago
I know next to nothing about hardware / instruction set support from the CPU side, but there are several hypervisors who are open source and thus available for study: Qemu itself, Xen, Linux KVM, FreeBSD's bhyve, OpenBSD's vmm. Oh, and there's VirtualBox.
I vaguely recall someone telling me that the qemu source code is fairly readable, but I have not looked at any of these myself, so consider it hearsay.
I don't know about the others, but the FreeBSD developers have a separate mailing list for discussion of virtualization, https://lists.freebsd.org/subscription/freebsd-virtualization https://lists.freebsd.org/subscription/freebsd-virtualizatio...
- q3k 5y ago> I vaguely recall someone telling me that the qemu source code is fairly readable [...] That someone was either pranking you or knows a mysterious part of the qemu codebase that's unlike the rest of the criminally underdocumented qemu soup. Or my standards are too high.
- krylon 5y agoThat person might have been sarcastic, I've been known to miss that, especially in written conversations. I also might misrember.
- pas 5y agoThe source is okay, the problem is that there's really no docs/examples for even the basic stuff. Do you want to boot from a virtual block device and PXE from a network drive ... well, maybe these 300 command line arguments in some random order will work. Eventually. Have fun. So reading the source is a big help in that. But it's not ideal. And libvirt/oVirt/etc are helpful, but not for just that quick and dirty "let's try something out with the linux kernel in qemu" thing.
- tyingq 5y agoThe xhyve fork/port of bhyve for MacOS is worth mentioning: https://github.com/machyve/xhyve https://github.com/machyve/xhyve