Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Writing a Hypervisor?

Tags:

c++

hypervisor

I am researching ideas for a PhD project.

One of my thoughts is writing a hypervisor (or bare metal) (?) so I could run multiple OS's without use of a true host operating system. Example I get a menu of some type of options to start operating systems, view what the 'console' of what is going on in an OS that is already running. Reboot OS's, install a new one, etc.

So no host OS, just a small app that controls everything.

Conceptually how does one think about doing this?

I have a MacBook. I should be able to modify what the EFI boots. Maybe start with a very minimal Linux LIve implementation and scale it really, really far back?

Is it possible to use Darwin and scale it very far back?

like image 756
ator Avatar asked Oct 13 '22 23:10

ator


1 Answers

Your idea as stated is not an original contribution to the science.

My advice is to review Xen and the general hypervisor literature, dating back to the '60s & '70s when IBM invented it.

I'm certain there is room for improvement and original ideas there.

In terms of actually writing a hypervisor, you should review Wikipedia first, as it gives a good brief on virtualization.

Here is a historical summary, including some seminal citations: http://www.kernelthread.com/publications/virtualization/. Note the first citation is from 1959!

like image 136
Paul Nathan Avatar answered Nov 15 '22 09:11

Paul Nathan