Skip to content

Add support for unix signals #42

@Dreaded-Gnu

Description

@Dreaded-Gnu

Unix signals have been added by adding the necessary system calls and by adjusting the newlib patch file.

Currently there is a helper within servers called wait_for_device. This helper sends a message to vfs to check whether a specific device path exists or not. Depending on the return from vfs a sleep is called to wait 5 seconds until next try. To reduce the messages send and received by using this helper it should be replaced to use posix signals.

To get this done the newlib patch needs to be extended to provide all signal functions that have been added as stubs previously. Signals are already "possible" in form of sending an rpc request with a signal number to the process. To get that working in a more complete way, the stubs have to be filled including check whether the rpc destination is the parent process before sending the signal. That could be done in newlib only, but a different and a bit better approach than checking only there whether process is the parent process would be to route those signals via vfs, which checks whether the sender is a child of the destination.

Once that's implemented, the servers can be switched using signals to wait for a ready signal by using SIGUSR1 or SIGUSR2.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestoptimizationOptimization of existing implementation

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions