comparison paper/anatofuz-sigos.md @ 33:6b10bb9e4f45

...
author anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
date Tue, 05 May 2020 15:04:14 +0900
parents 8113cc6ca01a
children ff9dec2d1c1a
comparison
equal deleted inserted replaced
32:8113cc6ca01a 33:6b10bb9e4f45
152 信頼性を向上させる観点から見ると、 複数のCodeGearをまとめた状態は実装した関数を組み合せてアルゴリズムに問題が無いかの確認として使用出来る。 152 信頼性を向上させる観点から見ると、 複数のCodeGearをまとめた状態は実装した関数を組み合せてアルゴリズムに問題が無いかの確認として使用出来る。
153 対して各CodeGearそれぞれはモデル検査や、 特定の関数の中の処理が適しているかどうかの検査として見ることが出来ると考えられる。 153 対して各CodeGearそれぞれはモデル検査や、 特定の関数の中の処理が適しているかどうかの検査として見ることが出来ると考えられる。
154 154
155 この事からGearsOSでは、 各CodeGearのモジュール化の仕組みであるInterface機能を導入している。 155 この事からGearsOSでは、 各CodeGearのモジュール化の仕組みであるInterface機能を導入している。
156 Interfaceの導入によってCodeGearを定義することで状態数を増やしても、 抽象化されたAPIを利用することで細部の状態まで意識する必要が無くなった。 156 Interfaceの導入によってCodeGearを定義することで状態数を増やしても、 抽象化されたAPIを利用することで細部の状態まで意識する必要が無くなった。
157 xv6の処理をCbCで再実装する際には、 対象の継続のAPIをまず決定しモジュール化を図る必要がある。
157 158
158 # xv6のシステムコール以外の継続の分析 159 # xv6のシステムコール以外の継続の分析
159 160 xv6はシステムコール以外に、 ファイルシステムの操作やページテーブルの管理などの処理も存在している。
160 161 これらはOSの立ち上げ時やシステムコールの中で、ファイルシステムの操作に対応した関数や構造体などのAPIを通して操作される。
161 162
162 # Basic Blockに基づく分析 163 # Basic Blockに基づく分析
163 164
164 xv6のファイルシステムに関する定義ファイルはfs.c中に記述されている。 165 xv6のファイルシステムに関する定義ファイルはfs.c中に記述されている。
165 この中に出てくる関数に着目し、 この関数をさらにCodeGearに変換していくことで状態遷移単位での記述を試みた。 166 この中に出てくる関数に着目し、 この関数をさらにCodeGearに変換していくことで状態遷移単位での記述を試みた。