自作64bitOSの最初の部分

Making a 64-bit Operating System from Scratchbithin.wordpress.com

Thank you!!! Thank you!! Thank you!

自分が探してた情報がやっと見つかった。めっちゃ嬉しいです。 OS X で 64bit OSのとっかかりを試してみました。 grubとmultiboot2を使っているようです。

環境

% x86_64-elf-gcc -v
Using built-in specs.
COLLECT_GCC=x86_64-elf-gcc
COLLECT_LTO_WRAPPER= --seeking-- os/x86_64-cross/libexec/gcc/x86_64-elf/6.3.0/lto-wrapper
Target: x86_64-elf
Configured with: ../gcc-6.3.0/configure --target=x86_64-elf --prefix= ---seeking--- /os/x86_64-cross --disable-nls --enable-languages=c,c++ --without-headers --enable-interwork --enable-multilib --with-gmp=/usr --with-mpc=/usr/local --with-mpfr=/usr/local
Thread model: single
gcc version 6.3.0 (GCC)
  • ld
% x86_64-elf-ld -v
GNU ld (GNU Binutils) 2.27
% nasm -v
NASM version 2.13.03 compiled on Feb  8 2018

確かgrubbrew install i386-grub-toolかなんかで入れたと思います。

ソースコード

ソースコードは参照リンクを見てください。まだ試しただけなんで。

Makefile は適宜変えてください

mutiboot2のヘッダーを確認するときは、

i386-elf-grub-file --is-x86-multiboot2 ./kernel.sys

です。 xi386は置いといて、multiboot2だったとは。

動いたので、最高の気分です。

俺のOS生活はこれからだ!!! ~ 完 ~

とならないように続けていこうと思います。とりあえずめちゃめちゃ嬉しい。