Для установки регистров устройств.



Переключения процессора с процесса на процесс.

Работы с блоком управления память.

Перехвата аппаратных прерываний.

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

Менеджеры (серверы) ресурсов.

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

Эта часть содержит менеджеры или серверы ресурсов.

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

Менеджеры ресурсов, вынесенные в пользовательский режим, называются серверами или менеджерами, обслуживающими запросы (серверы ОС):

Обычные компоненты ядра классической ОС - менеджеры ресурсов (файловая систем, управление виртуальной памятью, управление процессами, менеджер безопасности и др.) в микроядерной системе становятся периферийными, работающими в пользовательском режиме.

 

В качестве менеджеров ресурсов (вспомогательные модули) ОС следует выделить:

 - сетевой сервер;

- диспетчер памяти (VMM virtual memory manager – менеджер виртуальной памяти);

- сервер процессов;

- диспетчер УВВ;

- диспетчер файлов;        

- менеджер безопасности.

Архитектура микроядра напоминает систему клиент – сервер

Микроядро получает запрос, передает параметры нужному серверу, сервер выполняет запрос и через микроядро передает результат клиенту. 

Микро ядро имеет доступ к адресному пространству всех процессов и работает в качестве посредника.

Использование микроядра дает некоторые преимущества.

Наиболее важное из них состоит в гибкости.

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

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

 Так, можно уста­новить модуль управления файлами не на той  машине, на которой он управляет службой каталогов.

Другими словами, подход с использованием микроядра от­лично подходит для переноса однопроцессорных операционных систем на рас­пределенные компьютеры.

В силу меньшего размера кода микроядро проще переносимо на другие аппаратные платформы.

За счет уменьшения объема кода, работающего в привилегированном режиме, увеличивается надежность.

При отказе отдельных приложений ОС, сама система под управлением ядра продолжает работать.

Однако в микро ядерных ОС происходит снижение производительности за счет увеличения числа ступеней выполнения заявки.

 

Таким образом, микроядерная ОС разделена на привилегированное ядро и серверы ОС, работающие в пользовательском режиме.

Обе части микроядерной ОС составляют ее исполнительную систему.

Утилиты ОС здесь – также в пользовательском режиме.

Основу современных многозадачных ОС составляет исполнительная система в виде двух групп модулей: ядра (kernel) и менеджеров ресурсов (execute).

Интерфейс системных вызовов API

Интерфейс системных вызововAPI (application interface).

 

Доступ к внутренним службам Windows 2000 выполняется с помощью вызовов функций Windows API (через посредство Windows Executive доступ к HAL – hardware access layer), которые располагаются в библиотеках DLL (Dynamic Link Library).

Является верхним слоем и расширителем ОС.

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

API вызовы – это абстракция независимости от оборудования и низкоуровневых протоколов, но еще зависимая от ОС.

С помощью функций API пользовательские программы могут переключаться в режим ядра.

Для ОС Windows – это Win32 API.

Вызовы системных функций адресуются подсистеме Win 32 API, которая в свою очередь обращается к службе Windows Execute, которая для специфических аппаратных действий обращается к HAL.

Cистемные функции хранятсяв динамических библиотеках DLL - dynamic link libraries.

При обращении к вызовам API, происходит обращение к одной из библиотек DLL.

Категории API:

Диалоговых окон, буфера обмена, диалога, курсора, ввода данных от мыши и кла, виатуры, управления печатью, DDE (динамический обмен), DLL, управления памятью, работа с файлами и файловой системой, работа с реестром, мультимедиа, управление таймером, растровых изображений, работа в сети, коммуникаций, получение системной информации, синхронизация активных приложений, обработки ошибок, регистрации в системе, работы с системой безопасности, отладки и др.

Для размещения API есть несколько DLL.

Большая их часть (около 2000 функций содержится в 3 DLL:

1.kernel.32dll (около 700 функций управления памятью, процессами и потоками).

2. User32.dll (около 600 функций управления пользовательским интерфейсрм).

3. Gdi.dll (около 400 функций для рисования графических и текстовых объектов).

Кроме того, есть более узкие DLL:

1. COMDLG32.DLL ( около 20 функций управления стандартными диалоговыми окнами).

2. LZ32.DLL (около 12 функций архивации и разархивации).

3. ADVAP32.DLL (около 400 функций защиты объектов и работы с реестром).

4. WINMM.DLL (около 200 функций для работы с мультимедиа).

По умолчанию W/NT работает с Unicode и не работает с ANSI.

Для совместимости в Win32 API каждая функция имеет две  версии для строковых функций в ANSI и UNICODE.


Дата добавления: 2018-08-06; просмотров: 302; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!