Как Linux загружает модули для узлов дерева устройств - PullRequest
0 голосов
/ 01 июня 2018

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

Вот мои вопросы:

  1. Дерево устройств, описывающее устройство и встроенное устройствоводитель будет проверен, если драйвер соответствует таблице.Но как загружаются модули?Ядро отправит информацию о таблице в udevd или около того?

  2. Как насчет ACPI?Поскольку таблица ACPI представляется ядру точно так же, как дерево устройств.

Любой намек на то, какой фрагмент кода проверять?

Редактировать: Я думаю, что дерево устройствдолжно быть почти таким же, система должна проверить событие или пройти через sys fs для получения информации об устройстве, а затем проверить module.alias и использовать правила для загрузки питомника.Но я не нашел код путешествия sys fs, поэтому понятия не имею, как это сделать ...

...