Логический элемент


Средства взаимодействия процессов. Сравнительная характеристика базовых механизмов IPC


Download 384.49 Kb.
bet78/110
Sana18.06.2023
Hajmi384.49 Kb.
#1597764
1   ...   74   75   76   77   78   79   80   81   ...   110
Bog'liq
Answers

3.10. Средства взаимодействия процессов. Сравнительная характеристика базовых механизмов IPC


3.10. ЗАСОБИ ВЗАЄМОДІЇ ПРОЦЕСІВ. ПОРІВНЯЛЬНА ХАРАКТЕРИСТИКА БАЗОВИХ МЕХАНІЗМІВ IPC.
Взаимодействие между процессорами – каналы(лучше всего вписываются в модель виртуальных коммуникационных портов). Канал для процесса практически аналогичен файлу. Специальные системные вызовы используются для создания канала и получения доступа к каналу, а для работы с каналом используются те же вызовы read и write, что и для файлов, и даже закрытие канала выполняется файловым системным вызовом close. Канал, однако, представляет собой не внешние данные, а область памяти, доступ к которой осуществляется по дисциплине FIFO - первый вошел - первый вышел. Наиболее часто используются неименованные каналы, как средство связи между родителем и потомком. Операция создания неименованного канала возвращает два файловых манипулятора: для чтения и для записи. Процесс-предок передает эти манипуляторы процессу-потомку. Если связь между предком и потомком однонаправленная, то каждый из них закрывает канал по одному из манипуляторов.
Очереди сообщений воплощают модель взаимодействия процессов "много отправителей - один получатель". Эту модель часто называют почтовым ящиком (mailbox). Процесс-получатель является владельцем очереди, он создает очередь, а остальные процессы получают к ней доступ, "открывая" ее. Очередь обычно имеет внешнее имя. Передача данных в очереди происходит всегда сообщениями, причем каждое сообщение имеет заголовок и тело. Заголовок всегда имеет фиксированный для данной системы формат. В него обязательно входит длина сообщения, а другая информация зависит от спецификаций конкретной системы: это может быть приоритет сообщения, тип сообщения, идентификатор процесса, пославшего сообщение и т.п.

3.11. Интерфейс программирования API. Связь между функциями и системными вызовами. Структурная схема реализации системных вызовов. Механизмы передачи параметров в системных вызовах. Примеры API для ОС Windows и Unix.


3.11. Інтерфейс програмування API. Зв’язок між функціями та системними викликами. Структурна схема реалізації системних викликів. Механізми передавання параметрів в системних викликах. Приклади API для ОС Windows та Unix.

Для выполнения различных действий может потребоваться режим ядра (например, все действия, связанные с управлением аппаратными средствами), но этот режим монопольно используется только самой ОС. Выполнение привилегированных операций перекладывается с плеч приложения на плечи ОС. Обеспечение такого механизма реализуется путем использования интерфейса прикладного программирования (Application Programming Interface, API). Приложения выполняют обращение к функциям API с помощью системных вызовов. При генерации системных вызовов управление передается ОС, которая либо сама выполняет действия, либо формирует управляющее воздействие на оборудование. В последнем случае оборудование выполняет операцию и сигнализирует об ошибке или нормальном завершении операции прерыванием. Обработав прерывание, ОС формирует отклик процессу – результат системного вызова.
Для обеспечения передачи параметров диспетчеру системных вызовов и процедурам ОС могут использоваться различные механизмы:
– передача параметров через регистры (самый быстрый механизм, но сильное ограничение по количеству передаваемой информации);
– передача параметров через область памяти, адрес которой заносится в регистр (позволяет передать максимально возможное количество параметров);
– передача параметров через стек процесса (не задействуем дополнительный регистр, нет проблем с памятью, так как параметры будут сразу помещены в доступную для процесса память).

Download 384.49 Kb.

Do'stlaringiz bilan baham:
1   ...   74   75   76   77   78   79   80   81   ...   110




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling