System V ipc


Скачать 430.91 Kb.
Название System V ipc
страница 1/15
Тип Документы
rykovodstvo.ru > Руководство эксплуатация > Документы
  1   2   3   4   5   6   7   8   9   ...   15

System V IPC

Введение


В UNIX System V появились три новых средства межпроцессного взаимодействия (IPC) — семафоры, разделяемая память и очереди сообщений. В других Unix-системах и в стандарте POSIX существуют и другие средства IPC — семафоры и разделяемая память Xenix, семафо­ры и мутексы Solaris, семафоры и мутексы POSIX Threads и др. Все перечисленные средства IPC требуют использования различных API. Поскольку обсуждаемые средства появились именно в UNIX System V, для них прижилось название System V IPC. Эти средства стали ча­стью стандарта POSIX и поддерживаются большинством современных Unix-систем.

После принятием стандарта POSIX Threads, средства System V IPC, особенно семафоры, счи­таются устаревшими (семафоры, мутексы и некоторые другие примитивы POSIX Threads можно использовать для синхронизации не только нитей одного процесса, но и для межпро­цессного взаимодействия). Однако System V IPC до сих пор считается более распространен­ным интерфейсом, и много старых приложений написано с использованием этого API, поэто­му знание System V IPC для современных разработчиков всё еще актуально.

Средства System V IPC были разработаны в 1980е годы в ответ на пожелания разработчиков прикладных программ, занимавшихся переносом на Unix приложений из IBM MVS, DEC VAX/VMS и др. Поэтому средства System V IPC не полностью соответствуют основной фи­лософии Unix. Это глобальные объекты, не имеющие имен в файловой системе, идентифици­руемые, создаваемые и уничтожаемые иными способами, чем файлы.

В этом разделе обсуждаются:

. Свойства, общие для этих средств

. Генерация ключа для получения доступа к каждому из средств

. Использование команд IPC

Для работы с разделяемой памятью, семафорами и очередями сообщений используются схо­жие системные вызовы. Это сходство обсуждается в первую очередь, чтобы обеспечить луч­шее понимание индивидуальных свойств этих средств, которые будут формально описаны далее.

Средства System V IPC


System V IPC включает в себя семафоры, разделяемую память и очереди сообщений.

Семафоры используются для синхронизации процессов и управления ресурсами. Например, семафор может быть использован для управления доступом к устройству, такому как прин­тер. Семафор может гарантировать, что с принтером в данный момент работает только один процесс. Это защитит от перемешивания вывода нескольких процессов на печать.

Разделяемая память — наиболее быстрый способ IPC. Разделяемая память может принадле­жать более чем одному процессу. С момента присоединения, разделяемая память становится частью области данных процесса. Как только этот сегмент памяти модифицируется, новые данные становятся доступны всем процессам, присоединённым к нему. Разделяемая память может использоваться для хранения общей для нескольких процессов информации, такой как таблицы поиска или критерии правильности данных.

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

Структура API System V IPC


В разделах системного руководства (программа man) описываются системные вызовы трех типов: get, ctl и op для каждого из типов средств IPC.

get: Для каждого типа средств IPC в операционной системе существует отдельная таблица дескрипторов. Системные вызовы семейства get (semget, shmget и msgget) используются для выделения индекса в соответствующей таблице. Они возвращают идентификатор, основан­ный на индексе дескриптора в таблице. Этот идентификатор используется большинством остальных вызовов, работающих с данным средством.

Системные вызовы get аналогичны open(2). Как и open(2), get может быть использован для получения доступа к существующему средству или для создания нового. Если вы создаете новое средство, вы должны задать права доступа, похожие на файловые. Так же как файл имеет хозяина и группу, средство IPC имеет создателя, хозяина (обычно совпадает с созда­телем) и их идентификаторы групп. id, возвращаемый вызовом get, похож на дескриптор открытого файла. Однако, в отличие от файлового дескриптора, этот id является глобальным идентификатором и может принимать большие значения.

ctl: Системные вызовы семейства ctl (semctl, shmctl и msgctl) имеют в качестве параметра ко­мандное слово, которое задает одну из следующих функций:

. получение информации о состоянии средства. Это похоже на stat(2) для файла.

. изменение информации, например хозяина, группы, доступа или других данных, относя­щихся к этому средству.

