Live data from Hacker News

Look Ma, no OS

slides.com

51–60 of 91 posts

Re: Look Ma, no OS

#51

"Two dimensional navigation for a slide deck would be really helpful, discoverable, and useful." - no one ever

I've used this aspect of Reveal to present an overview of my talk at the beginning: "We're going to talk about X, Y, and Z. Okay, so X..."

Re: Look Ma, no OS

#54
post #7

The next logical step is to elide the virtualized network and disk interfaces, and then we're back to shared hosting! See you again in twenty years.

I can't seem to shake the first thought i had when reading about unikernels. That they are DOS in a VM. Maybe it is overly simplified, but as i understand it we are looking at a "kernel" stripped down to handling the disk and network interfaces provided by the VM. No user separation (there is only a single "user"), no memory protection (it is only running a single process as best i can tell), and resource provisionin…

The point is that you only run a single application in the VM anyway. And if you do that, you should make your VM as slick as possible, because anything in there that doesn't serve your application is just increasing the attack surface and the probability of errors through side effects. That's what is already done today, and unikernels are just the natural progression towards that goal.

So you essentially don't separate your applications via users within your OS, but via VMs in your hypervisor.

Not sure if this turns out to be a good idea or not, but it's an interesting approach that shouldn't be put down easily.

Re: Look Ma, no OS

#55
post #41

Unikernels are cool to play with. Erlang is cool too. But... - [name] is a kernel thread not a user space process. - its libssl, not "libopenss" - installing rpc, some obscure 55k listening port, and calling it bloated.. heh so cheap. Once past all this FUD - what does a unikernel (basically the same as running linux and your app as /sbin/init except it's in Erlang and not C here)? - its obscure. you get security mai…

What FUD? There appears to be more FUD in your comment than I've seen from any of the unikernel projects.

Most of the claims you've made seem to be coming from the existing paradigm of how people write code for the cloud. If you're determined to stay in that mindset, then unikernels will probably not make much sense to you. The whole point is to reevaluate our assumptions about developing for cloud-native environments, which leads to different approaches (many cloud-services are already single-purpose). No-one is claiming that unikernels are some kind of panacea but they are a useful addition to the toolbox.

Also, if you really want to compare security and vulnerabilities, then you should consider things like TCB and look at CVEs for both Xen and Linux. The way you describe it is almost disingenuous. The following talks have useful discussion points.

https://fosdem.org/2015/schedule/event/zombieapocalypse/

https://media.ccc.de/browse/congress/2014/31c3_-_6443_-_en_-...

Re: Look Ma, no OS

#56
I went in expecting to read a bit about unikernels. I got there and felt like I was playing The Legend of Zelda for NES. You know, the one with the golden cartridge.

Re: Look Ma, no OS

#57
post #7

The next logical step is to elide the virtualized network and disk interfaces, and then we're back to shared hosting! See you again in twenty years.

Yep. I don't get the value in this, pushing the problem somewhere else just creates new problems. Instead of being able to rely on distributions and gargantuan open software, now we go off and roll it all ourselves? This is a good path to job security, but I don't see what else.

You don;t roll all a Linux distro yourself; aside from the fact you use open source libraries, you need much less as it is only for running networked applications, which needs less stuff.

Re: Look Ma, no OS

#58
post #41

Unikernels are cool to play with. Erlang is cool too. But... - [name] is a kernel thread not a user space process. - its libssl, not "libopenss" - installing rpc, some obscure 55k listening port, and calling it bloated.. heh so cheap. Once past all this FUD - what does a unikernel (basically the same as running linux and your app as /sbin/init except it's in Erlang and not C here)? - its obscure. you get security mai…

The problem with Mesa/Cedar, Modula-3/Spin, Modula-2/Lilith, Oberon/Native Oberon, Oberon-2/AOS, Sing#/Singularity and many others is compatibility and lack of buy-in from OS vendors.

Personally I see application compartments, wider adoption of Swift, Java, .NET Native, OCaml, Haskell, Go, D, Rust, Erlang, ..., alongside unikernels as the way forward to mainstream adoption.

One day we will get C free OS stacks.

Re: Look Ma, no OS

#59
post #7

The next logical step is to elide the virtualized network and disk interfaces, and then we're back to shared hosting! See you again in twenty years.

Arguably we only got this way because, although UNIX neatly abstracted the file system with user access control, it predated networking which was slapped on the side with no way of allocating network resources between users.

If SysV had had filesystem-like means of allocating the right to listen on a particular port to particular user accounts, the world would have been very different, and we'd have been spared entire categories of security hole and workaround.

Re: Look Ma, no OS

#60
post #41

Unikernels are cool to play with. Erlang is cool too. But... - [name] is a kernel thread not a user space process. - its libssl, not "libopenss" - installing rpc, some obscure 55k listening port, and calling it bloated.. heh so cheap. Once past all this FUD - what does a unikernel (basically the same as running linux and your app as /sbin/init except it's in Erlang and not C here)? - its obscure. you get security mai…

namespaced linux boots in

Can someone show me this?

Post reply on HN