Mercurial > hg > Papers > 2017 > mitsuki-prosym
changeset 19:4ee64ffd9926
fix
author | mir3636 |
---|---|
date | Thu, 18 Jan 2018 10:23:38 +0900 |
parents | 14011045888a |
children | 57c060703f4a |
files | Slide/prosym.md |
diffstat | 1 files changed, 10 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/Slide/prosym.md Thu Jan 18 09:42:37 2018 +0900 +++ b/Slide/prosym.md Thu Jan 18 10:23:38 2018 +0900 @@ -11,11 +11,11 @@ <!--信頼性を保証するには証明とモデル検査を用いる方法がある--> - 信頼性をノーマルレベルの計算に対して保証し、拡張性をメタレベルの計算で実現することを目標に Gears OS を設計中である。 +- ノーマルレベルの計算とメタレベルの計算を切り離して記述するために Code Gear と Data Gear という単位を用いている。 - Gears OS は Continuation based C(CbC) によってアプリケーションと OS そのものを記述する。 -- ノーマルレベルからメタレベルを含んだコードへの変換に必要な情報はプログラムを構成する Code Gear と Data Gear の集まりから得る。 -- この集まりを Interface として定義している。 -- 本研究では、Interfaceを用いたプログラミングと、メタ計算の実例を示す。 +- 本研究では、CbC を用いた Gears OS の実装と、メタ計算の実例を示す。 +<!-- # OS の拡張性と信頼性の両立 さまざまなコンピュータの信頼性の基本はメモリなどの資源管理を行う OS である。 @@ -25,7 +25,9 @@ 検証は一度ですむものではなく、アプリケーションやサービス、デバイスが新しくなることに検証をやり直す必要がある。 このため信頼性と拡張性を両立させることが重要である。 --> - +<!-- +# 目次? +--> # メタ計算の重要性 - プログラムを記述する際、ノーマルレベルの処理の他に、メモリ管理やスレッド管理、CPU や GPU の資源管理等、記述しなければならない処理が存在する。これらの計算をメタ計算と呼ぶ。 - メタ計算はノーマルレベルの計算から切り離して記述したい。 @@ -34,9 +36,12 @@ # Continuation based C (CbC) - Continuation based C (CbC) はこの Code Gear 単位を用いたプログラミング言語として開発している。 -- CbC では Code Gear は \_\_code という型を持つ関数の構文で定義される。 +- Code Gear は 関数呼び出し時の環境を使わずに次の Code Gear へと goto 分によって遷移する。 +- この goto 文による遷移を軽量継続と呼ぶ。 +- CbC は軽量継続を持つ C と互換性のある言語である。 # CbC のコード例 +- CbC では Code Gear は \_\_code という型を持つ関数の構文で定義される。 - Code Gear は戻り値を持たないので、関数とは異なり return 文は存在しない。 - goto の後に Code Gear 名と引数を並べて、次の Code Gear の遷移を記述する。 - この goto の行き先を継続と呼び、このときの a+b が次の Code Gear への出力となる。