Читайте также:
|
|
Глава 3. Архитектура операционной системы
Любая сложная система должна иметь понятную и рациональную структуру, которая может быть разделена на отдельные функционально законченные части – модули. Ясное понимание назначения каждого отдельного модуля и правил взаимодействия между ними способствует возможности быстрой модификации и дальнейшего развития системы.
Функциональная сложность операционной системы неизбежно приводит к сложности ее архитектуры, под которой понимают структурную организацию операционной системы на основе различных программных модулей.
Большинство современных операционных систем представляют собой хорошо структурированные модульные системы, в которые изначально заложены способности к дальнейшему развитию, расширению и переносу на новые платформы. Какой – либо единой архитектуры операционных систем не существует, но существуют универсальные подходы к структурированию операционных систем.
Ядро и вспомогательные модули операционной системы
Обобщенная структура операционной системы подразумевает разделение всех ее модулей на две группы:
· ядро – модули, выполняющие основные функции операционной системы;
· модули, выполняющие вспомогательные функции операционной системы.
Модули ядра выполняют такие базовые функции операционной системы, как управление процессами, памятью, устройствами ввода-вывода и т.п. Без ядра операционная система является полностью неработоспособной и не сможет выполнить ни одну из своих функции.
Функции, составляющие ядро операционной системы, можно разделить на функции решающие внутрисистемные задачи по организации вычислительного процесса и недоступные для приложений, и функции служащие для поддержки приложений, создающие для них так называемую прикладную программную среду. Благодаря этим функциям приложения могут обращаться к ядру с запросами – системными вызовами – для выполнения тех или иных действий, например, открытия и чтения файла, получения системного времени и т.п. Эти функции образуют интерфейс прикладного программирования – API.
Функции ядра являются наиболее часто используемыми функциями операционной системы, поэтому скорость их выполнения определяет производительность всей системы в целом. Для обеспечения высокой производительности операционной системы все модули ядра или большая их часть постоянно находятся в оперативной памяти компьютера, то есть являются резидентными.
Остальные модули операционной системы, а именно вспомогательные функции, выполняют очень полезные, но менее обязательные функции операционной системы. Например, к таким функциям могут быть отнесены программы дефрагментации диска, текстового редактора, резервного копирования данных и т.п.
Обычно ядро операционной системы оформляется в виде программного модуля некоторого специального формата, отличающегося от формата пользовательских приложений. Часть компонентов операционной системы оформляются как обычные приложения, то есть в виде исполняемых модулей стандартного для данной операционной системы формата. Тем самым бывает очень сложно провести четкую грань между операционной системой и приложениями (см. рис.3.1.). Решение о том, является ли какая-либо программа частью операционной системы или нет, принимает разработчик операционной системы. Некоторая программа вначале может существовать как пользовательское приложение, а потом стать частью операционной системы, или наоборот. Например, Web-браузер компании Microsoft, который вначале был отдельным приложением, а начиная с Windows NT 4.0 и Windows 95/98 стал частью операционной системы.
Вспомогательные модули операционной системы можно разделить на следующие группы:
утилиты – программы, решающие отдельные задачи управления и сопровождения компьютерной системы, например программа сжатия дисков и т.п.;
системные обрабатывающие программы – текстовые или графические редакторы, компиляторы, компоновщики, отладчики;
программы предоставления пользователю дополнительных услуг – специальный вариант пользовательского интерфейса, программа калькулятора, игры;
библиотеки процедур (функций) различного назначения, упрощающие разработку приложений, например библиотека математических функций и т.п.
Как и обычные приложения, для выполнения своих задач вспомогательные модули операционной системы обращаются к функциям ядра посредством системных вызовов. Вспомогательные модули обычно загружаются в оперативную память компьютера только на время выполнения своих функций, то есть являются транзитными.
Дата добавления: 2015-01-30; просмотров: 95 | Поможем написать вашу работу | Нарушение авторских прав |