近頃、プログラミングだけでなくレイヤの低い部分にもとても興味があります。
なので、何冊か有名な本を読んだりして勉強してみています。
今回はOSに焦点を当てて、30日でできると噂の本でOS自作に挑戦します。
30日以内にこだわらず、まったりと読んでいきたいと思います。
1日目:PCの仕組みからアセンブラ入門まで
1日目:バイナリエディタの入手
実際の1日目です。始めにバイナリエディタなるものを入手するため、こちらのURLが紹介されています。
ちなみに、本の中だと「~」が上付きになっています。チルダと呼ばれるそうで、この入力方法を調べるところから始まりました。
アクセスしてみたところ、404エラーです。どうやらこちらのページに移動しているようでした。
「Binary Editor BZ」色分け表示のできる多機能バイナリーエディターのオープンソース版 – 窓の杜 (impress.co.jp)
Binary Editor BZと呼ばれるエディタです。何とか見つけられたものの、動作するのは Windows 95/98/NT/2000/XPということで、今はWin10を使っているのでこちらは断念。別のエディタを使ってみることにします。後に禍根を残さないことを祈る。
バイナリエディタと最初に検索して出てきた「Stirling」をダウンロードしました。解凍しようと思ったものの、「stir131.lzh」をダブルクリックしても動かない。
わからなかったので、かわりに「Dump4w」をダウンロードしました。・・・が、解凍して実行してみてもファイルの編集ができず、、、結局やり方がわからないので「Stirling」にしました。
さて、「Stirling」の方はダウンロードしても解凍できなかったのですが、検索してみるとどうやら以下のページにあるように、解凍ソフトが必要なようでした。
【バイナリエディタ】Stirlingのダウンロード&インストール | 西住工房 (joho.info)
解凍ソフトは↑の記事で紹介されている「7zip」をダウンロード。
「7zip」を解凍後に「Stirling」を右クリックで解凍、起動してみたところ・・・開きました!編集もできそうです。
時間がかかりましたが本の中で指定された文字を打ち込み出来ました。16進数の進み方とかバイナリエディタ上でジャンプとかできたりとか、少しわかったこともありました。
次にフロッピーディスクに入れて起動とあるのですが、、、フロッピーディスクはないのでこちらの記事を参考にVirtualBoxを使ってみました。
30日間OS自作(helloos)をVirtualBoxでやってみた – Qiita
VirtualBoxをダウンロードできるページに行き、「Windowshost」をクリック
Downloads – Oracle VM VirtualBox
Qiitaの記事に従って仮想マシン起動しました。
なんかすごい(語彙力)
それにしても前述のQiitaの記事、スクリーンショットもあってとても分かりやすいです。
記事の説明に従って設定。途中、バイナリエディタで作成したファイルを仮想マシンが読み込んでくれないエラーがありましたが、エディタでファイル編集している時にミスしていました。(168000の行は入力しないで良いのに00を入力していた)
設定後、仮想マシンを起動したら、、、挨拶してくれました。ちょっと感動。大学の時以来かもしれません。
1日目最後のブートの説明の項目がとても印象的。ブートとかリブートとかいう言葉、なぜブートがスタートと同じような意味を持つのか、「ほらふき男爵の冒険」という物語が読まれて以降、自力で成し遂げるという意味をもつようになったことが理由だそうです。面白いですね。
2日目:アセンブラ学習とMakefile入門
コメント