We understand the complexity of code and policy as the most fundamental security problem shared by modern general-purpose operating systems. Because of high functional demands and dynamic workloads, however, this complexity cannot be avoided. But it can be organized. Genode is a novel OS architecture that is able to master complexity by applying a strict organizational structure to all software components including device drivers, system services, and applications. The Genode OS framework is the effort to advance the Genode OS architecture as a community-driven Open-Source project.

The Book

The book "Genode Foundations" describes the Genode OS Framework in a holistic and comprehensive way. It equips the reader with a thorough understanding of the architecture, assists developers with the explanation of the development environment and system configuration, and provides a look under the hood of the framework. Furthermore, it contains the specification of the framework's programming interface.

Download the book as PDF

Genode News RSS feed

News Item Genode OS Framework release 15.11 Nov 30, 2015
The primary focus of version 15.11 is the use of Genode as a desktop OS. It vastly improves the GUI and audio stacks, features the port of Intel KMS from Linux, extends the support for the USB Armory and Xilinx Zynq-7000, and introduces new file-system infrastructure such as a VFS server.
News Item Genode OS Framework release 15.08 Aug 31, 2015
Version 15.08 marks the starting point of Genode used as day-to-day operating system, which underlines the maturity and scalability of the framework. A further highlight is the ability to execute Genode on top of the Muen separation kernel.
News Item Genode OS Framework release 15.05 May 26, 2015
For the first time, a Genode release is accompanied by a book. Further highlights of the current release are vast improvements of our base-hw kernel, preliminary support for the seL4 microkernel, new device-driver infrastructure, and plenty of new device drivers.
News Item Genode's core running on the seL4 kernel May 18, 2015
In the third part of our seL4 article series, we describe the steps taken to run Genode's fundamental components on seL4.
News Item An in-depth look into the ARM virtualization extensions Mar 12, 2015
Our new article explores the mechanisms of the ARM virtualization extensions and describes how Genode's custom base-hw kernel was turned into a microhypervisor.
News Item Exercising the seL4 kernel interface Mar 10, 2015
The second part of the article series about Genode on seL4 goes into detail about the kernel mechanisms for synchronous inter-process communication and the management of virtual memory.

Latest screenshots

A Genode/NOVA-based desktop used for day-to-day computing at Genode Labs. VirtualBox runs Xubuntu, which is currently executing Genode's build system and Firefox. The command-line interface at the top left allows the user to manage Genode subsystems. At the bottom left, a noux instance acts as the bridge between the Linux guest OS and the Genode world. Under the surface, there are over 40 low-level components such as device drivers working together. Each of them is encapsulated in a dedicated sandbox.

VirtualBox running besides the Seoul VMM (virtual machine monitor) on top of Genode/NOVA. Seoul executes Tinycore Linux as guest OS. VirtualBox executes MS Windows 7. Both VMMs are utilizing hardware virtualization (VT-X) but are plain user-level programs with no special privileges.

Qt version 5.1 running natively on Genode 13.08.

The Webkit-based Arora webbrowser running alongside an application using Gallium3D, which was introduced with release 10.08.

The demonstration scenario provided with the official Genode distribution shows off Genode's ability to create and destroy arbitrarily shaped process trees, which can include multiple instances of services in a nested fashion. The screenshot shows an isolated instance of the GUI server running in a window of another GUI-server instance. The whole demo scenario including the graphical user interface has a source-code complexity of less than 20,000 lines of code. With Genode, graphically rich applications and a low-complexity trusted computing base are no contradiction.