
私は 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 が、必要に応じて自身の再配置を行います。