Операционные системы, среды и оболочки. Макаренко С.И. - 24 стр.

UptoLike

Составители: 

Набор функций микроядра обычно соответствует функциям слоя
базовых механизмов обычного ядра. Такие функции операционной системы
трудно, если не невозможно, выполнить в пространстве пользователя.
При этом в составе микроядра обычно остаются:
машинно-зависимые модули,
модули, выполняющие базовые (но не все!) функции ядра по
управлению процессами,
обработка прерываний,
модули управления виртуальной памятью,
модули управления пересылкой сообщений и управлению
устройствами ввода-вывода,
модули связанные с загрузкой или чтением регистров устройств.
Все остальные более высокоуровневые функции ядра оформляются в
виде приложений, работающих в пользовательском режиме.
В общем случае многие менеджеры ресурсов, являющиеся
неотъемлемыми частями обычного ядра файловая система, подсистемы
управления виртуальной памятью и процессами, менеджер безопасности и
т. п., становятся «периферийными» модулями, работающими в
пользовательском режиме.
Схематично механизм обращения к функциям ОС, оформленным в
виде серверов, выглядит следующим образом (рис. 1.10).
Рис. 1.10. Реализация системного вызова в микроядерной архитектуре
Клиент, которым может быть либо прикладная программа, либо другой
компонент ОС, запрашивает выполнение некоторой функции у
соответствующего сервера, посылая ему сообщение. Непосредственная
передача сообщений между приложениями невозможна, так как их адресные
пространства изолированы друг от друга. Микроядро, выполняющееся в
привилегированном режиме, имеет доступ к адресным пространствам
24
     Набор функций микроядра обычно соответствует функциям слоя
базовых механизмов обычного ядра. Такие функции операционной системы
трудно, если не невозможно, выполнить в пространстве пользователя.
     При этом в составе микроядра обычно остаются:
     − машинно-зависимые модули,
     − модули, выполняющие базовые (но не все!) функции ядра по
       управлению процессами,
     − обработка прерываний,
     − модули управления виртуальной памятью,
     − модули управления пересылкой сообщений и управлению
       устройствами ввода-вывода,
     − модули связанные с загрузкой или чтением регистров устройств.
      Все остальные более высокоуровневые функции ядра оформляются в
виде приложений, работающих в пользовательском режиме.
       В общем случае многие менеджеры ресурсов, являющиеся
неотъемлемыми частями обычного ядра — файловая система, подсистемы
управления виртуальной памятью и процессами, менеджер безопасности и
т. п., — становятся «периферийными» модулями, работающими в
пользовательском режиме.
      Схематично механизм обращения к функциям ОС, оформленным в
виде серверов, выглядит следующим образом (рис. 1.10).




   Рис. 1.10. Реализация системного вызова в микроядерной архитектуре

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

                                   24