ТОР 5 статей: Методические подходы к анализу финансового состояния предприятия Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века Характеристика шлифовальных кругов и ее маркировка Служебные части речи. Предлог. Союз. Частицы КАТЕГОРИИ:
|
Очереди сообщений в UNIX как составная часть System V IPC.Очереди сообщений, как и семафоры, как и разделяемая память, являются средством связи с непрямой адресацией, требуют инициализации для организации взаимодействия процессов и специальных действий для освобождения системных ресурсов по окончании взаимодействия. Пространством имен очередей сообщений является то же самое множество значений ключа, генерируемых с помощью функции ftok(). Для выполнения примитивов send и receive соответствующим системным вызовам в качестве параметра передаются IPC дескрипторы очередей сообщений, однозначно идентифицирующих их во всей вычислительной системе. Очереди сообщений располагаются в адресном пространстве ядра операционной системы в виде однонаправленных списков и имеют ограничение по объему информации, хранимой в каждой очереди. Каждый элемент списка представляет собой отдельное сообщение. Сообщения имеют атрибут, называемый типом сообщения. Выборка сообщений из очереди (выполнение примитива receive) может осуществляться тремя способами: 1. В порядке FIFO, независимо от типа сообщения. 2. В порядке FIFO для сообщений конкретного типа. 3. Первым выбирается сообщение с минимальным типом, не превышающим некоторого заданного значения, пришедшее ранее всех других сообщений с тем же типом. Реализация примитивов send и receive обеспечивает скрытое от пользователя взаимоисключение во время помещения сообщения в очередь или его получении из очереди, а также блокировку процесса при попытке выполнить примитив receive над пустой очередью или очередью, в которой отсутствуют сообщения запрошенного типа, или при попытке выполнить примитив send для очереди, в которой нет свободного места. Очереди сообщений, как и другие средства System V IPC, позволяют организовывать взаимодействие процессов, не находящихся одновременно в вычислительной системе. Не нашли, что искали? Воспользуйтесь поиском:
|