Umage yerine vmlinux kullanılabilir mi?


9

Sıkıştırılmamış bir çekirdek görüntüsü kullanmak ve BeagleBoard'u önyüklemek istiyorum. Genellikle uImage'ı sıkıştırılmış formattaki çekirdeği önyüklemek için kullanıyorum. Sıkıştırılmamış bir çekirdek görüntüsünü nasıl kullanabilirim?


Bootloader olarak U-Boot kullanıyorsunuz, değil mi?
Gilles 'SO- kötü olmayı bırak'

Evet! Ubot kullanmak mümkün mü?
Sharanya

Yanıtlar:


7

Bildiğim kadarıyla U-Boot doğrudan “ham” bir ELF görüntüsünü ( vmlinux) önyükleyemiyor . uImageSıkıştırılmış vmlinuxve çekirdek yükleme adresini açıklayan birkaç bayt meta veri içeren formata dönüştürmeniz gerekir . U-Boot SSS 2.19 nasıl üretileceğini açıklar uImage; mkimageU-Boot kaynak ağacındaki yardımcı programı kullanmak oldukça basittir :

 mkimage -A arm -O linux -T kernel -C gzip … -d vmlinux uImage

(Yükleme adresini gösteren ek parametrelere ihtiyacınız olabilir.)


1
Önyükleme sırasında uImage öğesinin sıkıştırılmasının açılması biraz zaman alır. Bunu en aza indirmem gerek. Bu yüzden neden sıkıştırılmamış ham dosya vmlinux ile denemiyorum düşündüm.
Sharanya

3
Elde etmek istediğiniz etki, amaçlananın tersi olabilir. Dekompresyon süresi genellikle flaştan veri kopyalama süresinden daha kısadır.
Maciej Kucia

3
 mkimage -A arm -O linux -T kernel -C gzip … -d vmlinux uImage

Değişim gzip için yukarıdaki örnekte hiçbiri ve bir U-Boot uyumlu sıkıştırılmamış görüntü oluştururuz.


1

Buildroot kullanıyorsanız, bir uImageçekirdek çıktı dosyası ( BR2_LINUX_KERNEL_UIMAGE=y) seçin. Normal olarak derlendiğinde, Buildroot vmlinuxara adımda bir dosya oluşturur . vmlinuxDosya /output/imagesdizine kopyalanmamış olsa da ./output/build/linux-custom/(veya çalıştırılarak find . -name "vmlinux") bulunabilir.

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.