changeset 2:69c1099f7849

図追加そのた修正
author tobaru
date Thu, 26 Oct 2017 14:36:53 +0900
parents 6508682e0d51
children 3df1de13661e
files mid_thesis.aux mid_thesis.bbl mid_thesis.blg mid_thesis.dvi mid_thesis.log mid_thesis.pdf mid_thesis.tex reference.bib
diffstat 8 files changed, 94 insertions(+), 57 deletions(-) [+]
line wrap: on
line diff
--- a/mid_thesis.aux	Wed Oct 25 18:46:44 2017 +0900
+++ b/mid_thesis.aux	Thu Oct 26 14:36:53 2017 +0900
@@ -10,10 +10,12 @@
 \bibdata{reference}
 \bibcite{kaito:2015}{1}
 \bibcite{gears}{2}
-\bibcite{llvm}{3}
-\@writefile{lof}{\contentsline {figure}{\numberline {2}{\ignorespaces Gears OS の構成図}}{2}}
-\newlabel{fig:gearsos}{{2}{2}}
+\bibcite{kokubo:2016}{3}
+\bibcite{llvm}{4}
 \@writefile{toc}{\contentsline {section}{\numberline {5}Raspberry Pi 上での実装}{2}}
-\@writefile{toc}{\contentsline {section}{\numberline {6}xv6}{2}}
-\@writefile{toc}{\contentsline {section}{\numberline {7}LLVM CrossCompile}{2}}
-\@writefile{toc}{\contentsline {section}{\numberline {8}clang のバージョンアップ}{2}}
+\@writefile{toc}{\contentsline {section}{\numberline {6}LLVM CrossCompile}{2}}
+\@writefile{toc}{\contentsline {section}{\numberline {7}仮装マシン}{2}}
+\@writefile{toc}{\contentsline {section}{\numberline {8}xv6}{2}}
+\@writefile{toc}{\contentsline {section}{\numberline {9}clang のバージョンアップ}{2}}
+\@writefile{lof}{\contentsline {figure}{\numberline {2}{\ignorespaces clang による コンパイル}}{2}}
+\newlabel{fig:cs}{{2}{2}}
--- a/mid_thesis.bbl	Wed Oct 25 18:46:44 2017 +0900
+++ b/mid_thesis.bbl	Thu Oct 26 14:36:53 2017 +0900
@@ -8,6 +8,10 @@
 {伊波立樹, 東恩納琢偉, 河野真治}.
 \newblock Code gear、data gear に基づく os のプロトタイプ, 2016.
 
+\bibitem{kokubo:2016}
+{小久保翔平, 河野真治}.
+\newblock Code segment と data segment を持つ gears os の設計, 2016.
+
 \bibitem{llvm}
 {The LLVM Compiler Infrastructure}.
 \newblock \url{http://llvm.org}.
--- a/mid_thesis.blg	Wed Oct 25 18:46:44 2017 +0900
+++ b/mid_thesis.blg	Thu Oct 26 14:36:53 2017 +0900
@@ -3,45 +3,45 @@
 The top-level auxiliary file: mid_thesis.aux
 The style file: junsrt.bst
 Database file #1: reference.bib
-You've used 3 entries,
+You've used 4 entries,
             2270 wiz_defined-function locations,
-            551 strings with 4408 characters,
-and the built_in function-call counts, 503 in all, are:
-= -- 24
-> -- 12
+            554 strings with 4492 characters,
+and the built_in function-call counts, 665 in all, are:
+= -- 32
+> -- 16
 < -- 0
-+ -- 6
-- -- 3
-* -- 4
-:= -- 63
-add.period$ -- 6
-call.type$ -- 3
-change.case$ -- 2
++ -- 8
+- -- 4
+* -- 5
+:= -- 81
+add.period$ -- 8
+call.type$ -- 4
+change.case$ -- 3
 chr.to.int$ -- 0
-cite$ -- 3
-duplicate$ -- 33
-empty$ -- 73
-format.name$ -- 6
-if$ -- 121
+cite$ -- 4
+duplicate$ -- 44
+empty$ -- 97
+format.name$ -- 8
+if$ -- 161
 int.to.chr$ -- 0
-int.to.str$ -- 3
+int.to.str$ -- 4
 missing$ -- 0
-newline$ -- 15
-num.names$ -- 3
-pop$ -- 34
+newline$ -- 19
+num.names$ -- 4
+pop$ -- 46
 preamble$ -- 1
 purify$ -- 0
 quote$ -- 0
-skip$ -- 32
+skip$ -- 42
 stack$ -- 0
 substring$ -- 0
-swap$ -- 3
+swap$ -- 4
 text.length$ -- 0
 text.prefix$ -- 0
 top$ -- 0
 type$ -- 0
 warning$ -- 0
-while$ -- 3
-width$ -- 4
-write$ -- 25
-is.kanji.str$ -- 21
+while$ -- 4
+width$ -- 5
+write$ -- 33
+is.kanji.str$ -- 28
Binary file mid_thesis.dvi has changed
--- a/mid_thesis.log	Wed Oct 25 18:46:44 2017 +0900
+++ b/mid_thesis.log	Thu Oct 26 14:36:53 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.5.28)  25 OCT 2017 18:44
+This is e-pTeX, Version 3.14159265-p3.7-160201-2.6 (utf8.euc) (TeX Live 2016) (preloaded format=platex 2017.5.28)  26 OCT 2017 13:58
 entering extended mode
  restricted \write18 enabled.
  %&-line parsing enabled.
