Open davedoesdev opened 9 years ago
Would faster boot times be of use? ... umm, not sure why anyone would say "no". What's the actual question?
Is rump compiled as multiboot or does it have a vmlinuz-style header?
Rumprun is complied as multiboot, so for the case of direct kernel boot no firmware is required. I don't follow what the advantage of qboot would be, in any case it seems out of scope of the rumprun project.
Based on eyeballing, it takes half a second from running qemu to the initial output. No sure if it comes from ld.so churning qemu's 100 libs or where, but it's quite observable and matches the time quoted in the above link (+). So there is definitely room for improvement; e.g. the "boot vm in SYN-to-ACK timeslot" crowd would definitely find improvement useful. The fast boot does not have to be on by default if it requires convoluted things like compiling your own qemu, but at least we should understand all the factors.
+) thought, not sure if the "40ms on i7" is "500ms on my core2"
Yes, so make this a suggestion for detailed timing breakdowns.
So the question is if such an analysis would be useful to have? Yes, absolutely.
related: @mato how's the KVM clock driver coming along? At 100ms, the current clock calibration takes many times longer than all other guestside bootstrap combined.
xhyve supports the kexec boot protocol which frees it for the need to have firmware emulation. Works pretty well for Linux... https://www.kernel.org/doc/Documentation/x86/boot.txt
@avsm: Ugh. That document is a history of the entire legacy of the PC architecture. Re. xhyve, does upstream bhyve also support kexec?
Yeah, it's a big doc. I believe bhyve has a different boot scheme (see https://github.com/grehan-freebsd/grub2-bhyve) https://github.com/grehan-freebsd/grub2-bhyve than xhyve (which avoided the need for firmware by implementing kexec as the easiest way to boot Linux)
https://github.com/grehan-freebsd/grub2-bhyveOn 14 Oct 2015, at 11:12, Martin Lucina notifications@github.com wrote:
@avsm https://github.com/avsm: Ugh. That document is a history of the entire legacy of the PC architecture. Re. xhyve, does upstream bhyve also support kexec?
— Reply to this email directly or view it on GitHub https://github.com/rumpkernel/rumprun/issues/54#issuecomment-148002834.
I'm wondering if qboot would be of use. You can find some timings I did here.