ВУЗ:
Составители:
7
Многослойный подход является универсальным и эффективным способом
декомпозиции сложных систем любого типа, в том числе и программных. В
соответствии с этим подходом система состоит из иерархии слоев, каждый из
которых обслуживает вышележащий слой, выполняя для него некоторый набор
функций, которые образуют межслойный интерфейс.
Поскольку ядро представляет собой сложный многофункциональный
комплекс, то
многослойный подход обычно распространяется и на структуру
ядра. Оно может состоять из слоев:
− Средства аппаратной поддержки ОС — средства поддержки
привилегированного режима, систему прерываний, средства
переключения контекстов процессоров, средства защиты областей
памяти и т.п.
− Машинно-зависимые компоненты ОС — программные модули, в
которых отражается специфика аппаратной платформы компьютера. В
идеале этот слой полностью экранирует вышележащие слои от
особенностей аппаратуры, что позволяет разрабатывать вышележащие
слои на основе машинно-независимых модулей, существующих в
единственном экземпляре для всех типов аппаратных платформ,
поддерживаемых данной ОС.
− Базовые механизмы ядра — программное переключение контекстов
процессоров, диспетчеризацию прерываний, перемещение страниц
памяти на диск и обратно и т
.п. Модули этого слоя не принимают
решений о распределении ресурсов — они только отрабатывают
принятые «наверху» решения, что и дает повод называть их
исполнительными механизмами для модулей верхних слоев.
− Менеджеры ресурсов — модули, реализующие стратегические задачи
по управлению основными ресурсами вычислительной системы. Обычно
на данном слое работают менеджеры (диспетчеры) процессов, ввода-
вывода, файловой системы и оперативной памяти.
− Интерфейс системных вызовов — самый верхний слой ядра,
взаимодействующий непосредственно с приложениями и системными
утилитами.
Приведенное разбиение ядра является достаточно условным. Для
ускорения работы в некоторых случаях происходит непосредственное
обращение с верхнего слоя к функциям нижних слоев, минуя промежуточные.
Выбор количества слоев ядра является ответственным
и сложным делом:
увеличение числа слоев ведет к некоторому замедлению работы ядра за счет
дополнительных накладных расходов на межслойное взаимодействие, а их
уменьшение ухудшает расширяемость и логичность системы.
Микроядерная архитектура является альтернативой классическому способу
построения ОС. Ее суть состоит в следующем. В привилегированном режиме
выполняется небольшая часть ОС, называемая микроядром,
в состав которого
входят базовые функции по управлению процессами, обработке прерываний,
управлению виртуальной памятью, пересылке сообщений и управлению
устройствами ввода/вывода, связанные с загрузкой или чтением регистров
устройств. Набор функций микроядра обычно соответствует функциям слоя
базовых механизмов обычного ядра. Все остальные функции ядра оформляются
Страницы
- « первая
- ‹ предыдущая
- …
- 5
- 6
- 7
- 8
- 9
- …
- следующая ›
- последняя »