mirror of
https://github.com/genodelabs/genode.git
synced 2025-01-30 16:14:13 +00:00
Road map 2016
This commit is contained in:
parent
c0a2388978
commit
08550c6ed9
162
doc/road_map.txt
162
doc/road_map.txt
@ -14,56 +14,99 @@ The road map is not fixed. If there is commercial interest of pushing the
|
|||||||
Genode technology to a certain direction, we are willing to revisit our plans.
|
Genode technology to a certain direction, we are willing to revisit our plans.
|
||||||
|
|
||||||
|
|
||||||
Review of 2014
|
Review of 2015
|
||||||
##############
|
##############
|
||||||
|
|
||||||
Most of the progress in 2014 was motivated by our goal to use
|
In the beginning of 2015, we declared four main topics to work on, namely
|
||||||
Genode as general-purpose OS on x86-based platforms. To highlight a
|
Genode as general-purpose OS, our custom base-hw kernel platform, thorough
|
||||||
few achievements, we started to use [http://rumpkernel.org/ - Rump kernels]
|
documentation, and the seL4 kernel. It goes without saying that the stability
|
||||||
as file-system providers, enabled VirtualBox on NOVA, pulled off the
|
and performance of the base system is a fundamental requirement for the first
|
||||||
engineering feat to run the Intel Wireless stack natively on microkernels, and
|
topic.
|
||||||
came up with a new GUI architecture. We regard these features as the
|
|
||||||
groundwork to make Genode a feasible platform for day-to-day computing.
|
|
||||||
|
|
||||||
That said, even though we are proud about the progress, we are still not there
|
In mid of 2015, we eventually reached the point where a hand full of
|
||||||
yet. So what keeps us back? The answer is actually not technical. Most
|
developers started using Genode as their day-to-day OS in the form of the
|
||||||
developments over the past years were concerned with individual features or
|
so-called
|
||||||
technical challenges. But the integration of sophisticated system scenarios
|
[https://github.com/genodelabs/genode/issues/1552 - Turmvilla scenario].
|
||||||
was a rare occurrence. For the most part, such integration activities were
|
By the end of the year, the performance, stability, and device-driver support
|
||||||
solely triggered by a particular project or by a presentation. In order to
|
had reached a level that leaves people impressed every time we have the chance
|
||||||
make Genode fit for regular use, we need to make the composing of advanced
|
to show off our system. Once people become interested, the Genode Foundations
|
||||||
systems a habit for most of the regular developers.
|
book - published in Spring - provides a smooth introduction into Genode. The
|
||||||
|
Turmvilla scenario is currently based on the NOVA kernel. For the future, we
|
||||||
|
want to use also other kernels, in particular our custom base-hw kernel and
|
||||||
|
seL4. Thanks to the contribution of
|
||||||
|
[http://codelabs.ch - Codelabs], base-hw became usable on the 64-bit x86
|
||||||
|
architecture and on the Muen separation kernel in particular. With our work
|
||||||
|
on seL4, we reached the point where basic Genode scenarios are executable
|
||||||
|
on this kernel.
|
||||||
|
|
||||||
|
After having passed the point where a few enthusiasts are able to use Genode
|
||||||
|
as day-to-day OS, we should put the emphasis of 2016 on
|
||||||
|
ways to make Genode accessible for a wider community.
|
||||||
|
|
||||||
|
|
||||||
Big picture for 2015
|
Big picture for 2016
|
||||||
####################
|
####################
|
||||||
|
|
||||||
On the account of this realization, the overall theme of 2015 will be the
|
We identified two possible ways to extend the Genode community.
|
||||||
consolidation and cultivation of the existing feature set rather than the
|
|
||||||
conquering of new grounds. This implies the following topics:
|
|
||||||
|
|
||||||
* Advancing our automated test and integration infrastructure towards
|
By community we refer to two groups of people. The first group are
|
||||||
the continuous integration of real-world system scenarios,
|
maker-minded people with a strong incentive to build things. By publishing a
|
||||||
* Fostering good-quality documentation,
|
series of step-by-step guides that explain how to put Genode components
|
||||||
* Optimization of performance and stability,
|
together in order to create custom system scenarios, we intend to spark
|
||||||
* Improvement of our tooling
|
interest of system builders in Genode. Those articles could be accompanied by
|
||||||
|
screencasts or live-system images.
|
||||||
|
|
||||||
Furthermore, we have to address outstanding limitations of the most
|
The second group are certain end users with a strong desire for privacy and
|
||||||
commonly used base platforms, namely base-hw and NOVA. I.e., only
|
security. We expect this narrow user group to willingly trade the comfort and
|
||||||
with kernel-protected capabilities, base-hw can be considered as a viable
|
features of traditional desktop OSes for the benefits of Genode. We plan to
|
||||||
base platform for security-critical systems, and only with proper
|
showcase a system with practical value for this group, for example a
|
||||||
kernel-resource management, NOVA can be recommended as a kernel for
|
disposable OS like Tails that allows the user to browse the internet via the
|
||||||
general-purpose computing.
|
Tor network.
|
||||||
|
|
||||||
Besides the cultivation of the existing feature set, there will still be room
|
In this spirit, the leitmotif for 2016 will be: Let us make Genode accessible
|
||||||
for new things. We are particularly excited about the prospect of combining
|
to the world outside the inner circle of us enthusiasts.
|
||||||
Genode with the [http://sel4.systems - seL4 kernel] and
|
|
||||||
the [http://nixos.org/nix/ - Nix package manager]. Furthermore, we desire to
|
On a technical level, this motive implicates the following topics:
|
||||||
continue the work on our new GUI architecture towards a capability-based
|
|
||||||
desktop environment.
|
* The deployment, management, and configuration of Genode systems, i.e., by
|
||||||
|
bringing forward our work on the Nix package manager and by fostering
|
||||||
|
dynamic configurability. This direction also reinforces the need to achieve
|
||||||
|
binary compatibility between the various base platforms to make the
|
||||||
|
distribution of binary packages, reproducible builds, and continuous test
|
||||||
|
and integration scalable.
|
||||||
|
|
||||||
|
* Accommodation of common desktop use cases like plugging in a USB
|
||||||
|
stick to work with the files stored on it. Also disk encryption comes
|
||||||
|
into mind.
|
||||||
|
|
||||||
|
* Optimization of Genode for the use on a laptop, e.g., addressing
|
||||||
|
fan control, power management, suspend/resume, and similar features.
|
||||||
|
|
||||||
|
* Identifying ways of how Genode could contribute additional value to
|
||||||
|
Xen-based environments like Amazon EC2 and Qubes OS.
|
||||||
|
|
||||||
|
* Foster the cross-pollination of the seL4 and Genode communities.
|
||||||
|
Genode would allow the seL4 community to move beyond static system
|
||||||
|
scenarios.
|
||||||
|
|
||||||
|
* As most use cases rely on networking, we acknowledge the need for
|
||||||
|
improving Genode's network support such as NAT, the robustness of the
|
||||||
|
available TCP/IP stacks and drivers, encryption, and possibly IPv6.
|
||||||
|
|
||||||
|
* Genode as distributed system, e.g., a system spread over multiple FPGA-based
|
||||||
|
softcore CPUs, over multiple domains of the Muen separation kernel, or a
|
||||||
|
local machine and a cloud-service provider.
|
||||||
|
|
||||||
|
Assuming that we succeed in drawing the attention of a broader audience
|
||||||
|
to our project, we should make sure that Genode's API won't undergo
|
||||||
|
major changes soon after this point. Today, there are still a number of
|
||||||
|
deficiencies in the current API. We should finalize the renovation of
|
||||||
|
the Genode API until the mid of 2016. This will also be right the time for
|
||||||
|
updating the Genode book. Also, the planned step-by-step guides will
|
||||||
|
be based on the modernized API.
|
||||||
|
|
||||||
|
|
||||||
Milestones for 2015
|
Milestones for 2016
|
||||||
###################
|
###################
|
||||||
|
|
||||||
In the following, we present a rough schedule of the planned work. As usual,
|
In the following, we present a rough schedule of the planned work. As usual,
|
||||||
@ -71,38 +114,41 @@ it is not set in stone. If you are interested in a particular line of work,
|
|||||||
please get in touch.
|
please get in touch.
|
||||||
|
|
||||||
|
|
||||||
February - Release 15.02
|
February - Release 16.02
|
||||||
========================
|
========================
|
||||||
|
|
||||||
* ARM virtualization on top of the base-hw kernel
|
* RISC-V architecture support
|
||||||
* Modularized tooling for automated tests
|
* seL4 version 2.0
|
||||||
|
* Assignment of USB devices to VirtualBox guests
|
||||||
|
* API modernization (introduction of new component API, deprecation
|
||||||
|
of API legacies)
|
||||||
|
|
||||||
|
|
||||||
May - Release 15.05
|
May - Release 16.05
|
||||||
===================
|
===================
|
||||||
|
|
||||||
* Comprehensive documentation of the Genode foundations
|
* VirtualBox on top of the Muen separation kernel
|
||||||
* Kernel-protected capabilities for the base-hw kernel
|
* Update of the Genode Foundations book
|
||||||
* seL4 microkernel as base platform
|
* NAT component
|
||||||
* Refined platform-driver architecture (support for MSIs, assignment of
|
* API modernization (removal of API legacies)
|
||||||
I/O resources to drivers, standardized configuration)
|
* Definition of "packages"
|
||||||
|
|
||||||
|
|
||||||
August - Release 15.08
|
August - Release 16.08
|
||||||
======================
|
======================
|
||||||
|
|
||||||
* Capability-based desktop environment allowing the interactive installation
|
* Cross-kernel binary compatibility
|
||||||
and management of Genode subsystems and the interaction with files
|
* Interactive system scenarios on top of seL4
|
||||||
* Accommodation of typical desktop-computing tasks (e.g., email)
|
* Networking via Tor
|
||||||
* Interactive tools for observing the system behavior
|
* Block encryption
|
||||||
* NOVA kernel-resource management
|
* Build-system support for handling packages
|
||||||
|
|
||||||
|
|
||||||
November - Release 15.11
|
November - Release 16.11
|
||||||
========================
|
========================
|
||||||
|
|
||||||
* Achieving cross-kernel binary compatibility
|
* Genode on top of Xen
|
||||||
* Package management
|
* Exploration of Genode as distributed system
|
||||||
* Modern web browser
|
* Deployment of packages
|
||||||
|
* On-target building of packages
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user