Я взял код ядра из памяти и файл zmlinuz (vmlinuz) с диска. Я распаковал файл vmlinuz в файл elf и сравнил разделы кода памяти и файлов на диске. Я обнаружил, что код в памяти немного изменился. Изменения между кодом в памяти и кодом на диске были указателями на строки. Это изменение показано на следующем изображении в красном квадрате:
Значение «02 82» изменено на «62 a8».
Исправлено смещение всех изменений кода (0x6026). Я пытаюсь выяснить, почему происходят изменения? Есть ли в файле эльфа отображение для всех мест, которые сделали это изменение? Как загрузчик ядра знает, где можно изменить адрес?
Спасибо