view conclusion.tex @ 5:dfb89e32eea1

added gcc.tex, conclusion.tex and some sources. writed abstraction.
author kent <kent@cr.ie.u-ryukyu.ac.jp>
date Mon, 08 Feb 2010 00:35:58 +0900
parents
children 8ef81ff8cb52
line wrap: on
line source

\chapter{結論}
\label{chp:conc}

\section{まとめ}

本研究ではContinuation based C(CbC)のGCCベースコンパイラの改善を行った。

CbCは軽量継続をベースとした言語で、 プログラムの分割による開発効率の向
上や、状態遷移という特徴を元にタブロー法を用いたプログラム検証などを目
的として設計されている。 CbC言語のコンパイラにはmicro-cとGCCの二つが用
いられていたが、GCCにはいくつもの問題があった。

そこで、本研究では\ref{chp:cbc}章においてこのCbCの紹介とともに、問題点
の洗い出しをおこなった。洗い出した問題点の中には、実用的なプログラムは
動作不能ともなりえるものも存在した。

\ref{chp:impl}章ではこれらの問題に対処するため、GCCベースコンパイラの
改善を行った。ここでは最初にGCCに移植した際の実装方法を再確認し、その
上で問題点の解決方法の提案、実装を行った。

\ref{chp:eval}章では、\ref{chp:impl}章における改善点の評価とともに、実
用的なプログラムが動作可能になったことで、以前のコンパイラとGCCベース
のコンパイラで性能の比較を行った。

本研究の成果としては、
\begin{inparaenum}[\bfseries a)]
  \item 引数の順番でエラーが出ていた問題を改善し、実用的なCbCプログラ
    ミングが可能になった。
  \item 上の理由により、CbCプログラムをこれまで対応していなかった様々
    なアーキテクチャで実行可能になった。
  \item fastcall最適化によりx86アーキテクチャでの動作速度が改善された。
  \item 以前のコンパイラとの比較ではx86ではあまり差が出なかったものの
    、 PowerPCでは大きな向上が見られた。
  \item リポジトリ管理方法の改善により、メンテナンス性が向上した。
\end{inparaenum}
などが挙げられる。


\section{今後の課題}
作業中

% TODO:

実用的なCbCプログラムが実行可能になった事で、CbCを用いた研究もこれまで
にない応用が可能になる。
特に、本研究室の提案するCeriumはこれまではC++を用いて実装されていたが
、現在はCbCへの移植作業が進行中である。

% オブジェクティブCbC
% C2CbC



今後はCbCを用いた検証手法の確立、またプログラム分割のためのCからCbCへ
の変換プログラムの実装などが必要になる。