Введение к работе
Актуальность тамы.
Признанной п многообещающей оспоаоп поаых технологій программирования, прнзванпых позыспть производительность труда програмі :л-стоа при разработке прогрошшых комплексе^' г г^сокого уровня слогшо-стп, ааляетса объектно-орпснтЕфоааниозЪрогр' /!ипрованпе. Огрсмпий поток работ, позшшшпхея а этой области за последнее пренз, хасагтел, в основном, языков программировали?, юта" фундаментальные идеи объектного-подхода могут быть прішепегш а С*^пугпх сферах, п той чгслз п при построении операционных систем.
Кластерная операцпоппад система КЛОС является призером развития объектпо-орцентпропзлпого подхода ц его применения для создании операционных спетом. Но п отличие от большинства раэрабатыгз' г? п: объектно-ориеитирозаппых операционных систем, которые организуется над традиционными операционными системами, КЛОС орпептпрога-па па прямое нспользозание аппаратуры.
Цели работы.
-
Исследование принципов построения п методов функциональной структуризации базового уровня операционной системы на основа кластерной модели с учетом треботшшй мобильности.
-
Разработка базового уровня мобильной кластерной сшерацпеп-ной системы КЛОС и создание вспомогательного инструментария кросс-отладкн КЛОС в среде операционной системы UNIX.
3. Реализация программ базового уровня КЛОС и апробация переноса
с одной ЭВМ на другую.
Научпая ноипзна.
Повал архитектура ОС.
В отличие от традиционных операционных систем, где функции ОС реализуются в ядре, система КЛОС имеет совершенно другую структуру. Большинство функций ОС выполняются в системе КЛОС вне ядра з защищенных друг от друга кластерах, которые обмениваются мемеду собой сообщениями. Кластеры КЛОС инкапсулируют некоторые данные п предоставляют вовне набор операций для работы с этими данными. Кластеры не имеют общих данных и работают независимо друг от друга. Ядро выполняет, в основном, поддержку межкластерных взаимодействий.
Такая архитектура операционной системы имеет ряд достоинств.
Поскольку кластеры КЛОС выполняются независимо друг от друга, то различные части операционной системы могут работать параллельно. Проблем, связанных с синхронизацией прн работе с общими данными в КЛОС не возникает, так как кластеры ве имеют обишх данных, а взаимодействуют с помощью передачи сообщений.
Данные операционной системы рассредоточены по кластерам п защищены от неконтролируемого доступа. Инкапсуляция данных в кластерах гарантирует целостность данных, поскольку к данным прнмсняютсЕ только допустимые операции. Инкапсуляция данных также даст возможность модифицировать различные части системы, не затрагивая при этом остальные части.
Мобильность операционной системы с рассматриваемой архитектурой имеет две стороны. Одна касается мобильности ядра ОС, а другая — мобильности кластеров операционной системы, работающих на базе ядра. Прн сохранении неизменным интерфейса между ядром н кластерами операционной системы, проблемы переноса касаются, в осцовном, ядра ОС. Поскольку основные функции операционной систем вынесены за пределы ядра, то оно становится небольшим и довольио мобильным.
При данной архитектуре функциональные возможности ОС определяются не ял]юм, а набором системных кластеров, работающих на базе этого ядра. В принципе, это позволяет иметь несколько различных операционных систем, работающих над одним и тем же ядром. Если говорить об одной операционной системе, то рассматриваемая архитектура позволяет u uihjmiuix пределах варьировать возможности ОС, исходя из практических потребностей или ограничений аппаратуры.
При проектировании и реализации проітшошьіх комплексов важную роль играет понятие составного объекта (подсистемы). КЛОС поддерживает понятие полг нстемы сверх) донизу — от уровня конечного пользователя до ядра ОС, kotojkm: непосредственно поддерживает понятие подсистемы и использует его при управлении процессором, управлении памятью, а также при порождении/ликвидации компонентов системы.
Ядро КЛОС обеспечивает защиту межкластерных изанмодействнй. В каждый момент времени кластер может обращаться лишь к тем кластерам, к которым он летально получил доступ и может пользоваться лишь теми операциями, которые ему разрешены кластсром-рсалнзатором.
Кластеры КЛОС имеют сетмеитщюванную виртуальную память.
3....
Сегмецты позволяют эффективно перелагать большпз тссшз.ч диптапс при взаимодействии кластсроэ.
В работе получены следующие поаыа результаты:
-
Разработана позая архитектура ОС. Выделен нгшпнальпнй уро-сепь ядра ОС, сбеспечппанзщпа реализацию всех остальных функций пп уроане базовых объектов — кластеров. Такая архітектура сбеспечтгзт: асинхронпость работы и защиту; данных ессх щшнонентоэ ОС; мсбллт.-ность ОС; масштабируемость ОС.
-
Спроектировала п реалилопаиа поддержка системой КЛОС структурированных составных объектов-подсистем па ксех урозпгіх.:f уїгхщіо-пнрованпя ОС: зіфузка, управление пропессором и памятью.
-
Архитектурой КЛОС обеспечена защищенность доступа it операциям в кластере.
4. Раэработапы механизмы динамической сргаичзашш памяти при
параллельной п распределепкий работе подспстсн — сегмепты КЛОС.
Практическая ценность.
-
Реализовало ядро КЛОС ц шпхшш уропепь операдпоггсай епстеїял па ЭВМ "Элсхтроцика-35!' п рабочей станции "Беста-88".
-
Разработана и апробировала технология переноса базового уро*?ття операционной системы с одной ЭВМ на другу».
-
Созданное црограмнцое обеспечение кздгетез основой даль~г:ішггс работ по развитию кластерной технологии создания программисте комплексов.
-
Результаты исследования могут быть использованы в других работах по созданию операционных систем с указанной архитектурой.
Апробация работы.
Результаты диссертации доложены па конференции Советской ассоциации пользователей ОС UNIX — SUUG в 1990 году. Публикации. По теме диссертации опублшеоаано 8 печатных работ.
Объем и структура работы.