changeset 6:d8e6c20c509e default tip

fix paper
author KaitoMaeshiro <aosskaito@cr.ie.u-ryukyu.ac.jp>
date Thu, 17 Feb 2022 18:27:15 +0900
parents 5e7d125701c0
children
files paper/src/TestTake.cs paper/text/Eabstract.tex paper/text/Jabstract.tex paper/text/chapter2.tex paper/thesis.log paper/thesis.lol paper/thesis.pdf paper/thesis.synctex.gz paper/thesis.toc
diffstat 9 files changed, 58 insertions(+), 46 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/paper/src/TestTake.cs	Thu Feb 17 18:27:15 2022 +0900
@@ -0,0 +1,1 @@
+[Take] public string name;
\ No newline at end of file
--- a/paper/text/Eabstract.tex	Thu Feb 17 17:33:43 2022 +0900
+++ b/paper/text/Eabstract.tex	Thu Feb 17 18:27:15 2022 +0900
@@ -1,6 +1,6 @@
 Currently, distributed systems in the world are created by a specific company, which creates the distributed system, creates the nodes that use the service, and manages the connections between the nodes. We would like to develop a truly distributed system in which each distributed node is set up by itself and interconnected so that they are coordinated without a specific company controlling them.
 
-We would like to develop a truly distributed system in which distributed nodes are set up by each user and interconnected so that they can cooperate with each other. The distributed application Christie developed in this laboratory has the relation DGM+key to make this possible.
+In this case, we want to program distributed applications with good visibility. The distributed application Christie, developed in our laboratory, has a DGM+key relationship to make this possible.
 
 Currently, Christie\# is being developed by rewriting Christie to C\# for use with Unity in previous research\cite{riono}.
 
--- a/paper/text/Jabstract.tex	Thu Feb 17 17:33:43 2022 +0900
+++ b/paper/text/Jabstract.tex	Thu Feb 17 18:27:15 2022 +0900
@@ -1,6 +1,6 @@
 現在,世の中にある分散システムは特定の企業が分散システムを作成し,そのサービスを利用するノードの作成やノード間の接続の管理を行なっている.これらのような,特定の企業が支配を行わず,各自で分散ノードをそれぞれ立ち上げそこに協調されるように相互接続される真の分散システムの開発をしたい.
 
-その際,分散アプリケーションのプログラミングを見通しよく行いたい.本研究室で開発されている分散アプリケーションChristieはそれが可能となるようDGM+keyという関係性がある.
+その際,分散アプリケーションのプログラミングを見通しよく行いたい.当研究室で開発されている分散アプリケーションChristieはそれが可能となるようDGM+keyという関係性がある.
 
 現在,先行研究\cite{riono}でChristieをUnityで利用するべくC\#への書き換えを行いChristie\#の開発が行われている.Christie\#へのTopologyManagerの移植を通してChristieの分散アプリケーション開発法について学ぶ.
 
--- a/paper/text/chapter2.tex	Thu Feb 17 17:33:43 2022 +0900
+++ b/paper/text/chapter2.tex	Thu Feb 17 18:27:15 2022 +0900
@@ -88,6 +88,17 @@
 
 本研究では,こちらの先行研究で行われているChristieのC\#への書き換えに伴い,ChristieにあるTopologyManagerの移植を行いながら分散アプリケーションの開発法を学ぶ.
 
