genode/os/run
Norman Feske 3049c1004c Turn 'Timer::Session' into asynchronous interface
The 'Timer::Session::msleep' function is one of the last occurrences of
long-blocking RPC calls. Synchronous blocking RPC interfaces turned out
to be constant source of trouble and code complexity. I.e., a timer
client that also wants to respond to non-timer events was forced to be a
multi-threaded process. This patch replaces the blocking 'msleep' call
by a mechanism for programming timeouts and receiving wakeup signals in
an asynchronous fashion. Thereby signals originating from the timer can
be handled along with signals from other signal sources by a single
thread.

The changed interface has been tested on Linux, L4/Fiasco, OKL4, NOVA,
L4ka::Pistachio, Codezero, Fiasco.OC, and hw_pbxa9. Furthermore, this
patch adds the timer test to autopilot.

Fixes #1
2013-02-14 10:36:06 +01:00
..
ahci.run Replace old test/block with test/ahci 2012-07-09 15:51:55 +02:00
bomb.run Run script for fork bomb test 2012-11-27 10:40:13 +01:00
chroot_loader.run Improve robustness of chroot-related tests 2012-11-23 12:20:27 +01:00
chroot.run Improve robustness of chroot-related tests 2012-11-23 12:20:27 +01:00
config_args.run Read 'main()' function arguments from config file 2012-04-20 08:31:40 +02:00
demo.run Increase quota of USB driver 2012-09-18 10:53:17 +02:00
dynamic_config_loader.run Re-implementation of the loader service, ref #187 2012-05-02 16:54:18 +02:00
dynamic_config_slave.run Support for dynamic ROM sessions, fix #170 2012-04-05 11:25:26 +02:00
dynamic_config.run Support for dynamic ROM sessions, fix #170 2012-04-05 11:25:26 +02:00
failsafe.run Add failsafe test to autopilot 2013-01-07 16:31:31 +01:00
framebuffer.run framebuffer: add missing timer 2012-12-21 14:54:21 +01:00
gpio_drv.run Fix file name 2012-11-29 09:55:09 +01:00
ldso.run Init: handle reconfiguration 2013-01-15 10:18:12 +01:00
loader.run Re-implementation of the loader service, ref #187 2012-05-02 16:54:18 +02:00
mixer.run Audio: Adjust components to new audio interface 2013-01-10 23:05:37 +01:00
panda_uart4_echo.run Add OMAP4 UART driver 2012-12-20 14:40:18 +01:00
part_blk.run Imported Genode release 11.11 2011-12-22 16:19:25 +01:00
ram_fs_chunk.run File-system interface, ram_fs, libc-fs 2012-05-17 20:33:53 +02:00
rom_blk.run Imported Genode release 11.11 2011-12-22 16:19:25 +01:00
sd_card_bench.run Simple SD card driver benchmarking program 2012-07-25 19:14:05 +02:00
sd_card.run Imported Genode release 11.11 2011-12-22 16:19:25 +01:00
signal.run Enable 'signal' test on 'base_hw'. 2012-10-12 13:10:45 +02:00
tar_rom.run Init: handle reconfiguration 2013-01-15 10:18:12 +01:00
terminal_crosslink.run Tidy up run script for terminal crosslink 2012-06-30 15:45:03 +02:00
thread_join.run Add 'Thread_base::join()' 2012-11-19 12:43:34 +01:00
timed_semaphore.run Imported Genode release 11.11 2011-12-22 16:19:25 +01:00
timer.run Turn 'Timer::Session' into asynchronous interface 2013-02-14 10:36:06 +01:00
uart.run Introduce 'Uart::Session' interface 2012-11-07 13:43:09 +01:00
vmm.run Implement VMM for Linux in VEA9x4 normal-world 2012-10-29 10:08:30 +01:00