Что такое (микро) накладные расходы ядра и какие компоненты увеличивают количество циклов в микроядре? Источники информации были бы более чем полезны.
Что такое накладные расходы ядра?
Ответы (2)
Микроядра стремятся сделать ядро более безопасным / отказоустойчивым, удаляя большинство служб уровня ОС (драйверы, файловые системы, сети и т. д.) из привилегированного режима ядра и помещая их в выделенные приложения уровня пользователя. Тогда само микроядро лишь предоставляет механизмы для запуска этих приложений и их связи.
Преимущество этого подхода заключается в том, что пользовательские приложения используют изоляцию на аппаратном уровне (адресные пространства), и, следовательно, сбой драйвера не остановит всю вашу систему. Пока пропаганда.
Однако существует неотъемлемая проблема: в традиционном (монолитном) ядре все компоненты работают в одном и том же привилегированном адресном пространстве, и вызов, например, функций файловой системы является простым вызовом функции. В системе на основе микроядра эти вызовы становятся коммуникационными отношениями через механизмы, предоставляемые ядром, поэтому стоимость такого вызова возрастает с десятков до сотен циклов.
Вот почему ходят слухи, что микроядерные системы работают медленнее, чем традиционные операционные системы, и почему разработчики микроядер крайне своеобразно стремятся сделать предоставляемый ядром коммуникационный механизм как можно более быстрым.
Не знаю, проверили вы это или нет, но here< /а> так и есть.