Mercurial > hg > Papers > 2019 > mitsuki-master
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
--- /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{システムコールの書き換え} +