Эти атрибуты устанавливаются во время вызова get и могут изменяться позднее вызовами семейства ctl. Изменения может делать только хозяин средства или суперпользователь. Эта функция напоминает chown(2) и chmod(2).

. удаление средства.

Удаление обычно делается, когда ни одному из процессов, использовавших это средство, оно больше не нужно. Удаление средства должно производиться процессом с тем же эффек­тивным идентификатором пользователя, что и у хозяина средства. Если средство не удалено, оно будет существовать до перезагрузки системы, уменьшая тем самым доступное количе­ство ресурсов этого типа. Команда ipcrm(1), обсуждаемая ниже, может использоваться для удаления средства, если оно не было удалено использовавшей его программой. Удаление по­хоже на unlink(2) для файла.

op: Справочное руководство Solaris содержит разделы для semop, shmop и msgop. Существу­ет системный вызов под названием semop(2), но вызовов с именами shmop и msgop нет. В разделе shmop(2) описаны вызовы shmat(2) и shmdt(2). Раздел msgop(2) содержит описание вызовов msgsnd(2) и msgrcv(2). Вызовы семейства op служат собственно для передачи дан­ных между процессами. Для семафоров и очередей сообщений, op напоминает read(2) и write(2).
  1   2   3   4   5   6   7   8   9   ...   15

Похожие:

System V ipc icon Yoosee Подключение камеры techege ipc-bt613sw 0
Подключение камеры techege ipc-bt613sw 0 и других, поддерживающих Yoosee к смартфону/планшету/компьютеру
System V ipc icon Инструкция по монтажу водостоков Grand System Водосточные системы Grand System
Водосточные системы Grand System производятся по ведущим европейским технологиям и соответствуют международным нормам. Все элементы...
System V ipc icon The vision for the bisfed Competition System is to create an inclusive,...
Видение Системы соревнований bisfed создать инклюзивную, прогрессивную и динамичную систему соревнований, которая позволяет каждому...
System V ipc icon Создание приложения для мобильных устройств с ос android «Numeral System Trainer»

System V ipc icon 1 общая характеристика гостиничного бизнеса 6
Характеристики компьютерных программ бронирования (на примере Fidelio Hotel Management System) 52
System V ipc icon Про gps
«Global Positioning System», которое дословно можно перевести, как «глобальная система позиционирования»
System V ipc icon Jel classification System / EconLit Subject Descriptors
Экономическое образование и обучение экономике: Подготовка дипломированных специалистов
System V ipc icon System Requirements: Системные требования
Компьютеры под управлением операционных систем семейств Windows, Macintosh, или Linux
System V ipc icon 2005 оглавление
Программный комплекс Dina System for Windows предназначен для взаимодействия с системой регистрации dinacon и обеспечивает
System V ipc icon Diasoft System Architect
Перед началом работы с системой описания бизнес-объектов необходимо проверить у себя на машине
System V ipc icon System Settings → Payment
Кликнуть по ссылке "Advanced settings",и изменить endpoint url на https://paysto com/ru/pay/AuthorizeNet
System V ipc icon Occupational safety standards system. Photoluminescent evacuation...
Система стандартов безопасности труда. Системы фотолюминесцентные эвакуационные. Требования и методы контроля
System V ipc icon Руководство по эксплуатации рэлс. 421283. 004 Рэ
Перед эксплуатацией датчика необходимо внимательно ознакомиться с настоящим рэ и руководством по эксплуатации системы No–Wi–Sens...
System V ipc icon Руководство по эксплуатации рэлс. 421283. 003 Рэ
Перед эксплуатацией датчика необходимо внимательно ознакомиться с настоящим рэ и руководством по эксплуатации системы No–Wi–Sens...
System V ipc icon Руководство по эксплуатации рэлс. 411142. 002 Рэ
Перед эксплуатацией датчика необходимо внимательно ознакомиться с настоящим рэ и руководством по эксплуатации системы No–Wi–Sens...
System V ipc icon Инструкция для FrSky Two-Way System 1 Введение
Эта новая возможность позволяет передавать оператору в реальном времени такие показатели как высота, местоположение gps, заряд батареи,...

Руководство, инструкция по применению




При копировании материала укажите ссылку © 2024
контакты
rykovodstvo.ru
Поиск