
- •Тема 5. Архитектура ос. Файл tema5.Doc c. 7 из 7
- •2.1. Концепция архитектуры
- •1.1. Концепция архитектуры
- •1.2. Ядро и вспомогательные модули ос
- •1.3. Привилегированный режим ядра и пользовательский режим
- •1.4. Многослойная структура ос
- •2. Микроядерная архитектура
- •2.1. Концепция архитектуры
- •2.2. Преимущества и недостатки микроядерной архитектуры
- •3. Переносимость ос
Тема 5. Архитектура ос. Файл tema5.Doc c. 7 из 7
Тема 5. Архитектура ОС
1. Архитектура на базе ядра в привилегированном режиме
1.1. Концепция архитектуры
1.2. Ядро и вспомогательные модули ОС
1.3. Привилегированный режим ядра и пользовательский режим
1.4. Многослойная структура ОС
2. Микроядерная архитектура
2.1. Концепция архитектуры
2.2. Преимущества и недостатки микроядерной архитектуры
3. Переносимость ОС
1. Архитектура на базе ядра в привилегированном режиме
1.1. Концепция архитектуры
Наиболее общим подходом к структуризации операционной системы является разделение всех ее модулей на две группы: ядро и вспомогательные модули. Ядро выполняет все основные функции ОС и работает в особом – привилегированном – режиме.
Приложения выполняются независимо, каждое – в своем собственном адресном пространстве.
Преимущество такой архитектуры заключается в легкой расширяемости ОС: для добавления новой высокоуровневой функции достаточно разработать новое приложение, не касаясь ядра. В противовес этому, внесение изменений в функции ядра может оказаться достаточно сложным – вплоть до полной его перекомпиляции.
Архитектура ОС, основанная на привилегированном ядре и приложениях пользователя, считается классической. Она используется, в частности, в большинстве вариантов ОС Unix и с определенными модификациями (см. п. 2.2) – в ОС Windows NT.
1.2. Ядро и вспомогательные модули ос
Ядро включает модули, выполняющие основные функции ОС:
управление процессами;
управление памятью;
управление вводом-выводом и файловая система;
интерфейс прикладного программирования API (Application Program Interface) для поддержки обращений к ядру из приложений.
Для обеспечения высокой скорости работы ОС модули ядра (все или большая часть), являются резидентными, т.е. постоянно находятся в оперативной памяти.
Вспомогательные модули по выполняемым функциям обычно подразделяются на следующие группы:
утилиты – программы, решающие отдельные задачи управления и сопровождения компьютерной системы (сжатие дисков, их проверка, дефрагментация; архивирование, сбор статистики и т.д.);
системные обрабатывающие программы (компиляторы, редакторы связей, загрузчики, отладчики, текстовые или графические редакторы);
библиотеки процедур различного назначения для разработки приложений (математические функции, функции ввода-вывода и т.д.);
программы, предоставляющие дополнительные услуги (калькулятор, некоторые игры).
По способу оформления эти модули представляют собой либо приложения, т.е. самостоятельные программы (утилиты, системные программы и программы дополнительных услуг), либо процедуры библиотек, вызываемые из приложений.
Вспомогательные модули ОС загружаются в оперативную память только на время выполнения (транзитные модули).
Решение о том, является ли какая-либо программа частью ОС или нет, принимает производитель ОС. Так, самостоятельное приложение, имеющее спрос, может быть включено в состав ОС (например, Веб-браузер Internet Explorer), или, наоборот, модуль ОС может превратиться в отдельное приложение.
Все модули (как вспомогательные, так и пользовательские приложения) обращаются к функциям ядра посредством системных вызовов (рис. 5.1).
Рис. 5.1. Взаимодействие между ядром и другими модулями