changeset 11:2ae5331e815e

update
author mir3636
date Fri, 25 Jan 2019 19:49:46 +0900
parents 6c375f3eef72
children 11ddab4e5b07
files paper/master_paper.pdf paper/xv6.tex
diffstat 2 files changed, 20 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
Binary file paper/master_paper.pdf has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/paper/xv6.tex	Fri Jan 25 19:49:46 2019 +0900
@@ -0,0 +1,20 @@
+\chapter{xv6 の CbC への書き換え}
+Gears OS をハードウェア上で実装するために、ARM\cite{arm} プロセッサを搭載したシングルボードコンピュータである Raspberry Pi\cite{rpi} 上で Gears OS 実装したい。
+ハードウェア上でのメタレベルの計算や並列実行を行うために、Linax 等に比べてシンプルである Xv6 の機能の一部を Gears OS に置き換えることで実現させる。
+xv6 は UNIX V6 を x86 へ再実装したものであるが、
+ここでは Xv6 を Raspberry pi 用に移植した xv6\_rpi\cite{xv6rpi} を用いて実装する。
+
+\section{xv6-rpi の CbC 書き換え}
+Xv6 は 2006 年に MIT のオペレーティングシステムコースで教育用の目的として開発されたオペレーティングシステムである。
+Xv6 はプロセス、仮想メモリ、カーネルとユーザの分離、割り込み、ファイルシステムなどの Unix の構造を持つにも関わらず、
+シンプルで学習しやすい。
+
+オリジナルの Xv6 は x86 アーキテクチャで実装されたものだが、xv6-rpi は Raspberry Pi 用に実装されたものである。
+Xv6 の ARM への移植は フロリダ州立大学によって行われた。 
+
+xv6-rpi を CbC で書き換えるために、
+GCC 上で実装した CbC コンパイラを ARM 向けに build し xv6-rpi のクロスコンパイルを行い、
+QEMU 上で動作させた。
+
+\section{システムコールの書き換え}
+