31
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
1
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
2
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
3
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
4
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
5
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
6 <!DOCTYPE html>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
7 <html>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
8 <head>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
9 <meta http-equiv="content-type" content="text/html;charset=utf-8">
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
10 <title>GearsOSの分散ファイルシステムの設計</title>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
11
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
12 <meta name="generator" content="Slide Show (S9) v4.1.0 on Ruby 2.6.8 (2021-07-07) [universal.x86_64-darwin21]">
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
13 <meta name="author" content="Takahiro Ikki, Shinji Kono" >
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
14
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
15 <!-- style sheet links -->
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
16 <link rel="stylesheet" href="s6/themes/projection.css" media="screen,projection">
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
17 <link rel="stylesheet" href="s6/themes/screen.css" media="screen">
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
18 <link rel="stylesheet" href="s6/themes/print.css" media="print">
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
19 <link rel="stylesheet" href="s6/themes/blank.css" media="screen,projection">
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
20
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
21 <!-- JS -->
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
22 <script src="s6/js/jquery-1.11.3.min.js"></script>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
23 <script src="s6/js/jquery.slideshow.js"></script>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
24 <script src="s6/js/jquery.slideshow.counter.js"></script>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
25 <script src="s6/js/jquery.slideshow.controls.js"></script>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
26 <script src="s6/js/jquery.slideshow.footer.js"></script>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
27 <script src="s6/js/jquery.slideshow.autoplay.js"></script>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
28
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
29 <!-- prettify -->
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
30 <link rel="stylesheet" href="scripts/prettify.css">
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
31 <script src="scripts/prettify.js"></script>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
32
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
33 <script>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
34 $(document).ready( function() {
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
35 Slideshow.init();
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
36
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
37 $('code').each(function(_, el) {
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
38 if (!el.classList.contains('noprettyprint')) {
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
39 el.classList.add('prettyprint');
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
40 }
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
41 });
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
42 prettyPrint();
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
43 } );
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
44
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
45 </script>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
46
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
47 <!-- Better Browser Banner for Microsoft Internet Explorer (IE) -->
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
48 <!--[if IE]>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
49 <script src="s6/js/jquery.microsoft.js"></script>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
50 <![endif]-->
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
51
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
52
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
53
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
54 </head>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
55 <body>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
56
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
57 <div class="layout">
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
58 <div id="header"></div>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
59 <div id="footer">
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
60 <div align="right">
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
61 <img src="s6/images/logo.svg" width="200px">
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
62 </div>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
63 </div>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
64 </div>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
65
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
66 <div class="presentation">
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
67
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
68 <div class='slide cover'>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
69 <table width="90%" height="90%" border="0" align="center">
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
70 <tr>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
71 <td>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
72 <div align="center">
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
73 <h1><font color="#808db5">GearsOSの分散ファイルシステムの設計</font></h1>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
74 </div>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
75 </td>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
76 </tr>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
77 <tr>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
78 <td>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
79 <div align="left">
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
80 Takahiro Ikki, Shinji Kono
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
81 琉球大学理工学研究科情報工学専攻
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
82 <hr style="color:#ffcc00;background-color:#ffcc00;text-align:left;border:none;width:100%;height:0.2em;">
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
83 </div>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
84 </td>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
85 </tr>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
86 </table>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
87 </div>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
88
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
89
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
90
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
91 <div class='slide'>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
92
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
93 <!-- _S9SLIDE_ -->
|
35
|
94 <h2 id="継続を導入したgearsos">継続を導入したGearsOS</h2>
|
31
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
95 <ul>
|
41
|
96 <li>OSの信頼性の保証と拡張性を目指したOS開発プロジェクトである
|
31
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
97 <ul>
|
41
|
98 <li>アプリケーションの土台となるOSはより高い信頼性が保証されるべきである</li>
|
35
|
99 </ul>
|
|
100 </li>
|
41
|
101 <li>OS自体の信頼性検証はプログラムが膨大な量となるため、テストコードによるデバッグは難しい</li>
|
|
102 <li>GearsOSではメタレベルの処理からユーザープログラムの検証を行うアプローチをとる
|
35
|
103 <ul>
|
41
|
104 <li>ノーマルレベルとメタレベルを分けて記述できる</li>
|
|
105 <li>メタレベルな処理を検証用のものに切り替えることで信頼性の検証を行う</li>
|
37
|
106 <li>信頼性の検証には定理支援証明系やモデル検査を用いる</li>
|
31
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
107 </ul>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
108 </li>
|
41
|
109 <li>関数遷移に代わり、<strong>CodeGear</strong>と<strong>DataGear</strong>と言う単位で記述を行う
|
|
110 <ul>
|
|
111 <li>複数のCodeGearをgoto(jump命令)で遷移することで処理が実行される</li>
|
|
112 </ul>
|
|
113 </li>
|
35
|
114 </ul>
|
|
115
|
|
116
|
|
117
|
|
118 </div>
|
|
119
|
|
120 <div class='slide'>
|
|
121 <!-- _S9SLIDE_ -->
|
41
|
122 <h2 id="研究目的">研究目的</h2>
|
35
|
123 <ul>
|
42
|
124 <li>GearsOSにより信頼性が裏付けられる、分散ファイルシステムの開発/検証を行う</li>
|
|
125 <li>GearsOSの処理単位であるDataGearでファイルを構成したい</li>
|
|
126 <li>将来的にAPIやプロセスは定理支援証明系により整合性の検証が行われる</li>
|
|
127 <li>OSレベルでTransactionを持つ
|
35
|
128 <ul>
|
41
|
129 <li>Transactionとはデータ操作の不可分化による整合性の保護</li>
|
|
130 <li>従来のアプリでは、ユーザーレベルで実装される</li>
|
35
|
131 </ul>
|
|
132 </li>
|
41
|
133 <li>GearsOSが持つTransactionの実用性の検証</li>
|
|
134 </ul>
|
|
135
|
|
136
|
|
137
|
|
138 </div>
|
|
139
|
|
140 <div class='slide'>
|
|
141 <!-- _S9SLIDE_ -->
|
|
142 <h2 id="研究目的-1">研究目的</h2>
|
|
143 <ul>
|
42
|
144 <li>分散フレームワークChristieの仕組みを用いた分散ファイルシステムの設計/開発
|
41
|
145 <ul>
|
|
146 <li>純粋なデータの送り合いだけで構成されるシンプルな通信</li>
|
|
147 <li>自律分散ファイルシステムを目指したい
|
|
148 <ul>
|
42
|
149 <li>ネットワーク通信上で複数のプロトコルが送られることによる煩雑性を防ぐ</li>
|
41
|
150 </ul>
|
|
151 </li>
|
42
|
152 <li>通信のデータの整合性の保護はGearsOSが行う</li>
|
41
|
153 </ul>
|
|
154 </li>
|
31
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
155 </ul>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
156
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
157
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
158
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
159 </div>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
160
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
161 <div class='slide'>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
162 <!-- _S9SLIDE_ -->
|
35
|
163 <h2 id="分散フレームワークchristie">分散フレームワークChristie</h2>
|
31
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
164 <ul>
|
39
|
165 <li>当研究室が開発する、Javaで書かれた分散フレームワークである</li>
|
|
166 <li>GearsOSと似たGearと言うプログラミング概念を持つ</li>
|
41
|
167 <li>ノード間の通信は、Threadの実行に必要になる変数データ(DataGear)の送り合いで構成される
|
31
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
168 <ul>
|
41
|
169 <li>DataGearが揃ったThreadはノードにより実行される</li>
|
35
|
170 </ul>
|
|
171 </li>
|
41
|
172 <li>ノードはDataGearを保存するkey value storeである,DataGearManagerを持つ
|
|
173 <ul>
|
|
174 <li>DataGearManagerにはLocalなものとRemoteのものが存在する</li>
|
|
175 </ul>
|
|
176 </li>
|
|
177 <li>GearsFSはDataGearManagerの仕組みを導入することで通信する</li>
|
35
|
178 </ul>
|
|
179
|
|
180
|
|
181
|
|
182 </div>
|
|
183
|
|
184 <div class='slide'>
|
|
185 <!-- _S9SLIDE_ -->
|
42
|
186 <h2 id="ポスター発表">ポスター発表</h2>
|
35
|
187 <ul>
|
41
|
188 <li>GearsOSとChristieの解説
|
35
|
189 <ul>
|
41
|
190 <li>DataGearManagerの仕組み</li>
|
31
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
191 </ul>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
192 </li>
|
41
|
193 <li>Chlistie likeなファイルシステムの設計の解説
|
36
|
194 <ul>
|
41
|
195 <li>ファイルとファイルデータの構造の設計</li>
|
|
196 <li>API</li>
|
|
197 <li>ファイルによる通信の設計と実装</li>
|
|
198 <li>GearsFSの例題による通信モデル</li>
|
36
|
199 </ul>
|
|
200 </li>
|
41
|
201 <li>まとめと課題</li>
|
31
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
202 </ul>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
203
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
204
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
205
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
206 </div>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
207
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
208 <div class='slide'>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
209 <!-- _S9SLIDE_ -->
|
42
|
210 <h2 id="ポスター発表-1">ポスター発表</h2>
|
35
|
211 <ul>
|
36
|
212 <li>GearsOSのChristie likeなファイルシステムの設計と実装
|
35
|
213 <ul>
|
|
214 <li>ファイル構造
|
|
215 <ul>
|
|
216 <li>QueueとTreeを用いる</li>
|
|
217 </ul>
|
|
218 </li>
|
|
219 <li>ファイルAPI
|
|
220 <ul>
|
|
221 <li>Put/Take/Peek</li>
|
|
222 </ul>
|
|
223 </li>
|
|
224 <li>複数streamを用いたファイル通信</li>
|
|
225 <li>WordCount例題</li>
|
|
226 </ul>
|
|
227 </li>
|
|
228 <li>まとめと課題</li>
|
|
229 </ul>
|
|
230
|
31
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
231 </div>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
232
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
233
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
234 </div><!-- presentation -->
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
235 </body>
|
ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
236 </html>
|