view finalSlide/finalSlide.pdf.html @ 33:ab77a291294d

tweak finalSlide
author ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
date Sat, 12 Feb 2022 21:43:10 +0900
parents fa31358d38f1
children 181eec546ad2
line wrap: on
line source






<!DOCTYPE html>
<html>
<head>
   <meta http-equiv="content-type" content="text/html;charset=utf-8">
   <title>GearsOSの分散ファイルシステムの設計</title>

   <meta name="generator" content="Slide Show (S9) v4.1.0 on Ruby 2.6.8 (2021-07-07) [universal.x86_64-darwin21]">
   <meta name="author"    content="Takahiro Ikki, Shinji Kono" >

<!-- style sheet links -->
<link rel="stylesheet" href="s6/themes/screen.css"       media="screen">
<link rel="stylesheet" href="s6/themes/print.css"        media="print">
<link rel="stylesheet" href="s6/themes/blank.css"        media="screen,projection">

<!-- JS -->
<script src="s6/js/jquery-1.11.3.min.js"></script>
<script src="s6/js/jquery.slideshow.js"></script>
<script src="s6/js/jquery.slideshow.counter.js"></script>
<script src="s6/js/jquery.slideshow.controls.js"></script>
<script src="s6/js/jquery.slideshow.footer.js"></script>
<script src="s6/js/jquery.slideshow.autoplay.js"></script>

<!-- prettify -->
<link rel="stylesheet" href="scripts/prettify.css">
<script src="scripts/prettify.js"></script>

<style>
  .slide {page-break-after: always;}
</style>




</head>
<body>

<div class="layout">
  <div id="header"></div>
  <div id="footer">
    <div align="right">
      <img src="s6/images/logo.svg" width="200px">
    </div>
  </div>
</div>

<div class="presentation">

  <div class='slide cover'>
    <table width="90%" height="90%" border="0" align="center">
      <tr>
        <td>
          <div align="center">
              <h1><font color="#808db5">GearsOSの分散ファイルシステムの設計</font></h1>
          </div>
        </td>
      </tr>
      <tr>
        <td>
          <div align="left">
               Takahiro Ikki, Shinji Kono
               琉球大学理工学研究科情報工学専攻
            <hr style="color:#ffcc00;background-color:#ffcc00;text-align:left;border:none;width:100%;height:0.2em;">
          </div>
        </td>
      </tr>
    </table>
  </div>


<div class='slide'>
  
<!-- _S9SLIDE_ -->
<h2 id="概要">概要</h2>
<ul>
  <li>GearsOSの分散ファイルシステムの設計と実装を行った
    <ul>
      <li>ファイル構造の設計</li>
      <li>APIの定義</li>
      <li>遠隔のファイルのアクセスと保存</li>
    </ul>
  </li>
  <li>GearsOS同様の記述単位な構成</li>
  <li>自律分散を目指した分散ファイルシステムの設計</li>
  <li>OSレベルのTransactionによるアプリ実装</li>
</ul>



</div>

<div class='slide'>
  <!-- _S9SLIDE_ -->
<h2 id="gearsos">GearsOS</h2>
<ul>
  <li>CodeGear/DataGearという単位で記述されるOS</li>
  <li>OSの信頼性の保証と拡張性を目指している</li>
  <li>ノーマルレベルとメタレベルを分離して記述できる
    <ul>
      <li>ユーザーが実装したプログラムをメタレベルから検証する</li>
      <li>定理支援証明系やモデル検査が用いられる</li>
    </ul>
  </li>
</ul>



</div>

<div class='slide'>
  <!-- _S9SLIDE_ -->
<h2 id="codegearとdatagear">CodeGearとDataGear</h2>
<ul>
  <li>CodeGear
    <ul>
      <li>実行Codeの単位</li>
      <li>入力DataGearと出力DataGearを持つ</li>
      <li>goto文(jump命令)を使って遷移する</li>
      <li>実行単位は途中で割り込みされない(Atmocity)</li>
    </ul>
  </li>
  <li>DataGear
    <ul>
      <li>変数にあたり、構造体の型を持つ</li>
      <li>ノーマルレベルでは変更されない(関数型プログラミング)</li>
    </ul>
  </li>
  <li>C言語を拡張する形でCbC言語により実装される</li>
</ul>



</div>

<div class='slide'>
  <!-- _S9SLIDE_ -->
<h2 id="codegearとdatagear-1">CodeGearとDataGear</h2>
<ul>
  <li>InputDataGearを受け取って、CodeGearが処理し、OutputDataGearを出力する</li>
  <li>OutputDataGearは次のCodeGearのInputDataGearとなる</li>
</ul>
<div style="text-align: center;">
   <img src="images/cg-dg.pdf" alt="cgdgの関係図" width="600" />
</div>



</div>

<div class='slide'>
  <!-- _S9SLIDE_ -->
<h2 id="gearsosにおけるファイル">GearsOSにおけるファイル</h2>
<ul>
  <li>ファイルデータの最小単位はDataGearとなる
    <ul>
      <li>任意の構造体で構成できる</li>
    </ul>
  </li>
  <li>ファイルデータとなるDataGearはQueueに格納される</li>
</ul>
<div style="text-align: center;">
   <img src="images/QueueElement.pdf" alt="Queue" width="800" />
</div>



</div>

<div class='slide'>
  <!-- _S9SLIDE_ -->
<h2 id="gearsosにおけるファイル-1">GearsOSにおけるファイル</h2>
<ul>
  <li>ファイルは複数のQueueを持つ赤黒木である
    <ul>
      <li>Queueはkeyでアクセスされる</li>
      <li>Queueはstreamの役割を持つ</li>
    </ul>
  </li>
</ul>

<div style="text-align: center;">
   <img src="images/newGearsFile.pdf" alt="Queue" width="400" />
</div>



</div>

<div class='slide'>
  <!-- _S9SLIDE_ -->
<h2 id="gearsosの分散ファイルシステム">GearsOSの分散ファイルシステム</h2>
<ul>
  <li>GearsOSのファイルは通信の役割も持つ</li>
  <li>規格が決められたプロトコルを用いない
    <ul>
      <li>最低限のデータ(DataGear)でのみ通信を行う</li>
      <li>分散通信の見通しの確保を目指す</li>
    </ul>
  </li>
  <li>将来的にAPIと通信プロセスは定理支援証明系Agdaで検証を行う</li>
</ul>



</div>

<div class='slide'>
  <!-- _S9SLIDE_ -->
<h2 id="transactionalなファイルシステム">Transactionalなファイルシステム</h2>
<ul>
  <li>GearsFSはDataGear単位で操作を行う</li>
  <li>これによりAPIをTransactionとして実装できる
    <ul>
      <li>従来ではアプリケーションレベルで実装される</li>
    </ul>
  </li>
  <li>Transactionは様々な分類のアプリケーションに必要となる</li>
  <li>GearsOSによるOSレベルのTransactionを用いた開発物の検証を兼ねる</li>
</ul>



</div>

<div class='slide'>
  <!-- _S9SLIDE_ -->
<h2 id="ポスターセッション">ポスターセッション</h2>
<ul>
  <li>ファイル構造の詳細</li>
  <li>ファイルアクセスAPI</li>
  <li>proxyを用いたファイル通信の構成解説</li>
  <li>研究のまとめと課題</li>
</ul>

</div>


</div><!-- presentation -->
</body>
</html>