「OSを作れる」「仕組みが学べる」という言葉に惹かれて、プログラミング軽くかじった程度の私が、OSを自作しようと思い立ちました。

2019年の目標の一つは『OS自作入門でOSを作る』です。

目標を次のように設定。

「2019年3月31日までに、完読してわからないなりにもOSを自作してみよう。」

 

・・・・・

『本書』の6日目に入ったところで、まずはファイルの整理をするようです。

  1. ソースファイルの分割
  2. Makefileの整理
  3. ヘッダファイルの整備

こういうのは、いろいろなところで使えそうですね。

 

◆ harib03a (ソースファイル分割)

bootpack.cを

  • graphic.c : 描画関係
  • dsctbl.c: GDI・IDT等のdescriptor table関係
  • bootpack.c: それ以外

これに合わせて、Makefileもいじる。

graphic.c → graphic.obj, dsctbl.c → dsctbl.obj, bootpack.c → bootpack.obj これらを合わせて bootpack.bim

⇒ それぞれのソースファイルの書き方と、Makefileの書き方を理解する。

 

◆ harib03b (Makefileの整理)

Makefileの中の記述をまとめる。

ファイル生成規則を一般規則にまとめることができる。

 

⇒どうやってまとめているのか、理解する。

 

◆ harib03c (ヘッダファイルの整備)

関数の宣言や#define とかだけを集めたファイルをヘッダファイルという。

頭につける理由は、void io_out8(int port, int data); みたいなことは、最初にコンパイラにことわっておかないといけないから。

 

“bootpack.h”

関数の本体がどこのソースにあるかも、コメントでわかるようにした。

目次みたいにした。

#defineを多用して、番地をbootpack.hの中だけに書くようにした。

 

⇒ “bootpack.h”の書き方とこれを導入したときの、 “graphic.c”, “dsctbl”, “bootpack.c” の書き方を理解する。

 

・・・・・

昔友人が、「プログラミングってセンスが必要だよ。」みたいなことを言っていたのですが、最近になって少しずつ分かってきました。読みやすく、エラーがあっても探しやすく。そのために、短くできることは、まとめることが大切ですね。

 

以上。

スポンサーリンク