Архитектура ОС, основанная на привилегированном ядре и приложениях пользовательского режима, является классической, ее используют многие популярные операционные системы.
Архитектура операционной системы
Архитектура ОС – это структурная организация и принципы построения ОС на основе различных программных модулей.
Обычно в состав ОС входят:
– исполняемые и объектные модули стандартных для данной ОС форматов;
– библиотеки разных типов;
– модули исходного текста программ;
– программные модули специального формата (например, загрузчик ОС, драйверы ввода-вывода);
– файлы конфигурации;
– файлы документации;
– модули справочной системы
и т. д.
Не существует единой архитектуры ОС, но существуют универсальные подходы к структурированию ОС.
Наиболее общим подходом к структуризации ОС является разделение всех ее модулей на две группы:
– ядро – модули, выполняющие основные функции ОС (управление памятью, устройствами ввода-вывода и т. д.);
– модули, выполняющие вспомогательные функции ОС.
Без ядра ОС является полностью неработоспособной и не может выполнить ни одну из своих функций.
В состав ядра входят:
– функции, решающие внутрисистемные задачи организации вычислительного процесса (такие функции недоступны для приложений);
– функции для поддержки приложений. Эти функции создают для приложений так называемую прикладную программную среду;
– функции, которые могут вызываться приложениями, так как приложения могут обращаться к ядру с запросами (системными вызовами) для выполнения каких-либо действий. Такие функции образуют интерфейс прикладного программирования[1] –ApplicationProgramInterface (API).
|
|
Вспомогательные модули ОС обычно подразделяются на следующие группы:
– утилиты –программы, решающие отдельные задачи управления и сопровождения компьютерной системы;
– системные обрабатывающие программы – текстовые или графические редакторы, компиляторы, компоновщики, отладчики;
– программы предоставления пользователю дополнительных услуг – специальный вариант пользовательского интерфейса, калькулятор, игры;
– библиотеки процедур различного назначения, упрощающие разработку приложений, например библиотека математических функций, функций ввода-вывода и т. д.
Модули ОС, оформленные в виде утилит, системных обрабатывающих программ и библиотек, обычно загружаются в оперативную память только на время выполнения своих функций, то есть являются транзитными(или диск-резидентными).
Вспомогательные модули ОС оформляются или в виде приложений, или в виде библиотек процедур.
Рис. 1 Взаимодействие между ядром и вспомогательными модулями ОС
Так как некоторые компоненты ОС оформлены как обычные приложения (в виде исполняемых модулей стандартного для данной ОС формата), то часто очень сложно разграничить модули ОС и приложения (рис.2).
|
|
|
Рис. 2 Нечеткость границы между ОС и приложениями
Аппаратура компьютера должна поддерживать как минимум два режима работы – пользовательский режим (usermode)и привилегированный режим,который также называют режимом ядра (kernelmode),или режимом супервизора[2](supervisormode).
ОС или некоторые ее части работают в привилегированном режиме, а приложения – в пользовательском режиме. Так как ядро выполняет все основные функции ОС, то чаще всего именно ядро работает в привилегированном режиме(рис. 3). Иногда работа в привилегированном режиме служит основным определением понятия "ядро".
Рис. 3 Архитектура операционной системы с ядром в привилегированном режиме
Приложения ставятся в подчиненное положение за счет запрета выполнения в пользовательском режиме некоторых критичных команд, связанных с переключением процессора с задачи на задачу, управлением устройствами ввода-вывода, доступом к механизмам распределения и защиты памяти. Выполнение некоторых инструкций в пользовательском режиме запрещается категорически, другие инструкции запрещается выполнять только при определенных условиях. Например, инструкции ввода-вывода могут быть запрещены приложениям при доступе к контроллеру жесткого диска, который хранит данные, общие для ОС и всех приложений, но разрешены при доступе к последовательному порту, который выделен в монопольное владение для определенного приложения.
|
|
Архитектура ОС, основанная на привилегированном ядре и приложениях пользовательского режима, является классической, ее используют многие популярные операционные системы.
Дата добавления: 2020-12-12; просмотров: 78; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!