Show HN: Wiser – minimal hypervisor boots Linux VM, written in C
github.com
github.com
I would also set the CPU name to KVMKVMKVM and enable a few of the paravirtual devices like KVMCLOCK.
Good luck with your project!
Wiser seems simple enough (5 small enough .c files). If it is capable to boot Linux, it can be a great learning material. Great job!
- [1] https://lwn.net/Articles/658511/
- [2] https://git.kernel.org/pub/scm/linux/kernel/git/will/kvmtool...
Even the name "VMM" is a quirk of KVM; before KVM, "virtual machine monitor" was another name for a hypervisor: that is, the thing that ran on the bare hardware and provided the virtual hardware interface to the VM. KVM has fairly unique architecture, where a VM is basically a process.
I'm willing to tolerate that "drift" of meaning, because we need a word for the piece of software which converts a process into a VM, and "VMM" is a good fit. But I'd have to really object to the idea of calling such a piece of software a "hypervisor".
If your plan is to make wiser into an actual hypervisor at some point, I'd appreciate it if you made that clear in your README.
I do prefer VMM as the term though.
What's your roadmap?
Part of his efforts to have native linux on m1 CPU based apple devices.
There is a very technical video he gives an overview of his hypervisor: https://www.youtube.com/watch?v=igYgGH6PnOw
Get the project 'A' features and compare with project 'B' features, the strength and weakness of programming languages will be apparent, on the features, runtime speed, bugs, etc..
Choosing a project over another just because its in a given language is not based on logical reasoning, but emotional reasoning and therefore the bad paths will get evident with time (Except of course if the language is really unsuitable to the domain, which is not the case here whether with C or Rust).
This emotional bias for me is a reason to actually look at Rust projects with suspicious if people working on it know its just another tool with some given properties and not some magical wand that will turn everything into unicorns and rainbows.
Note: this is also targeted at "why you would want to choose C over others ?" comment bellow in the same line
I hope you can notice the hypocrisy when the title of this post has "written in <language>" in it but you have no qualm with it. The comment you are responding to didn't imply anything, it could have mentioned any language, try to read with a more open mind
In college I learned theory and algorithms, and was exposed to half a dozen programming languages at least. I mastered none of them, that wasn't the point.
Use of a memory safe or high level language results in immediate revocation of the Programmer Card™.
I don't fear Rust Evangelism Strike Force. Bring it.