Mercurial > hg > Papers > 2021 > ikki-sigos
changeset 14:3be047dc2366
add images
author | ichikitakahiro <e165713@ie.u-ryukyu.ac.jp> |
---|---|
date | Tue, 04 May 2021 21:08:03 +0900 |
parents | 265e4e52d19f |
children | 92975c2d26b3 |
files | Paper/images/DGM-File.graffle Paper/paper.pdf Paper/paper.tex sigos.mm |
diffstat | 4 files changed, 30 insertions(+), 12 deletions(-) [+] |
line wrap: on
line diff
--- a/Paper/paper.tex Mon May 03 17:22:57 2021 +0900 +++ b/Paper/paper.tex Tue May 04 21:08:03 2021 +0900 @@ -104,6 +104,9 @@ %2 \section{現代のファイルシステムについて} +従来のオープンソース分散ファイルシステムソフトウェアとしてCephやGlusterFSなどが挙げられる. + +CephはRADOSと言うストレージクラスタを持ち, RADOSはモニタとOSD(Object Storage Device)の二つで構成されている. モニタはストレージクラスタの構成情報であるクラスタマップをもとにOSDの構成, クラスタ管理, 情報監視を行っている. OSDはハードディスクやRAIDと1対1で対応しており, オブジェクトの配置管理, 実ストレージ へのデータ読み書き, データの冗長化を行っている. Cephは外部インターフェースであるCephFSによりアクセスすることによりファイルでのアクセスを可能にしているが, 同様にオブジェクト, ブロックでのアクセスにも対応している. また, オブジェクトへのアクセスを提供するライブラリLIBRADOSは複数の言語に対応している. %2.1 @@ -217,7 +220,7 @@ \end{description} - +\subsection{Christieのサンプルコード} コード\ref{codes: StartHelloWorld}, \ref{codes: StartHelloCG}はChristieで記述したHello Worldのプログラムである. ユーザープログラムはStartCodeGearクラスを継承したクラス(コード\ref{codes: StartHelloWorld})から開始する. CodeGearManagerはポート番号を指定した上でcreatCGMメソッドを呼び出すことにより生成される. 生成されたCodeGearManagerは CGM名.setup にてCGMに処理させたいスレッド, つまりCodeGearを持たせることができる. @@ -261,6 +264,8 @@ } \end{lstlisting} + +\subsection{TopologyManager} ChristieにはTopologyを形成するための機能TopologyManagerが備わっている. Topologyに参加するノードに対して名前を与え, 必要とあればノード間の配線を行う. @@ -270,14 +275,27 @@ 動的Topologyは参加を表明したノードに対し, 自動的にノード同士の配線を行う. 例えばTreeを構成する場合, 参加したノードから順番にrootから近い役割を与える. -\begin{acknowledgment} -A4横型に対するガイドを基に,本稿を作成した. -クラスファイルの作成においては, -京都大学の中島 浩氏にさまざまなご教示を頂き, -さらにBiB\TeX 関連ファイルの利用についても快諾頂いたことを深謝する. -また,A4横型に対するガイドを作成された当時の編集委員会の担当者に深謝する. -\end{acknowledgment} +\section{Gearを用いたファイルシステムの構成} +Chrsitieの構成の一部をGearsOSに実装し, ファイルシステムの構築を行いたい. +ファイルシステム構築の際に重要となる, Christie の持つ機能として以下が挙げられる. +\begin{description} +\item[DataGearのKeyのシステム] DataGear(変数データ)をkey名と紐付けする. +\item[DataGearに対するAPI] 任意のkeyに対してDataGearを送信, 参照するためのコマンドを指す. Take, Peek, putなどが挙げられる. +\item[DataGearManager] DataGearとKeyのペアを保持しておくためのプール. Remote先のDGMとLocalなDGMの二つに区分できる. +\item[TopologyManager] 参加を表明したノードを任意の形のTopologyに接続する機能. +\end{description} +DGM ->ファイル + + + +\subsection{Keyシステム} +GearsOSのDataGearはChristieにおけるkeyを + +\section{GearsのFS API} + +\section{GearsのFailSystemの実装} +\section{unixbase} \begin{thebibliography}{10}
--- a/sigos.mm Mon May 03 17:22:57 2021 +0900 +++ b/sigos.mm Tue May 04 21:08:03 2021 +0900 @@ -137,7 +137,7 @@ </node> </node> <node CREATED="1620021623257" ID="ID_708502001" MODIFIED="1620021629125" POSITION="right" TEXT="API"> -<node CREATED="1620023415300" FOLDED="true" ID="ID_1649437466" MODIFIED="1620028309407" TEXT="既にある"> +<node CREATED="1620023415300" ID="ID_1649437466" MODIFIED="1620032193246" TEXT="既にある"> <node CREATED="1620023435675" ID="ID_1000804286" MODIFIED="1620023439163" TEXT="goto"/> <node CREATED="1620023439645" ID="ID_880903449" MODIFIED="1620023448172" TEXT="interface"> <node CREATED="1620023448173" ID="ID_1414825484" MODIFIED="1620023453294" TEXT="struct"/> @@ -156,7 +156,7 @@ <node CREATED="1620023651406" ID="ID_733379025" MODIFIED="1620023663405" TEXT="string representation"> <node CREATED="1620023672790" ID="ID_1824934931" MODIFIED="1620023676560" TEXT="no good"/> </node> -<node CREATED="1620023695788" ID="ID_794737146" MODIFIED="1620023703311" TEXT="registration"> +<node CREATED="1620023695788" ID="ID_794737146" MODIFIED="1620032208537" TEXT="registration"> <node CREATED="1620023703312" ID="ID_1139635723" MODIFIED="1620023758814" TEXT="file descriptor?"/> <node CREATED="1620023759294" ID="ID_212727918" MODIFIED="1620023773302" TEXT="dataGearManager"> <node CREATED="1620023773303" ID="ID_751002456" MODIFIED="1620023775912" TEXT="local"/> @@ -172,7 +172,7 @@ <node CREATED="1620024061977" ID="ID_1129253880" MODIFIED="1620024063248" TEXT="put"/> <node CREATED="1620024063805" ID="ID_1943248222" MODIFIED="1620024065566" TEXT="peek"/> </node> -<node CREATED="1620027426689" ID="ID_1710132822" MODIFIED="1620027440010" TEXT="allocation meta opetation"> +<node CREATED="1620027426689" ID="ID_1710132822" MODIFIED="1620030602229" TEXT="allocation meta opetation"> <node CREATED="1620027440469" ID="ID_454168843" MODIFIED="1620027451210" TEXT="truncate"/> <node CREATED="1620027451606" ID="ID_518455857" MODIFIED="1620027458572" TEXT="remove"/> </node> @@ -183,7 +183,7 @@ <node CREATED="1620023890031" ID="ID_953540758" MODIFIED="1620023896641" TEXT="cloud service"/> </node> </node> -<node CREATED="1620023948248" ID="ID_251798198" MODIFIED="1620023952157" TEXT="disconnect"/> +<node CREATED="1620023948248" ID="ID_251798198" MODIFIED="1620033601019" TEXT="disconnect"/> </node> <node CREATED="1620023959151" ID="ID_1018506059" MODIFIED="1620029320603" TEXT="topologtManager"> <node CREATED="1620023993801" ID="ID_616871705" MODIFIED="1620024003846" TEXT="welknown"/>