|Working state||Stable release|
|Source model||Open source|
|Latest release||18.11 / November 29, 2018|
|Marketing target||Desktop, embedded|
|Platforms||ARM, RISC-V, x86, x86-64|
Genode is a free and open-source operating system framework consisting of a microkernel abstraction layer and a collection of userspace components. The framework is notable as one of the few open-source operating systems not derived from a proprietary OS, such as Unix. The characteristic design philosophy is that a small trusted computing base is of primary concern in a security oriented OS.
Genode can be used as a basis for a desktop or tablet OS or as a virtual machine monitor for guest operating systems. The framework has been used as trusted component of secure virtualization systems for both x86 and ARM
The small codebase of Genode makes it a flexible alternative to more complex Unix-derived operating systems. For this reason the framework has been used as a base system for research in such fields as virtualization, inter-process communication, IP stack isolation, monitoring, and software development
Genode was first conceived as the Bastei OS Architecture research report at the Technical University of Dresden. The focus of the report was to determine the practicality of a component-based OS using capability-based security. This report was motivated in part by research into L4 microhypervisors conducted during the same period. Following the success of an early prototype, the authors of the report founded a company to develop Bastei as the Genode OS Framework.
The project is developed publicly as an open source project released under the terms of the GNU Affero General Public License with a commercial entity offering alternative licensing. Releases are scheduled at three-month intervals to make changes to the OS ABI and APIs and issue documenation. The OS framework is available in source code form and following the 18.02 release a general purpose derivative called Sculpt is provided with on-target binary deployment.
Genode builds on the general philosophy of microkernels - the smaller and simpler the code, the easier it is to verify for trustworthiness and correctness. Genode extends this philosophy to userspace by composing complex applications from small components. Each component exists in a strict hierarchy of parent-child relationships. Any component acting as a parent of another may apply resource and IPC access policies, mitigating the confused deputy problem endemic to centralized or superuser system policy.
The features of any given microkernel fall mostly within a common set, and monolithic kernels implement a superset of those features. Genode is designed to abstract away the differences between kernels and thus can be hosted by several of the L4 family kernels. The experience of developing prototypes using the Linux kernel necessitated an abstraction between the kernel and a Genode userspace. In 2016 binary compatibility was achieved across all kernels supported for a given machine architecture.
The Genode project publishes a desktop operating system called "Sculpt" that targets contemporary consumer laptops. Sculpt is a small base system with automatic device detection and configuration, some GUI control interfaces, and frontends to the Genode package manager. The system does not feature a full desktop environment, but requires users to deploy virtual machines hosting traditional OSes for a fully featured desktop. Sculpt is distinguished from the Genode operating system framework in that it relies heavily on dynamic reconfiguration using privileged control components in opposition to specialized systems with static policies.
- HelenOS, a desktop microkernel based operating system.
- QNX, a proprietary Unix-like operation system hosted by a microkernel.
- Qubes OS, a desktop operating system that provides security through virtualization.
- Subgraph (operating system), a Linux distribution that provides security through sandboxing.
- Capability-based security
- Secure by default
- "Genode OS Framework release 18.11".
- "Genode OS adds RISC-V support".
- Larabel, Michael. "Genode Is Developing A GPU Multiplexer For Intel Graphics Hardware". Phoronix.
- "Introduction of the Genode OS Framework". archive.fosdem.org/2012.
- "L4 Based Operating Systems". L4hq.org.
- Larabel, Michael. "Redox OS, MINIX, Hurd & Genode Had Their Time At FOSDEM Too". Phoronix.
- Baader, Hans-Joachim. "Genode 2018.2 mit Sculpt OS". pro-linux.de.
- Larabel, Michael. "Sculpt Aims To Be A General-Purpose OS Built Atop Genode".
- Tarasikov, Alexander. "Porting Genode to commercial hardware". allsoftwaresucks.blogspot.com.
- "Muen - An x86/64 Separation Kernel for High Assurance".
- Williams, John. "Inspecting data from the safety of your trusted execution environment" (PDF).
- "Embassies: Radically Refactoring the Web" (PDF). USENIX.
- Martin Wegner, Sönke Holthusen. "Contract Specification and language". ccc-project.org.
- Hammad, Mohammad. "The Secure Communication Module of CCC". ccc-project.org.
- B.PRUTHIVIRAJ, G.S.MADHUSUTHUN, S.VIJAYASARATHY, K.CHAKRAPANI. "A MICROKERNEL BASED SECURE OPERATING SYSTEM USING GENODE FRAMEWORK" (PDF). jatit.org.
- Hähne, Ludwig. "Empirical Comparison of SCons and GNU Make" (PDF).
- Millo-Sánchez, Reinier & Paz Rodríguez, Waldo & Fajardo-Moya, Alexis. "Genode OS Framework, un framework para el desarrollo de sistemas embebidos". ResearchGate.
- "TU Dresden technical report TUD-FI06-07" (PDF).
- "NOVA Microhypervisor".
- "L4 Based Operating Systems". L4hq.org.
- "SeL4 Community Projects". sel4.systems.
- "Release notes 16.08".
- "Release notes 18.02".
|Wikimedia Commons has media related to Genode.|
- Official webpages
- Research projects
- KV-Cache: A Scalable High-Performance Web-Object Cache for Manycore
- TrApps: Secure Compartments in the Evil Cloud
- Development of an Embedded Platform for Secure CPS Services
- Secure-OS project of IIT Madras
- Kernel isolation of a Capability-based security Operating System
- Mobile Device Security with ARM TrustZone