Signal handler descriptor

The sighand pointer of the task structure refers to an instance of the struct sighand_struct, which is the signal handler descriptor shared by all processes in a thread group. This structure is also shared by all processes created using clone() with the CLONE_SIGHAND flag. This structure holds an array of k_sigaction instances, each wrapping an instance of sigaction that describes the current disposition of each signal:

struct k_sigaction {
struct sigaction sa;
#ifdef __ARCH_HAS_KA_RESTORER
__sigrestore_t ka_restorer;
#endif
};

struct sighand_struct {
atomic_t count;
struct k_sigaction action[_NSIG];
spinlock_t siglock;
wait_queue_head_t signalfd_wqh;
};


The following figure represents the signal handler descriptor:

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.149.214.32