自作OS| (2日目) アセンブラ学習とMakefile入門
a# OSをつくる
ずっと前からOSを作りたくて作りたくて やっと参考書を購入して手を動かし始めました
参考書はモチロン
30日でできる!OS自作入門
- 作者: 川合秀実
- 出版社/メーカー: 毎日コミュニケーションズ
- 発売日: 2006/03/01
- メディア: 単行本
- 購入: 36人 クリック: 735回
- この商品を含むブログ (299件) を見る
OS屋になるための一路 - Hope is a Dream. Dream is a Hope.
(2日目) アセンブラ学習とMakefile入門
概要
アセンブラからブートイメージを作るまでをMakefileで管理する.
詳細
これまでは、アセンブラから機械語へ翻訳し、フロッピーのイメージ作成を、参考書の著者作成の「nask.exe」で実行していた.
しかし、実際のブートセクタは512バイトだけ。あとはずっと0x00で埋まっているだけだった。
そこで、ブートセクタだけのソースコードを書き、「edimg.exe」を使って、その他の部分は自動で作ってもらう。
上記の作業をコマンドラインからいろいろやるのは大変なのでMakefileを作る.
Makefileの使い方で、ファイルの生成に関して勉強になったので以下に書いておく。
make.bat
..\z_tools\make.exe %1 %2 %3 %4 %5 %6 %7 %8 %9
# デフォルト動作 default : ../z_tools/make.exe img # ファイル生成規則 ipl.bin : ipl.nas Makefile ../z_tools/nask.exe ipl.nas ipl.bin ipl.lst helloos.img : ipl.bin Makefile ../z_tools/edimg.exe imgin:../z_tools/fdimg0at.tek \ wbinimg src:ipl.bin len:512 from:0 to:0 imgout:helloos.img # コマンド asm : ../z_tools/make.exe -r ipl.bin img : ../z_tools/make.exe -r helloos.img run : ../z_tools/make.exe img copy helloos.img ..\z_tools\qemu\fdimage0.bin ../z_tools/make.exe -C ../z_tools/qemu install : ../z_tools/make.exe img ../z_tools/imgtol.com w a: helloos.img clean : -del ipl.bin -del ipl.lst src_only : ../z_tools/make.exe clean -del helloos.img
自作OS | (1日目) PCの仕組みからアセンブラまで 後半
OSをつくる
ずっと前からOSを作りたくて作りたくて やっと参考書を購入して手を動かし始めました
参考書はモチロン
30日でできる!OS自作入門
- 作者: 川合秀実
- 出版社/メーカー: 毎日コミュニケーションズ
- 発売日: 2006/03/01
- メディア: 単行本
- 購入: 36人 クリック: 735回
- この商品を含むブログ (299件) を見る
自作OS | (1日目) PCの仕組みからアセンブラまで 後半
概要
アセンブラを写経して、Hello Worldを表示する
詳細
フロッピーディスクに書き込むことを考えているので1,474,560Byte(1440 x 1024 バイト)。 1Byteが0xFFのような8bitデータなので。 数字が2949120文字ならぶ。。
フロッピーディスク = 1440 x 1024 バイト = 1,474,560 = 1440KiB
しかもほとんどが0という.
そうすると、あるていど決まった文字列は省略して書きたくなります。 また、文字(例えば、"HELLO WORLD")が入る場所等は、バイト列よりも文字で書いたほうが分かりやすい。 ということで、利用するのがアセンブラです。 参考書では著者作成の「tools/nask - hrb-wiki」というソフトウェアを使います
そうすると、 DB, DW, RESBという命令を使って入力することができる!?
DB : バイト列を入力 DW : 2バイト列を入力 RESB : 0x00で埋める
あら、すごい便利
これでアセンブラがかけた?
まとめ
アセンブラを写経して、Hello Worldを表示できた
無事1日目が終わった。
書籍を読むだけでは、分かっているんだけど腹落ちしてなかったが、 全く同じ内容を写経しただけで腹落ちした。写経すごい。
初アセンブラだったが、恐れがなくなった。
以上
OS屋になるための一路
OSをつくる
ずっと前からOSを作りたくて作りたくて やっと参考書を購入して手を動かし始めました
参考書はモチロン
30日でできる!OS自作入門
- 作者: 川合秀実
- 出版社/メーカー: 毎日コミュニケーションズ
- 発売日: 2006/03/01
- メディア: 単行本
- 購入: 36人 クリック: 735回
- この商品を含むブログ (299件) を見る
(1日目) PCの仕組みからアセンブラまで
概要
バイナリを写経して、VirtualBOXにてHello Worldを表示できた!!!
詳細
バイナリエディタの準備
freesoft100で「バイナリエディタ」と調べてみると結構でてきた。
ひとまず全部ダウンロード
書籍に準じてBzEditorを使う。
参考書に従い、バイナリを書き込んでいく。 ほとんど0ではある。 先頭部分の数値を無心で写経していく。 意味は分からない。。しかし、右側の部分にHELLO的な文字列解釈されている部分もある。FAT32もある。
そんななか5分後。
適当な名前.imgで保存し、VirtualBoxでフロッピーとしてマウント.
できた?????
もしや、はじめてのバイナリ!!!
思った以上に感動!!!
これはうれしい!!!!!!
本にもあるが、ただのコピペだが手打ちしたほうが良いとあった。 手打ちしたかいがありました。
これはOSらしい。 (これをOSと認めてもらえれば)
これはやらないとわからない。
感動!
ことしもがんばるぞー