Genode as Desktop OS
Genode is a component-based operating system developed from the ground up to counter most security issues that plague us today, like spyware, viruses, and zero-day exploits. It combines microkernel technology, capability-based security, and virtualization with a unique component architecture. Developed over the course of 8 years, the project has finally evolved to a state where its developers use it as their desktop OS. The talk will give an introduction into Genode and demonstrate its unique takes on desktop computing.
In the free-software community, there is very little competition that challenges the predominant POSIX-based operating systems like Linux and FreeBSD. It's a universal truth that the creation of a new general-purpose operating system from scratch is infeasible due to the enormous amount of work needed to develop device drivers, libraries, and applications. Since most users seem to be content with the current POSIX-based state of the art, good arguments would be needed to justify such an effort.
Security and privacy are such arguments. In times when threats like identity theft, the leakage of personal information, business espionage, spyware, and even targeted attacks become prevalent, the current generation of commodity OSes remain inherently vulnerable to zero-day exploits and privilege escalation, and leave the end user largely unprotected.
Genode is a new operating-system architecture that promises to prevent most classes of security problems by design. Genode-based systems are created out of surprisingly simple primitives: Each program runs in a dedicated sandbox and gets granted only those rights and resources that are needed for its actual task. Programs can create and manage sub-sandboxes out of their own resources, thereby forming hierarchies where policies can be enforced at each level. Thanks to this rigid regime, the attack surface of security-critical functions can be reduced by orders of magnitude compared to contemporary operating systems.
After 8 years of development, the project has reached a state where a small group of enthusiasts use it as their primary OS. This was made possible by the virtue of embedding a wealth of open-source projects as components into the new system. For the use as desktop OS, Genode integrates Qt5, VirtualBox, Intel KMS, the GNU utilities, the Linux USB stack, the Intel wireless stack, Rump kernels, and a number of custom components into a completely new system composition.
The talk will first introduce the basic concepts behind Genode, contrasting its architecture to current-generation OSes. The second part of the talk will demonstrate how Genode approaches desktop computing and how it is used as day-to-day OS on the speaker's laptop.