Главная страница Взаимодействие нетривиальных процессов Ш shmat для подключения сегмента разделяемой памяти к адресному пространству процесса; ш shmctl с командой IPC STAT для получения размера существующего сегмента разделяемой памяти; Ш shmctl с командой IPC RMID для удаления объекта разделяемой памяти. Одно из отличий состоит в том, что размер объекта разделяемой памяти Posix может быть изменен в любой момент вызовом ftruncate (как мы продемонстрировали в упражнении 13.1), тогда как размер объекта разделяемой памяти System V устанавливается изначально вызовом shmget и не может быть изменен. Упражнение Листинг 6.6 содержал измененную версию программы из листинга 6.4. Новая программа использовала для обращения к объекту IPC System V идентификатор вместо полного имени. Таким образом мы показали, что для доступа к очереди сообщений System V достаточно знать только ее идентификатор (если у нас имеются соответствующие разрещения). Сделайте аналогичные изменения в программе из листинга 14.4, продемонстрировав, что это верно и для разделяемой памяти System V. ЧАСТЬ 5 УДАЛЕННЫЙ ВЫЗОВ ПРОЦЕДУР ГЛАВА 15 Двери 15.1. Введение Поговорим о схеме клиент-сервер и вызове процедур. Существуют три различных типа вызова процедур, показанные на рис. 15.1. 1. Локальный вызов процедуры (local procedure call) знаком нам по обычному программированию на языке С. Вызываемая и вызывающая процедуры (функции) при этом относятся к одному и тому же процессу. При этом обычно выполняется некая команда процессора, передающая управление новой процедуре, а вызвавшая процедура сохраняет значение регистров процессора и выделяет место в стеке Под свои локальные переменные. 2. Удаленный вызов процедуры (remote procedure call - RPC) происходит в ситуации, когда вызвавшая и вызываемая процедуры относятся к разным про- вызов процедуры возврат локальный )> вызов процедуры узел процесс-клиент процесс-сервер
удаленный вызов процедуры (RPC) на том же узле с использованием дверей узел процесс-клиент узел процесс-сервер вызов процедуры возврат соединение по сети удаленный вызов У процедуры (RPC) на другом узле (глава 16) Рис. 15.1. Три типа вызова процедур
|
© 2000 - 2024 ULTRASONEX-AMFODENT.RU.
Копирование материалов разрешено исключительно при условии цититирования. |