Rechercher
 

Améliorations / Corrections

Vous avez des améliorations (ou des corrections) à proposer pour ce document : je vous remerçie par avance de m'en faire part, cela m'aide à améliorer le site.

Emplacement :

Description des améliorations :

La librairie <signal.h> (<csignal> en C++)

La fonction raise


La librairie <signal.h> permet de gérer les signaux produits par votre système d'exploitation. Un signal est un message émit à destination d'un processus (ou d'un groupe de processus) pour l'informer que quelque chose vient de survenir ou pour lui demander de réaliser une tâche particulière. Par exemple :

Un signal peut être emit en mode « ligne de commande », via la commande kill sous système Unix/Linux, ou par programmation, via la fonction raise.

Les fonctions C ISO

Nom Type Description Depuis
raise fonction Cette fonction permet d'envoyer un signal au processus courant. C89
signal fonction Cette fonction permet de connecter un fonction de traitement de signal à un signal particulier. C89

Voici la liste des signaux supportés par le standard C ISO 2018.

Nom du signal Signification Description
SIGABRT Signal Abort Terminaison anormale, normalement initiée par la fonction abort
SIGFPE Signal Floating-Point Exception Opération arithmétique erronée, telle que division du zéro ou opération entraînant un dépassement de capacité. Attention, ce signal peut aussi déclencher suite à des manipulation de valeur numérique sans virgule flottante.
SIGILL Signal Illegal Instruction Exécution d'une instruction non conforme. Cela est généralement dû à une corruption du code ou à une tentative d'exécution de données.
SIGINT Signal Interrupt Un signal d'interruption généralement généré par l'utilisateur de l'application.
SIGSEGV Signal Segmentation Violation Accès à un segment de mémoire virtuelle non mappé en mémoire physique ou tentative de modification d'un segment de mémoire configuré en lecture seule.
SIGTERM Signal Terminate Signal de demande de terminaison du programme.

Les fonctions complémentaires POSIX

Les fonctions suivantes ne font pas partie de la norme C ISO : elles ne sont donc pas disponibles sur tous les compilateurs. Néanmoins, si vous utilisez un système UNIX/Linux, alors vous êtes compatible avec la norme POSIX (Portable Operating System Interface - X-Window). Dans ce cas vous pouvez aussi utiliser ces fonctions.

Nom Type Description Depuis
kill fonction Cette fonction permet d'envoyer un signal à un processus donné (via son PID). POSIX
sigaction fonction Récupère et/ou change l'action pour un signal donné. POSIX
sigandset fonction POSIX
sigdelset fonction POSIX
sigemptyset fonction POSIX
sigfillset fonction POSIX
sigisemptyset fonction POSIX
sigismember fonction POSIX
sigorset fonction POSIX
sigpending fonction POSIX
sigprocmask fonction POSIX
sigqueue fonction POSIX
sigsuspend fonction POSIX
sigtimedwait fonction POSIX
sigwait fonction POSIX
sigwaitinfo fonction POSIX

Pour obtenir la liste de tous les signaux supportés par votre système POSIX (Unix/Linux) vous pouvez exécuter la commande suivante :

$> kill -l


La fonction raise