Узнайте, какие исходные файлы ядра были использованы при компиляции ядра

Я компилирую ядро ​​Linux для своего конкретного оборудования, и я выбираю только те драйверы / опции, которые мне действительно нужны. Это контрастирует с типичным ядром распределения, где они собирают почти все, чтобы быть совместимыми с максимально возможной конфигурацией оборудования.

Я полагаю, для моего ядра я использую только 1% от общего кода ядра (оценка по порядку величины).

Есть ли способ узнать, какие файлы из исходного кода ядра я использовал, когда я создаю свое ядро?

Это не академический вопрос. Предположим, что я скомпилировал мое ядро ​​3.18.1. Теперь появляется обновление для системы безопасности, и выпущено 3.18.2. В моем другом вопросе я узнал, как найти, какие файлы имеют изменения между релизами. Если бы я знал, изменился ли какой-либо из файлов, которые я использую, я бы перекомпилировал мое ядро ​​в новую версию. Если, с другой стороны, изменения влияют только на файлы, которые я пока не использую, я могу сохранить текущую версию ядра.

One Solution collect form web for “Узнайте, какие исходные файлы ядра были использованы при компиляции ядра”

В качестве продолжения моего комментария:

  1. Выполните следующую команду в одной оболочке. Вы можете сделать сценарий оболочки или демонизировать с помощью опции -d .

     inotifywait -m -r -e open --format '%f' /kernel_sources/directory/in_use/ -o /home/user/kernel_build.log 
  2. На другой оболочке выполните make

  3. Файл журнала /home/user/kernel_build.log будет иметь список файлов, которые были открыты (операция чтения) во время процесса сборки.
  • Запуск bzImage в QEMU: невозможно монтировать root fs на неизвестном блоке (0.0)
  • Поиск через меню make menuconfig меню конфигурации
  • Два компилятора одной и той же версии ядра: одна загружается, одна не может найти корневое устройство
  • Экземпляры Getty в процессе init
  • Сконфигурируйте kernel ​​с включенным внедрением ошибок
  • Изучение того, как создать собственное ядро ​​Linux
  • Использование adjtimex на сервере Linux
  • Почему заголовки ядра Linux содержат ссылки на несуществующие заголовки?
  • Ядро: hpet1: потерянные 19 rtc прерываний
  • Могут ли процессы с интенсивным использованием процессора с наименьшим приоритетом (19) оказывать неблагоприятное воздействие?
  • Хотя wirehark видит ответ ping, программа ping не получает ответ, если в таблице маршрутизации есть недостижимый маршрут дефалтов
  • Interesting Posts

    Есть ли индекс для каталога?

    Вложенные папки Untar с содержимым начальной папки в linux

    Почему SIGINT не работает в фоновом режиме в скрипте?

    Может ли стек ядра процесса быть пустым, когда процесс выгружается на диск?

    Как просматривать и воспроизводить общие аудиофайлы через сеть?

    Почему я не могу удалить файл, когда у меня есть права на файл?

    Как отображать метаинформацию для разных видов времени файла?

    Новое перегрузочное состояние ноутбука – концентратор

    Замена переменной, содержащей \ with sed

    Как grep для нескольких шаблонов?

    «Канал 3: сбой при открытии: административно запрещено: открыть сбой» при создании сеанса VNC в туннеле SSH

    Как я могу проверить параметры перед вызовом «ip route add»?

    Debian Wheezy: переустановите apache2

    Обратный порядок складывания электронной почты в Evolution

    Редактирование значения дочернего элемента JSON с помощью jq

    Linux и Unix - лучшая ОС в мире.