Live data from Hacker News

IncludeOS: C++ unikernel now free and open source

github.com

1–10 of 43 posts

Re: IncludeOS: C++ unikernel now free and open source

#2
> A minimal bootable image, including bootloader, operating system components and a complete C++ standard library is currently 693K when optimized for size.

WOW. That's just nuts! I mean I know linux can be slim, but thats less than a meg!

Really very exciting stuff. I don't know if I should play JC3 or tinker with this.

Re: IncludeOS: C++ unikernel now free and open source

#4
post #3

Any chance it will support Xen, too, in the future? Also, unikernels should preferably be written in memory safe languages like Rust.

> unikernels should preferably be written in memory safe languages like Rust

There is a rust project. How is that relevant to this?

Re: IncludeOS: C++ unikernel now free and open source

#5

> A minimal bootable image, including bootloader, operating system components and a complete C++ standard library is currently 693K when optimized for size. WOW. That's just nuts! I mean I know linux can be slim, but thats less than a meg! Really very exciting stuff. I don't know if I should play JC3 or tinker with this.

This isn't Linux.

Re: IncludeOS: C++ unikernel now free and open source

#6

> A minimal bootable image, including bootloader, operating system components and a complete C++ standard library is currently 693K when optimized for size. WOW. That's just nuts! I mean I know linux can be slim, but thats less than a meg! Really very exciting stuff. I don't know if I should play JC3 or tinker with this.

This isn't Linux.

I think that was just a comparison, because Linux can be very small.

Re: IncludeOS: C++ unikernel now free and open source

#7

> A minimal bootable image, including bootloader, operating system components and a complete C++ standard library is currently 693K when optimized for size. WOW. That's just nuts! I mean I know linux can be slim, but thats less than a meg! Really very exciting stuff. I don't know if I should play JC3 or tinker with this.

I'm pretty sure you can find MIPS Linux images with Busybox et. all. that weigh less than that. A lot of routers run Linux on 2M eproms including user space.

Re: IncludeOS: C++ unikernel now free and open source

#8
post #3

Any chance it will support Xen, too, in the future? Also, unikernels should preferably be written in memory safe languages like Rust.

> unikernels should preferably be written in memory safe languages like Rust There is a rust project. How is that relevant to this?

And erlang projects, and projects for every other programming language you could possibly want. Just use whatever you want!

Re: IncludeOS: C++ unikernel now free and open source

#9
post #3

Any chance it will support Xen, too, in the future? Also, unikernels should preferably be written in memory safe languages like Rust.

> unikernels should preferably be written in memory safe languages like Rust There is a rust project. How is that relevant to this?

When using a unikernel design there is no isolation between a single node software components like an OS can provide. All the code share the same memory space.

Isolation can be useful. For example the Postfix email server (running on a Unix, not unikernel) is decomposed into several processes with different privileges. That allows running the most sensitive parts with limited access rights, to protect against attacks, while still running those parts on the same server for efficiency. This process isolation is typically not provided with unikernels.

A lot of unikernels compensate for this by providing language level protection, by using safe high level language (see MirageOS using OCaml, other based on Erlang, haskell or rust). Then it's not process isolation but the language and its implementation that guarantee that provides protection / isolation between components. My understanding is that is what GP refers too.

A unikernel based on C or C++ will have no process isolation, and no language level isolation either. So sensitive components would have to be split into different nodes, isolated by using either separate VMs or machines. That's doable, but adds complexity to the orchestration and possibly some overhead.

Re: IncludeOS: C++ unikernel now free and open source

#10
post #7

> A minimal bootable image, including bootloader, operating system components and a complete C++ standard library is currently 693K when optimized for size. WOW. That's just nuts! I mean I know linux can be slim, but thats less than a meg! Really very exciting stuff. I don't know if I should play JC3 or tinker with this.

I'm pretty sure you can find MIPS Linux images with Busybox et. all. that weigh less than that. A lot of routers run Linux on 2M eproms including user space.

I have a port of Alan Cox's Fuzix for the MSP430 where the entire bootable ROM image is 27kB.

(That's actually quite big for a tiny-computer OS, although it's the smallest Unix I know of.)

Post reply on HN