- 37 -
Библиотека RPC периода выполнения использует для взаимодействия с
транспортным протоколом единый интерфейс доступа к транспорту RPC
(RPC transport interface). Этот интерфейс служит прослойкой между средст-
вом RPC и транспортным протоколом, которая отображает операции RPC в
функции, предоставляемые транспортным протоколом.
Средство RPC для Windows’NT предоставляет DLL-компоненты доступа
к транспортному протоколу для именованных каналов, NetBIOS, TCP/IP и
DECnet, имеется возможность разработки дополнительных DLL с
целью под-
держки других транспортных протоколов. Сходным образом средство RPC
поддерживает работу с различными средствами защиты (при отсутствии не-
штатных DLL защиты программное обеспечение RPC для Windows’NT ис-
пользует встроенную защиту именованных каналов).
Для обеспечения взаимодействия средства RPC с приложениями RPC
на другой ЭВМ они должны использовать одинаковые соглашения RPC.
Microsoft RPC соответствует стандарту RPC, установленному Open Software
Foundation (OSF) в спецификации
среды распределенных вычислений (DCE,
Distribute Calculation Environment). Таким образом, написанные с использо-
ванием Microsoft RPC приложения могут вызывать удаленные процедуры на
других системах, использующих стандарт DCE.
Большинство сетевых сервисов Windows’NT являются приложениями
RPC и поэтому могут вызываться как локальными процессами, так и процес-
сами на удаленных машинах. Это значит, что удаленный компьютер может
обращаться к сервисам данной ЭВМ
для просмотра совместно используемых
ресурсов, открытых файлов, очередей печати или активных пользователей на
этом сервере, либо он может вызвать сервис сообщений для посылки сооб-
щений (при наличии соответствующих прав доступа).
Существуют более совершенные механизмы реализации вызова удален-
ных процедур - асинхронные вызовы удаленных функций (ARPC,
Asynchronous Remote Procedure Cal), позволяющие на основе применения
функций
отклика (call-back function) избежать приостановки выполнения
прикладной программы на локальной машине. Для связи с удаленными сис-
темами RPC может использовать сервис NetBIOS, Windows Sockets и другие
доступные средства (например, именованные каналы для Windows’NT). Для
вызова процедур, расположенных на том же компьютере, что и вызывающая
программа, и обмена информацией с ними служит механизмы вызова локаль-
ных процедур (LPC,
Local Procedure Call) или упрощенного вызова удаленных
процедур (LRPC, Lightweight Remote Procedure Call). Однако вышеуказанные
средства доступны лишь в Windows’NT.
Резюмируя сказанное, следует признать, что предложенная Microsoft
RPC-методика, значительно упрощая создание сетевых приложений (путем
сокрытия от программиста многих рутинных действий), все же весьма дале-
ка от совершенства. В самом деле, для изменения многих параметров сети