Mercurial > hg > Members > innparusu > slides
view 2015_06_16/slide.html @ 0:47676a16ed13
Add Slides
author | Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp> |
---|---|
date | Tue, 14 Jul 2015 17:23:04 +0900 |
parents | |
children |
line wrap: on
line source
<!DOCTYPE HTML> <html lang="Japanese"> <head> <title>Monadに基づくMeta計算を基本とするGears OSの設計</title> <meta charset="UTF-8"> <meta name="viewport" content="width=1274, user-scalable=no"> <meta name="generator" content="Slide Show (S9)"> <meta name="author" content="Tatsuki IHA"> <link rel="stylesheet" href="themes/ribbon/styles/style.css"> </head> <body class="list"> <header class="caption"> <h1>Monadに基づくMeta計算を基本とするGears OSの設計</h1> <p>Tatsuki IHA</p> </header> <div class="slide cover" id="Cover"><div> <section> <header> <h2>Monadに基づくMeta計算を基本とするGears OSの設計</h2> <h3 id="author">Tatsuki IHA</h3> <h3 id="profile"></h3> </header> </section> </div></div> <!-- todo: add slide.classes to div --> <!-- todo: create slide id from header? like a slug in blogs? --> <div class="slide" id="2"><div> <section> <header> <h1 id="section">研究目的</h1> </header> <!-- === begin markdown block === generated by markdown/1.2.0 on Ruby 2.2.2 (2015-04-13) [x86_64-darwin14] on 2015-06-16 17:48:58 +0900 with Markdown engine kramdown (1.7.0) using options {} --> <!-- _S9SLIDE_ --> <ul> <li>当研究室では, プログラムをコードセグメント, データセグメントを用いた並列フレームワークの開発を行っている.</li> <li>Gears OSでは, 並列実行に必要なMetaな機能を関数型言語におけるMonadの原理に基づいて実現する.</li> <li>また, Code Segment, Data SegmentそれぞれにMeta Code Segment, Meta Data Segmentを付属させ,Many CoreやGPGPU環境でも信頼性の高い並列処理を実現する.</li> <li>この研究ではGears OSの機能をCbC(Continuation based C)で実装、評価することを目的とする.</li> </ul> </section> </div></div> <div class="slide" id="3"><div> <section> <header> <h1 id="section-1">近況</h1> </header> <!-- _S9SLIDE_ --> <ul> <li>Data SegmentへのアクセスのsyntaxをList, Synchronized Queueに適応</li> </ul> </section> </div></div> <div class="slide" id="4"><div> <section> <header> <h1 id="ds">従来のDSへのアクセス</h1> </header> <!-- _S9SLIDE_ --> <ul> <li>contextからDataの配列にアクセスする</li> </ul> </section> </div></div> <div class="slide" id="5"><div> <section> <header> <h1 id="ds-1">従来のDSへのアクセス</h1> </header> <!-- _S9SLIDE_ --> <pre><code>__code code1(struct Context* context) { context->data[Allocate]->allocate.size = .....; context->data[Allocate]->allocate.next = .....; goto meta(context, Allocator); } </code></pre> </section> </div></div> <div class="slide" id="6"><div> <section> <header> <h1 id="stubds">stubを経由したDSへのアクセス</h1> </header> <!-- _S9SLIDE_ --> <ul> <li>Code Segmentは必要なDSを引数として取る</li> <li>全てのCSに対してstubを用意し, 必要なDSをstubで指定してCSを呼ぶ</li> <li>stubは現在は直接書いているが, Compile時に生成されて欲しい</li> </ul> </section> </div></div> <div class="slide" id="7"><div> <section> <header> <h1 id="stubds-1">stubを経由したDSへのアクセス</h1> </header> <!-- _S9SLIDE_ --> <pre><code>__code code1(struct Context* context, struct Allocate* allocate) { allocate->size = .....; allocate->next = .....; goto meta(context, Allocator); } __code code1_stub(struct Context* context) { goto code1(context, &context->data[Allocate]->allocate); } </code></pre> <style scoped=""> pre { font-size: 20px; } </style> <!-- === end markdown block === --> </section> </div></div> <script src="scripts/script.js"></script> <!-- Copyright © 2010–2011 Vadim Makeev, http://pepelsbey.net/ --> </body> </html>