Вообще-то это микроядро, причём довольно жирное. То, что сейчас называют микроядерными ОС, обычно таковыми не является (пример -- QNX, которая, по существу, является осью с обычным монолитным ядром, поскольку из него вынесены только драйверы, а всё остальное крутится в едином адресном пространстве ядра и никак не защищено друг от друга).
А доверять вполне можно. Если защита памяти работает не криво, никто из пользовательских программ получить доступ к другим пользовательским программам (как и к самому ядру) не сможет, а значит, диверсия невозможна (предполагается, что в АПИ отсутствуют явные дыры типа возможности легально получить доступ к чужой памяти и т.п.). Следовательно, любой модуль системного назначения будет одинаково неуязвим что внутри ядра, что в виде отдельной задачи (процесса) режима пользователя. Вопрос только в производительности и т.п. вещах: понятно, что увеличение числа переключений контекста её уменьшает. Однако, если время выполнения функций данным модулем существенно превышает время, необходимое для переключения контекста (возможно, неоднократного -- это уж от функции зависит), то на эти потери можно плюнуть (смысл экономить 0,1%?).
|