Принципы проектирования операционных систем.

Все ОС различаются по назначению, выполняемым функциям и способам реализации, но при всех уникальных свойствах каждой ОС можно определить их тождественное равенство в смысле использования некоторых принципов, положенных в их основу. Основным центральным принципом проектирования любой ОС является принцип модульности. Этот принцип был самым первым реализован на всех ОС, на всех этапах развития ОС.

1) Принцип модульности

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

Способы выделения составных частей ОС в отдельные модули могут существенно различаться. Обычно разделение происходит по функциональному признаку. Разделение системы на модули может определяться также и методами проектирования ОС. Например, функционально различные части ОС минимально представляются отдельно транслируемыми программными единицами. Эти модули связываются в систему обобщенного модуля, который реализует некоторый функциональный уровень в разрабатываемой ОС. Этот уровень для следующего уровня является базовым. На следующий уровень выносятся новые модули и объединяются в новый обобщенный модуль. Этот обобщенный модуль функционально более полный, чем нижний, т.к. кроме своих функций он имеет доступ к функциям предыдущего уровня. Такое иерархическое упорядочение модулей сильно упрощает разработку и эксплуатацию ОС, уменьшая число ошибок. Такой метод называется восходящим.

2) Частотный принцип

Этот принцип основан на выделении в алгоритмах, программах и обрабатываемых массивах действий и данных по частоте использования. Для часто реализуемых действий обеспечиваются все максимально возможные условия для их быстрого вы­полнения. Для программ – это, прежде всего – постоянное нахождение в ОЗУ, которое активно поддерживается специальными средствами. Для данных – это наиболее быст­рый доступ.

Частые операции при проектировке стараются делать более короткими, как след­ствие этого принципа – применение многоуровневого планирования при организации работы ОС. На уровень долговременного планирования выносятся редкие и “длинные” операции управления работы системы. Например, трансляция программ, редакти­рование, компиляция. На уровень краткосрочного планирования выносятся часто используемые, короткие операции или отдельные части алгоритмов и программ, работающих компактно.

3) Принцип функциональной избирательности

Все функции ОС, представленные программно, подразделяются на:

- часто и обязательно используемые

- используемые по необходимости

Основной состав функций используемых в обязательном порядке составляют ядро системы и всегда располагаются в ОЗУ, все остальные программы ОС называются транзитными и находятся за пределами ОЗУ. Их вызывает ОС или пользователь по мере надобности. Программы ядра системы называются резидентными.

4) Принцип генерируемости

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

5) Принцип функциональной избыточности

Реализует возможность осуществить одну и ту же работу различными средствами. Обычно для выполнения некоторых функций в системе пишется несколько модулей, подчиненных разным критериям. Это может привести к столь сильному расширению ОС, что объем памяти занимаемый ядром и транзитами, оказывается столь велик, что пользовательские программы большего объема не размещаются в памяти. Эти неудобства заставляют прибегать к ухищрениям, усложняющим задачу или искать менее разветвленную ОС.

6) Принцип по умолчанию

Этот принцип основан на хранении в системе некоторых базовых описаний структур, процессов, модулей, конфигураций оборудования и данных, определяющих требуемую оперативную память, время счета и некоторые другие условия выполнения пользовательских программ. Эта информация используется системой как заданная, если нет конкретизации ее изменения от пользователя.

Значения умалчиваемых параметров устанавливаются либо разработчиком, либо системным программистом, либо при первичной генерации. Применяется для облегчения организации связей с системой, как во время генерации ОС, так и в процессе работы.

7) Принцип перемещаемости

Основной смысл заключается в том, что строятся модули, выполнение которых не зависит от месторасположения их в ОЗУ. Настройка текста модуля в соответствии с его расположением в ОЗУ может осуществляться специальными механизмами, либо непосредственно перед исполнением программы либо по мере ее исполнения. Настройка заключается в определении физических адресов, используемых в конкретной ЭВМ способом адресации, а также с учетом алгоритма распределения ОЗУ принятом ОС.

8) Принцип защиты

Основой является защита программ и данных пользователей от искажений или нежелательных влияний друг на друга специальными механизмами, разрабатываемы­ми при проектировке. Здесь же учитываются и возможные влияния программ пользо­вателей на саму ОС и наоборот. Программы должны быть гарантированно защищены как при своем выполнении, так и при хранении. Особенно трудно обеспечить защиту в режиме распределения ресурсов. В той или иной мере принцип защиты реализуется в любой мультипрограммной ОС. Существуют весьма разнообразные способы защиты долговременного хранения данных файлов. Одним из самых традиционных способов защиты является система паролей.

9) Принцип независимости от внешних устройств

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

10) Открытость и наращиваемость ОС (принцип открытой архитектуры)

Этот принцип основывается на том, что для вновь появляющихся вычислительных машин не разрабатывается ОС, а архитектура этих вычислительных средств позволяет добавлять в уже имеющиеся ОС новые функциональные модули, не меняя основ ОС. Этот принцип в совершенстве реализуется при создании ОС для ПЭВМ.


Наши рекомендации