mirror of
https://github.com/genodelabs/genode.git
synced 2024-12-20 14:13:09 +00:00
0f05fa6fd4
This commit eliminates the mutual interlaced taking of destruction lock, list lock and weak pointer locks that could lead to a dead-lock situation when a lock pointer was tried to construct while a weak object is in destruction progress. Now, all weak pointers are invalidated and dequeued at the very beginning of the weak object's destruction. Moreover, before a weak pointer gets invalidated during destruction of a weak object, it gets dequeued, and the list lock is freed again to avoid the former dead-lock. Fix #1607 |
||
---|---|---|
.. | ||
doc | ||
include | ||
lib/mk | ||
run | ||
src | ||
README |
This is the example operating system based on the Genode OS framework: :_Init_: is the first real process in the system. The provided implementation uses a very simple XML parser to read its configuration files. :_Drivers_: The example OS has basic drivers for frame buffer, mouse and keyboard input, the PCI bus, the real-time clock, and system-specific timers. :_Server_: The only server in the example OS is Nitpicker, a minimal-complexity GUI server. :_Test_: are also part of the example OS. You may have a look at the fork bomb as a simple system stress test. :_Ldso_: is the dynamic linker used for loading executables that are linked against shared libraries. :_Lib_: contains libraries used by the components of the OS repository, for example, the alarm framework.