genode/os/src/server
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
..
fs_rom Add new 'fs_rom' service 2013-01-15 10:18:11 +01:00
iso9660 Update copyright headers to 2013 2013-01-10 21:44:47 +01:00
loader New Input::Event::FOCUS, rename keycode to code 2013-01-15 10:18:11 +01:00
mixer Audio: Replace old with new audio interface 2013-01-10 23:05:43 +01:00
nic_bridge nic_bridge: Add static IP address configuration 2013-01-24 11:35:56 +01:00
nic_loopback Update copyright headers to 2013 2013-01-10 21:44:47 +01:00
nit_fb New Input::Event::FOCUS, rename keycode to code 2013-01-15 10:18:11 +01:00
nitpicker Turn 'Timer::Session' into asynchronous interface 2013-02-14 10:36:06 +01:00
part_blk Update copyright headers to 2013 2013-01-10 21:44:47 +01:00
ram_fs Introduce notifications to file-system interface 2013-01-15 10:18:07 +01:00
rom_loopdev Update copyright headers to 2013 2013-01-10 21:44:47 +01:00
rom_prefetcher Update copyright headers to 2013 2013-01-10 21:44:47 +01:00
tar_fs Introduce notifications to file-system interface 2013-01-15 10:18:07 +01:00
tar_rom tar_rom: let unkown file throw Root::Invalid_args 2013-01-24 11:12:10 +01:00
terminal_crosslink Update copyright headers to 2013 2013-01-10 21:44:47 +01:00
terminal_log Update copyright headers to 2013 2013-01-10 21:44:47 +01:00
vmm Update copyright headers to 2013 2013-01-10 21:44:47 +01:00