多段階保護機構:拡張可能OSの新しいFail-safe機構

拡張可能OSは拡張モジュールを追加することで,その機能を動的に拡張すること ができる.このようなOSでは,拡張モジュールのエラーからOSを守るために, fail-safe機構が必要とされる.しかしながら,十分なfail-safe機構を実現しよ うとすると,従来の実装技術ではシステムの性能低下が避けられなかった.そこ で我々は,新しいfail-safe機構である多段階保護機構を提案する.この機構は 拡張モジュールを,変更なしに,様々な保護レベルでOSに組み込むことを可能に する.この機能を用いて,デバッグ時には保護レベルを高くし,デバッグが終わ れば保護レベルを低くするなど,必要最低限の保護レベルで拡張モジュールを動 かすことにより,システムの性能低下を回避することができる.我々は,ファイ ルシステムに対して多段階保護機構を実現するシステムをNetBSD 1.2上に実装し た.このシステムでは,保護マネージャと呼ばれるものが複数用意されており, それぞれが異なる保護レベルを提供している.そしてユーザは保護マネージャを 交換することで,拡張モジュールの保護レベルを変更することができる.さらに, 我々は多段階保護機構の有効性を調べるために実験を行い,fail-safeの機能 を減らせば,その分実行性能を改善できることを確かめた.また保護レベルが最 大のときでも,そのオーバヘッドは実用に耐える程度であり,保護レベルを最小に すれば,カーネルに作り込んで手で最適化したファイルシステムに十分近い性能 が得られることも分かった.