Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
аттестация 1.doc
Скачиваний:
60
Добавлен:
12.03.2015
Размер:
406.53 Кб
Скачать

4.2.Средства обмена информацией

Взаимодействуя друг с другом процессы обмениваются информацией. По объему передаваемой информации и степени возможного воздействия на поведение другого процесса средства обмена делятся на три вида.

  • Сигнальные. Данный вид обмена передает минимальное количество информации – один бит, "да" или "нет". Используется, как правило, для извещения процесса о наступлении какого-либо события. Степень воздействия на поведение процесса, получившего информацию, минимальна. Процесс, получивший сигнал должен знать, что означает полученный сигнал и как на него реагировать. Неправильная реакция на сигнал или его игнорирование могут привести к непредсказуемым последствиям.

  • Канальные. Операционная система предоставляет линии связи, через которые происходит обмен информации между процессами. Объем передаваемой информации в единицу времени ограничен пропускной способностью линии связи.

  • Разделяемая память. Разные процессы могут совместно использовать одну и ту же область адресного пространства. Разделяемую память создает операционная система. Данный вид памяти обладает максимальной скоростью обмена информацией. Недостатком разделяемой памяти является высокая возможность влияния на поведение другого процесса.

Для организации разделяемой памяти при передаче или получении информации используют средства языков программирования. Для организации сигнальных и канальных средств коммуникации используют специальные системные вызовы.

4.3.Логическая организация механизма передачи информации

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

Как использовать средство связи для обмена информацией: сразу после создания процесса или после определенных действий по инициализации обмена? В случае разделяемой памяти требуется специальное обращение к операционной системе для выделения ею необходимой области адресного пространства процессу. В случае передачи сигнала от одного процесса другому инициализация не нужна.

В случае передачи информации по линиям связи требуется их резервирование для процессов, между которыми происходит обмен информацией. При передаче информации необходимо определить, куда передается информация, при приеме информации - откуда она получена. Существуют следующие способы адресации при использовании линий связи: прямая и непрямая. При обмене информации с использованием прямой адресации указываются взаимодействующие процессы. Симметричной прямой адресацией называется схема адресации, при которой процесс, отправляющий информацию, и процесс, получающий информацию, указывают номера или имена процессов. При данном виде адресации другой процесс не может вмешаться в процедуру обмена, перехватить данные или подменить их. Если при передаче указывается только один адрес из взаимодействующих процессов, а в качестве другого адреса рассматривается адрес любого процесса в системе, то такая схема адресации называется асимметричной прямой адресацией. При непрямой адресации процесс, передающий информацию, помещает данные для хранения в промежуточный объект, который имеет свой адрес. Из промежуточного объекта данные могут быть изъяты каким-либо другим процессом. Передающий процесс не знает, как идентифицируется процесс, который получит информацию. Принимающий процесс не знает идентификатор процесса, от которого он должен получить информацию.