日記
正直なところ
リアルモード -> プロテクトモードの遷移を実際に体験してみたいのだけれど、Linuxは、起動して使えるようになった時点で既にプロテクトモードに遷移してしまっているので体験できない(当たり前だが)。CR0レジスタの0ビット目を立てるだけとはいえ、結構重要なところなので、試してみるべきだと思っている次第。どうしたもんかなー。やはりOS自作本かな。問題はgccがOS自作本で使えるかという話だが。
正直なところ2
Core i7 から VT-x (shadow-pagingのハードウェア化機能)がつくようになったみたいなので、VMMを作ってみたい。是非試したい。問題はブートまわりの話が全然わかってないということ。Type I とか作るなら要勉強やねぇ。
いいものみつけた
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として起動する場合
無事に起動した。
というか
こんなことやってる場合じゃないんだけどなー(笑