Лекция: Взаимодействие между процессами

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

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

 

еще рефераты
Еще работы по информатике