changeset 3:008ac0554ff5

add files
author akahori
date Tue, 05 Feb 2019 18:00:41 +0900
parents 7ef98431918d
children fc5b4b9489db
files christie implemented blockchain.xmind final_main/Makefile final_main/bibliography.tex final_main/chapter1/chapter1.tex final_main/chapter2/chapter2.tex final_main/chapter3/chapter3.tex final_main/chapter4/chapter4.tex final_main/chapter5/chapter5.tex final_main/chapter6/chapter6.tex final_main/fig/ryukyu.pdf final_main/main.tex final_main/mythesis.sty final_main/thanks.tex
diffstat 13 files changed, 525 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
Binary file christie implemented blockchain.xmind has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/final_main/Makefile	Tue Feb 05 18:00:41 2019 +0900
@@ -0,0 +1,90 @@
+# target and root file name
+TARGET = main
+
+# class files
+CLASS_FILE = 
+
+# figure pass
+FIG_DIR = ./fig
+
+# ebb or extractbb
+EBB = extractbb
+
+# dependent document files
+TEX_FILES = \
+    bibliography.tex \
+    chapter*.tex \
+    thanks.tex \
+
+# dependent image files
+SVG_FILES = 
+
+# use bibtex or not (yes|no)
+BIBTEX_ENABLED = no
+
+# commands to compile document
+LATEX = platex
+BIBTEX = pbibtex
+DVIPDF = dvipdfmx
+DVIPS = dvips
+
+# generated files
+DVI_FILE = $(TARGET).dvi
+PDF_FILE = $(TARGET).pdf
+PS_FILE = $(TARGET).ps
+TEX_FILES += $(TARGET).tex
+EPS_FILES = $(SVG_FILES:%.svg=%.eps)
+AUX_FILES = $(TEX_FILES:%.tex=%.aux)
+GENERATED_FILE = \
+    $(EPS_FILES) \
+    $(DVI_FILE) \
+    $(PDF_FILE) \
+    $(AUX_FILES) \
+    $(TARGET).log \
+    $(TARGET).toc \
+    $(TARGET).bbl \
+    $(TARGET).blg \
+    $(TARGET).lof \
+    $(TARGET).lol \
+    texput.log
+
+.DEFAULT_GOAL = pdf
+
+.PHONY : pdf
+pdf : $(PDF_FILE)
+				open $(TARGET).pdf
+$(PDF_FILE) : $(DVI_FILE) $(TEX_FILES) $(EPS_FILES) $(CLASS_FILE)
+	$(DVIPDF) $(TARGET)
+
+.PHONY : ps
+ps : $(PS_FILE)
+$(PS_FILE) : $(DVI_FILE) $(TEX_FILES) $(EPS_FILES) $(CLASS_FILE)
+	$(DVIPS) $(TARGET)
+
+.PHONY : dvi
+dvi : $(DVI_FILE)
+$(DVI_FILE) : $(TEX_FILES) $(EPS_FILES) $(CLASS_FILE)
+	$(LATEX) -halt-on-error $(TARGET)
+ifeq ($(BIBTEX_ENABLED),yes)
+	$(BIBTEX) $(TARGET)
+endif
+	$(LATEX) -halt-on-error $(TARGET)
+	$(LATEX) -halt-on-error $(TARGET)
+
+%.eps : %.svg
+	inkscape --export-area-drawing --without-gui --file="$<" --export-eps="$@"
+
+.PHONY : clean
+clean:
+	rm -f $(GENERATED_FILE)
+
+.PHONY : help
+help:
+	@echo "make dvi"
+	@echo "        Make DVI file from tex documents."
+	@echo "make pdf"
+	@echo "        Make PDF file from DVI file."
+	@echo "make ps"
+	@echo "        Make PS file from DVI file."
+	@echo "make clean"
+	@echo "        Remove all generated files."
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/final_main/bibliography.tex	Tue Feb 05 18:00:41 2019 +0900
@@ -0,0 +1,23 @@
+% 参考文献
+\def\line{−\hspace*{-.7zw}−}
+
+\begin{thebibliography}{99}
+%\bibitem{*}内の * は各自わかりやすい名前などをつけて、
+%論文中には \cite{*} のように使用する。
+%これをベースに書き換えた方が楽かも。
+%書籍、論文、URLによって若干書き方が異なる。
+%URLを載せる人は参考にした年月日を最後に記入すること。
+
+ \bibitem{1}
+
+% \bibitem{gears}
+% {伊波立樹, 東恩納琢偉, 河野真治}: Code Gear、Data Gear に基づく OS のプロトタイプ
+% , 情報処理学会システムソフトウェアとオペレーティング・システム研究会(OS) (2016).
+
+% \bibitem{llvm}
+% The LLVM Compiler Infrastructure. \\\verb|http://llvm.org|
+
+% \bibitem{llvm_ir}
+% LLVM Language Reference Manual. \\\verb|http://llvm.org/docs/LangRef.html|
+
+\end{thebibliography}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/final_main/chapter1/chapter1.tex	Tue Feb 05 18:00:41 2019 +0900
@@ -0,0 +1,19 @@
+\chapter{はじめに}
+\label{chap:introduction}
+\pagenumbering{arabic}
+
+% 序論の目安としては1枚半ぐらい.
+\section{研究背景}
+
+
+\section{研究目的}
+コンピュータにおいてデータの破損や不整合は深刻な異常を引き起こす原因となる. そのため, 破損, 不整合を検知するためにブロックチェーン技術を用いる.  ブロックチェーンは分散ネットワーク技術であり, データの破損や不整合をハッシュ値によって比較できる. そして, 誤操作や改ざんがあった場合でも, ブロックチェーンを用いることで簡単にデータの追跡が行える.
+
+当研究室では分散フレームワークとしてChristieを開発しており, これはGearsOSにファイルシステムとして組み込む予定がある. そのため, Christieにブロックチェーンを実装し, GearsOSに組み込むことにより, GearsOSのファイルシステムにおいてデータの破損, 不整合を検知できる. また, GearsOS同士による分散ファイルシステムを構成することができ, 非中央的にデータの検証ができるようになる. もし分散システムを構成しない場合でもデータの整合性保持は行え, 上記の目的は達成できる.
+
+本研究では, Christieにブロックチェーンを実装し, 分散環境で動かすことで, データの整合性保持, 追跡が行えるか確かめる.
+
+
+%\section{論文の構成}
+
+%\section{Introduction}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/final_main/chapter2/chapter2.tex	Tue Feb 05 18:00:41 2019 +0900
@@ -0,0 +1,11 @@
+\input{/Users/e155753/.tex/setup}
+
+%%文書開始****************************
+\begin{document} 
+%%**************************************
+\chapter{ブロックチェーンについて}
+
+ブロックチェーンとは分散型台帳技術とも呼ばれ, 複数のトランザクションをまとめたブロック, そのブロックをハッシュによってつなげ, 前後関係を表した台帳というものを, システムに参加しているすべてのノードが保持する技術である.
+
+%%文書終了****************************
+\end{document} 
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/final_main/chapter3/chapter3.tex	Tue Feb 05 18:00:41 2019 +0900
@@ -0,0 +1,3 @@
+\chapter{コンセンサスアルゴリズムについて}
+
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/final_main/chapter4/chapter4.tex	Tue Feb 05 18:00:41 2019 +0900
@@ -0,0 +1,56 @@
+\input{/Users/e155753/.tex/setup}
+
+%%文書開始****************************
+\begin{document} 
+%%**************************************
+\chapter{Christieについて}
+
+Christieは当研究室で開発している分散フレームワークである. Christieには分散プログラムを簡潔に書くための工夫が複数ある.
+本章ではChristieについて述べる.
+\section{Christieとは}
+ChristieはJavaで書かれた分散フレームワークである. Christieは当研究室で開発している GearsOSに組み込まれる予定がある. そのため, GearsOS を構成する言語 Continuation based C と似た概念がある. Christie に存在する概念として次のようなものがある.
+
+\begin{itemize}
+\item CodeGear(以下 CG)
+\item DataGear(以下 DG)
+\item CodeGearManager(以下 CGM)
+\item DataGearManager(以下 DGM)
+\end{itemize}
+
+CGはクラス, スレッドに相当し, javaの継承を用いて記述する. DGは変数データに相当し, CG内でアノテーションを用いて変数データを取り出せる. CGM はノードであり, DGM, CG, DG を管理する. DGM は DG を管理するものであり, put という操作により変数データ, つまり DG を格納できる.
+DGMのput操作を行う際にはLocalとRemoteと2つのどちらかを選び, 変数のkeyとデータを引数に書く. Localであれば,  Local のCGMが管理しているDGMに対し, DGを格納していく. Remoteであれば接続したRemote先の CGMのDGMにDGを格納できる. put操作を行ったあとは, 対象のDGMの中にqueueとして保管される. 
+DGを取り出す際には, CG内で宣言した変数データにアノテーションをつける. DGのアノテーションにはTake, Peek, TakeFrom, PeekFromの4つがある. 
+\begin{description}
+\item[Take] 先頭のDGを読み込み, そのDGを削除する. DGが複数ある場合, この動作を用いる.
+\item[Peek] 先頭のDGを読み込むが, DGが削除されない. そのため, 特に操作をしない場合は同じデータを参照し続ける. 
+\item[TakeFrom(Remote DGM name)] Takeと似ているが, Remote DGM nameを指定することで, その接続先(Remote)のDGMからTake操作を行える.
+\item[PeekFrom(Remote DGM name)] Peekと似ているが, Remote DGM nameを指定することで, その接続先(Remote)のDGMからPeek操作を行える.
+\end{description}
+
+以上が, Christieの概要である.
+
+\section{プログラミングの例}
+
+CGMを作り, setup(new CodeGear)を動かすことにより, DGを待ち合わせ, DGが揃った場合にCodeGearが実行される. CGMを作る方法はStartCodeGear(以下SCG)を継承したものからcreateCGM(port) methodを実行することにより, CGMが作られる. 以下がコードの例である.
+
+\lstinputlisting[caption=StartHelloWorld,label=StartHelloWorld]{../src/HelloWorld/StartHelloWorld.java}
+
+\section{}
+
+
+
+\newpage
+
+%%文書終了****************************
+\end{document} 
+
+
+
+
+
+
+
+
+
+
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/final_main/chapter5/chapter5.tex	Tue Feb 05 18:00:41 2019 +0900
@@ -0,0 +1,2 @@
+% 今後の課題
+\chapter{評価}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/final_main/chapter6/chapter6.tex	Tue Feb 05 18:00:41 2019 +0900
@@ -0,0 +1,10 @@
+%\input{/Users/e155753/.tex/setup}
+
+%%文書開始****************************
+\begin{document} 
+%%**************************************
+\chapter{まとめ}
+
+
+%%文書終了****************************
+\end{document} 
Binary file final_main/fig/ryukyu.pdf has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/final_main/main.tex	Tue Feb 05 18:00:41 2019 +0900
@@ -0,0 +1,130 @@
+\documentclass[a4j,12pt]{jreport}
+\usepackage[dvipdfmx]{graphicx}
+\usepackage{mythesis}
+\usepackage{bussproofs}
+\usepackage{multirow}
+\usepackage{here}
+\usepackage{listings}
+\usepackage{url}
+\usepackage{cite}
+\usepackage{listings}
+\usepackage{amssymb}
+\usepackage{amsmath}
+\usepackage{listings,jlisting}
+\usepackage[utf8]{inputenc}
+\usepackage{docmute}
+
+\lstset{
+  basicstyle={\ttfamily},
+  breaklines=true,%自動で折り返す。
+  columns=[l]{fullflexible},
+  commentstyle={\footnotesize\ttfamily},
+  escapechar={@},
+  frame=single,
+  framerule=.5pt,
+  identifierstyle={\ttfamily},
+  keepspaces=true,
+  keywordstyle={\footnotesize\ttfamily},
+  language={},
+  lineskip=-0.1zw,
+  numbers=left,
+  numbersep=1em,
+  numberstyle={\scriptsize},
+  stepnumber=1,
+  stringstyle={\footnotesize\ttfamily},
+  tabsize=4,
+  xleftmargin=0zw,
+  xrightmargin=0zw,
+}
+
+% \lstset{
+%   language={C},
+%   basicstyle={\footnotesize\ttfamily},
+%   identifierstyle={\footnotesize},
+%   commentstyle={\footnotesize\itshape},
+%   keywordstyle={\footnotesize\bfseries},
+%   ndkeywordstyle={\footnotesize},
+%   stringstyle={\footnotesize\ttfamily},
+%   frame={tb},
+%   breaklines=true,
+%   columns=[l]{fullflexible},
+%   numbers=left,
+%   xrightmargin=0zw,
+%   xleftmargin=3zw,
+%   numberstyle={\scriptsize},
+%   stepnumber=1,
+%   numbersep=1zw,
+%   lineskip=-0.5ex
+% }
+\def\lstlistingname{ソースコード}
+\def\lstlistlistingname{ソースコード目次}
+\setlength{\itemsep}{-1zh}
+\title{Christieによるブロックチェーンの実装}
+\icon{
+  \includegraphics[width=80mm,bb=0 0 595 642]{fig/ryukyu.pdf} %%元は 642じゃなくて842
+}
+\year{平成31年度 卒業論文}
+\belongto{琉球大学工学部情報工学科}
+\author{155753E 赤堀 貴一 \\ 指導教員 {河野 真治} }
+%%
+%% プリアンブルに記述
+%% Figure 環境中で Table 環境の見出しを表示・カウンタの操作に必要
+%%
+\makeatletter
+\newcommand{\figcaption}[1]{\def\@captype{figure}\caption{#1}}
+\newcommand{\tblcaption}[1]{\def\@captype{table}\caption{#1}}
+\def\lst@lettertrue{\let\lst@ifletter\iffalse} %
+\makeatother
+\setlength\abovecaptionskip{0pt}
+
+\begin{document}
+
+% タイトル
+\maketitle
+\baselineskip 17pt plus 1pt minus 1pt
+
+\pagenumbering{roman}
+\setcounter{page}{0}
+
+\tableofcontents	% 目次
+\listoffigures		% 図目次
+%\listoftables		% 表目次
+\lstlistoflistings
+
+%以下のように、章ごとに個別の tex ファイルを作成して、
+% main.tex をコンパイルして確認する。
+%章分けは個人で違うので下のフォーマットを参考にして下さい。
+
+% 研究目的
+\input{chapter1/chapter1.tex}
+
+% ブロックチェーンについて
+\input{chapter2/chapter2.tex}
+
+% コンセンサスアルゴリズムについて
+\input{chapter3/chapter3.tex}
+
+% Christieについて
+\input{chapter4/chapter4.tex}
+
+% 評価
+\input{chapter5/chapter5.tex}
+
+% まとめ
+\input{chapter6/chapter6.tex}
+
+% 参考文献
+
+% \bibliographystyle{junsrt}
+% \bibliography{reference}
+
+\input{bibliography.tex}
+
+% 謝辞
+\input{thanks.tex}
+
+\appendix
+% 付録
+%\input{appendix.tex}
+
+\end{document}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/final_main/mythesis.sty	Tue Feb 05 18:00:41 2019 +0900
@@ -0,0 +1,156 @@
+%
+%  卒業論文スタイルファイル(mythesis.sty)
+%        version 1.0e   
+%
+% ver 1.0e 02/07/2000 since  
+% usage:
+
+%\documentclass[a4j]{jreport}
+%\usepackage{master_paper}
+%
+%
+%\title{卒論タイトル \\ 長い}
+%\etitle{\pLaTeX2e  style test file for Teri's thesis } 
+%\year{平成11年度}
+%\belongto{琉球大学大学工学部\\ 情報工学科}
+%\author{豊平 絵梨}
+%
+%\begin{document}
+%
+%\maketitle
+%
+%%要旨
+%\input{abstract.tex}
+%
+%%目次
+%\tableofcontents
+%							
+%%図目次
+%\listoffigures
+%
+%%表目次
+%\listoftables
+%
+%%第一章
+%\input{chapter1.tex}
+%%chapter1.texの\chapter{}の後ろに次のコマンドを追加してください。
+%%ページカウントがリセットされ、ページ数がアラビア文字になります。
+%%  \pagenumbering{arabic}
+%%第二章
+%\input{chapter2.tex}
+%%第三章
+%\input{chapter3.tex}
+%
+%%付録
+%\input{appendix.tex}
+%
+%%謝辞
+%%\input{thanx.tex}
+%
+%%参考文献
+%\input{biblography.tex}
+%
+%\end{document}
+
+
+%長さ設定
+%\setlength{\topmargin}{-30mm}
+%\addtolength{\oddsidemargin}{-15mm}
+%\addtolength{\textwidth}{60mm}
+
+\topmargin -1in \addtolength{\topmargin}{35mm}
+\headheight 0mm
+\headsep 0mm
+\oddsidemargin -1in \addtolength{\oddsidemargin}{30mm}
+%\evensidemargin -1in \addtolength{\evensidemargin}{8mm}
+\textwidth 160mm
+\textheight 230mm
+%\footheight 0mm
+%\footskip 0mm
+%\pagestyle{empty}
+
+
+%年度
+\def\@year{}
+\def\year#1{\gdef\@year{#1}}
+%英文タイトル
+\def\@etitle{}
+\def\etitle#1{\gdef\@etitle{#1}}
+%アイコン
+\def\@icon{}
+\def\icon#1{\gdef\@icon{#1}}
+%所属
+\def\@belongto{}
+\def\belongto#1{\gdef\@belongto{#1}}
+
+%表紙
+\renewcommand{\maketitle}{%
+\newpage\null
+\thispagestyle{empty}
+\vskip 0cm%
+\begin{center}%
+\let\footnote\thanks
+  {\huge \@year \par}%
+    \vskip 3em%
+  {\Huge \@title \par}%
+    \vskip 1em%
+  {\huge \@etitle \par}%
+    \vskip 8em%
+  {\huge \@icon \par}%
+    \vskip 0.5em%
+  {\huge \@belongto \par}%
+    \vskip 1.0em%
+  {\huge \@author \par}%
+
+\end{center}%
+\par\vskip 1.5em
+}
+
+
+%abstract
+\renewenvironment{abstract}{%
+      \titlepage
+      \thispagestyle{empty}
+      \null\vfil
+      \@beginparpenalty\@lowpenalty
+      {\Huge \bfseries \abstractname}%
+      \begin{center}%
+        \@endparpenalty\@M
+      \end{center}
+}%
+
+
+%目次
+\renewcommand{\tableofcontents}{%
+  \pagestyle{plain}
+  \if@twocolumn\@restonecoltrue\onecolumn
+  \else\@restonecolfalse\fi
+  \chapter*{\contentsname
+    \@mkboth{\contentsname}{\contentsname}%
+  }  \pagenumbering{roman}\@starttoc{toc}%
+  \if@restonecol\twocolumn\fi
+}
+
+%章
+\renewcommand{\chapter}{%
+  \pagestyle{plain}
+  \if@openright\cleardoublepage\else\clearpage\fi
+  \thispagestyle{jpl@in}%
+  \global\@topnum\z@
+  \@afterindentfalse
+  \secdef\@chapter\@schapter}
+
+
+\renewcommand{\prepartname}{} %\renewcommand{\prepartname}{第}
+\renewcommand{\postpartname}{部}
+\renewcommand{\prechaptername}{第}%\renewcommand{\prechaptername}{第}
+\renewcommand{\postchaptername}{章}
+\renewcommand{\contentsname}{目 次}
+\renewcommand{\listfigurename}{図 目 次}
+\renewcommand{\listtablename}{表 目 次}
+\renewcommand{\bibname}{参考文献}
+\renewcommand{\indexname}{索 引}
+\renewcommand{\figurename}{図}
+\renewcommand{\tablename}{表}
+\renewcommand{\appendixname}{付 録}
+\renewcommand{\abstractname}{要 旨}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/final_main/thanks.tex	Tue Feb 05 18:00:41 2019 +0900
@@ -0,0 +1,25 @@
+\input{/Users/e155753/.tex/setup}
+
+%%文書開始****************************
+\begin{document} 
+%%**************************************
+
+\chapter*{謝辞}
+\thispagestyle{empty}
+
+%基本的な内容は以下の通り.参考にしてみて下さい.
+%厳密な決まりは無いので,個々人の文体でも構わない.
+%GISゼミや英語ゼミに参加した人はその分も入れておく.
+%順番は重要なので気を付けるように.(提出前に周りの人に確認してもらう.)
+
+\hspace{1zw}
+本研究を行うにあたり, 日頃より多くの助言, ご指導いただきました河野真治准教授に心より感謝申し上げます。
+
+また, 本実験の測定にあたり, torqueの環境構築に協力してくださった前城健太郎先輩, また, たくさんの温かい励ましをくださった照屋のぞみ先輩. 並列信頼研究室の全てのメンバーに深く感謝いたします。最後に、物心両面で支えてくれた両親に深く感謝いたします。
+
+%% \begin{flushright}
+%% % 2019年 3月 赤堀貴一
+%% \end{flushright}
+
+%%文書終了****************************
+\end{document} 
\ No newline at end of file