Операционной системой ЭВМ называется программа (совокупность программ), управляющая работой ЭВМ.
Операционные системы (ОС) разрабатываются в первую очередь для универсальных многофункциональных ЭВМ
Не существует сколько-нибудь законченной схемы разработки операционной системы. Нет также установившейся терминологии для описания ОС.
Важно понимать, что ОС способна решать достаточно широкий круг задач управления (любую отдельную функцию ОС можно реализовать какими-либо другими средствами).
Тем не менее, проектирование ОС базируется на некоторых основополагающих принципах.
  1. Частотный принцип. Для действий, которые часто встречаются при работе ОС, обеспечиваются условия их быстрого выполнения.
  2. Принцип модульности. Под модулем в общем случае понимают функциональный элемент рассматриваемой системы, имеющий средства сопряжения с другими элементами. По своему определению модуль предполагает легкость его замены на другой при наличии заданных интерфейсов. Как правило, в отдельные модули выделяются части ОС, взаимодействующие с оборудованием ЭВМ. Это позволяет легко адаптировать ОС под конкретное оборудование путем простой замены соответствующих модулей
  3. Принцип функциональной избирательности. Является логическим продолжением частотного и модульного принципов. В ОС выделяется некоторая часть важных модулей, которые должны быть постоянно "под рукой" для эффективной организации вычислительного процесса. Эту часть ОС называют "ядром", так как она является основой системы.
  4. Принцип генерируемости. Заключается в возможности настройки ОС исходя из конкретной конфигурации вычислительной системы и круга решаемых задач.
  5. Принцип функциональной избыточности. Каждая функция ОС реализована в нескольких вариантах, что обеспечивает универсальность и большую гибкость при работе.
  6. Принцип перемещаемости. Предусматривает построение модулей, исполнение которых не зависит от места расположения в оперативной памяти.
  7. Принцип аппаратной независимости программ от внешних устройств. Взаимодействие прикладных программ с устройствами, входящими в состав вычислительной системы осуществляется только через функции ОС. ОС может быть настроена для использования конкретного оборудования с учетом принципов модульности и генерируемости. Таким образом, прикладная программа работает с оборудованием на абстрактном уровне и тем самым обеспечивается ее независимость от аппаратного обеспечения.
  8. Принцип защиты. Определяет необходимость разработки мер, ограждающих программы и данные пользователя от искажений и влияний друг на друга, а также пользователей на ОС и наоборот. Операционная система оснащается механизмами, которые не позволяют ей и другим программам выполнять действия, могущие поставить под угрозу функционирование других программ или самой ОС. Важно заметить, что организация эффективной защиты возможна только при наличии аппаратной поддержки на уровне МП. Наиболее известными подходами для организации защиты являются следующие:
    • Использование привилегированных команд. Часть команд, входящих в систему команд МП, становятся "привилегированными" и могут быть выполнены только программой, имеющей на это право. К привилегированным относятся, как правило, команды управления процессором и работы с портами ввода-вывода. Обычно правами для выполнения привилегированных команд обладает только операционная система. Такой подход позволяет не допустить выполнения обычной прикладной программой действий, могущих поставить под угрозу функционирование всей системы в целом. Контроль возможности выполнения конкретной команды в зависимости от уровня привилегий активной программы выполняет процессор.
    • Контекстная защита. В этом случае процессор контролирует операции доступа к определенным ресурсам, например к различным областям памяти. При попытке доступа определяется, имеет ли активная программа право на доступ к запрашиваемому ресурсу. Для того чтобы такая проверка была возможна, каждый ресурс (например, область памяти) должен иметь описание (контекст), определяющий возможность доступа к нему со стороны той или иной программы.