12.2. Программный интерфейс сигналов Linux и POSIX

12.2. Программный интерфейс сигналов Linux и POSIX

12.2.1. Посылка сигналов

Посылка сигналов от одного процесса другому обычно осуществляется с помощью системного вызова kill(). Этот системный вызов подробно обсуждался в главе 10. Вариантом kill() является tkill(), который не предназначен для прямого использования в программах.

int tkill(pid_t pid, int signum);

Существуют два отличия между kill() и tkill()[59]. Первое: pid должен быть положительным числом; tkill() не может использоваться для отправки сигналов группам процессов, как это может kill(). Другое отличие позволяет обработчикам сигналов определять, применялся ли вызов kill() или tkill() для генерации сигнала: подробности см. далее в главе.

Функция raise(), которая представляет собой способ генерации сигналов, указанный ANSI/ISO, использует системный вызов tkill() для генерации сигналов в системах Linux.

int raise(int signum);

Функция raise() посылает текущему процессу сигнал, указанный в signum[60].

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг

Программный код агента

Из книги Язык программирования С# 2005 и платформа .NET 2.0. [3-е издание] автора Троелсен Эндрю

Программный код агента Если открыть сгенерированный файл агента, вы найдете там тип, который получается из System.Web.Services.Protocols.SoapHttpClientProtocol (если, конечно, вы не указали другой протокол связи с помощью опции /protocol).public partial class CalculatorWebService : System.Web.Services.Protocols.SoapHttpClientProtocol { …}Этот


2.2.4 Программный интерфейс RPC

Из книги TCP/IP Архитектура, протоколы, реализация (включая IP версии 6 и IP Security) автора Фейт Сидни М

2.2.4 Программный интерфейс RPC Хотя и не так широко распространенный, как socket, программный интерфейс вызова удаленных процедур (Remote Procedure Call — RPC) для соединений типа клиент/сервер достаточно часто используется в различных системах. Первоначально он был реализован в


Глава 21 Программный интерфейс socket

Из книги Ubuntu 10. Краткое руководство пользователя автора Колисниченко Д. Н.

Глава 21 Программный интерфейс socket 21.1 Введение Коммуникационные стандарты определяют все правила для обмена информацией в сети. Однако до некоторого момента игнорировалась необходимость стандартизации интерфейса программирования приложений (Application Programming Interface — API).


21.1.1 Программный интерфейс Berkeley

Из книги Операционная система UNIX автора Робачевский Андрей М.

21.1.1 Программный интерфейс Berkeley К счастью, большинство реализаций TCP/IP обеспечивает программный интерфейс, следующий очень простой модели программного интерфейса socket, который впервые был предложен в 1982 г. в версии 4.1c операционной системы Unix университета Беркли (Berkeley Software


4.1. Графический интерфейс в Linux

Из книги Цифровая фотография от А до Я [2-е издание] автора Газаров Артур Юрьевич

4.1. Графический интерфейс в Linux Порой в тех или иных литературных источниках сравнивают графические интерфейсы Windows и Linux. Такое сравнение некорректно. Дело в том, что графический интерфейс Windows один и тот же (для данной версии Windows, например, Windows 7). В Linux все иначе — здесь


23.2. Программный сбой

Из книги UNIX: разработка сетевых приложений автора Стивенс Уильям Ричард

23.2. Программный сбой Прежде всего, нужно выяснить и по возможности устранить причину сбоя. Если это сугубо программный сбой, то причины две: неправильная настройка программы (или системы) и ошибка


Программный интерфейс UNIX

Из книги Вопросы истории: UNIX, Linux, BSD и другие автора Федорчук Алексей Викторович

Программный интерфейс UNIX Системные вызовы и функции стандартных библиотек Все версии UNIX предоставляют строго определенный ограниченный набор входов в ядро операционной системы, через которые прикладные задачи имеют возможность воспользоваться базовыми услугами,


Программный интерфейс сокетов

Из книги автора

Программный интерфейс сокетов Итак, сокеты являются коммуникационным интерфейсом взаимодействующих процессов. Конкретный характер взаимодействия зависит от типа используемых сокетов, а коммуникационный домен, в рамках которого создан сокет, определяет базовые


Программный интерфейс сокетов

Из книги автора

Программный интерфейс сокетов Вы уже познакомились с интерфейсом сокетов при обсуждении реализации межпроцессного взаимодействия в BSD UNIX. Поскольку сетевая поддержка впервые была разработана именно для BSD UNIX, интерфейс сокетов и сегодня является весьма


Программный интерфейс TLI

Из книги автора

Программный интерфейс TLI При обсуждении реализации сетевой поддержки в BSD UNIX был рассмотрен программный интерфейс доступа к сетевым ресурсам, основанный на сокетах. В данном разделе описан интерфейс транспортного уровня (Transport Layer Interface, TLI), который обеспечивает


Программный интерфейс высокого уровня.

Из книги автора

Программный интерфейс высокого уровня. Удаленный вызов процедур В предыдущих разделах рассматривался программный интерфейс достаточно низкого уровня — по существу программа взаимодействовала непосредственно с транспортным протоколом, самостоятельно реализуя


Программный режим

Из книги автора

Программный режим Обозначается буквой Р. Это, в общем-то, автоматический режим, но в отличие от Авто он позволяет вам вносить свои изменения во многие выбранные камерой параметры: менять светочувствительность ISO, баланс белого, выбрать режим и точку автофокусировки,


5.8. Обработка сигналов POSIX

Из книги автора

5.8. Обработка сигналов POSIX Сигнал — это уведомление процесса о том, что произошло некое событие. Иногда сигналы называют программными прерываниями (software interrupts). Подразумевается, что процесс не знает заранее о том, когда придет сигнал.Сигналы могут посылаться в следующих


Семантика сигналов POSIX

Из книги автора

Семантика сигналов POSIX Сведем воедино следующие моменты, относящиеся к обработке сигналов в системе, совместимой с POSIX.? Однажды установленный обработчик сигналов остается установленным (в более ранних системах обработчик сигналов удалялся каждый раз по


IPLabs Linux Team: начало русского Linux’а

Из книги автора

IPLabs Linux Team: начало русского Linux’а Следующая веха на пути русского Linux’а – 1998 год, когда фирма IPLabs (точнее, ее подразделение – IPLabs Linux Team) совместно с Институтом логики (на самом деле это были одни и те же люди – Алексей Новодворский, Алексей Смирнов и Юрий Девяткин с