Dans la list des signaux définis dans un système Linux, deux signaux sont définis comme signaux définis par l'user ( SIGUSR1
et SIGUSR2
). D'autres signaux seront relevés ou capturés dans des situations spécifiques, mais les SIGUSR sont laissés à l'usage de l'application user.
Alors pourquoi seulement deux signaux?
Historiquement, Unix avait seulement ces deux signaux, mais les systèmes modernes ont les signaux en time réel SIGRTMIN
… SIGRTMAX
.
En raison de la sémantique farfelue et nonportable des API de signaux, il n'y a presque pas de cas d'utilisation où les signaux seraient préférables aux autres mécanismes de communication comme les tuyaux. Par conséquent, l'atsortingbution d'un nouveau numéro de signal n'a jamais été considérée comme nécessaire.
Les signaux ne fournissent qu'un moyen primitif de communication. En particulier, il n'y a aucun moyen d'y attacher des informations. Le destinataire connaît seulement le numéro du signal, pas l'identité de l'expéditeur. Plusieurs signaux peuvent être combinés en un seul. Compte tenu de toutes ces ressortingctions, il n'y a pas beaucoup de buts utiles pour les signaux.
Pour des objectives plus complexes, utilisez des moyens d'interactions plus complexes, tels que des tuyaux ou des sockets.