mirror of
https://github.com/genodelabs/genode.git
synced 2024-12-18 21:27:56 +00:00
Simplified image references in release notes
This commit is contained in:
parent
6bc2a44ba2
commit
500f02fa8d
@ -129,7 +129,7 @@ illustrated in Figure [img/layered_ipc], typification is done at the
|
||||
object-framework level on the server side and via in the 'Connection'
|
||||
classes at the client side.
|
||||
|
||||
[image img/layered_ipc]
|
||||
[image layered_ipc]
|
||||
|
||||
From the application-developer's perspective, working with capabilities
|
||||
has now become type-safe, making the produced code more readable and robust.
|
||||
@ -216,7 +216,7 @@ properly communicated to the receiver even if the receiver is not highly
|
||||
responsive. Notifications do not carry any payload because this payload
|
||||
would have to be queued at the transmitter.
|
||||
|
||||
[image img/signals]
|
||||
[image signals]
|
||||
|
||||
Image [img/signals] illustrates the roles of signaller thread,
|
||||
transmitter, receiver, and signal-handler thread.
|
||||
@ -349,7 +349,7 @@ the base API and the interfaces defined in the 'os' repository. Figure
|
||||
[img/base_cap_types] provides an overview about the capability types
|
||||
provided by the base API.
|
||||
|
||||
[image img/base_cap_types]
|
||||
[image base_cap_types]
|
||||
Overview about the capability types provided by the base API
|
||||
|
||||
Furthermore, we have complemented all session interfaces with
|
||||
@ -463,7 +463,7 @@ API from scratch by fully utilizing the existing Genode infrastructure
|
||||
such as the available structured data types, core's I/O services,
|
||||
the synchronization primitives, and the thread API.
|
||||
|
||||
[image img/dde_kit]
|
||||
[image dde_kit]
|
||||
|
||||
Figure [img/signals] illustrates the role of DDE kit when re-using an
|
||||
unmodified device driver taken from the Linux kernel. DDE kit translates
|
||||
|
@ -162,7 +162,7 @@ L4/Fiasco, and L4ka::Pistachio without any changes. Figure [img/qt4_screenshot]
|
||||
shows a screenshot of Qt's Tetrix example running side-by-side with native
|
||||
Genode applications.
|
||||
|
||||
[image img/qt4_screenshot]
|
||||
[image qt4_screenshot]
|
||||
|
||||
:Current state:
|
||||
|
||||
|
@ -319,7 +319,7 @@ example, BSD-based drivers shall transparently provide the same functionality
|
||||
as the current Linux drivers, which permits the simple reuse of driver server
|
||||
implementations.
|
||||
|
||||
[image img/usb_current]
|
||||
[image usb_current]
|
||||
|
||||
Image [img/usb_current] illustrates the current implementation of the USB-based
|
||||
human-interface device (HID) driver. In this monolithic setup, all parts of the
|
||||
@ -332,7 +332,7 @@ are
|
||||
attached devices, and registered drivers
|
||||
* Host controller drivers for UHCI, OHCI, and EHCI
|
||||
|
||||
[image img/usb_aspired]
|
||||
[image usb_aspired]
|
||||
|
||||
We regard this as an intermediate step towards our goal to decompose the USB
|
||||
stack. Image [img/usb_aspired] shows our aspired design. In this design, the
|
||||
|
@ -321,12 +321,12 @@ including the X Window System. The other instance booted a busybox-based
|
||||
RAM Disk and runs with just about 16 MB of RAM. Each Linux kernel uses
|
||||
a separate instance of the Liquid FB virtual frame buffer:
|
||||
|
||||
[image img/tinycore_busybox_screen]
|
||||
[image tinycore_busybox_screen]
|
||||
|
||||
The Genode process tree looks as follows (the figure omits usual Genode
|
||||
components such as device drivers for PCI, PS/2, VESA, and the Timer):
|
||||
|
||||
[image img/tinycore_busybox]
|
||||
[image tinycore_busybox]
|
||||
|
||||
The Linux Launcher node is just a slightly modified Init node with the only
|
||||
difference being that requests for sessions to the Nitpicker GUI server or
|
||||
@ -412,7 +412,7 @@ communication parties agree on a policy with regard to the organization of the
|
||||
communication buffer by specifying the same 'Packet_stream_policy' as template
|
||||
argument.
|
||||
|
||||
[image img/packet_stream]
|
||||
[image packet_stream]
|
||||
|
||||
As illustrated in the Figure above, the communication buffer consists of
|
||||
three parts, a submit queue, an acknowledgement queue, and a bulk buffer.
|
||||
@ -499,7 +499,7 @@ laid with the NIC-session interface.
|
||||
The following Figure illustrates the integration of a networking
|
||||
application with lwIP that uses the NIC-session interface as back end.
|
||||
|
||||
[image img/lwip]
|
||||
[image lwip]
|
||||
|
||||
The port of the lwIP stack resides in the new 'libports' repository
|
||||
described in Section [New libports repository]. It comes with
|
||||
@ -794,7 +794,7 @@ program contained in the 'os/src/app/xvfb' directory. Because Xvfb is executed
|
||||
as Nitpicker client, it is possible to integrate multiple instances of Xvfb
|
||||
into the same Nitpicker session.
|
||||
|
||||
[image img/xvfb_screen]
|
||||
[image xvfb_screen]
|
||||
|
||||
The scenario above uses two instances of Xvfb, which are displayed by the
|
||||
Nitpicker GUI server executed on Genode. Each Xvfb process is connected
|
||||
@ -802,7 +802,7 @@ to Genode via a xvfb adaptor program, which is hybrid using both the Linux
|
||||
API (for accessing the virtual frame buffer and performing its role as
|
||||
X client) and the Genode API (for its role as Nitpicker client).
|
||||
|
||||
[image img/xvfb]
|
||||
[image xvfb]
|
||||
|
||||
|
||||
:Preconditions for compiling:
|
||||
|
@ -623,7 +623,7 @@ space. This portion is called thread-context area. Within the thread-context
|
||||
area, each thread has a fixed-sized slot, a thread context. The layout of each
|
||||
thread context looks as follows
|
||||
|
||||
[image img/thread_context]
|
||||
[image thread_context]
|
||||
|
||||
; lower address
|
||||
; ...
|
||||
@ -820,7 +820,7 @@ limit (this is the case for OKL4 and Pistachio), this configuration should
|
||||
result in the following assignments of physical priorities to process-tree
|
||||
nodes:
|
||||
|
||||
[image img/priorities]
|
||||
[image priorities]
|
||||
|
||||
The red marker shows the resulting priority of the corresponding process.
|
||||
|
||||
|
@ -987,7 +987,7 @@ that this program must be build for a Linux host platformm using a separate
|
||||
build directory. This build directory must use the 'base-host' repository and
|
||||
extend the 'SPECS' variable with 'x11', 'xtest', and 'xdamage'.
|
||||
|
||||
[image img/red_green_screenshot]
|
||||
[image red_green_screenshot]
|
||||
|
||||
The screenshot shows two Linux instances and the native launchpad application
|
||||
seamlessly integrated into a single GUI. We slightly modified nitpicker to tint
|
||||
@ -1018,7 +1018,7 @@ Even though compared with other browsers, its popularity is relatively small
|
||||
but for us, it is perfect to stretch the bounds of our Genode infrastructure.
|
||||
The following screenshot shows Arora running as native Genode process.
|
||||
|
||||
[image img/arora_screenshot]
|
||||
[image arora_screenshot]
|
||||
|
||||
Porting Arora to Genode motivated many improvements of our C library, the Qt4
|
||||
port, and the lwIP stack. In the current state, the application is fully
|
||||
|
@ -104,7 +104,7 @@ The following figure gives an overview of how the components of the graphics
|
||||
software stack relate to each other. The components are described in the
|
||||
following.
|
||||
|
||||
[image img/gallium3d]
|
||||
[image gallium3d]
|
||||
|
||||
|
||||
EGL driver
|
||||
@ -123,7 +123,7 @@ interface. For Genode, we have added a new EGL driver that uses Genode's
|
||||
part of 'gallium.lib.so'. The following screenshot shows the EGL driver
|
||||
in action.
|
||||
|
||||
[image img/gallium_softpipe_screen]
|
||||
[image gallium_softpipe_screen]
|
||||
|
||||
|
||||
Gallium i915 GPU driver
|
||||
|
@ -684,7 +684,7 @@ programs that run isolated from the Qt4 application, and thereby depend on
|
||||
on a significantly less complex trusted computing base than the Qt4
|
||||
application itself.
|
||||
|
||||
[image img/nitpicker_plugin]
|
||||
[image nitpicker_plugin]
|
||||
|
||||
The image above illustrates the use of the 'QNitpickerViewWidget' in the
|
||||
scenario presented on the Live CD. The browser obtains the Nitpicker view to be
|
||||
@ -708,7 +708,7 @@ to implement on a classical OS but is a breeze to realize on Genode where all
|
||||
device drivers and protocol stacks are running as distinct user-level
|
||||
components. The following figure illustrates the idea:
|
||||
|
||||
[image img/http_block]
|
||||
[image http_block]
|
||||
|
||||
The block stub driver of the Linux kernel gets connected to a special block
|
||||
driver called 'http_block', which does not access a real block device but
|
||||
|
@ -84,7 +84,7 @@ until now, Vancouver has been tied to a specialized user land that comes with
|
||||
NOVA. For the current Genode release, we took the chance to adopt this
|
||||
technology for Genode.
|
||||
|
||||
[image img/vancouver]
|
||||
[image vancouver]
|
||||
The Vancouver virtual machine monitor executed as Genode
|
||||
component
|
||||
|
||||
@ -126,7 +126,7 @@ Genode.
|
||||
:[http://l4android.org]:
|
||||
L4Android project website
|
||||
|
||||
[image img/l4android]
|
||||
[image l4android]
|
||||
Android, a Linux distribution, and a process tree of Genode
|
||||
components running side by side
|
||||
|
||||
@ -149,7 +149,7 @@ without changing the original source code of the UNIX programs. This work is
|
||||
primarily motivated by our ongoing mission to use Genode as development
|
||||
environment.
|
||||
|
||||
[image img/noux]
|
||||
[image noux]
|
||||
The Noux runtime environment for UNIX software. The program is linked
|
||||
against a custom libc plugin that directs system calls over an RPC
|
||||
interface to the Noux server. The RPC interface resembles a
|
||||
@ -217,7 +217,7 @@ line with Genode's architecture but capitalizes it. Instead of adding
|
||||
special debugging interfaces to low-level components such as the kernel
|
||||
and core, we use an approach that we call application-level virtualization.
|
||||
|
||||
[image img/no_gdb]
|
||||
[image no_gdb]
|
||||
A Genode process uses low-level services provided by core as well as a
|
||||
higher-level service implemented as separate process component.
|
||||
|
||||
@ -229,7 +229,7 @@ directly for those services but requests them via its chain of parents (i.e,
|
||||
the init process). This gives us the opportunity to route session requests for
|
||||
those services to alternative implementations.
|
||||
|
||||
[image img/gdb]
|
||||
[image gdb]
|
||||
GDB monitor transparently intercepts the interaction of a Genode process with
|
||||
its environment. By virtualizing fundamental core services, GDB monitor
|
||||
exercises full control over the debugging target. GDB monitor, in turn,
|
||||
|
Loading…
Reference in New Issue
Block a user