Junior — Middle
Comment le signal de contrôle du processus est-il envoyé dans le système d'exploitation?
sobes.tech IA
Réponse de l'IA
Dans les systèmes d'exploitation basés sur Unix/Linux, l'envoi d'un signal à un processus se fait via l'appel système kill(). Cet appel permet d'envoyer un signal spécifique (par exemple, SIGINT, SIGTERM, SIGKILL) à un processus en utilisant son identifiant PID.
Exemple d'utilisation en C :
#include <signal.h>
#include <unistd.h>
int main() {
pid_t pid = 1234; // PID du processus auquel on envoie le signal
int sig = SIGTERM; // signal de terminaison
int result = kill(pid, sig);
if (result == 0) {
// signal envoyé avec succès
} else {
// erreur lors de l'envoi du signal
}
return 0;
}
En plus de kill(), il existe d'autres méthodes, comme la commande kill dans le terminal ou les fonctions raise() pour envoyer un signal à soi-même. Les signaux sont utilisés pour contrôler un processus : interruption, arrêt, reprise, terminaison, etc.