アドレス0x100000のstart_32はどうですか?

アドレス0x100000のstart_32はどうですか?

私はLinuxカーネルが保護モードに入るためにどのように準備するかについて読んでいました。 boot/pmjump.S:74からEAXの0x100000にジャンプするまで、すべてを理解できます。

ここに画像の説明を入力してください。

コントロールは、32ビットエントリポイントのboot / compressed / head_64.Sのstart_up_32タグに移動する必要があります。

ただし、start_32はアドレ​​ス0x0から始まる.head.textセクションにあります。 (下を見下ろす)

ここに画像の説明を入力してください。

したがって、start_32のアドレスは実際には0x0です。しかし、0x100000にジャンプすると、制御はどのようにそこに到達しますか?

ベストアンサー1

おすすめ記事