@techreport{oai:ipsj.ixsq.nii.ac.jp:02002121, author = {水鳥,開斗 and 山田,浩史}, issue = {10}, month = {May}, note = {オペレーティングシステム(OS)はアプリケーションとハードウェアの実行を司り,OSカーネルがダウンしてしまうと稼働している全てのアプリケーションが動作不能に陥る.LinuxやWindowsといったOSカーネルに対する脆弱性の報告は今も後を絶たず,また,カーネルの脆弱性によりメモリ破壊が生じると,永続データの改ざんやシステム破壊などの未定義動作が生じうる.復旧には再起動を用いるのが一般的であるが,インメモリ処理を主体とするアプリケーションはその実行状態すべてを失うため,サービスのダウンタイムが長期化する.そこで本研究では,OSカーネルのメモリ破壊を防ぎ,継続動作を促進する機構を提案する.提案機構では,システムコールをトランザクション化し,最後にメモリオブジェクトへのアクセスをチェックする.アクセスチェック時にread/writeアクセス先があらかじめ定義されたオブジェクトのみだった場合にコミットし,そうでない場合には不正なアクセスがあったと判断してアボートする.アボート時にはそのシステムコールによる更新内容をロールバックすることでカーネルのメモリオブジェクトの整合性を保ち,システムコールのエラーとして返す.提案機構をxv6に実装した.実験の結果,不正なメモリアクセスを行うシステムコールの影響を無効化できた.また,xv6のテストプログラムであるusertestsを実行したところ,全体の実行時間は従来の約1.34倍であった.}, title = {システムコールのトランザクション化によるOSカーネルの信頼性向上}, year = {2025} }