mirror of
https://github.com/genodelabs/genode.git
synced 2024-12-29 10:08:53 +00:00
ff5175ec76
The libc monitor facility enables the execution of monitor jobs by the main thread when the monitor pool was charged. In comparison to the current suspend/resume_all mechanism the main thread iterates over all job functions in contrast to waking up all threads to check their conditions by themselves. Threads are only woken up if the completion condition was met. This commit is the result of a collaboration with Christian Prochaska. Many thanks for your support, Christian. Fixes #3550
41 lines
983 B
Plaintext
41 lines
983 B
Plaintext
<runtime ram="72M" caps="1000" binary="init">
|
|
|
|
<requires> <timer/> </requires>
|
|
|
|
<events>
|
|
<timeout meaning="failed" sec="90" />
|
|
<log meaning="succeeded">--- returning from main ---</log>
|
|
<log meaning="failed">Error: </log>
|
|
<log meaning="failed">child "test-pthread" exited</log>
|
|
</events>
|
|
|
|
<content>
|
|
<rom label="ld.lib.so"/>
|
|
<rom label="libc.lib.so"/>
|
|
<rom label="libm.lib.so"/>
|
|
<rom label="posix.lib.so"/>
|
|
<rom label="vfs.lib.so"/>
|
|
<rom label="test-pthread"/>
|
|
</content>
|
|
|
|
<config>
|
|
<parent-provides>
|
|
<service name="ROM"/>
|
|
<service name="PD"/>
|
|
<service name="CPU"/>
|
|
<service name="LOG"/>
|
|
<service name="Timer"/>
|
|
</parent-provides>
|
|
<default-route>
|
|
<any-service> <parent/> <any-child/> </any-service>
|
|
</default-route>
|
|
<start name="test-pthread" caps="200">
|
|
<resource name="RAM" quantum="64M"/>
|
|
<config>
|
|
<vfs> <dir name="dev"> <log/> </dir> </vfs>
|
|
<libc stdout="/dev/log"/>
|
|
</config>
|
|
</start>
|
|
</config>
|
|
</runtime>
|