Основные черты программирования

Приведенный выше краткий обзор особенностей КЛОС по­казывает, что при разработке подсистем на базе КЛОС — как подсистем самой операционной системы, так и подсистем «пользователя» — целесообразно использовать естественную технологию КЛОС. Это кластерная технология построения иерархических подсистем.

Базовый объект технологии — кластер — обладает следую­щими крайне важными особенностями: ориентацией на объект­ное программирование, асинхронностью выполнения, адекват­ной синхронизацией и защищенностью.

Особенно существенна связь объекта с синхронизацией опе­раций над объектом, поскольку обычно наиболее трудно обна­руживаемые ошибки в асинхронных подсистемах связаны имен­но с неверной синхронизацией. При централизации всех синхро­низационных действий в самом объекте синхронизации ошибки будут находиться проще и их труднее будет сделать. Более то­го, защищенность касается не только памяти кластеров (отсут­ствие общих данных и передача параметров по значению), но и межкластерных ссылок (подключений) и взаимной идентифи­кации кластеров. Механизм подключений, защищаемых ядром от кластеров, в сочетании с возможностью гибкой перенастрой­ки связей обеспечивает удобную защиту такого рода.

Вместе с тем подход к защите в КЛОС не страдает догма­тизмом — в отлаженных подсистемах межкластерная защита может быть снята без переделки программ.

Указанные свойства базового объекта сохраняются и для составных объектов — подсистем. По своему внешнему интер­фейсу подсистема вообще неотличима от кластера и это яв­ляется отражением важного принципа независимости клиента от способа реализации объекта. Можно ли реализовать объ­ект в виде одного кластера или нужна внутренняя асинхронность в объекте и потребуется создать целую подсистему — это никак не влияет ни на те кластеры—клиенты, которые будут обращаться на входы объекта, ни на программиста, использу­ющего объект как компонент своей подсистемы.

Метки: , ,

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