From 468ebebbdadfe80eb29008498f11ad717e13d96f Mon Sep 17 00:00:00 2001 From: Christian Helmuth Date: Thu, 26 May 2016 15:49:03 +0200 Subject: [PATCH] doc: update README, components.txt etc. --- README | 4 +-- doc/components.txt | 32 +++++++++---------- doc/contributions.txt | 8 ++--- repos/README | 16 +++++----- repos/ports/doc/gdb.txt | 8 +++-- repos/ports/run/gdb_monitor_target_config.run | 2 +- repos/ports/run/noux_gdb_dynamic.run | 3 +- 7 files changed, 36 insertions(+), 37 deletions(-) diff --git a/README b/README index def5ee813..baceb9e19 100644 --- a/README +++ b/README @@ -10,7 +10,7 @@ the project's official website: :Official project website for the Genode OS Framework: - [http://genode.org/documentation/general-overview] + [https://genode.org/documentation/general-overview] The current implementation can be compiled for 8 different kernels: Linux, L4ka::Pistachio, L4/Fiasco, OKL4, NOVA, Fiasco.OC, seL4, and a custom @@ -70,5 +70,5 @@ mailing list. Please feel welcome to join in! :Genode Mailing Lists: - [http://genode.org/community/mailing-lists] + [https://genode.org/community/mailing-lists] diff --git a/doc/components.txt b/doc/components.txt index f9562b27c..ada33df8b 100644 --- a/doc/components.txt +++ b/doc/components.txt @@ -79,6 +79,14 @@ Platform devices this simple ACPI parser traverses the ACPI tables and reports device-resource information (e.g., interrupt lines of PCI devices). +:'libports/src/app/acpica': + In addition to our ACPI base driver, the acpica component uses the + ACPICA library to provide access to dynamic functions like battery + states, events (e.g., notebook lid close and power buttons), as well + as reset and power off. The componenten reports ACPI events and + states as reports and itself responds to system state changes of + certain configuration ROMs. + UART devices ============ @@ -169,13 +177,13 @@ at the same time). Depending on the base platform, the implementation uses different time sources. Time sources are either hardware timers, a time source provided by the kernel, or a pseudo time source (busy): -:'nova': NOVA kernel semaphores as time source -:'okl4_x86': PIT as time source -:'foc': IPC timeout as time source -:'fiasco': IPC timeout as time source -:'pistachio': IPC timeout as time source -:'linux': nanosleep as time source -:'hw': hardware timers depending on platform, e.g., PIT on x86 +:'nova': NOVA kernel semaphores +:'okl4_x86': Programmable Interval Timer (PIT) device +:'foc': IPC timeout +:'fiasco': IPC timeout +:'pistachio': IPC timeout +:'linux': nanosleep() +:'hw': kernel timer Audio drivers @@ -461,9 +469,6 @@ Libraries: :'libports/lib/mk/libc': C runtime ported from FreeBSD. -:'libports/lib/mk/libc_log': - Redirects the standard output of the libc to Genode's LOG session interface. - :'libports/lib/mk/libc_lwip_nic_dhcp': Translates the BSD socket API to a NIC session using the lwIP stack. @@ -479,13 +484,6 @@ Libraries: :'libports/lib/mk/libc_fuse_ext2': Accesses files on a block device that contains an ext2 file system. -:'libports/lib/mk/libc_fs': - Allows libc-using programs to access the Genode file-system infrastructure - using the POSIX file API. - -:'libports/lib/mk/libc_block': - Accesses a block session as a virtual block device. - :'libports/lib/mk/libc_terminal': Connects the standard input and output from/to Genode's terminal session interface. diff --git a/doc/contributions.txt b/doc/contributions.txt index 2eb7af528..8f9fdbc15 100644 --- a/doc/contributions.txt +++ b/doc/contributions.txt @@ -13,7 +13,7 @@ should be documented but isn't? Or the documentation contains errors with regard to content or spelling? Please let us know by raising the issue at the genode-main mailing list: -:[http://genode.org/community/mailing-lists - Genode mailing lists]: +:[https://genode.org/community/mailing-lists - Genode mailing lists]: If you are interested in getting your hands dirty with working on the Genode code base or authoring additional documentation, you are more than welcome. @@ -31,9 +31,9 @@ Alternatively, you may like to have a look at our road map and future challenges to see the big picture of our developments and to get inspiration for your own activities: -:[http://genode.org/about/road-map]: Road Map +:[https://genode.org/about/road-map]: Road Map -:[http://genode.org/about/challenges]: Future Challenges +:[https://genode.org/about/challenges]: Future Challenges Once you settled on a specific topic to work on, it is a good idea to get acquainted with the work flow and tools used by the project. The following @@ -81,7 +81,7 @@ Genode's source code follows certain time-tested conventions regarding the coding style and code pattern, which are important to us. The coding style is described in the following document: -:[http://genode.org/documentation/developer-resources/coding_style]: +:[https://genode.org/documentation/developer-resources/coding_style]: Coding Style Guidelines We know from experience that for new developers, adhering the coding style can diff --git a/repos/README b/repos/README index 4c66709c5..bd8764bd0 100644 --- a/repos/README +++ b/repos/README @@ -10,7 +10,7 @@ build-system manual: :Build-system manual: - [http://genode.org/documentation/developer-resources/build_system] + [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 @@ -31,33 +31,33 @@ but build upon of each other: :'nova': NOVA hypervisor developed at University of Technology Dresden - See [http://genode.org/documentation/platforms/nova] + See [https://genode.org/documentation/platforms/nova] :'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. - See [http://genode.org/documentation/platforms/foc] + See [https://genode.org/documentation/platforms/foc] :'hw': The hw platform allows the execution of Genode on bare ARM and x86 hardware without the need for a separate kernel. The kernel functionality is included in core except in the special case of the Muen separation kernel. - See [http://genode.org/documentation/platforms/hw] and - [http://genode.org/documentation/platforms/muen] + See [https://genode.org/documentation/platforms/hw] and + [https://genode.org/documentation/platforms/muen] :'okl4': OKL4 kernel (x86_32 and ARM) developed at Open-Kernel-Labs. - See [http://genode.org/documentation/platforms/okl4] + See [https://genode.org/documentation/platforms/okl4] :'pistachio': L4ka::Pistachio kernel developed at University of Karlsruhe. - See [http://genode.org/documentation/platforms/pistachio] + See [https://genode.org/documentation/platforms/pistachio] :'fiasco': L4/Fiasco kernel developed at University of Technology Dresden. - See [http://genode.org/documentation/platforms/fiasco] + See [https://genode.org/documentation/platforms/fiasco] :'sel4': seL4 microkernel developed at NICTA/General Dynamics diff --git a/repos/ports/doc/gdb.txt b/repos/ports/doc/gdb.txt index e2f06911a..d8f274cfb 100644 --- a/repos/ports/doc/gdb.txt +++ b/repos/ports/doc/gdb.txt @@ -226,8 +226,7 @@ scenario, please refer to the 'tcp_terminal.run' script proved at 'gems/run/'. GDB monitor is built upon the libc and a few custom libc plugins, each coming in the form of a separate shared library. Please make sure to integrate those shared libraries along with the dynamic linker (ld.lib.so) in your boot image. -They are 'libc.lib.so' (the libc), 'libc_log.lib.so' (for printing the LOG -output of GDB monitor to core's LOG service), 'libc_terminal.lib.so' (to +They are 'libc.lib.so' (the libc), 'libc_terminal.lib.so' (to connect with GDB), and 'libc_pipe.lib.so' (used for synchronizing threads via 'select' and 'pipe'). For using the TCP terminal, 'lwip.lib.so' (TCP/IP stack) is needed as well. @@ -249,7 +248,7 @@ To get acquainted with GDB monitor, the 'ports' repository comes with two example run scripts. The 'gdb_monitor_interactive.run' script executes a simple test program via GDB monitor. The test program can be found at 'ports/src/test/gdb_monitor/'. When looking behind the scenes, the simple -program is not simple at all. It uses shared libraries (the libc and libc_log) +program is not simple at all. It uses shared libraries (the libc) plugin and executes multiple threads. So it is a nice testbed for exercising these aspects. The run script can be invoked right from the build directory via 'make run/gdb_monitor_interactive'. It will execute the scenario on Qemu and @@ -286,6 +285,9 @@ breakpoint will trigger with a message like this: ! at /.../libc-8.2.0/libc/stdio/puts.c:53 ! 53 { +_The following example applies to an older version of Genode and must_ +_be revised for recent versions._ + Now, you can inspect the source code of the function via the 'list' command, inspect the function arguments ('info args' command) or start stepping into the function using the 'next' command. For a test of printing a large diff --git a/repos/ports/run/gdb_monitor_target_config.run b/repos/ports/run/gdb_monitor_target_config.run index c159f549d..0622fa522 100644 --- a/repos/ports/run/gdb_monitor_target_config.run +++ b/repos/ports/run/gdb_monitor_target_config.run @@ -71,7 +71,7 @@ install_config $config # generic modules set boot_modules { core init timer - ld.lib.so libc.lib.so libc_log.lib.so libc_pipe.lib.so libc_terminal.lib.so + ld.lib.so libc.lib.so libc_pipe.lib.so libc_terminal.lib.so uart_drv gdb_monitor test-gdb_monitor_target_config } diff --git a/repos/ports/run/noux_gdb_dynamic.run b/repos/ports/run/noux_gdb_dynamic.run index 0fb08d8c0..dd5e5df45 100644 --- a/repos/ports/run/noux_gdb_dynamic.run +++ b/repos/ports/run/noux_gdb_dynamic.run @@ -30,7 +30,6 @@ build $build_components set gdb_target_binaries { ld.lib.so libc.lib.so - libc_log.lib.so } lappend gdb_target_binaries ${gdb_target_binary_name} @@ -140,7 +139,7 @@ exec cp ${genode_dir}/repos/os/src/app/cli_monitor/gdb_command_config bin set boot_modules { core init timer ld.lib.so noux terminal_mux terminal_crosslink libc.lib.so libm.lib.so libc_noux.lib.so ncurses.lib.so expat.lib.so - libc_pipe.lib.so libc_log.lib.so libc_terminal.lib.so + libc_pipe.lib.so libc_terminal.lib.so cli_monitor gdb_monitor terminal_log gdb.tar gdb_command_config gdb_target.tar