WITNESS と INVARIANTS2007年02月04日 11時06分08秒

CURRENT 用の GENERIC カーネルには特殊なデバッグオプションが有効になっている。その為、初期値を使っていると、動作が遅くなる。GENERIC ファイルによると WITNESS はデッドロックを調べ、INVARIANTS は関数に渡される引数を点検するらしい。

これらの設定を変えた後は、一度全てのオブジェクトファイルを削除する必要があるようだ。make では依存関係を正しく解決出来ないらしく、古いオブジェクトファイルを残したまま buildkernel をすると、起動できないカーネルが出来てしまう。

起動できなかったら、二段目のブートローダで、プロンプトモードに移行し、boot kernel.old で起動する。もう一度、カーネルを作り直して make reinstallkernel だ。間違えて make installkernel をすると、kernel.old が消えてしまう。そのため、新しいカーネルで起動できないと悲惨なことになる。

コメント

コメントをどうぞ

※メールアドレスとURLの入力は必須ではありません。 入力されたメールアドレスは記事に反映されず、ブログの管理者のみが参照できます。

※なお、送られたコメントはブログの管理者が確認するまで公開されません。

名前:
メールアドレス:
URL:
コメント:

トラックバック

このエントリのトラックバックURL: http://uyota.asablo.jp/blog/2007/02/04/1163061/tb

※なお、送られたトラックバックはブログの管理者が確認するまで公開されません。