2015-11-25 5 views
3

Что именно SIG_DFL (обработчик defaut для сигналов)? Меня интересует SIGTSTP. Это плохо влияет на странные условия. У меня есть подозрение, что он делает что-то странное, если один из потоков находится в состоянии TASK_ININTERRUPTBLE.Что именно делает SIG_DFL?

Где находится исходный код SIG_DFL? Libc?

Спасибо.

ответ

4

Что именно SIG_DFL (обработчик defaut для сигналов)?

Это именно то, что можно было бы ожидать: информирует ядро, что не существует ни одного обработчика сигнала пользователя для данного сигнала, и что ядро ​​должно принять меры по умолчанию для него (действие само по себе может быть игнорировать сигнал, для завершения программы (с дампом ядра или без него) и т. д. в зависимости от сигнала).

Где находится исходный код SIG_DFL? Libc?

Существует, как правило, в /usr/include/signal.h#define SIG_DLF -1, но решение о том, что делать это в kernel.

+0

Так оно и есть в ядре ... Я думаю, что это объясняет всю мою борьбу. Спасибо. –