mirror of
https://github.com/genodelabs/genode.git
synced 2024-12-18 13:26:27 +00:00
123 lines
4.1 KiB
Plaintext
123 lines
4.1 KiB
Plaintext
|
|
===============================
|
|
Genode source-code repositories
|
|
===============================
|
|
|
|
|
|
This directory contains the source-code repositories of the Genode OS
|
|
Framework. Each sub directory has the same principle layout as described in the
|
|
build-system manual:
|
|
|
|
:Build-system manual:
|
|
|
|
[https://genode.org/documentation/developer-resources/build_system]
|
|
|
|
The build system uses a configurable selection of those reposities to obtain
|
|
the source codes for the build process. The repositories are not independent
|
|
but build upon of each other:
|
|
|
|
:'base':
|
|
|
|
This directory contains the source-code repository of the fundamental
|
|
frameworks and interfaces of Genode. Furthermore, it contains the generic
|
|
parts of core.
|
|
|
|
:'base-<platform>':
|
|
These directories contain platform-specific source-code repositories
|
|
complementing the 'base' repository. The following platforms are supported:
|
|
|
|
:'hw':
|
|
The hw platform hosts Genode on a custom microkernel specifically
|
|
developed for Genode. The name "hw" denotes that Genode is executed on
|
|
bare hardware without a 3rd-party kernel underneath.
|
|
|
|
:'linux':
|
|
Linux kernel (both x86_32 and x86_64)
|
|
|
|
:'nova':
|
|
NOVA hypervisor ([https://hypervisor.org])
|
|
|
|
:'foc':
|
|
Fiasco.OC is a modernized version of the Fiasco microkernel with a
|
|
completely revised kernel interface fostering capability-based
|
|
security. It is not compatible with L4/Fiasco.
|
|
|
|
:'okl4':
|
|
OKL4 kernel (x86_32 and ARM) developed at Open-Kernel-Labs.
|
|
|
|
:'pistachio':
|
|
L4ka::Pistachio kernel developed at University of Karlsruhe.
|
|
|
|
:'fiasco':
|
|
L4/Fiasco kernel developed at University of Technology Dresden.
|
|
|
|
:'sel4':
|
|
seL4 microkernel ([https://sel4.systems/])
|
|
|
|
:'os':
|
|
|
|
This directory contains the non-base OS components such as the init
|
|
component, device drivers, and basic system services.
|
|
|
|
:'demo':
|
|
|
|
This directory contains the source-code repository of various services and
|
|
applications that we use for demonstration purposes. For example, a graphical
|
|
application launcher called Launchpad and the Scout tutorial browser.
|
|
|
|
:'hello_tutorial':
|
|
|
|
Tutorial for creating a simple client-server scenario with Genode. This
|
|
repository includes documentation and the complete source code.
|
|
|
|
:'libports':
|
|
|
|
This source-code repository contains ports of popular open-source libraries
|
|
to Genode, most importantly the C library. The repository contains no
|
|
upstream source code but means to download the code and adapt it to Genode.
|
|
For instructions about how to use this mechanism, please consult the README
|
|
file at the top level of the repository. Among the 3rd-party libraries
|
|
are Qt5, freetype, ncurses, and Mesa.
|
|
|
|
:'dde_linux':
|
|
|
|
This source-code repository contains the device driver environment for
|
|
executing Linux subsystems as Genode components.
|
|
|
|
:'dde_ipxe':
|
|
|
|
This source-code repository contains the device-driver environment for
|
|
executing network drivers of the iPXE project.
|
|
|
|
:'dde_bsd':
|
|
|
|
This source-code repository contains the device-driver environment for
|
|
drivers of the OpenBSD operating system.
|
|
|
|
:'dde_rump':
|
|
|
|
This source-code repository contains the port of rump kernels, which are
|
|
used to execute subsystems of the NetBSD kernel as user level processes.
|
|
The repository contains a server that uses a rump kernel to provide
|
|
various NetBSD file systems to Genode.
|
|
|
|
:'pc':
|
|
This source-code repository hosts device drivers that are specific for PC
|
|
platforms. It depends on the 'dde_linux' repository.
|
|
|
|
:'ports':
|
|
|
|
This source-code repository hosts ports of 3rd-party applications to
|
|
Genode. The repository does not contain upstream source code but provides
|
|
a mechanism for downloading the official source distributions and adapt
|
|
them to the Genode environment. The used mechanism is roughly the same
|
|
as used for the 'libports' repository. Please consult 'libports/README'
|
|
for further information.
|
|
|
|
:'gems':
|
|
|
|
This source-code repository contains Genode applications that use
|
|
both native Genode interfaces as well as features of other high-level
|
|
repositories, in particular shared libraries provided by 'libports'.
|
|
|