Unix Man (Справочное руководство)



SIGSET(2) - часть 2


  • SIG_DFL

    - реакция системы по умолчанию. По получении сигнала sig получающий процесс подлежит завершению со всеми последствиями, описанными в . Кроме того в текущем рабочем каталоге этого процесса будет оставлен "статический образ", если значение sig в вышеприведенном списке помечено звездочкой и удовлетворяются следующие условия:
  • Эффективный пользовательский идентификатор и действительный пользовательский идентификатор получающего сигнал процесса совпадают.

    Существует обычный файл с именем core, который доступен для записи, или этот файл может быть создан. Если он должен быть создан, тоон будет иметь следующие свойства:

    • режим доступа 0666, модифицированный маской создания файлов [см. ]
    • идентификатор владельца файла совпадает с эффективным пользовательским идентификатором получающего сигнал процесса
    • групповой идентификатор файла совпадает с эффективным групповым идентификатором получающего сигнал процесса.

  • SIG_IGN

    - игнорирование сигнала Ожидание сигнала sig отменяется, и реакция системы на сигнал этого типа устанавливается на его игнорирование.
  • SIG_HOLD

    - удержание сигнала Сигнал sig подлежит удержанию по его получении. Удерживается всякий ожидаемый сигнал этого типа. По каждому типу удерживается только один сигнал.
  • В любом другом случае func должен быть указателем на функцию-обработчик, которая вызывается при возникновении сигнала sig. В этом случае sigset определяет, что процесс должен вызвать эту функцию по получении сигнала sig. Любой ожидаемый сигнал этого типа сбрасывается. Адрес данного обработчика поддерживается длявсех вызовов прочих функций управления сигналами, перечисленными здесь.

    При возникновении сигнала его значение sig передается обработчику в качестве единственного аргумента. Перед вызовом обработчика реакция системы на сигнал устанавливается на SIG_HOLD. При нормальном возврате из обработчика реакция системы на сигнал восстанавливается на func, и любой ожидаемый сигнал этого типа сбрасывается.Если выполняется нелокальный переход goto(longjmp - дальний прыжок), тодля восстановления реакции системы на сигнал и сброса любого удерживаемого сигнала данного типа должен быть вызван sigrelse.




    Содержание  Назад  Вперед