Mercurial > hg > Papers > 2017 > tobaru-midterm
changeset 5:b6f090b584d9
fix
author | tobaru |
---|---|
date | Thu, 26 Oct 2017 16:17:12 +0900 |
parents | 60c70a8742d2 |
children | 8db7c6f42422 |
files | mid_thesis.aux mid_thesis.dvi mid_thesis.log mid_thesis.pdf mid_thesis.tex |
diffstat | 5 files changed, 7 insertions(+), 13 deletions(-) [+] |
line wrap: on
line diff
--- a/mid_thesis.aux Thu Oct 26 15:43:58 2017 +0900 +++ b/mid_thesis.aux Thu Oct 26 16:17:12 2017 +0900 @@ -15,7 +15,6 @@ \@writefile{toc}{\contentsline {section}{\numberline {5}Raspberry Pi 上での実装}{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{toc}{\contentsline {section}{\numberline {8}clang のバージョンアップ}{2}} \@writefile{lof}{\contentsline {figure}{\numberline {2}{\ignorespaces clang による コンパイル}}{2}} \newlabel{fig:cs}{{2}{2}}
--- a/mid_thesis.log Thu Oct 26 15:43:58 2017 +0900 +++ b/mid_thesis.log Thu Oct 26 16:17:12 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) 26 OCT 2017 15:25 +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 16:14 entering extended mode restricted \write18 enabled. %&-line parsing enabled. @@ -213,4 +213,4 @@ 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, 12056 bytes). +Output written on mid_thesis.dvi (2 pages, 12136 bytes).
--- a/mid_thesis.tex Thu Oct 26 15:43:58 2017 +0900 +++ b/mid_thesis.tex Thu Oct 26 16:17:12 2017 +0900 @@ -68,18 +68,13 @@ \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 できるコンパイラを書く必要がある。 +arm-linux-gnueabihf-gcc を使用し、C で書かれたファイルを CrossCompile することで ARM のコードを生成できる事を確認した。CbC でも CrossCompile できるコンパイラを書く必要がある。 \section{仮装マシン} -別の手法として、仮装マシン上での実装がある。\\ -linux 上で実装した後に Raspberry pi に linux の kernel を移植する事で CbC を動かす方法がある。llvm を動かす際に、オプションで target を指定する事で、ARM の -linux 用の gcc を CbC に書き直す際に、gcc7 に書き直せば linker がそのまま使えるので、xv6 で動くようになる。 - - - - -\section{xv6} +CrossCompile と別に linux 環境で CbC を動かした後に、Raspberry Pi に載せる手法がある +LLVM を動かす際に、オプションで target を指定する事で、ARM のコードを生成することができる。\\ +linux 用の gcc を CbC に書き直す際に、gcc7 に書き直せば linker がそのまま使えるので、xv6 で動くようになる。\\ xv6とは、マサチューセッツ工科大の大学院生向け講義の教材として使うために、UNIX V6 という OS を ANSI-C に書き換え、x86に移植した OS である。 xv6 は Raspberry Pi に移植する事ができる。ANSI-C で書かれている xv6 を CbC に書き直す事で、Raspberry Pi で CbC を動かせるようになる。