2006-07-13

VMwareにDebianをインストール

しょっちゅうカーネルパニックを起こすわけにもいかないのでDebianのVMware上にDebianを入れる。
VMwareはvmware-serverを使用。

前にWindows上のvmware-playerでkdbを使ったらWindowsまでバグってしまったのでkdbを使うときだけはそれ専用のPCを使うことにする。


apt-get install kernel-headers

で、さっきのURLのソースをほとんどそのまま書いてinsmodしたら動いた。
inodecacheとか変なところで迷ってたけど、それを利用しなかったら短いソースで出来るんだな・・。
マウントは /dev/fd0 を適当なディレクトリに。
実際のフロッピーを使わずにfloppy.imgをVMwareに設定しているのでHDDと同じように扱える。



テストファーストを行う場合、テストケースを書くツールが必要になる。
ファイルシステムの関数はユーザが呼び出すのではなくてカーネルが呼び出す。
ということはカーネルから呼び出すのと同じような処理を行うフレームワークが必要なのか・・。
テストファーストは諦めるか。。早くもアジャイル開発失敗の予感。

ファイルの操作、open()だのread()だのはテストできるけど、作成するファイルシステムのstatic関数をテストすることは出来るんだろうか。。
これが出来ないとユニットテストにならないよなぁ。。

そしてユーザモードでテストしても意味がない。
というかカーネルの中で使われている関数をテストできない。
しかしカーネルモードでテストって・・・結局カーネルに組み込まなきゃいけないんじゃ・・。うーん。