SIGTRAP | это... Что такое SIGTRAP? (original) (raw)

SIGTRAP

Описание: Отладочная ловушка
По умолчанию: завершение процесса
коды SA_SIGINFO
TRAP_BRKPT Достигнута точка останова
TRAP_TRACE Шаг трассировки выполнен

В POSIX-системах, SIGTRAPсигнал, посылаемый для информирования отладчика о возникновении интересующего события.

SIGTRAP — целочисленная константа, определённая в заголовочном файле signal.h. Символьные имена сигналов используются вместо номеров, так как в разных реализациях номера сигналов могут различаться.

Этимология

SIG — общий префикс сигналов (от англ. signal), TRAP — от англ. trap — ловушка (обнаружение) интересующего события.

Использование

При отладке программы, часто бывает полезной приостановка выполнения программы и анализ при наступлении некоторых условий - достижения определённой точки кода (например, вызова какой-нибудь функции), или изменении значения определённой переменной, а также, покомандная трассировка кода программы. Для этого программа-отладчик может использовать аппаратные отладочные возможности компьютера. Сигнал аппаратного отладчика преобразуется ядром в сигнал SIGTRAP.

При отсутствии возможности аппаратной отладки, отладчик периодически останавливает программу для проверки ожидаемых условий (что гораздо менее эффективно).