@@ -140,7 +140,11 @@
 LaTeX Warning: Unused global option(s):
     [9.5pt].
 
-(./mid_thesis.aux)
+(./mid_thesis.aux
+
+LaTeX Warning: Label `fig:cs' multiply defined.
+
+)
 \openout1 = `mid_thesis.aux'.
 
 LaTeX Font Info:    Checking defaults for OML/cmm/m/it on input line 24.
@@ -177,8 +181,6 @@
 
 File: pic/codesegment.pdf Graphic file (type pdf)
 <pic/codesegment.pdf>
-File: pic/gearsos.pdf Graphic file (type pdf)
- <pic/gearsos.pdf>
 File: pic/emblem-bitmap.pdf Graphic file (type pdf)
  <pic/emblem-bitmap.pdf>
 
@@ -190,19 +192,25 @@
 [1
 
 
-] (./mid_thesis.bbl
+]
+File: pic/compiler.pdf Graphic file (type pdf)
+ <pic/compiler.pdf> (./mid_thesis.bbl
+LaTeX Font Info:    External font `cmex10' loaded for size
+(Font)              <7> on input line 17.
 LaTeX Font Info:    External font `cmex10' loaded for size
-(Font)              <7> on input line 13.
-LaTeX Font Info:    External font `cmex10' loaded for size
-(Font)              <5> on input line 13.
-) [2] (./mid_thesis.aux) ) 
+(Font)              <5> on input line 17.
+) [2] (./mid_thesis.aux)
+
+LaTeX Warning: There were multiply-defined labels.
+
+ ) 
 Here is how much of TeX's memory you used:
  1194 strings out of 493693
- 14646 string characters out of 6149787
+ 14649 string characters out of 6149787
  80544 words of memory out of 5000000
  4772 multiletter control sequences out of 15000+600000
  13256 words of font info for 52 fonts, out of 8000000 for 9000
  929 hyphenation exceptions out of 8191
  27i,15n,43p,530b,367s stack positions out of 5000i,500n,10000p,200000b,80000s
 
-Output written on mid_thesis.dvi (2 pages, 10392 bytes).
+Output written on mid_thesis.dvi (2 pages, 12124 bytes).
Binary file mid_thesis.pdf has changed
--- a/mid_thesis.tex	Wed Oct 25 18:46:44 2017 +0900
+++ b/mid_thesis.tex	Thu Oct 26 14:36:53 2017 +0900
@@ -57,34 +57,49 @@
   Code Gear はプログラムの処理そのものであり、任意の数の Data Gear を参照し、処理が完了すると任意の数の Data Gear に書き込む。Code Gear は接続された Data Gear 以外にアクセスできない。Code Segment と同じように Code Gear から次の Code Gear への処理の移動は goto の後に Code Gear の名前と引数を指定する事で実現できる。
   Data Gear はデータそのものを表す。int や 文字列などの Primitive Data Type を持っている。Gear の特徴として処理やデータの構造が Code Gear、Data Gear に閉じている事にある。これにより、実行時間、メモリ使用量などを予測可能なものにすることができる。
 
-\begin{figure}[htpb]
-    \begin{center}
-        \scalebox{0.2}{\includegraphics{pic/gearsos.pdf}}
-    \end{center}
-    \caption{Gears OS の構成図}
-    \label{fig:gearsos}
-\end{figure}
-
 \section{Context}
   接続可能な Code Gear、Data Gear のリスト、Temporal Data Gear 等のためのメモリ空間を持っており、Context を通してアクセスすることができる。Context にはメインとなる Context と Worker 用の Context がある。Temporal Data Gear のためのメモリ空間は Context 毎に異なり、互いに干渉する事はできない。
 
 \section{Raspberry Pi 上での実装}
 本研究では、ARM で動くシングルボードコンピュータである Raspberry Pi 上で Gears OS を動かせるようになる事で、ハードウェア上でも信頼性があり、並列実行ができるプログラミングを を記述できるようになる事を目指している。\\
+  Raspberry Pi の OS である Raspbian ではメモリが 256MB なので Raspberry Pi 上で直接 CbC をコンパイルする事ができない。qemu によるメモリの拡張もできないので、別の手法で Raspberry Pi 上に CbC を実装する必要がある。
+
+
+\section{LLVM CrossCompile}
+Raspberri pi 上ではコンパイルするためのメモリが足りないので、OSX 上で CrossCompile する事でこの問題を解決する方法がある。\\
+  CrossCompile とは、別の OS で実行可能なコードを生成するコンパイルの手法である。つまり、OSX であらかじめ Raspberry Pi で CbC が動くように CrossCompile を行い、そのコードを Raspberry Pi に移せばよい。\\ 
+arm-linux-gnueabihf-gcc を使用し、C で書かれたファイルを CrossCompile することで ARM のコードを生成できる事を確認した。今後の課題として、CbC を CrossCompile できるコンパイラを書く必要がある。
+
+
+\section{仮装マシン}
+もう一つの手法として、仮装マシン上での実装がある。\\
+linux 上で実装した後に Raspberry pi に linux の kernel を移植する事で CbC を動かす方法がある。
+linux 用の gcc を CbC に書き直す際に、gcc7 に書き直せば linker がそのまま使えるので、xxv6 で動くようになる。
+
+
+
 
 \section{xv6}
   xv6とは、マサチューセッツ工科大の大学院生向け講義の教材として使うために、UNIX V6 という OS を ANSI-C に書き換え、x86に移植した OS である。
-xv6 を CbC に書き直す事で、Raspberry Pi で CbC を動かす。
+xv6 は Raspberry Pi に移植する事ができる。ANSI-C で書かれている xv6 を CbC に書き直す事で、Raspberry Pi で CbC を動かせるようになる。
+
 
-\section{LLVM CrossCompile}
-Raspberry Pi だとメモリが足りないため、LLVM をコンパイルする事ができない。OSX 上で CrossCimpile する事でこの問題を解決する。
-OSX 上でCrossCimpiler を行える arm-linux-gnueabihf をインストールし、そこに入っている arm-linux-gnueabihf-gcc を指定してコンパイルすることで arm のバイナリを出力することができる。
+% xv6詳しく
+
 
 \section{clang のバージョンアップ}
   CbC はバージョン 3.9 の clang を使用している。現在のバージョンの LLVM と clang を使用して、CbCをコンパイラできるように修正を加える必要がある。
 
+\begin{figure}[htpb]
+ \begin{center}
+  \scalebox{0.5}{\includegraphics{pic/compiler.pdf}}
+ \end{center}
+ \caption{clang による コンパイル}
+ \label{fig:cs}
+\end{figure}
 
 
-
+% cross compiler 実機 VM への実装を書く
 
 \nocite{*}
 \bibliographystyle{junsrt}
--- a/reference.bib	Wed Oct 25 18:46:44 2017 +0900
+++ b/reference.bib	Thu Oct 26 14:36:53 2017 +0900
@@ -12,7 +12,15 @@
   year = 2016
 }
 
+@Misc{kokubo:2016,
+  author = "{小久保翔平, 河野真治}",
+  title = "Code Segment と Data Segment を持つ Gears OS の設計",
+  year = 2016
+} 
+
 @Misc{llvm,
   author = "{The LLVM Compiler Infrastructure}",
   howpublished = "\url{http://llvm.org}"
 }
+
+