Linux カーネルの make コマンドで LOADADDR=0x20008000 はどういう意味ですか?

Linux カーネルの make コマンドで LOADADDR=0x20008000 はどういう意味ですか?

私は u-boot について学んでいます。qemu モデルを使用すると、(qemu を使用して) 必要なメモリ位置にイメージをロードし、booti addrコマンドを使用してカーネル ブートを実行できます。ご存知のとおり、arm64 には uImage はありません。
では、arm (32 ビット) 用に Linux カーネルをビルドするとはどういうmake LOADADDR=0x20008000 uImage意味ですか? とにかく、u-boot シェルを使用して、任意の場所に uImage をロードできます (SD カードまたはネットワークから)。では、bootmコマンドを実行すると、u-boot プログラムが uImage 内のカーネル イメージを 0x20008000 に再配置することを意味しますか? これらの情報を見つけるのは困難です。

答え1

パラメータLOADADDRは、uImage ペイロード自体がメモリ内に配置される場所です。通常は、その中にラップされている zImage が、必要に応じて自身の再配置を行います。

関連情報