Mercurial > hg > Members > innparusu > slides
comparison 2015/2015_06_09/slide.md @ 1:3b7da0b661cc
Add slide.md
author | Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp> |
---|---|
date | Tue, 04 Aug 2015 18:12:46 +0900 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
0:47676a16ed13 | 1:3b7da0b661cc |
---|---|
1 title: Monadに基づくMeta計算を基本とするGears OSの設計 | |
2 author: Tatsuki IHA | |
3 profile: | |
4 lang: Japanese | |
5 code-engine: coderay | |
6 | |
7 # 研究目的 | |
8 - 当研究室では, プログラムをコードセグメント, データセグメントを用いた並列フレームワークの開発を行っている. | |
9 - Gears OSでは, 並列実行に必要なMetaな機能を関数型言語におけるMonadの原理に基づいて実現する. | |
10 - また, Code Segment, Data SegmentそれぞれにMeta Code Segment, Meta Data Segmentを付属させ,Many CoreやGPGPU環境でも信頼性の高い並列処理を実現する. | |
11 - この研究ではGears OSの機能をCbC(Continuation based C)で実装、評価することを目的とする. | |
12 | |
13 # data segmentを参照するsyntax | |
14 | |
15 ``` | |
16 __code code1(struct Context* context, enum Code next) { | |
17 context->data[Allocate]->allocate.size = .....; | |
18 } | |
19 ``` | |
20 | |
21 # data segmentを参照するsyntax | |
22 ``` | |
23 __code code1(struct Context* context, enum Code next) { | |
24 union Data *ds1; | |
25 ds1 = get_data_segment(context, Allocate); | |
26 ds1->allocate.size = .....; | |
27 } | |
28 | |
29 union Data* get_data_segment(struct Context* context, int key) { | |
30 return context->data[key]; | |
31 } | |
32 ``` | |
33 | |
34 # data segmentを参照するsyntax | |
35 ``` | |
36 __code code1(struct Allocate allocate) { | |
37 allocate.size = .....; | |
38 } | |
39 ``` | |
40 | |
41 # Cerium on Gears | |
42 | |
43 | |
44 <style scoped> | |
45 pre { | |
46 font-size: 20px; | |
47 } | |
48 </style> |