Çekirdek koduna geçiş / atlama GRUB2 kaynak kodunda nerede?


11

GRUB2 nihayet çekirdek koduna atlar ve böylece x86 sistemlerde yürütme eller nerede kod satırı arıyorum? Sanırım bir montajcı dosyasında çünkü bu çok düşük mimari şeyler. Ben de kaynak dosyaları baktı /grub-core/boot/i386/pc/*.Sve bir tespit JMPde hat 455 de boot.S ama kernel_addressGRUB2 bellekte çekirdek ve olmayan Linux çekirdeği adresi olabilir.

Bana yardımcı olabilecek montaj ve GRUB2 bilgisi olan var mı?


Çekirdek parametrelerini izlediniz mi?
phk

1
Bir telefondan yayınladığımdan beri buraya çok fazla ekleyemiyorum, ancak PC uyumluluklarını ve GRUB2'yi hatırladığım şeylere dayanarak çekirdek görüntüsünü 0x900000'de (gerçek mod) belleğe yüklediğini tahmin edebilirim, 0x0c000000 gerçek moddan korumalı moda geçtiğinizde adres atlandı. Yine de, bu "güvenilir önyükleme" ile bir EFI sisteminde oldu, bu yüzden yanlış olabilir. Belki initrdresminiz ipuçları içerecek?
Wyatt8740

Yanıtlar:


1

Sadece kaynağı okuduktan sonra, bu , linux yükleyicideki yer ve bu , yeniden yerleştirmedeki yer (yükleyiciden bağımsız) olmalıdır.

Umarım bu yardımcı olur :)

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.