Википедия
signal.h — заголовочный файл , определенный в стандартной библиотеке языка Си , для указания того, как программа обрабатывает сигналы во время её выполнения. Сигнал может быть как синхронным с помощью вызова raise, так и асинхронным.
Каждая реализация определяет какой сигнал что генерирует и определяет их генерацию.
Эта часть библиотеки используется для перехвата сигналов — назначении обработчика определённого сигнала.
Обработчик сигнала может вызывать только следующие функции: _exit, _Exit, abort, raise (только если обработчик не вызван функциями abort или raise). Вызов прочих библиотечных функций приводит к неопределённому поведению, хотя отдельными реализациями такие вызовы могут быть разрешены, например в posix есть список async-signal-safe функций.