I'm working with Unix signal handling and trying to understand the mechanism behind signal propagation to process groups, especially in the context of Linux namespaces. When I run cat /proc/[pid]/status | grep NSpgid, I get a value that I assume represents the namespace-specific process group ID (NSpgid).
My question is two-fold:
Does the Unix kernel automatically propagate a signal to all child processes sharing the same process group ID (PGID), or is it necessary to manually send signals to each child process within that group?
How does the concept of namespaces (indicated by NSpgid from the /proc/[pid]/status output) affect the delivery and handling of these signals?
What I have tried:
Sending a signal to the parent process ID and observing the behavior of child processes in the same group. Retrieving NSpgid information from the proc filesystem to discern namespace-specific behavior.