carg-os / karg

A POSIX-compliant RISC-V OS kernel written in C23, featuring preemptive priority scheduling, virtual memory, modular device drivers, VFS and IPC, with support for formats such as ELF and Devicetree.
https://carg-os.github.io/karg/
GNU General Public License v3.0
23 stars 3 forks source link

Support Unix signals #11

Closed alanjian85 closed 5 months ago

alanjian85 commented 6 months ago

Currently, user-space utilities like shells lack the capability to control their child processes during their execution. To address this limitation, supporting basic Unix signals such as SIGSTOP and SIGKILL is required.

alanjian85 commented 5 months ago

Signal is a mechanism that is too complicated and has many shortcomings. Additionally, it may have left many design defects such as the many system calls returning EINTR as error. Further consideration thus should be made before integrating the mechanism of signal.