Sobes.tech
Junior — Middle

Как се изпраща сигнал за управление на процеса в операционната система?

sobes.tech AI

Отговор от AI

В операционните системи базирани на Unix/Linux, изпращането на сигнал към процес се извършва чрез системния повик kill(). Този повик позволява изпращането на определен сигнал (например SIGINT, SIGTERM, SIGKILL) към процес чрез неговия идентификатор PID.

Пример за използване на C:

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

int main() {
    pid_t pid = 1234; // PID на процеса, към който изпращаме сигнал
    int sig = SIGTERM; // сигнал за прекратяване
    int result = kill(pid, sig);
    if (result == 0) {
        // сигналът е изпратен успешно
    } else {
        // грешка при изпращане на сигнала
    }
    return 0;
}

Освен kill(), съществуват и други начини, например командата kill в терминала или функциите raise() за изпращане на сигнал към себе си. Сигналите се използват за управление на процеса: прекъсване, спиране, възобновяване, приключване и др.