- 運営しているクリエイター
記事一覧
OSの作り方:3日目
いままではブート後、Hello worldだったけど、本格的にIPLしようてのが、この3日目。
ディスクの構成説明で、シリンダとヘッドとセクタの概念。シリンダ0、ヘッド0,セクタ1はBIOSが読んでくれてたけども、セクタ2を自発的にロードしよう、てところ。
ディスク読み出しのパラメータをレジスタにセットしといて、int13割り込みで読み込みできる。
当然ながら、どのメモリに読むかのアドレス指定も
OSの作り方:2日目
まずテキストエディタの紹介。・・・ってバイナリエディタより後の紹介。TeraPadのおススメでしたがわたくしは秀丸派。
さっそくアセンブラなのですが。
ORG 0x7c00 が冒頭に出てくる。7c00にこのプログラムを配置しなさい、という命令。なぜ0x7c00?仮想メモリの概念はないから物理メモリのアドレスだよね。
そして次に JMP entry でラベルentryを実行開始、と。で、レジス
OSの作り方:1日目(続き)
機械語からアセンブラに少しレベルが上がった。つぎはアセンブラでブートコード書きましょう、と。
バイナリエディタで直接コード記述してましたが、次はアセンブラでブートコードを書くわけですね。NASMを https://www.nasm.us/ から落として来ます。
そして、書籍通りにアセンブラ記述するの面倒くさいので、CD-ROMからソースを落として・・・ってこんなでいいのか。そして、NASMにP
OSの作り方:1日目
いきなりバイナリエディタ!(笑)BZを落とせとな。
アセンブラですらもローダーないし、機械語を直接埋め込んで、イメージを作るしかないのね。ものすごい低レベル(だから知的じゃないよ)
てかBZとか懐かしいなぁ。自分はStirling派。でもここは素直にBZ。
そして、記載されている数値をひたすら、ただひたすらに打ち込むっていう荒行をこなすと。うへぇ、16進数をひたすらやん。もちろん、現時点で意
OSの作り方:0日目
OS作るにはどうしたらいいのか、OSを作るときの苦労がどういうものがあるか、を知る。
確かに、コンパイラなんて自作OSにはそもそもないし。クロスが当たり前だし、アセンブラの低レベル言語もしかり。機械語しかない=バイナリエディタ。なんて低レベル(いや、知的にじゃなく)な!
ポイントとしては、
・わからなくても進んでみる
・とりあえずやってみる
が大事なようで。その通りだなぁ。まずやってみる
OSの作り方でOS作るまで
OSの作り方の書籍を買いました。
今まで興味はあったものの、なかなか手を付けづらい領域だったので、これを機にやってみようと一念発起したとこです。
30日で作れるって書いてあるので、ほんとに30日でできるのか進捗と所感含めて書いてこーと思います。自分の記憶にとどめる役割もあるしね。
Linuxでデバイスドライバ書いたり、ユーザ領域のメモリマップしてたので、カーネルレベルの知識はある程度あるもの