Sobes.tech
Junior — Middle

Hoe wordt het controle-signaal naar het besturingssysteem gestuurd?

sobes.tech AI

Antwoord van AI

In Unix/Linux-gebaseerde besturingssystemen wordt een signaal naar een proces gestuurd via de systeemaanroep kill(). Deze oproep maakt het mogelijk om een specifiek signaal (bijvoorbeeld SIGINT, SIGTERM, SIGKILL) naar een proces te sturen via zijn PID.

Voorbeeld in C:

#include <signal.h>
#include <unistd.h>

int main() {
    pid_t pid = 1234; // PID van het proces waaraan we het signaal sturen
    int sig = SIGTERM; // beëindigingssignaal
    int result = kill(pid, sig);
    if (result == 0) {
        // Signaal succesvol verzonden
    } else {
        // Fout bij het verzenden van het signaal
    }
    return 0;
}

Naast kill(), zijn er andere manieren, zoals het commando kill in de terminal of de functies raise() om een signaal naar zichzelf te sturen. Signalen worden gebruikt om processen te beheren: onderbreking, stop, hervatting, beëindiging, enz.