- 18 -
после чего ядро ОС возвращает клиенту результаты в составе другого сооб-
щения.
Преимущество построения ПО на принципе клиент-серверного подхода
состоит в автономизации отдельных компонентов ПО - каждый компонент
имеет ограниченный размер, выполняется как отдельный процесс пользова-
тельского режима, авария (приводящая, возможно, к перезапуску процесса)
одного из них не нарушает работы остальных
компонентов ПО. Именно на
таком принципе построена известная операционная система WINDOWS
фирмы Microsoft Corp.
Важно, что различные серверные процессы могут выполняться на раз-
личных процессорах многопроцессорного компьютера или даже на разных
компьютерах, что делает построенную на клиент-серверной основе ОС при-
годной для распределенных вычислительных сред. В случае распределенной
ОС клиентам даже не
требуется знать, обслуживается их запрос локально (на
данной ЭВМ) или удаленно.
В Windows’NT средства обмена сообщениями между распределенными
(часто выполняющимися на различных компьютерах в сети) приложениями
обеспечивает (путем поддержки сетевого транспорта и защиты) служба се-
тевого обмена данными (DDE, Dynamic Data Exchange); также поддержива-
ется модель выполнения распределенных приложений в сети (DCOM,
Distributed Component Object Model). Ощутимый недостаток DCOM
состоит в
том, что каждый клиент может взаимодействовать только с одним конкрет-
ным компьютером, имеющим в составе ПО нужный сервер приложений
(сколько бы их ни было в сети); при этом информационная система не имеет
никакой защиты от сбоев, вызванных перегрузкой или отказом сервера при-
ложений (так как отсутствует возможность переключения
клиентского при-
ложения между несколькими серверами сети); этот недостаток устранен в
технологии OLEnterprise фирмы Inprise Corp. [7].
В состав Windows’NT изначально введены средство локального вызова
процедур (LPC, Local Procedure Call) - оптимизированного механизма испол-
няющей системы NT для локальной передачи сообщений серверной процеду-
ре и средство удаленного вызова процедур (RPC, Remote Procedure Call) - ме-
ханизм вызова процедур с удаленной машины (именно через
RPC взаимодей-
ствуют клиенты и сервера приложений согласно технологии OLEnterprise).
Не менее интересным являются введенные в Windows’NT средства передачи
данных между процессами (в том числе выполняющимися на различных
ЭВМ, объединенных сетью) - именованные и анонимные каналы передачи
данных, каналы типа Mailslot [14].
Таким образом, хотя Windows’NT и не является в полном смысле слова
распределенной ОС, фирма-разработчик
Microsoft Corp. серьезно подготови-
лась к реальному созданию распределенной ОС, и она будет (с большим или
меньшим успехом) разработана в свое время.