"Андрей Куракин. Системная архитектура QNX4" - читать интересную книгу автора




Микроядро системы QNX координирует работу системных менеджеров.




Настоящее ядро
Ядро - это "сердце" любой операционной системы.
В некоторых операционных системах на него возлагается так много
функций, что ядро, по сути, заменяет всю операционную систему!

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

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

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


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

Менеджер процессов (Proc);
Менеджер файловой системы (Fsys);
Менеджер устройств (Dev);
Менеджер сети (Net).
Системные и пользовательские процессы
Системные процессы практически ничем не отличаются от любых
написанных пользователем программ - они не имеют какого-либо скрытого
или особого интерфейса, недоступного пользовательским процессам.

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

Фактически, граница между операционной системой и прикладной