Linux-Kernel

LOADADDR=0x20008000 在linux核心make命令中是什麼意思?

  • October 25, 2021

我正在學習u-boot。使用 qemu 模型,我可以(使用 qemu)將圖像載入到我想要的記憶體位置,並且可以使用booti addr命令執行核心啟動。如您所知,在 arm64 中,沒有 uImage。

那麼,在為arm(32位)建構linux核心時,是什麼make LOADADDR=0x20008000 uImage意思呢?無論如何,我們可以使用 u-boot shell 在任何我們想要的地方載入(從 SD 卡或網路)uImage。那麼,是不是說當我們執行bootm命令時,u-boot程序將uImage裡面的核心鏡像重定位到了0x20008000呢?很難找到這些資訊。

LOADADDR參數是將 uImage 有效負載本身放置在記憶體中的位置。包裹在其中的 zImage(通常)然後會根據需要自行重新定位。

引用自:https://unix.stackexchange.com/questions/674155