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

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