Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
MIT's Kaashoek receives ACM award for Exokernel Operating Systems, et al. (web.mit.edu)
31 points by hankejh on March 29, 2011 | hide | past | favorite | 9 comments


"Operating systems typically interpret instructions written in high-level programming languages and oversee their execution on a device’s hardware."

What is that supposed to mean?


Yeah, that's definitely not how I would have explained it. I would say that a traditional OS provides high-level abstractions (think of system calls like open() or fork() — they're very complex compared to the underlying hardware) while the exokernel provides very low-level primitives like memory pages, disk blocks, CPU time, etc.

Throughout history, people have discovered that their OS doesn't provide the right abstractions to allow some apps to take advantage of the hardware's performance potential. The traditional solution was to add features to the OS (Web server not fast enough? sendfile() to the rescue!), but the exokernel proposes the radical alternative of providing simpler, maximally flexible abstractions and letting apps (or libOSes) implement whatever behavior they want.


Exokernel was basically a very early form of a hypervisor. It's not totally novel as hypervisors have been around for a very long time but what makes the Exokernel interesting is that it doesn't try to run unmodified guests but rather runs paravirtual guests.

It's basically a very early (pretty much a full decade) predecessor to Xen.



Awesome article, thanks.



from that link: "Please note that in June, 1998, long after the exokernel was a working system, the exokernel CVS repository was discarded..." Which makes me think his award comes long after his involvement in the project. What's the most up to date project to hack around with? Is this it? (the last tarball is dated 2000 and most of the pages on exokernals are dated 1998).


The stale-ness of the code is briefly addressed 20 min into the talk below.

In a perfect world, an exokernel OS would be roughly as stale as the architecture it was built for.

Imagine an operating system that could conceivably be 'done', in a development sense.





Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: