Технология программирования для распределенных параллельных систем. Демьянович Ю.К - 43 стр.

UptoLike

Замечание. Здесь фигурирует один канал open с запросами на
открытие; он совместно используется всеми клиентами и серверами.
Другие решения рассматриваемой задачи состоят в следующем.
1. Можн о пр едс тавить определенную диспетчеризацию рас-
пределения запросов: в этом случае должен иметься процесс-
диспетчер, который выделяет клиенту файловый сервер, а фай-
ловые серверы должны сообщать диспетчеру информацию о том,
что они свобод ны.
2. В рассм отренн ом решении количества клиентов и файловых
серверов фиксированы. Возможно создать динамическое определе-
ние файловых серверов и клиентов, но программа будет сложнее;
одн ако, это, возможно, приведет к экономии при реализации.
3. Можно иметь по одному файловому серве ру на каждый диск,
но тогда либо серверы, либо клиенты должны отслеживать всю ин-
формацию по открытию и закрытию файлов и передавать эту ин-
формацию при каждом запросе; это усложняет программирование
и увеличивает потоки информации.
4. Наконец, существует подход, использующий доступ к файлам
с помощью удаленных процедур (этот подход используется в фай-
ловой системе Sun Network File System /NFS/): при этом “откры-
тие” файла состоит в получении файлового дескриптора и набора
атрибутов файла, которые затем передаются при каждом вызове
процедуры доступа к файлу. В результате возрастают затраты на
передачу аргументов, но существенно упрощается обработка сбо-
ев как серверов, так и к лие нтов (если происходит сбой файлового
сервера, то клиент просто повторяет запросы).
§ 5. Обмен значениями
Пусть имеется n процессов P[0:n-1], в каждом из которых име-
ется локал ьная пер ем енн ая v, пр ин явшая некоторое значение. За-
дач а состоит в том, чтобы определить наибольшее и наименьшее
значения переменных v в упомянутых процессах и дать эту инфор-
мацию всем процессам.
Первый способ (асимметричное решение). Один из процессов
(например, P[0]) собирает все n чисел, находит минимальное и мак-
симальное среди них и рассылает результаты остальным процессам
(см. рис. 4).
44