OS自作入門

OS自作入門 その22

OS自作入門 十七日目途中まで。 3ページぐらいしか読んでない。 30日でできる! OS自作入門 作者: 川合秀実 出版社/メーカー: 毎日コミュニケーションズ 発売日: 2006/03/01 メディア: 単行本 購入: 36人 クリック: 735回 この商品を含むブログ (306件) を見る

OS自作入門 その21

OS自作入門 十七日目の途中まで。 十六日目のマルチタスク2は難しかった。 アイドルタスクを作ることで「すべてのレベルにタスクがない」状態を回避するのはなるほどと思った。そういえばWindowsのタスクマネージャーにもSystem Idle Processというのが出て…

OS自作入門 その20

OS自作入門 15日目。 マルチタスク1。 タスクを切り替えるよう命令(タスクスイッチ)が出ると、CPUはレジスタの値をすべてメモリに書き込む。書き込まれる内容はTSS(Task Status Segment)と呼ばれる。これはセグメントの一種なのでGDTで設定して使用する…

OS自作入門 その19

OS自作入門 十四日目まで。 キー入力とおまけ。 中身ではなく見た目の問題なのでさらっと。 クリックしたところにウィンドウが移動するってそんなOS無いだろう。 30日でできる! OS自作入門 作者: 川合秀実 出版社/メーカー: 毎日コミュニケーションズ 発売日…

OS自作入門 その18

OS自作入門 十四日目の途中まで。 高解像度対応。VESA BIOS extension(VSE)を使用すれば320x200を超える解像度記できる。 まずVBEが存在するかどうかを調べ、存在したらVBEのバージョンを調べる。次に画面モードを指定する。指定するのは モード属性 X解像度…

OS自作入門 その17

OS自作入門 十三日目。 今までのプログラムの最適化。ヤバいわからん。が、まあいいか。 流し読みなので特にメモすることもない。 30日でできる! OS自作入門 作者: 川合秀実 出版社/メーカー: 毎日コミュニケーションズ 発売日: 2006/03/01 メディア: 単行本…

OS自作入門 その16

OS自作入門 十二日目まで。 タイマ割り込み処理。タイマのコントロールレジスタに0x34を指定しているけど、これは カウントモードがレートジェネレータ カウンタアクセスモードが16ビットリードロード という意味なのか? レートジェネレータがわからない。…

OS自作入門 その15

OS自作入門 十一日目まで。 十日目と十一日目は描画の工夫がメインの話題だった。いつか役に立つだろうがさしあたって知りたい知識でもないので軽く読んでおいた。 この本で作っているものはOSではなく、既存のOSを介さずに動くプログラムであってまさにハリ…

OS自作入門 その14

OS自作入門 十日目最初の2ページぐらいまで。 数値の切り上げの方法はためになった。 例1)10進数を10の位で切り上げる n = (n + 9) - (n + 9) % 10 例2) 16進数を3桁目で切り上げる n = (n + 0xff) & 0xffffff00 30日でできる! OS自作入門 作者: 川合秀実 …

OS自作入門 その13

OS自作入門 九日目まで。 メモリチェックの話 メモリチェックのスタート位置が0x00400000になってるのはメモリマップでここから先が空きになっているからか。 久しぶりにgrepを使った。久しぶりすぎて使い方を忘れていたのでメモ grep "検索したい文字列" 検…

OS自作入門 その12

OS自作入門 九日目 途中まで。 メモリチェック あるアドレスのメモリ内の値を反転させて、更にもう一度反転させて元の値と比較して等しければ、そのアドレスのメモリは使用可能である、らしい。 ちょっと意味がわからんが、何でこれで使えるか使えないかがわ…

OS自作入門 その11

OS自作入門 八日目まで。 アセンブリCALL memcpy ESI 転送元アドレス EDI 転送先アドレス ECX 転送量 OSのメモリマップをあらかじめ考えておくと作りやすい。 30日でできる! OS自作入門 作者: 川合秀実 出版社/メーカー: 毎日コミュニケーションズ 発売日: 2…

OS自作入門 その10

OS自作入門七日目まで。 割り込み処理のデータを受け取るバッファをリングバッファにすると都合が良いというのはなるほどと思った。 30日でできる! OS自作入門 作者: 川合秀実 出版社/メーカー: 毎日コミュニケーションズ 発売日: 2006/03/01 メディア: 単行…

OS自作入門 その9

OS自作入門 六日目まで読んだ。 理解がついてこない問題。とりあえず読み進める。 30日でできる! OS自作入門 作者: 川合秀実 出版社/メーカー: 毎日コミュニケーションズ 発売日: 2006/03/01 メディア: 単行本 購入: 36人 クリック: 735回 この商品を含むブ…

OS自作入門 その8

OS自作入門五日目を読み終えた。 GDTとIDTの話。 GDTは global (segment) descriptor table の略。セグメンテーションの情報をメモリに保存したもの。 セグメンテーションとはメモリを任意のサイズの領域に切り分けて、それぞれの領域の最初の番地を0として…

OS自作入門 その7

五日目の途中、基本的な文字表示まで。 ほぼ流し読み状態。C言語の文法をだいぶ忘れている。 30日でできる! OS自作入門 作者: 川合秀実 出版社/メーカー: 毎日コミュニケーションズ 発売日: 2006/03/01 メディア: 単行本 購入: 36人 クリック: 735回 この商…

OS自作入門 その6

4日目を読み終わった。 アセンブラでCの関数を書いた時の引数はどうなるのだろうか?と思ったら、4日目の最初に記述があった。 第一引数 [ ESP + 4 ] 第二引数 [ ESP + 8 ] 第三引数 [ ESP + 12 ] (以下略) となっているが、引数のデータ型に関係なく4バイ…

OS自作入門 その5

Macでの開発環境構築。 https://github.com/sandai/30nichideosjisaku の解説にそって行った。 シェルスクリプトの実行は解説のとおりでは出来なかったので、 先のページのgitリポジトリをダウンロードし、その中のbin/install/install.shを使った。 これで…

OS自作入門 その4

開発環境をMacに移そうと思い試行錯誤。 Makefileを書きなおす必要があるそうだ。めんどい。 アセンブリをgasでコンパイルしようと試してみたがダメだった。 asコマンドでもできるのだろうか。 とりあえず本の通りに進めてみることにする。 30日でできる! OS…

OS自作入門 その3

4日目の途中まで。 全部写経しながらやろうかと思っていたけど、そもそも本にはソースが全て載っていない。CDの中身を見る必要があるなら写経する気も失せるな。 CDからブートできるようにしたいのだが、どうしたらいいのか皆目検討もつかない。 30日ででき…

OS自作入門 その2

30日でできるOS自作入門 二日目まで。 今回は手を動かすことなく、用意されたサンプルを実行しただけ。 一文字ずつ表示されるような記述だったけれども、CPUの処理速度が早過ぎるのか一瞬で表示される。 アセンブラはわかったようなわからないような。 自分…

OS自作入門 その1

30日でできる!OS自作入門を購入したので始めた。 1日目終了。 VMware fusionでOSを走らせる場合、デバイスにフロッピーディスクドライブを追加し、作成した.imgファイルをイメージファイルとして指定すればよい。 30日でできる! OS自作入門 作者: 川合秀実 …