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, RISC-V
-
Kernels: most members of the L4 family
(NOVA,
seL4,
Fiasco.OC,
OKL4 v2.1,
L4ka::Pistachio,
L4/Fiasco),
Linux, the
Muen separation kernel, and a custom kernel.
-
Virtualization: VirtualBox (on NOVA and Muen), L4Linux (on Fiasco.OC), and a
custom runtime for Unix software
-
Over 100 ready-to-use
components
https://genode.org/about/index
https://github.com/genodelabs/genode
https://news.ycombinator.com/item?id=10139224
https://archive.fosdem.org/2016/schedule/event/microkernels_genode_nix/
No comments:
Post a Comment