Earlier quoted context omitted.
Sure but then I'm limited to OCaML and have to run in kernel mode when developing apps. Occasionally a good tradeoff, but a significant one.
There are other approaches that yield Unikernels [1]. I don't quite understand your point about kernel mode and why that would be a problem under this scenario. The code is your own and you only use the OS components you require. The ASPLOS article has more detail on the approach and trade-offs [2]. [1] see table 2 at http://queue.acm.org/detail.cfm?id=2566628 [2] http://anil.recoil.org/papers/2013-asplos-mirage.pdf
My First Unikernel
51–53 of 53 posts
Re: My First Unikernel
#52Earlier quoted context omitted.
There are other approaches that yield Unikernels [1]. I don't quite understand your point about kernel mode and why that would be a problem under this scenario. The code is your own and you only use the OS components you require. The ASPLOS article has more detail on the approach and trade-offs [2]. [1] see table 2 at http://queue.acm.org/detail.cfm?id=2566628 [2] http://anil.recoil.org/papers/2013-asplos-mirage.pdf
Debugging kernel mode code is painful, in general, even on a VM
Re: My First Unikernel
#53Earlier quoted context omitted.
Debugging kernel mode code is painful, in general, even on a VM
Perhaps I'm wrong but I feel you've either (1) missed the point or (2) haven't actually looked at the references. Everything is written in a high-level language and the VM is an artefact produced as a result of the process (you don't debug on the VM, you debug the code that generated it).
Enough can go wrong in the packaging and distribution that it's a real risk.
At the end of the unikernel generation pipeline I get a little Xen VM spit out that I can run. How do I debug this guy? It's running on a hypervisor but is essentially in a different environment. I'd love to be able to take code written in one environment and be 100% sure it'd work in another, but that ain't going to happen soon.