Справочник от Автор24
Найди эксперта для помощи в учебе
Найти эксперта
+2

Микроядро операционной системы

Введение

Архитектура и сложность операционных систем постоянно меняются ввиду совершенствования аппаратной части компьютеров и самих операционных систем. В 1963 году была спроектирована операционная система CTSS, её объём был около 36 тысяч ячеек памяти, но уже через год компанией IBM была спроектирована операционная система объёмом больше одного миллиона ячеек. А в 1975 году операционные системы состояли уже почти из двадцати миллионов машинных команд. Нарастание объёмов и сложностей операционных систем создало следующие проблемы:

  1. Пользователи операционных систем получают их с большими задержками.
  2. Наличие неявных ошибок, которые необходимо исправлять.
  3. Производительность операционных систем растёт не пропорционально их сложности.

Решить эти проблемы возможно следующими способами:

  1. Гораздо проще спроектировать и отладить систему, если она состоит из отдельных модулей.
  2. Интерфейсы модулей необходимо выполнить достаточно простыми, но досконально проработанными. Это поможет в проектировании и настройке, и, естественно, при различных изменениях в системе.
Замечание 1

Такие решения в принципе очевидны, но для систем повышенной сложности, которые построены из многих миллионов команд, они не в состоянии устранить все проблемы.

Операционные системы на базе микроядра

Определение 1

Микроядром называют самый мелкий элемент операционной системы, который является основной частью программных расширений модульного и переносимого типа. Основополагающий принцип микроядерной структуры – это создание требуемой среды верхнего уровня, которая позволяет обращаться к любому уровню аппаратного обеспечения.

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

«Микроядро операционной системы» 👇
Помощь эксперта по теме работы
Найти эксперта
Решение задач от ИИ за 2 минуты
Решить задачу
Помощь с рефератом от нейросети
Написать ИИ

Микроядро обладает самым высоким приоритетом и должно обеспечить функционирование оставшегося блока программ операционной системы, которые считаются сервисными приложениями. Принцип микроядерной технологии построения большого количества операционных систем был разработан в университете Карнеги.

Функциональные возможности микроядер специально сокращены для того, чтобы уменьшить их размеры и перевести основную часть операционных систем в разряд прикладных программ. Как правило, микроядро способно обеспечить пять разных видов сервисных программ:

  1. Программа работы с виртуальной памятью.
  2. Программа обслуживания заданий и разных потоков.
  3. Программа обеспечения связи между процессорами.
  4. Программа обработки процедур ввода-вывода и обслуживания прерываний.
  5. Программа поддержки сервисов клиента.
Замечание 2

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

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

Комплект возможностей микроядра аналогичен набору функций обычных ядер. Это именно те операции, которые недоступны в режиме пользователя. Микроядро существенно упрощено в сравнении с монолитными или модульными ядрами операционных систем и может выполнять типовые программные сервисы. Точно и однозначно определить список функций системы, которые необходимо реализовать в привилегированном режиме, а также в режиме пользователя, не представляется возможным.

Управляющие ресурсами программы, которые вынесены в режим пользователя, принято называть серверами операционной системы, поскольку они предназначены главным образом для обработки запросов приложений и различных модульных элементов операционной системы. Чтобы реализовать такой способ управления, надо чтобы в операционной системе был надёжный механизм запроса процедуры каждого процесса из других процессов. Правильная работа такого способа и есть главная функция микроядра. Абонент, в качестве которого может выступать или прикладная программа, или другие элементы операционной системы, просит выполнить какую-либо операцию у нужного сервера, путём пересылки ему запроса. Прямая пересылка сообщений от приложения к приложению не разрешена, поскольку их поля адресов несовместимы (изолированы между собой). А микроядру, которое работает в режиме привилегий, всегда разрешён доступ ко всем адресам памяти, поэтому оно выступает в роли связующего звена (посредника) между приложениями. То есть, по сути, функционирование операционной системы на основе микроядра, является работой по принципу клиента и сервера, а транспортировку данных берёт на себя микроядро.

Самым известным проектом операционной системы на основе микроядра считается, работающий в реальном масштабе времени, QNX. Его микроядро разрабатывает лишь план и является диспетчером процессов, организует их взаимный обмен данными, обслуживание прерываний и службы сети нижних уровней. Это микроядро способно обрабатывать только двадцать вызовов системы и может занимать до 46 килобайт памяти. Чтобы получить операционную систему минимальных размеров на базе QNX, необходимо к микроядру дополнительно спроектировать менеджер процессов, генерирующий процессы и управляющий ими, а также необходимой им памятью. А чтобы использовать QNX в персональных электронных вычислительных машинах, необходимо микроядро дополнить системой управления файлами и системой управления внешними устройствами.

Дата написания статьи: 17.06.2019
Найди решение своей задачи среди 1 000 000 ответов
Крупнейшая русскоязычная библиотека студенческих решенных задач
Все самое важное и интересное в Telegram

Все сервисы Справочника в твоем телефоне! Просто напиши Боту, что ты ищешь и он быстро найдет нужную статью, лекцию или пособие для тебя!

Перейти в Telegram Bot