Live data from Hacker News

My First Unikernel

roscidus.com

51–53 of 53 posts

Re: My First Unikernel

#51
post #46
post #42

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

Debugging kernel mode code is painful, in general, even on a VM

Re: My First Unikernel

#52
post #51
post #46

Earlier 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

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).

Re: My First Unikernel

#53
post #52
post #51

Earlier 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).

Sure and then when production errors happen I'm left with having to deal with debugging a VM process rather than a User mode process :)

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.

Post reply on HN