A great piece of software that makes my and my dev team's life infinitely better and easier. A big thank you to the QEMU developers :)
I couldn't find any way to donate to QEMU directly, only https://sfconservancy.org/donate/
QEMU 10.1.0
31–40 of 61 posts
Re: QEMU 10.1.0
#32QEMU is truly excellent software, from the perspective of a person who very rarely needs to emulate another architecture. It "just works" and has wonderful integrations with basically everything I could want.. sometimes it feels like magic: even if the commandline UX is a bit weird in places. I've always wondered though how it works with KVM: I know KVM is a virtualisation accelerator that enables passing through nat…
KVM is basically three components. * An abstraction over second level page tables to map some of a host user process as what the guest thinks of as physical memory. * An abstraction to jump into the context that uses those page tables, and traps back out in the case of anything that the hardware would normally handle, but the hypervisor wants to handle manually instead. * A collection of mechanisms to handle some of…
Eg- the memory the VM can access is controlled by the MMU of the CPU (below ring0/kernel). Resulting in the only VM escapes being the Shim(s) for talking with the host (network, memory balloon, graphics).
Re: QEMU 10.1.0
#33Earlier quoted context omitted.
Where could someone get started in terms of reading material to learn more about this in depth?
I would assume sooner or later you're going to end up in the Intel Developer manuals or the equivalent for whatever architecture you are interested in. The Intel ones are very complete at least.
Re: QEMU 10.1.0
#34Didn't realize there was a MIPS build of Windows NT. Which led me to wikipedia to find there were a lot of other architectures supported in the past.
Re: QEMU 10.1.0
#35QEMU is truly excellent software, from the perspective of a person who very rarely needs to emulate another architecture. It "just works" and has wonderful integrations with basically everything I could want.. sometimes it feels like magic: even if the commandline UX is a bit weird in places. I've always wondered though how it works with KVM: I know KVM is a virtualisation accelerator that enables passing through nat…
KVM is basically three components. * An abstraction over second level page tables to map some of a host user process as what the guest thinks of as physical memory. * An abstraction to jump into the context that uses those page tables, and traps back out in the case of anything that the hardware would normally handle, but the hypervisor wants to handle manually instead. * A collection of mechanisms to handle some of…
Re: QEMU 10.1.0
#36Re: QEMU 10.1.0
#37Earlier quoted context omitted.
KVM is basically three components. * An abstraction over second level page tables to map some of a host user process as what the guest thinks of as physical memory. * An abstraction to jump into the context that uses those page tables, and traps back out in the case of anything that the hardware would normally handle, but the hypervisor wants to handle manually instead. * A collection of mechanisms to handle some of…
Where could someone get started in terms of reading material to learn more about this in depth?
https://github.com/rust-vmm/kvm https://github.com/kvmtool/kvmtool https://github.com/sysprog21/kvm-host
Re: QEMU 10.1.0
#38Earlier quoted context omitted.
KVM is basically three components. * An abstraction over second level page tables to map some of a host user process as what the guest thinks of as physical memory. * An abstraction to jump into the context that uses those page tables, and traps back out in the case of anything that the hardware would normally handle, but the hypervisor wants to handle manually instead. * A collection of mechanisms to handle some of…
I thought part of vt-d/vt-x made the "virtual tables" actual tables. Eg- the memory the VM can access is controlled by the MMU of the CPU (below ring0/kernel). Resulting in the only VM escapes being the Shim(s) for talking with the host (network, memory balloon, graphics).
Re: QEMU 10.1.0
#39Earlier quoted context omitted.
KVM is basically three components. * An abstraction over second level page tables to map some of a host user process as what the guest thinks of as physical memory. * An abstraction to jump into the context that uses those page tables, and traps back out in the case of anything that the hardware would normally handle, but the hypervisor wants to handle manually instead. * A collection of mechanisms to handle some of…
How does nested KVM work? Are all the page tables handled by the top level? Do the traps have to propagate up?