日記

正直なところ

リアルモード -> プロテクトモードの遷移を実際に体験してみたいのだけれど、Linuxは、起動して使えるようになった時点で既にプロテクトモードに遷移してしまっているので体験できない(当たり前だが)。CR0レジスタの0ビット目を立てるだけとはいえ、結構重要なところなので、試してみるべきだと思っている次第。どうしたもんかなー。やはりOS自作本かな。問題はgccがOS自作本で使えるかという話だが。

正直なところ2

Core i7 から VT-x (shadow-pagingのハードウェア化機能)がつくようになったみたいなので、VMMを作ってみたい。是非試したい。問題はブートまわりの話が全然わかってないということ。Type I とか作るなら要勉強やねぇ。

なんだこのオプション

カーネルのコンフィグ生成に、

make randconfig

というすごいオプションがあるのを発見してびびった。これつかって起動したらすげー。

いいものみつけた

http://www14.big.or.jp/~touch/blog/os/
http://www14.big.or.jp/~touch/haribote/haribote.html
先駆者がいらっしゃったので、Linux上ではりぼてOSを開発できそう。まずは本をGETせねば。

[Operating System]研究室にOS自作本があったので

Ubuntu上で1日目の前半(バイナリエディタでディスクイメージを作るとこ)をやってみた。事前準備として、Qemuバイナリエディタをインストール。

 aptitude install qemu  #ハードウェアエミュレータ
 aptitude instal  hexer #vi ライクなバイナリエディタ

まずはディスクイメージの作成。

 hexer helloos.img

ディスクイメージを作り終えたら、qemuを使って起動。

 qemu -fda ./helloos.img -boot a #フロッピーとして起動する場合
 qemu -hda ./helloos.img -boot c #HDDとして起動する場合

無事に起動した。

というか

こんなことやってる場合じゃないんだけどなー(笑