Кластер-клиент может лишиться доступа

Кластер-клиент может лишиться доступа к некоторой груп­пе входов не только по инициативе кластера-объекта, выпол­нившего примитив ОТКЛЮЧЕНИЕ, но и по собственной ини­циативе — как автоматический результат выполнения обраще­ний по некоторым входам из группы. Например, в результате обращения на вход CLOSE кластер-клиент теряет возможность работы с файлом. Такие входы кластера называются входами отстройки. Технически обращение на вход отстройки через не­которое подключение приводит к тому, что это подключение передается кластеру-объекту как неявный параметр. Получив этот параметр, кластер-объект оказывается его владельцем и может передать его другому кластеру-клиенту пли уничтожить (через примитив ОТКЛЮЧЕНИЕ). Таким способом осуществ­ляется в КЛОС защита входов кластеров и контроль доступа к ним.

Если после обращения кластера-клиента к кластеру-объекту требуется передача «в обратном направлении» обратных пара­метров, то объект для выполнения такого ответного обращения должен иметь подключение к некоторой группе входов клиента. Ядро в этом месте не налагает никаких ограничений и вообще не различает прямые и обратные обращения. Один из возмож­ных интерфейсов может предусматривать передачу объекту в качестве одного из прямых параметров подключения к группе входов клиента, состоящей из одного входа отстройки. В этом случае гарантируется, что на одно обращение к объекту клиент получит ровно одно ответное обращение. Симметричная схема реализует естественное обобщение сопрограммного взаимодей­ствия («обобщение» заключается в том, что между передачей прямых параметров и получением обратных параметров клас­тер может выполнять любые действия асинхронно со своим партнером).

Метки: , , , ,

Связанные записи