# HG changeset patch # User mir3636 # Date 1523609263 -32400 # Node ID 06a21764be009c08fecc60b997bc5df8c8470c75 # Parent 7bd5cef51b2122e6498c32db2a8f50a852ac5ee5 fix diff -r 7bd5cef51b21 -r 06a21764be00 Paper/sigos.tex --- a/Paper/sigos.tex Fri Apr 13 17:37:25 2018 +0900 +++ b/Paper/sigos.tex Fri Apr 13 17:47:43 2018 +0900 @@ -291,8 +291,6 @@ \label{fig:gearsos} \end{figure} -%Gears OS には Context と呼ばれる接続可能な Code Gear、Data Gear のリスト、Temporal Data Gear のためのメモリ空間等を持っている Meta Data Gear を持つ。 -%Gears OS は必要な Code Gear、Data Gear に参照したい場合、この Context を通す必要がある。 Code\ref{context} は Context の定義で Code\ref{initcontext} は Context の生成である。 \lstinputlisting[caption=Contextの定義, label=context]{./src/context1.c} @@ -301,7 +299,6 @@ Data Gear は union と struct によって表現される。 Context には Data Gear の Data Type の情報が格納されている。 この情報から確保する Data Gear のサイズなどを決定する。 -%Temporal Data Gear のためのメモリ空間は Context 毎に異なり、互いに干渉することはできない。 Context は Task でもあり、Taskは通常のOSのスレッドに対応する。 Task は実行する Code Gear と Data Gear をすべて持っている。 @@ -322,7 +319,6 @@ Code\ref{implement}は stack の Implement の例である。 createImpl は関数呼び出しで呼び出され、Implement の初期化と Code Gear のスロットに対応する Code Gear の番号を入れる。 -%return で interface を返し、その先で Code Gear や Data Gear へ継続できるようになる。 \lstinputlisting[label=implement, caption=SingleLinkedStackのImplement]{./src/stackimpl.cbc} @@ -361,7 +357,7 @@ 取得した Code Gear、Data Gear の enum の定義は enumCode.h、enumData.h に生成される。 Code/Data Gear の名前とポインタの対応は generate\_context によって生成される enum Code、enum Data を指定することで接続を行う。 -また、generate context は取得した Code/Data Gear から Context の生成を行うコード (Code\ref{init_context}) も生成する。 +また、generate context は取得した Code/Data Gear から initContext の生成も行う。 Context には Allocation 等で生成した Data Gear へのポインタが格納されている。 Code Gear は Context を通して Data Gear へアクセスする。