zlacker

[return to "Introducing Qubes OS"]
1. nzmsv+C[view] [source] 2010-04-07 12:13:31
>>Kotota+(OP)
I think there will be more projects like this. Apps running in a sandbox, thinking they have the OS to themselves. The next logical step is to have all new apps written in managed code, and use virtualization for the "legacy" native code.

Come to think of it, isn't it supposed to be the purpose of an operating system: letting programs think they own the hardware? Now they can pretend to own the OS too :)

I think we'll get to microkernels, but through evolutionary steps like this rather than ground-up redesign.

◧◩
2. plesn+A5[view] [source] 2010-04-07 14:34:36
>>nzmsv+C
Could someone point me at a clear explanation of the difference between a micro-kernel and an hypervisor?

Maybe I need to see something like the Xen presentation at Fosdem again.

Edit: http://www.ok-labs.com/blog/entry/microkernels-vs-hypervisor... is quite ok.

◧◩◪
3. kmavm+d9[view] [source] 2010-04-07 15:36:56
>>plesn+A5
The distinction has never been well-posed, in my opinion. I wrote about it (gulp) almost five years ago here:

http://x86vmm.blogspot.com/2005/11/xen-and-redhat.html

Both present "virtual machines" to client code. For that matter, so does UNIX, although the UNIX virtual machine has some very complex virtual instructions, like fork(2), exec(2), dup(2), etc. You can crudely map most software platforms on a continuum of abstraction, with something like Python's implicit virtual machine (which is dynamically typed and bound late) at one extreme, and a bare-metal VMM whose interface is identical to that of the underlying hardware at the other.

Both paravirtual hypervisors and microkernels extend the underlying hardware, and they do so at a lower level of abstraction than what we call an OS. In practice, the hypervisors extensions feel more like hardware (they might include device models, virtual memory translation, and interrupt models), while the microkernel's would feel more like software (providing RPC mechanisms, security models, abstractions like "thread" and "process", etc.).

Even in practice the line is grey sometimes. L4 used to call itself a microkernel; now it calls itself a hypervisor.

◧◩◪◨
4. plesn+101[view] [source] 2010-04-08 20:42:36
>>kmavm+d9
Oh, I forgot to thank you, very interesting post.
[go to top]