changeset 3:f126e8e89573

up
author mir3636
date Tue, 18 Apr 2017 18:06:39 +0900
parents 39aeddde8be2
children fd019b8f2781
files paper/sigos.dvi paper/sigos.log paper/sigos.pdf paper/sigos.tex
diffstat 4 files changed, 9 insertions(+), 6 deletions(-) [+]
line wrap: on
line diff
Binary file paper/sigos.dvi has changed
--- a/paper/sigos.log	Sat Apr 15 19:14:30 2017 +0900
+++ b/paper/sigos.log	Tue Apr 18 18:06:39 2017 +0900
@@ -1,4 +1,4 @@
-This is e-pTeX, Version 3.14159265-p3.7-160201-2.6 (utf8.euc) (TeX Live 2016) (preloaded format=platex 2017.2.4)  15 APR 2017 15:03
+This is e-pTeX, Version 3.14159265-p3.7-160201-2.6 (utf8.euc) (TeX Live 2016) (preloaded format=platex 2017.2.4)  18 APR 2017 18:06
 entering extended mode
  restricted \write18 enabled.
  %&-line parsing enabled.
@@ -206,4 +206,4 @@
  929 hyphenation exceptions out of 8191
  30i,10n,49p,213b,230s stack positions out of 5000i,500n,10000p,200000b,80000s
 
-Output written on sigos.dvi (3 pages, 19096 bytes).
+Output written on sigos.dvi (3 pages, 19104 bytes).
Binary file paper/sigos.pdf has changed
--- a/paper/sigos.tex	Sat Apr 15 19:14:30 2017 +0900
+++ b/paper/sigos.tex	Tue Apr 18 18:06:39 2017 +0900
@@ -151,15 +151,15 @@
 
 \section{Gearef、GearImpl}
 Context には Allocation 等で生成した Data Gear へのポインタが格納されている。
-Code Gear が Context にアクセスする際、ポインタを使用してデータを取り出すためコードが煩雑になってしまう。
+Code Gear が Context にアクセスする際、ポインタを使用してデータを取り出すため、コードが煩雑になってしまう。
 そこで Code Gear がデータを参照するための Gearef というマクロを定義した。
 Gearef に Context と型を渡すことでデータの参照が行える。
 また impliment のデータを参照する際も、ポインタでの記述が複雑になってしまうため 同様に GearImpl を定義した。
 GearImpl は Context と interface 名、interface の変数名を指定して参照する。
 
 \section{stub Code Gear}
-Code Gear が必要とする Data Gear を取り出す際に Context を通す必要がある。
-しかし、Context を直接扱うのはセキュリティ上好ましくない。
+Code Gear が必要とする Data Gear を取り出す際に Context を通す必要があるが、
+Context を直接扱うのはセキュリティ上好ましくない。
 そこで Context から必要なデータを取り出して Code Gear に接続する stub Code Gear を定義し、これを介して間接的に必要な Data Gear にアクセスする。
 stub Code Gear は Code Gear 毎に生成され、次の Code Gear へと継続する間に挟まれる。
 
@@ -170,7 +170,7 @@
 
 \section{stub Code Segment の生成}
 stub Code Gear は Code Gear 間の継続に挟まれる Code Gear が必要な Data Gear を Context から取り出す処理を行うものである。
-stub Code Gear は Code Gear 毎に記述する必要があり、そのCode Gear の引数を見て取り出す Data Gear を選択する。
+Code Gear 毎に記述する必要があり、そのCode Gear の引数を見て取り出す Data Gear を選択する。
 stub Code Gear を 自動生成することによって Code Gear の記述量を約半分にすることができる。
 
 stub を生成するために generate\_stub は指定された cbc ファイルの \_\_code型である Code Gear を取得し、引数から必要な Data Gear を選択する。
@@ -200,6 +200,9 @@
 \section{今後の課題}
 本研究では LLVM/Clang のデバッグ、interface の記述、CbC ファイルから Gears OS の記述に必要な Context と stub の生成を行う perl スクリプトの生成を行なった。
 これにより Gears OS のコードの煩雑さは改善され、ユーザーは Context への接続を意識する必要がなくなった。
+
+%しかし、現在のスクリプトでは stub 
+
 今後の課題は Code Gear からメタ計算を行う meta Code Gear を生成できるようにし、ユーザーがメタレベルの処理を意識せずにコードを記述できるようにする。
 また、今回 perl スクリプトによって Context や stub の生成を行なったが、LLVM/clang 上で実装しコンパイラで直接 CbC を実行できるようにすることを目的とする。