The main thread does no longer execute application code. It is solely responsible for the initialization of the component's entrypoint and for retrieving asynchronous notifications. Since the stack usage is no longer dependent on application-specific code, we can significantly shrink it to reduce the memory footprint of components. In the worst case - should the stack overrun - we would observe a page fault because the stack is placed in the stack area, surrounded by guard pages. |
||
---|---|---|
.. | ||
spec | ||
_main.cc | ||
cap_copy.cc | ||
component_construct.cc | ||
component_entry_point.cc | ||
init_main_thread.cc |