Sobes.tech
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.