SIGTRAPОпис | Відбулась пастка налаштування (може бути перехопленим або проігнорованим) |
---|
Дія за замовчуванням | Завершує процес |
---|
|
TRAP_BRKPT | Досягнута точка зупинки
|
---|
TRAP_TRACE | Крок трасування виконано
|
|
SIGTRAP — сигнал на POSIX-сумісних платформах, який надсилається процесу, щоб повідомити процес про ситуацію спрацьовування пастки налаштування. Символьна змінна SIGTRAP оголошена у заголовному файлі signal.h
. Символьні імена для процесів використовуються через те, що їхні номери залежать від конкретної платформи.
Етимологія
SIG є загальноприйнятий префіксом для назв сигналів. TRAP в точності означає пастка (англ. trap).
Використання
Окремі апаратні платформи облаштовані механізмом налаштування програм, який генерує апаратне переривання при збігу поточної адреси інструкції процесора з адресою, занесеною в спеціальний регістр. На основі цього переривання ядро операційної системи генерує сигнал SIGTRAP.
На системах, не обладнаних подібним механізмом, порівняння поточної адреси інструкції процесора з необхідною адресою виконується програмно, або за необхідною адресою розміщується інструкція процесора, виконання якої призводить до переривання програми (при необхідності подальшого виконання ця частина коду програми відновлюється).