なんとなく64bitCPUのブートシーケンスが気になったのでx86_64(AMD64)のブートを調べてみました。 AMD64アーキテクチャ互換のCPUが無いため実行環境はエミュレータのqemu-system-x86_64で。 開発環境も32bitしか無いため32bitホスト上に以下のようなクロスコンパイル環境を作ります。 binutils 今回はCコードまではいかないのでassemblerとlinkerさえあれば十分というわけで、GNU binutilsのsourceを拾ってきて以下のようにコンパイルします。 % ./configure -prefix=/usr/local/m64 --disable-nls --enable-64-bit-bfd --enable-targets=all % make % sudo make install 「--enable-64-bit-bfd」で6