Является ли ядро ​​Ubuntu модульным?

Я провел несколько поисков в Google, но, похоже, не могу найти ответ, по крайней мере, не на первых двух страницах поиска. Я хотел знать, является ли ядро ​​Ubuntu модульным или монолитным? Я видел одну статью, в которой говорилось, что большинство современных дистрибутивов очень модульные, но ничего конкретного, чтобы упомянуть конкретные.

Просто что-то интересное и хотелось узнать!

5
задан 9 August 2012 в 00:56

2 ответа

Ubuntu - это дистрибутив GNU / linux. В частности, это означает, что он использует ядро ​​Linux.

Ядро Linux считается монолитным ядром.

У него есть модули, но все они совместно используют одну и ту же память (т. Е. Можно писать в «чужую» память), тогда как в модульном ядре разные части (например, драйверы) работают с отдельной памятью (и, в в некоторых случаях может даже потерпеть неудачу, не ставя под угрозу ядро ​​в целом)

0
ответ дан 9 August 2012 в 00:56

Ядро Linux является одновременно монолитным и модульным ядром :). Эти вещи не являются взаимоисключающими.

Монолитное ядро ​​ относится к ядру, все части которого имеют общее адресное пространство:

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

Противоположностью «монолитного ядра» является « микроядро », где ядро ​​отвечает только за координацию служб, работающих в пользовательском пространстве, которые выполняют всю фактическую работу.

« Модульное ядро ​​» означает, что

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

  • загрузка драйверов только в том случае, если устройство действительно найдено
  • загрузка файловой системы только в случае фактического запроса
  • ]
  • загружать код только для определенной политики (планирование / безопасность / что угодно) только тогда, когда она должна быть оценена

Эти модули все еще работают в пространстве ядра, а не в пространстве пользователя поэтому архитектура ядра все еще монолитна.

0
ответ дан 9 August 2012 в 00:56

Другие вопросы по тегам:

Похожие вопросы: