Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Гл.4 ОС буклет.doc
Скачиваний:
7
Добавлен:
11.11.2018
Размер:
157.18 Кб
Скачать

10

Системное программное обеспечение и операционные системы



КР ВУЗ ФПТ

Учебное пособие

Глава 4

Межпроцессовые взаимодействия

2007

Рекомендуемая литература:

  1. В.Г.Олифер, н.А.Олифер. Сетевые операционные системы. Учебное пособие.-сПб.:бхв-Петербург, 2006.-536с.

  2. В.А.Шеховцов. Операційні системи. Підручник .-к.:Виканавча група внv. 2005. 576с.

  3. Столлингс в. Операционные системы. М.: Вильямс, 2001. -672с.

Раздел 4

Межпроцессовые взаимодействия

  • Проблемы межпроцессового взаимодействия

  • Виды межпроцессового взаимодействия

  • Принципы и базовые примитивы передачи сообщений

  • Технологии передачи сообщений

До сих пор мы рассматривали взаимодействие потоков одного процесса. Главной особенностью этого взаимодействия есть простота технической реализации обмена данными между ними - все потоки одного процесса используют одно адресное пространство, и могут свободно получать доступ к совместно используемым данным, будто они есть их собственными. Поскольку технических трудностей с реализацией обмена данными здесь нет, основной проблемой, которую нужно решать в этом случае, есть синхронизация потоков.

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

Для потоков разных процессов вопрос обеспечения синхронизации тоже являются актуальными, но они в большинстве случаев не основываются на понятии совместно используемых данных (такие данные по умолчанию для процессов отсутствуют). Кроме того, прибавляется довольно сложная задача обеспечения обмена данными между защищенными адресными пространствами. Подходы к ее решению определяют разные виды межпроцессового взаимодействия (interprocess communication, IPC).

4.1. Виды межпроцесорного взаимодействия

Реализация межпроцессового взаимодействия осуществляется тремя основными методами:

-метод передачи сообщений;

-метод распределения памяти;

-метод отображаемой памяти.

Еще одним методом ІРС также можно считать технологию сигналов, которая была рассмотрена в разделе 3 (Л1). Сигналы были рассмотрены раньше, так как их использование не сводится только к организации ІРС (синхронные сигналы являются средством оповещения процесса об исключительной ситуации); без них сложно объяснить ряд базовых понятий управления процессами (например, ожидание завершения процесса).

4.1.1. Методы распределения памяти

Методы распределения памяти (shared memory) дают возможность двум процессам обмениваться данными через общий буфер памяти. Перед обменом данными каждый из тех процессов должны присоединить этот буфер к своему адресному пространству с использованием специальных системных вызовов (перед этим проверяют права). Буфер доступен в системе с помощью процедуры именования, срок его существования обычно ограничен временем работы всей системы. Данные в нем фактически совместно используются и для потоков. Никаких средств синхронизации доступа к этим данным розпределения памяти не обеспечивается, программист, так же, как и при разработке многопотокових приложений, должен организовывать её сам.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]