+\section{Christie\#のDebug}
+Java言語で開発されているChristieではVScode\cite{VScode}またはIntellij\cite{Intellij}を用いて環境を構築し開発を行なっていた.本研究ではC\#でChristieのTopologyManagerを構築するためC\#を扱えるIDEを利用する必要がある.
+
+ここで,Christie\#のDebug環境としてJetbrainsのC\#向けIDEであるRiderを利用する\cite{Rider}.元々Christie\#はUnityで利用する目的で開発が行われているため,Unityのサポートが多く組み込まれているRiderを利用することとなった.しかし,Riderではマルチスレッドのデバッグが行えないという欠点がある.そのため,デバッグを行う際は処理を行う場所にprint文を挿入しながら確認していく手法がとられた.
+
+\section{Christie\#へのプログラム書き換え例}
+以下のソースコード\ref{StartHelloWorld},\ref{HelloWorldCG}は,ソースコード\ref{hello_1},\ref{hello_2}をChristie\#上で動作させるべくJava言語で書かれたものをC\#へ書き換えを行なったものである.ソースコード自体は"HelloWorld"を出力するだけのもののためjavaとの違いは少ない.ここでの大きな違いはソースコード\ref{HelloWorldCG}の7行目である.C\#で扱えるようにannotationの構文が変わりattributeが利用されている.
+\lstinputlisting[caption=StartHelloWorld.cs,label=StartHelloWorld]{src/StartHelloWorld.cs}
+
+\lstinputlisting[caption=HelloWorldCG.cs,label=HelloWorldCG]{src/HelloWorldCG.cs}
+
 
 \clearpage
 \chapter{Christie\#へのTopologyManagerの実装}
@@ -97,7 +108,7 @@
 
 \section{TopologyManagerの移植方法}
 ChristieのTopologyManagerを移植する際に関しては,JavaとC\#は記述方法が似ているためある程度の
- コードはそのまま流用が可能である.そこからC\#で利用できるような構文へ書き換えを行い対応していく.
+ コードはそのまま流用が可能である.また,利用されているAPIも名称が違うだけで内容が同じものが多く実装されているため,動作の確認を行いながら移植をする.そこからC\#で利用できるような構文へ書き換えを行い対応していく.
  
  
  \section{C\#でのannotation}
@@ -106,6 +117,10 @@
  
  \lstinputlisting[caption=C\#におけるTake annotation,label=Take.cs]{src/Take.cs}
  
+ プログラムにおけるTake attributeの利用方法としては,以下のソースコード\ref{TestTake.cs}のように変数の宣言前に[Take]と宣言することで利用できる.
+ 
+  \lstinputlisting[caption=Take attributeの例,label=TestTake.cs]{src/TestTake.cs}
+ 
  
  \section{MessagePackの相違点}
 Christieではデータの送信をする際にMessagePackを利用しデータ圧縮を行い送信している.java言語の方で使用されているMessagePackはバージョンが古い.そのためMessagePackの最新版とは記述方法が異なっている.ソースコードより抜粋し簡単な説明を行う.
@@ -118,26 +133,14 @@
 \lstinputlisting[caption=C\#におけるMessagePack,label=MessagePack.cs]{src/MessagePack.cs}
 
 
-\section{Christie\#へのプログラム書き換え例}
-以下のソースコード\ref{StartHelloWorld},\ref{HelloWorldCG}は,\ref{hello_1},\ref{hello_2}をChristie\#上で動作させるべく変換を行なったものである.ソースコード自体は"HelloWorld"を出力するだけのもののためjavaとの違いは少ない.ここでの大きな違いはソースコード\ref{HelloWorldCG}7行目である.ソースコード\ref{Take.cs}で説明した通りC\#でりようできるようannotationの構文が変わっている.
-\lstinputlisting[caption=StartHelloWorld.cs,label=StartHelloWorld]{src/StartHelloWorld.cs}
-
-\lstinputlisting[caption=HelloWorldCG.cs,label=HelloWorldCG]{src/HelloWorldCG.cs}
-
-
-\section{Christie\#のDebug}
-Java言語で開発されているChristieではVScode\cite{VScode}またはIntellij\cite{Intellij}を用いて環境を構築し開発を行なっていた.本研究ではC\#でChristieのTopologyManagerを構築するためC\#を扱えるIDEを利用する必要がある.
-
-ここで,Christie\#のDebug環境としてJetbrainsのC\#向けIDEであるRiderを利用する\cite{Rider}.元々Christie\#はUnityで利用する目的で開発が行われているため,Unityのサポートが多く組み込まれているRiderを利用することとなった.しかし,Riderではマルチスレッドデバッグが行えないという欠点がある.
-
-
-
 \section{動的なTree型Topology接続のテスト}
 
 ここではTopologyManagerの接続のテストを行うため,Tree型のTopologyを形成し複数のnodeから動的な接続を行う.
 
 TopologyManagerとTopologyNodeを起動し接続待機をおこなう.ここではTree型の接続を行い接続されるノード数は3つでおこなっている.以下図\ref{fig3}ではその関係性を簡単にまとめたものである.現時点ではTopologyManagerとTopologyNodeを起動し,TopologyManagerとTopologyNodeの接続は行われている.しかし,TopologyNodeノード同士の相互接続の部分と計算を終了しTopologyManagerを終了する部分はまだ実装ができていない状況である.
 
+\clearpage
+
 \begin{figure}[htbp]
   \begin{center}
    \includegraphics[width=100mm]{./figs/tree.png}
@@ -146,6 +149,7 @@
    \end{center}
 \end{figure}
 
+
 \lstinputlisting[caption=StartTreeTestTopology.cs,label=StartTreeTestTopology]{src/StartTreeTestTopology.cs}
 
 
--- a/paper/thesis.log	Thu Feb 17 17:33:43 2022 +0900
+++ b/paper/thesis.log	Thu Feb 17 18:27:15 2022 +0900
@@ -1,4 +1,4 @@
-This is e-pTeX, Version 3.141592653-p3.9.0-210218-2.6 (utf8.euc) (TeX Live 2021) (preloaded format=platex 2022.1.27)  17 FEB 2022 17:28
+This is e-pTeX, Version 3.141592653-p3.9.0-210218-2.6 (utf8.euc) (TeX Live 2021) (preloaded format=platex 2022.1.27)  17 FEB 2022 18:25
 entering extended mode
  restricted \write18 enabled.
  file:line:error style messages enabled.
@@ -360,12 +360,13 @@
 [6
 
 
-]
+] (./src/StartHelloWorld.cs) (./src/HelloWorldCG.cs) [7]
 第3章
-(./src/Take.java [7
+[8
 
 
-]) (./src/Take.cs) (./src/MessagePack.java
+] (./src/Take.java) (./src/Take.cs) (./src/TestTake.cs)
+(./src/MessagePack.java
 LaTeX Font Info:    Font shape `JT1/mc/m/it' in size <9> not available
 (Font)              Font shape `JT1/mc/m/n' tried instead on input line 1.
 LaTeX Font Info:    Font shape `JT1/mc/m/n' will be
@@ -374,12 +375,13 @@
 (Font)              Font shape `JY1/mc/m/n' tried instead on input line 1.
 LaTeX Font Info:    Font shape `JY1/mc/m/n' will be
 (Font)              scaled to size 8.64899pt on input line 1.
-)
-(./src/MessagePack.cs [8]) (./src/StartHelloWorld.cs) (./src/HelloWorldCG.cs
-[9])
+ [9]) (./src/MessagePack.cs) [10]
 File: ./figs/tree.png Graphic file (type bmp)
 <./figs/tree.png>
- (./src/StartTreeTestTopology.cs [10] [11]) [12]
+
+(./src/StartTreeTestTopology.cs [11
+
+]) [12]
 第4章
 ) [13
 
@@ -395,14 +397,18 @@
 
 
 ] (./thesis.aux (./text/chapter2.aux)
-(./text/reference.aux)) ) 
+(./text/reference.aux))
+
+LaTeX Warning: Label(s) may have changed. Rerun to get cross-references right.
+
+ ) 
 Here is how much of TeX's memory you used:
- 4097 strings out of 479466
- 55407 string characters out of 5870548
- 642918 words of memory out of 5000000
- 21701 multiletter control sequences out of 15000+600000
+ 4102 strings out of 479466
+ 55475 string characters out of 5870548
+ 647918 words of memory out of 5000000
+ 21703 multiletter control sequences out of 15000+600000
  417320 words of font info for 93 fonts, out of 8000000 for 9000
  934 hyphenation exceptions out of 8191
  83i,12n,88p,693b,1993s stack positions out of 5000i,500n,10000p,200000b,80000s
 
-Output written on thesis.dvi (21 pages, 52204 bytes).
+Output written on thesis.dvi (21 pages, 53444 bytes).
--- a/paper/thesis.lol	Thu Feb 17 17:33:43 2022 +0900
+++ b/paper/thesis.lol	Thu Feb 17 18:27:15 2022 +0900
@@ -1,10 +1,11 @@
 \contentsline {lstlisting}{\numberline {1.1}HelloWorld.java}{3}{}%
 \contentsline {lstlisting}{\numberline {1.2}HelloWorldCG.java}{4}{}%
 \contentsline {lstlisting}{\numberline {1.3}dotファイルの例}{4}{}%
-\contentsline {lstlisting}{\numberline {3.1}Java言語におけるTake annotation}{7}{}%
-\contentsline {lstlisting}{\numberline {3.2}C\#におけるTake annotation}{8}{}%
-\contentsline {lstlisting}{\numberline {3.3}Java言語におけるMessagePack}{8}{}%
-\contentsline {lstlisting}{\numberline {3.4}C\#におけるMessagePack}{9}{}%
-\contentsline {lstlisting}{\numberline {3.5}StartHelloWorld.cs}{9}{}%
-\contentsline {lstlisting}{\numberline {3.6}HelloWorldCG.cs}{9}{}%
-\contentsline {lstlisting}{\numberline {3.7}StartTreeTestTopology.cs}{11}{}%
+\contentsline {lstlisting}{\numberline {2.1}StartHelloWorld.cs}{7}{}%
+\contentsline {lstlisting}{\numberline {2.2}HelloWorldCG.cs}{7}{}%
+\contentsline {lstlisting}{\numberline {3.1}Java言語におけるTake annotation}{9}{}%
+\contentsline {lstlisting}{\numberline {3.2}C\#におけるTake annotation}{9}{}%
+\contentsline {lstlisting}{\numberline {3.3}Take attributeの例}{9}{}%
+\contentsline {lstlisting}{\numberline {3.4}Java言語におけるMessagePack}{9}{}%
+\contentsline {lstlisting}{\numberline {3.5}C\#におけるMessagePack}{10}{}%
+\contentsline {lstlisting}{\numberline {3.6}StartTreeTestTopology.cs}{11}{}%
Binary file paper/thesis.pdf has changed
Binary file paper/thesis.synctex.gz has changed
--- a/paper/thesis.toc	Thu Feb 17 17:33:43 2022 +0900
+++ b/paper/thesis.toc	Thu Feb 17 18:27:15 2022 +0900
@@ -5,14 +5,14 @@
 \contentsline {section}{\numberline {1.4}TopologyManager}{4}{}%
 \contentsline {chapter}{\numberline {第2章}Christie\#}{6}{}%
 \contentsline {section}{\numberline {2.1}先行研究の紹介}{6}{}%
-\contentsline {chapter}{\numberline {第3章}Christie\#へのTopologyManagerの実装}{7}{}%
-\contentsline {section}{\numberline {3.1}TopologyManagerの必要性}{7}{}%
-\contentsline {section}{\numberline {3.2}TopologyManagerの移植方法}{7}{}%
-\contentsline {section}{\numberline {3.3}C\#でのannotation}{7}{}%
-\contentsline {section}{\numberline {3.4}MessagePackの相違点}{8}{}%
-\contentsline {section}{\numberline {3.5}Christie\#へのプログラム書き換え例}{9}{}%
-\contentsline {section}{\numberline {3.6}Christie\#のDebug}{10}{}%
-\contentsline {section}{\numberline {3.7}動的なTree型Topology接続のテスト}{10}{}%
+\contentsline {section}{\numberline {2.2}Christie\#のDebug}{6}{}%
+\contentsline {section}{\numberline {2.3}Christie\#へのプログラム書き換え例}{7}{}%
+\contentsline {chapter}{\numberline {第3章}Christie\#へのTopologyManagerの実装}{8}{}%
+\contentsline {section}{\numberline {3.1}TopologyManagerの必要性}{8}{}%
+\contentsline {section}{\numberline {3.2}TopologyManagerの移植方法}{8}{}%
+\contentsline {section}{\numberline {3.3}C\#でのannotation}{8}{}%
+\contentsline {section}{\numberline {3.4}MessagePackの相違点}{9}{}%
+\contentsline {section}{\numberline {3.5}動的なTree型Topology接続のテスト}{10}{}%
 \contentsline {chapter}{\numberline {第4章}まとめ}{13}{}%
 \contentsline {section}{\numberline {4.1}今後の課題}{13}{}%
 \contentsline {chapter}{参考文献}{15}{}%