Получите подробную информацию о модулях ядра Linux в Stack Overflow

В Linux мне нужно получить подробную информацию (то есть код выхода службы, статус, тип и т. Д.) Всех модулей драйвера, и я попытался прочитать /proc/modules, Но это дает только имя, размер и количество использования. Я прочитал это modinfo извлекает информацию из lib/modules/, но не все модули содержат всю информацию. Откуда я могу получить эти данные надежно. Я кодирую в C++,

-1

Решение

Модули ядра обрабатываются struct module. Вы можете написать модуль, чтобы получить эту информацию из ядра (и предоставить ее в другом /proc файл) или использовать отладчик для чтения сырой памяти ядра из /proc/kcore ,

Но информация, которую Linux хранит для каждого модуля, не соответствует вашим потребностям:

  • код выхода службы не сохраняется ядром, но сразу возвращается init_module() вызывающий как номер ошибки (т.е. modprobe или же insmod инструменты)
  • статус — нет такой вещи Ближайший state, но он переходный и используется только при загрузке
  • тип — Linux не различает типы модулей

Вообще говоря, вы не можете получить эти детали от Linux. Самая полезная информация уже предоставлена ​​в /proc/modules,

1

Другие решения


По вопросам рекламы [email protected]