Mercurial > hg > Papers > 2019 > mitsuki-master
view paper/abstract.tex @ 6:7d9441dd343e
update
author | mir3636 |
---|---|
date | Mon, 21 Jan 2019 18:34:24 +0900 |
parents | a70aef153f8d |
children | 11ddab4e5b07 |
line wrap: on
line source
%OS研究会のまま、要相談 %これ俺のも par goto 書くの? \chapter*{要旨} 現代の OS では拡張性と信頼性を両立させることが要求されている。 信頼性をノーマルレベルの計算に対して保証し、拡張性をメタレベルの計算で実現することを目標に Gears OS を設計中である。 Gears OS は Continuation based C (CbC) によってアプリケーションと OS そのものを記述する。 OS の下ではプログラムの記述は通常の処理の他に、メモリ管理、スレッドの待ち合わせやネットワークの管理、 エラーハンドリング等の記述しなければならない処理が存在する。 これらの計算をメタ計算と呼ぶ。 メタ計算を通常の計算から切り離して記述するために、Code Gear、Data Gear という単位を提案している。 CbC はこの Code Gear と Data Gear の単位でプログラムを記述する。 システムやアプリケーションを記述するためにCode Gear と Data Gear を柔軟に再利用する必要がある。 このときに機能を接続するAPIと実装の分離が可能であることが望ましい。 Gears OS の信頼性を保証するために、形式化されたモジュールシステムを提供する必要がある。 本論文では、Interface を用いたモジュールシステムの説明とその応用としての並列 API について考察する。 並列APIは継続を基本とした関数型プログラミングと両立する必要がある。 ここでは、CbC の goto 文を拡張したpar goto 文を導入する。 par goto では並列実行のための実行 Context を生成し、TaskManager に登録する。 Gears OS での同期機構はData Gear の待ち合わせとして定義する。 メタレベルではこれらの同期機能はCASとそれを用いて実装した Synchronized Queue になる。 これらの Queue も Interface を用いてモジュール化されている。 モジュール化の詳細と、有効性について考察する。 また、本研究ではハードウェア上でメタレベルの処理、および並列実行を可能とするために、 Raspberry Pi 上での Gears OS の実装についての考察も行う。 \chapter*{Abstract} %英語論文