changeset 78:4ebaa7322c4d

...
author anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
date Thu, 04 Feb 2021 21:30:59 +0900
parents d50a39e6e6a7
children 3022da6f729f
files paper/chapter/04-interface.tex paper/master_paper.pdf
diffstat 2 files changed, 16 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/paper/chapter/04-interface.tex	Thu Feb 04 20:31:27 2021 +0900
+++ b/paper/chapter/04-interface.tex	Thu Feb 04 21:30:59 2021 +0900
@@ -108,6 +108,22 @@
 
 
 \section{Interfaceのパーサーの構築}
+従来のGearsOSのトランスコンパイラでは、 generate\_stub.plがInterfaceファイルを開き、情報を解析していた。
+この情報解析はgetDataGear関数で行われていた。
+しかしこの関数は、CbCファイルのCodeGear、DataGearの解析で使用するルーチンと同じものである。
+従って、 Interface特有のパースが出来ていなかった。
+
+例えば開いたヘッダファイルがInterfaceのファイルでも、そうでないCのヘッダファイルでも同様の解析をしてしまう。
+Interfaceの定義ファイルの構文はすでに統一されたものを使用している。
+この構文で実装されていないInterfaceファイルを読み込んだ場合は、 エラーとして処理したい。
+また、Interfaceが満たすべきCodeGearの種類やInputDataGearの数の管理も行いたい。
+さらにInterfaceではなく、Implementの定義ファイルも同様にパースし、情報を解析したい。
+
+これらを実現するには、最初からInterfaceに特化したパーサーが必要となる。
+本研究ではGears::Interfaceモジュールとして実装した。
+
+\subsection{Gears::Interfaceの構成}
+
 
 \section{Interfaceの実装のCbCファイルへの構文の導入}
 
Binary file paper/master_paper.pdf has changed