Основные принципы построения ОС

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

    1. Модуль – функционально законченный элемент, выполняемый в соответствии с принятым межмодульным интерфейсом. Модуль выделяется по функциональному признаку. Модульная организация позволяет легко (из)заменять неправильно работающие модули в ОС. Чаще всего используются реентерабельные и привилегированные модули.
  2. Принцип функциональной избирательности.

    1. Для организации эффективной работы ОС, необходимо выделить некоторые модули и хранить их в ОЗУ. Эти модули составляют ядро ОС. Ядро:
      1. Модули по управлению системы прерываний;
      2. Средство управления выполнения программ (загрузка, приостановка, остановка);
      3. Модули по управлению процессом (распределение процессорного времени), т.е. диспетчеры программ;
      4. Модули по управлению выделения памяти. В зависимости от ОС в ядро могут ещё входить другие модули;
      5. Транзитные модули (загружаются в ОЗУ по мере необходимости, при нехватке ОЗУ могут быть выгружены из памяти).
  3. Принцип генерируемости ОС.

    1. Подразумевает собой возможность генерации ОС в зависимости от аппаратного обеспечения. Процесс генерации обычно производится один раз, перед достаточно долгим режимом эксплуатации. Для генерации необходимо наличие нескольких компонентов:

      1. Исходный код ОС;
      2. Компилятор с языка программирования на котором система написана;
      3. Специальная программа и входной язык для неё, который позволяет управлять процессом генерации.

      ОС с открытым системным кодом – Linux (UNIX), есть возможность тонкой настройки ядра для конкретного процессора.

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

    1. В состав ОС должно входит несколько типов ПО для выполнения одинаковых функций (поддержка разных файловых систем).
  5. Принцип виртуализации.

    1. Позволяет представить ресурсы ОС в виде определённого набора планировщиков и мониторов и использует единую схему распределения ресурсов. Наибольшее проявление – концепция виртуальной машины (воспроизводит архитектуру реальной машины, но может обладать произвольными характеристиками).
  6. Принцип независимости программ от внешних устройств.

    1. Связь программ с конкретным внешним устройством производится не на этапе трансляции, а на этапе выполнения программы. Получается выгода: не нужна лишняя «перекомпиляция».
  7. Принцип совместимости.

    1. Способность выполнять программы для другой ОС или даже для другой аппаратной платформы. Выделяют _2 уровня совместимости: _1. по выполняемому коду (бинарная)

    По выполняемому коду (бинарная):

    • На уровне команд процессора (одна и та же платформа);
    • Совместимость на уровне системных вызовов;
    • Совместимость на уровне библиотечных вызовов, если являются динамично связываемыми.

    По исходному коду:

    • Наличие компилятора платформы, на котором написана программа;
    • Совместимость на уровне системных вызовов;
    • Совместимость на уровне библиотечных вызовов.
  8. Принцип открытой наращиваемой ОС

    • (открыт исходный код). Целостность ОС сохраняется (UNIX).
  9. Принцип мобильности

    1. (переносимости). ОС должна легко переноситься на другую аппаратную платформу. Правила создания переносимых ОС:
      • ОС должна быть написана на языке высокого уровня, для которой существует компилятор на аппаратной платформе. В основном, современные ОС пишут на Си.
  10. Принцип обеспечения безопасности и защиты

    1. Защита системы от пользователя;
    2. Защита от несанкционированного доступа.

results matching ""

    No results matching ""