comparison presen/sigOS/sample.html @ 23:7de82f13512b default tip

last update
author Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
date Wed, 08 Jul 2015 17:34:13 +0900
parents 1f1b1f962ff1
children
comparison
equal deleted inserted replaced
22:1f1b1f962ff1 23:7de82f13512b
128 <!-- _S9SLIDE_ --> 128 <!-- _S9SLIDE_ -->
129 129
130 <ul> 130 <ul>
131 <li>DS の集合体であるデータベースを Alice では DS Manager(DSM) と呼ぶ。 </li> 131 <li>DS の集合体であるデータベースを Alice では DS Manager(DSM) と呼ぶ。 </li>
132 <li>DSM 内の DS には対になる String型のkey が存在し、 DSM 名と key を指定しすることで DS の保存、取得を行う。</li> 132 <li>DSM 内の DS には対になる String型のkey が存在し、 DSM 名と key を指定しすることで DS の保存、取得を行う。</li>
133 <li>DS の追加<br /> 133 <li>DS の保存<br />
134 put(String managerKey, String key, Object val) </li> 134 put(String managerKey, String key, Object val) </li>
135 <li>DS の取得<br /> 135 <li>DS の取得<br />
136 take(String managerKey, String key) </li> 136 take(String managerKey, String key) </li>
137 </ul> 137 </ul>
138 138
223 <section> 223 <section>
224 <header> 224 <header>
225 <h1 id="cs--">Code Segment の 例</h1> 225 <h1 id="cs--">Code Segment の 例</h1>
226 </header> 226 </header>
227 <span>2つのノード間で、RemoteDSMからデータをtakeしインクリメントしてLocalDSMにputを10回繰り返す</span> 227 <span>2つのノード間で、RemoteDSMからデータをtakeしインクリメントしてLocalDSMにputを10回繰り返す</span>
228 <img src="./pictures/remoteTest.svg" alt="opt" align="center"/> 228 <img src="./images/remoteTest.svg" alt="opt" align="center"/>
229 </div></div> 229 </div></div>
230 230
231 <div class="slide" id="13"><div> 231 <div class="slide" id="13"><div>
232 <section> 232 <section>
233 <header> 233 <header>
334 <pre><code style="font-size:13pt" lang="java"> 334 <pre><code style="font-size:13pt" lang="java">
335 public class Increment extends CodeSegment { 335 public class Increment extends CodeSegment {
336 public Receiver receiver = ids.create(CommandType.TAKE); 336 public Receiver receiver = ids.create(CommandType.TAKE);
337 @Override 337 @Override
338 public void run() { 338 public void run() {
339 <span style="color:red;">int num = this.r.asClass(Integer.class);</span> 339 <span style="color:red;">int num = this.receiver.asClass(Integer.class);</span>
340 num++; 340 num++;
341 if (num == 10) System.exit(0); 341 if (num == 10) System.exit(0);
342 ods.put("local", "num", num); 342 ods.put("local", "num", num);
343 Increment nextCS = new RemoteIncrement(); 343 Increment nextCS = new RemoteIncrement();
344 nextCS.receiver.setKey("remote", "num"); 344 nextCS.receiver.setKey("remote", "num");
358 <pre><code style="font-size:13pt" lang="java"> 358 <pre><code style="font-size:13pt" lang="java">
359 public class Increment extends CodeSegment { 359 public class Increment extends CodeSegment {
360 public Receiver receiver = ids.create(CommandType.TAKE); 360 public Receiver receiver = ids.create(CommandType.TAKE);
361 @Override 361 @Override
362 public void run() { 362 public void run() {
363 int num = this.r.asClass(Integer.class); 363 int num = this.receiver.asClass(Integer.class);
364 <span style="color:red;">num++;</span> 364 <span style="color:red;">num++;</span>
365 if (num == 10) System.exit(0); 365 if (num == 10) System.exit(0);
366 ods.put("local", "num", num); 366 ods.put("local", "num", num);
367 Increment nextCS = new RemoteIncrement(); 367 Increment nextCS = new RemoteIncrement();
368 nextCS.receiver.setKey("remote", "num"); 368 nextCS.receiver.setKey("remote", "num");
383 <pre><code style="font-size:13pt" lang="java"> 383 <pre><code style="font-size:13pt" lang="java">
384 public class Increment extends CodeSegment { 384 public class Increment extends CodeSegment {
385 public Receiver receiver = ids.create(CommandType.TAKE); 385 public Receiver receiver = ids.create(CommandType.TAKE);
386 @Override 386 @Override
387 public void run() { 387 public void run() {
388 int num = this.r.asClass(Integer.class); 388 int num = this.receiver.asClass(Integer.class);
389 num++; 389 num++;
390 <span style="color:red;">if (num == 10) System.exit(0);</span> 390 <span style="color:red;">if (num == 10) System.exit(0);</span>
391 ods.put("local", "num", num); 391 ods.put("local", "num", num);
392 Increment nextCS = new RemoteIncrement(); 392 Increment nextCS = new RemoteIncrement();
393 nextCS.receiver.setKey("remote", "num"); 393 nextCS.receiver.setKey("remote", "num");
406 <pre><code style="font-size:13pt" lang="java"> 406 <pre><code style="font-size:13pt" lang="java">
407 public class Increment extends CodeSegment { 407 public class Increment extends CodeSegment {
408 public Receiver receiver = ids.create(CommandType.TAKE); 408 public Receiver receiver = ids.create(CommandType.TAKE);
409 @Override 409 @Override
410 public void run() { 410 public void run() {
411 int num = this.r.asClass(Integer.class); 411 int num = this.receiver.asClass(Integer.class);
412 num++; 412 num++;
413 if (num == 10) System.exit(0); 413 if (num == 10) System.exit(0);
414 <span style="color:red;">ods.put("local", "num", num);</span> 414 <span style="color:red;">ods.put("local", "num", num);</span>
415 Increment nextCS = new RemoteIncrement(); 415 Increment nextCS = new RemoteIncrement();
416 nextCS.receiver.setKey("remote", "num"); 416 nextCS.receiver.setKey("remote", "num");
430 <pre><code style="font-size:13pt" lang="java"> 430 <pre><code style="font-size:13pt" lang="java">
431 public class Increment extends CodeSegment { 431 public class Increment extends CodeSegment {
432 public Receiver receiver = ids.create(CommandType.TAKE); 432 public Receiver receiver = ids.create(CommandType.TAKE);
433 @Override 433 @Override
434 public void run() { 434 public void run() {
435 int num = this.r.asClass(Integer.class); 435 int num = this.receiver.asClass(Integer.class);
436 num++; 436 num++;
437 if (num == 10) System.exit(0); 437 if (num == 10) System.exit(0);
438 ods.put("local", "num", num); 438 ods.put("local", "num", num);
439 <span style="color:red;">Increment nextCS = new RemoteIncrement();</span> 439 <span style="color:red;">Increment nextCS = new RemoteIncrement();</span>
440 nextCS.receiver.setKey("remote", "num"); 440 nextCS.receiver.setKey("remote", "num");
453 <pre><code style="font-size:13pt" lang="java"> 453 <pre><code style="font-size:13pt" lang="java">
454 public class Increment extends CodeSegment { 454 public class Increment extends CodeSegment {
455 public Receiver receiver = ids.create(CommandType.TAKE); 455 public Receiver receiver = ids.create(CommandType.TAKE);
456 @Override 456 @Override
457 public void run() { 457 public void run() {
458 int num = this.r.asClass(Integer.class); 458 int num = this.receiver.asClass(Integer.class);
459 num++; 459 num++;
460 if (num == 10) System.exit(0); 460 if (num == 10) System.exit(0);
461 ods.put("local", "num", num); 461 ods.put("local", "num", num);
462 Increment nextCS = new RemoteIncrement(); 462 Increment nextCS = new RemoteIncrement();
463 <span style="color:red;">nextCS.receiver.setKey("remote", "num");</span> 463 <span style="color:red;">nextCS.receiver.setKey("remote", "num");</span>
671 </div></div> 671 </div></div>
672 672
673 <div class="slide" id="35"><div> 673 <div class="slide" id="35"><div>
674 <section> 674 <section>
675 <header> 675 <header>
676 <h1 id="alice1---corba">Aliceと他言語等との比較(3) - Corba</h1> 676 <h1 id="alice1---corba">Aliceと他言語等との比較(3) - CORBA</h1>
677 </header> 677 </header>
678 <!-- _S9SLIDE_ --> 678 <!-- _S9SLIDE_ -->
679 679
680 <ul> 680 <ul>
681 <li> 681 <li>
682 <p>オブジェクト間のRPC仕様</p> 682 <p>オブジェクト間のRPC仕様</p>
683 </li> 683 </li>
684 <li>DSがない。keyという概念がない。</li> 684 <li>DSがない。keyという概念がない。</li>
685 <li>同期呼び出し・非同期呼び出しが選択できるが、データの待ち合わせがない</li> 685 <li>データの待ち合わせがない</li>
686 </ul> 686 </ul>
687 687
688 688
689 689
690 </section> 690 </section>
696 <h1 id="alice1---http">Aliceと他言語等との比較(4) - HTTP</h1> 696 <h1 id="alice1---http">Aliceと他言語等との比較(4) - HTTP</h1>
697 </header> 697 </header>
698 <!-- _S9SLIDE_ --> 698 <!-- _S9SLIDE_ -->
699 699
700 <ul> 700 <ul>
701 <li>get/putで通信を行う。get/putをRPC的に扱わず、getで取得しputで保存するRESTfulアーキテクチャ。</li> 701 <li>get/putで通信を行うRESTfulアーキテクチャ</li>
702 <li> 702 <li>
703 <p>URLがデータベースのkeyとなる</p> 703 <p>URLがデータベースのkeyとなる</p>
704 </li> 704 </li>
705 <li>MIME形式で送信。複数の表現を持つMeta Computationがない。 </li> 705 <li>MIME形式で送信。複数の表現を持つMeta Computationがない。 </li>
706 <li>セッション管理はクライアント自身がやる </li> 706 <li>セッション管理はクライアント自身がやる </li>