comparison paper/anatofuz-sigos.tex @ 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
258 信頼性を向上させる観点から見ると、 複数のCodeGearをまとめた状態は実装した関数を組み合せてアルゴリズムに問題が無いかの確認として使用出来る。 258 信頼性を向上させる観点から見ると、 複数のCodeGearをまとめた状態は実装した関数を組み合せてアルゴリズムに問題が無いかの確認として使用出来る。
259 対して各CodeGearそれぞれはモデル検査や、 特定の関数の中の処理が適しているかどうかの検査として見ることが出来ると考えられる。 259 対して各CodeGearそれぞれはモデル検査や、 特定の関数の中の処理が適しているかどうかの検査として見ることが出来ると考えられる。
260 260
261 この事からGearsOSでは、 各CodeGearのモジュール化の仕組みであるInterface機能を導入している。 261 この事からGearsOSでは、 各CodeGearのモジュール化の仕組みであるInterface機能を導入している。
262 Interfaceの導入によってCodeGearを定義することで状態数を増やしても、 抽象化されたAPIを利用することで細部の状態まで意識する必要が無くなった。 262 Interfaceの導入によってCodeGearを定義することで状態数を増やしても、 抽象化されたAPIを利用することで細部の状態まで意識する必要が無くなった。
263 xv6の処理をCbCで再実装する際には、 対象の継続のAPIをまず決定しモジュール化を図る必要がある。
263 264
264 \section{xv6のシステムコール以外の継続の分析} 265 \section{xv6のシステムコール以外の継続の分析}
265 266 xv6はシステムコール以外に、 ファイルシステムの操作やページテーブルの管理などの処理も存在している。
266 267 これらはOSの立ち上げ時やシステムコールの中で、ファイルシステムの操作に対応した関数や構造体などのAPIを通して操作される。
267 268
268 \section{Basic Blockに基づく分析} 269 \section{Basic Blockに基づく分析}
269 270
270 xv6のファイルシステムに関する定義ファイルはfs.c中に記述されている。 271 xv6のファイルシステムに関する定義ファイルはfs.c中に記述されている。
271 この中に出てくる関数に着目し、 この関数をさらにCodeGearに変換していくことで状態遷移単位での記述を試みた。 272 この中に出てくる関数に着目し、 この関数をさらにCodeGearに変換していくことで状態遷移単位での記述を試みた。