- •Определение и назначение ос
- •2. Виды ос
- •Функции ос
- •Архитектура операционной системы
- •Структура ос
- •Монолитная архитектура
- •Микроядерная архитектура
- •Понятия вычислительного процесса и ресурса
- •Прерывания
- •Системные вызовы
- •Процесс, поток.
- •Создание процессов и потоков
- •Состояния потока
- •Планирование и диспетчеризация потоков
- •Алгоритмы планирования
- •Управление памятью
- •Типы адресов
- •Методы распределения памяти без использования дискового пространства
- •19. Методы распределения памяти с использованием дискового пространства
- •20. Понятие виртуальной памяти
- •21. Страничное распределение виртуальной памяти
- •22. Сегментное распределение виртуальной памяти
- •23. Странично-сегментное распределение виртуальной памяти
- •Свопинг
- •Назначение и функции файловой системы
- •Логическая организация файловой системы
- •27. Файловая система fat
- •Файловая система ntfs
- •Контроль доступа к файлам
- •Основные понятия безопасности ос
- •Системный подход к обеспечению безопасности
- •Симметричные криптосистемы
- •Асимметричные криптосистемы
- •Аутентификация
- •35. Аутентификация на основе многоразовых паролей
- •Аутентификация на основе одноразовых паролей
- •Цифровые сертификаты
- •Цифровые подписи
- •Авторизация доступа
- •Уровни raid
- •Виды схд.
Микроядерная архитектура
7.Микроядерная архитектура ОС
Микроядерная архитектура является альтернативой классическому способу построения ОС. Под классической архитектурой понимается рассмотренная выше структурная организация ОС, в соответствии с которой все основные функции ОС, составляющие многослойное ядро, выполняются в привилегированном режиме. При этом некоторые вспомогательные функции ОС оформляются в виде приложений, выполняющихся в пользовательском режиме. Каждое приложение пользовательского режима работает в собственном адресном пространстве и защищено от вмешательства. Код ядра имеет доступ ко всей памяти, но сам полностью защищен. Приложения обращаются к ядру с запросами на выполнение системных функций.
Суть микроядерной архитектуры - в привилегированном режиме остается работать только очень небольшая часть ОС, называемая микроядром. Микроядро защищено от остальных частей ОС и приложений. В состав микроядра обычно входят машинно-зависимые модули, в также модули, выполняющие базовые функции ядра по управлению процессами, обработке прерываний, управлению виртуальной памятью, пересылке сообщений и управлению устройствами в/в. Данные функции очень трудно выполнить в пользовательском пространстве.
Все остальные функции ядра оформляются в виде приложений, работающих в пользовательском режиме.
Работающие в пользовательском режиме менеджеры имеют принципиальные отличия от традиционных утилит. Утилиты вызываются в основном пользователями, а для микроядерной архитектуры менеджеры вытесненные в пользовательский режим нужны часто для работы других приложений, поэтому они называются серверами ОС. Для микроядерной архитектуры необходимо наличие в ОС удобного эффективного способа вызова процедур одного процесса из другого. Поддержка такого механизма и является одной из главных задач миктоядра.
Преимущества и недостатки микроядерной архитектуры
Достоинства:
Переносимость
Расширяемость
Надежность
Поддержка распределенности
Недостатки:
Снижение производительности
ОС, основанные на концепции микроядра, в высокой степени удовлетворяют большинству требований, предъявляемых к современным ОС, обладая переносимостью, расширяемостью, надежностью и создавая хорошие предпосылки для поддержки распределенных приложений. За данные достоинства приходится платить снижением производительности, и это основной недостаток.
Высокая степень переносимости обусловлена тем, что весь машинно-зависимый код изолирован в микроядре.
Расширяемость присуща микроядерной ОС в очень высокой степени. В традиционных системах сложно удалить один слой и поменять его на другой по причине множественности и размытости интерфейсов между слоями. Обычно традиционные ОС позволяют динамически добавлять в ядро или удалять только драйвера устройств. При микроядерном подходе конфигурировать ОС не вызывает никаких проблем и не требует особых мер - достаточно изменить файл с начальной конфигурации системы или остановить ненужные серверы.
Использование микроядра повышает надежность ОС. Каждый сервер выполняется в виде отдельного процесса в своей собственной области памяти и таким образом защищен от других серверов. Если отдельный сервер терпит крах, то он может быть просто перезапущен. И кроме того небольшой размер ядра позволяет снизить вероятность возникновения ошибок.
Модель с микроядром хорошо подходит для реализации распределенных вычислений, так как использует механизмы, аналогичные сетевым: взаимодействие клиентов и серверов путем обмена сообщениями. Серверы микроядерной архитектуры могут работать как на одном так и на разных системах.
Производительность. При классической организации ОС выполнение системного вызова сопровождается двумя переключениями режимов, а при микроядерной - четыре. При прочих равных условиях классическая модель будет всегда быстрее чем микроядерная.