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



Архитектура операционной системы

Архитектура ОС – это структурная организация и принципы построения ОС на основе различных программных модулей.

Обычно в состав ОС входят:

– исполняемые и объектные модули стандартных для данной ОС форматов;

– библиотеки разных типов;

– модули исходного текста программ;

– программные модули специального формата (например, загрузчик ОС, драйверы ввода-вывода);

– файлы конфигурации;

– файлы документации;

– модули справочной системы

и т. д.

Не существует единой архитектуры ОС, но существуют универсальные подходы к структурированию ОС.

 

Наиболее общим подходом к структуризации ОС является разделение всех ее модулей на две группы:

ядро – модули, выполняющие основные функции ОС (управление памятью, устройствами ввода-вывода и т. д.);

– модули, выполняющие вспомогательные функции ОС.

 

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

В состав ядра входят:

– функции, решающие внутрисистемные задачи организации вычислительного процесса (такие функции недоступны для приложений);

– функции для поддержки приложений. Эти функции создают для приложений так называемую прикладную программную среду;

– функции, которые могут вызываться приложениями, так как приложения могут обращаться к ядру с запросами (системными вызовами) для выполнения каких-либо действий. Такие функции образуют интерфейс прикладного программирования[1] –ApplicationProgramInterface (API).

Вспомогательные модули ОС обычно подразделяются на следующие группы:

– утилиты –программы, решающие отдельные задачи управления и сопровождения компьютерной системы;

– системные обрабатывающие программы – текстовые или графические редакторы, компиляторы, компоновщики, отладчики;

– программы предоставления пользователю дополнительных услуг – специальный вариант пользовательского интерфейса, калькулятор, игры;

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

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

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

 

Рис. 1 Взаимодействие между ядром и вспомогательными модулями ОС

 

Так как некоторые компоненты ОС оформлены как обычные приложения (в виде исполняемых модулей стандартного для данной ОС формата), то часто очень сложно разграничить модули ОС и приложения (рис.2).

 

 

– вспомогательные модули ОС – пользовательские приложения

Рис. 2 Нечеткость границы между ОС и приложениями

 

Аппаратура компьютера должна поддерживать как минимум два режима работы – пользовательский режим (usermode)и привилегированный режим,который также называют режимом ядра (kernelmode),или режимом супервизора[2](supervisormode).

ОС или некоторые ее части работают в привилегированном режиме, а приложения – в пользовательском режиме. Так как ядро выполняет все основные функции ОС, то чаще всего именно ядро работает в привилегированном режиме(рис. 3). Иногда работа в привилегированном режиме служит основным определением понятия "ядро".

 

Рис. 3 Архитектура операционной системы с ядром в привилегированном режиме

 

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

 

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

 


Дата добавления: 2020-12-12; просмотров: 78; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!