About Genode

The Genode OS Framework is a tool kit for building highly secure special-purpose operating systems. It scales from embedded systems with as little as 4 MB of memory to highly dynamic general-purpose workloads.

Genode is based on a recursive system structure. Each program runs in a dedicated sandbox and gets granted only those access rights and resources that are needed for its specific purpose. Programs can create and manage sub-sandboxes out of their own resources, thereby forming hierarchies where policies can be applied at each level. The framework provides mechanisms to let programs communicate with each other and trade their resources, but only in strictly-defined manners. Thanks to this rigid regime, the attack surface of security-critical functions can be reduced by orders of magnitude compared to contemporary operating systems.

The framework aligns the construction principles of L4 with Unix philosophy. In line with Unix philosophy, Genode is a collection of small building blocks, out of which sophisticated systems can be composed. But unlike Unix, those building blocks include not only applications but also all classical OS functionalities including kernels, device drivers, file systems, and protocol stacks.

Features
  • CPU architectures: x86 (32 and 64 bit), ARM (32 and 64 bit), RISC-V

  • Kernels: most members of the L4 family (NOVA, seL4, Fiasco.OC, OKL4 v2.1, L4ka::Pistachio, L4/Fiasco), Linux, and a custom kernel.

  • Virtualization: VirtualBox (on NOVA), a custom virtual machine monitor for ARM, and a custom runtime for Unix software

  • Over 100 ready-to-use components

Genode is open source and commercially supported by Genode Labs.

Road map

The direction where the project is currently heading

Challenges

A collection of project ideas, giving a glimpse on possible future directions

Publications

Publications related to Genode

Licensing

Open-Source and commercial licensing

Screenshots

Screenshots of Genode-based system scenarios