changeset 14:02c08d07c371

Xv6 and English Abstract
author tobaru
date Thu, 09 May 2019 21:15:45 +0900
parents a6889c903369
children f4aee7339546
files GearsOS_Paging_Segmentation.pdf paper/sigos.pdf paper/sigos.tex
diffstat 3 files changed, 23 insertions(+), 18 deletions(-) [+]
line wrap: on
line diff
Binary file GearsOS_Paging_Segmentation.pdf has changed
Binary file paper/sigos.pdf has changed
--- a/paper/sigos.tex	Thu May 09 20:41:51 2019 +0900
+++ b/paper/sigos.tex	Thu May 09 21:15:45 2019 +0900
@@ -49,6 +49,12 @@
 
 \end{abstract}
 
+\begin{eabstract}
+In modern OS, there are few OS that can manage memory by Page Table Entry in User Space. In this laboratory, we are developing GearsOS which is implemented using CbC and CbC that can describe meta-level processing. Using CbC enables resource management such as memory management, but with the current memory management with GearsOS, it is implemented by Fork, which simply copies Page Table Entry. In addition, CbC is used to rewrite the OS called Xv6 that outputs Arm binary so that it can run even lightweight hardware that can execute resource management, and also develops GearsOS. In this paper, we will consider the API that manages memory in GearsOS referring to Xv6.
+
+
+\end{eabstract}
+
 
 %
 %\begin{jkeyword}
@@ -72,10 +78,6 @@
 
 % 書けるならなぜこれをやっているかを1章に書く
 
-\section{User Space でのメモリ管理}
-基本、メモリやスレッド, CPUの管理は OS が行なっている。時代とともに急速に進歩するハードウェアやソフトウェアに対して、OS も
-
-
 %2
 
 \section{Gears OS}
@@ -89,7 +91,7 @@
 
 % \setlength\intextsep{0pt}
 % \setlength\textfloatsep{0pt}
-\vspace{-20zh}
+
 
  \begin{figure}[ht]
  \begin{center}
@@ -119,18 +121,27 @@
 
 
 %3
-\section{PagingとSegmentation}
+\section{Paging と Segmentation}
 メモリ管理の手法に, Paging と Segmentation がある。Paging ではメモリを Page と呼ばれる固定長の単位に分割し, メモリとスワップ領域で Page を入れ替えて管理を行う。Segmentation では可変長の単位に分割するので,  Paging と比べてメモリを無駄なく扱うことができる。近年では, Paging を採用している OS が多い。
 
 
-\section{Xv6}
+\section{GearsOS での Paging}
+
+\section{User Space で Page Table を操作する利点}
 
+\section{Xv6 からの書き換え}
+\subsection{Xv6}
+Xv6 とは, マサチューセッツ工科大の大学院生向け講義の教材として使うために, UNIX V6 とい う OS を ANSI-C に書き換え, x86 に移植した Xv6 OS である。Xv6 は Arm のバイナリを出力するので, Raspberry Pi や 携帯など様々なハードウェアで動かすことができる。
 
-%4
-\section{PagingとSegmentationのGearsOSへの実装}
-\label{config}
+\subsection{Xv6 を元にした GearsOS の実装}
+Gears OS はメモリ管理やCPUの管理を User Space から操作できることを目標に実装しているので,  メモリに限りのあるハードウェアで動くように実装できる方が好ましい。ANSI-C で書かれている Xv6 を CbC に書き直し,  それを元に Gears OS を実装していく。
+Xv6 の新しい要素として Gears OS の Context の部分を User Space 側で実行する。 
 
-ファイルは次のようになる.下線部は投稿時に省略可能なもの.
+\subsection{メモリコントロール}
+Context に必要な Page Table を提供する Interface と User Space からアクセスする API が必要である。
+Page Table に相当するデータを Input Data Gear で受け取って変更した後, Context にあるメモリコントロールを担当する Meta Data Gear に goto してアクセスする。
+その際に, Page Table Entry のバリデーションをチェックして反映することで,  他のプロセスから Page Table を書き換えられることを防ぐ。
+
 
 
 
@@ -140,14 +151,8 @@
 
 
 
-
-
 \begin{acknowledgment}
-A4横型に対するガイドを基に,本稿を作成した.
-クラスファイルの作成においては,
-京都大学の中島 浩氏にさまざまなご教示を頂き,
-さらにBiB\TeX 関連ファイルの利用についても快諾頂いたことを深謝する.
-また,A4横型に対するガイドを作成された当時の編集委員会の担当者に深謝する.
+CbC や Gears OS の説明では, 先行研究を元に本稿を作成した。また,  河野 真治 准教授にさまざまなご教授を頂いた事を感謝する。
 \end{acknowledgment}