Mercurial > hg > Document > Growi
changeset 101:df9c0f3c58f9
backup 2022-04-20
author | autobackup |
---|---|
date | Wed, 20 Apr 2022 00:10:04 +0900 |
parents | ffd95de96bda |
children | 154ee3bc4903 |
files | user/matac42/note/2022/04/19.md |
diffstat | 1 files changed, 73 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/user/matac42/note/2022/04/19.md Wed Apr 20 00:10:04 2022 +0900 @@ -0,0 +1,73 @@ +# 研究目的 + +## GearsOSにおける分散ファイルシステムの構築 + +- アプリケーションの信頼性を保証するために,アプリケーションが動作するOSの信頼性を高める必要がある +- 当研究室では,信頼性の保証を目的としたGearsOSを開発している +- GearsOSで未実装の機能である分散ファイルシステムの実装を行う + +要件 + +- モデル検査による信頼性の保証 + - CbCによるノーマルレベル、メタレベルの切り分け + +取り入れたい要素 + +- transaction +- backup & logging +- unix like + +# 進捗 + +## 研究計画書提出した + +担当の先生方からコメントをもらった + +- ファイルシステムの性能評価どうするか +- 考察ポイントはどこか +- 研究会頑張ってください + +## 考え事や調べ物 + +### スパースファイル + +スパースファイルとは部分的に空を含むファイルを実際のファイルシステム上では、空の代わりにメタデータと呼ばれる小さな情報を書き込むことにより効率的に保存する仕組みのこと。 + +### Named Streams + +名前付きストリーム(Named Streams, Alternate Streams, Alternate Data Streams, ADS, 代替データストリーム)とは、デフォルトのファイルストリームに名前はついていないが、一つのファイルに複数ストリームを持たせようとしたときに、デフォルトのストリームと区別するために、名前をつける必要がある。そのストリームが名前付きストリームである。CTFのネタになる感じのものらしい。 + +参考: https://infosecwriteups.com/alternate-data-streams-ads-54b144a831f1 + +### journaling filesystem + +[Linux System Administrators Guide](https://tldp.org/LDP/sag/html/index.html)5.10.3 Which filesystem should be used?にて、 + +> Currently, ext3 is the most popular filesystem, because it is a journaled filesystem. + +という記述がある。今であればext4を選ぶだろう。この本は2000年ごろに原著が出たので、その頃の話ではあるが、journaled filesystemであることはファイルシステムを選ぶ上で重要な項目のようだ。確かに、NTFS、APFS、Ext4などの現在主に使われているファイルシステムはjournalingしている。よって、もはや当たり前の機能だと思われる。もし、journalingしていなければ、ファイルシステムの修復をする際にすべてのファイルについてメタデータと実データの整合性をチェックするので非常に時間がかかる。 + +### Windowsのファイルシステム + +Windowsにはファイルシステムドライバーとミニフィルタードライバーというものがある。 +Windowsのファイルシステムはファイルシステムドライバーとして実装されるらしい。 + +## GearsOS + +### 考え事 + +まず目標を立てる必要がある。今回の研究は「OSの信頼性を高める」という大きな目標があり、信頼性の保証を目的としたGearsOSを作成している。 + +ということで、「信頼性の保証が可能」という要件を満たしつつ、GearsOSを完成させることが目標への道となる。 + +GearsOSは未実装の機能がいくつか存在し、「分散ファイルシステム」はその一つである。分散ファイルシステムを完成させることがGearsOSを完成させることにつながる。 + +分散ファイルシステムをkernel moduleあるいは、1つの独立したソフトウェアとして実装するとする。 +どちらにせよ、API設計から。 + +### お掃除 + +必要なファイルだけ取り出す。 +また、LinuxカーネルのようにGearsカーネルという感じで、OSの主要機能をカーネル、付加機能をモジュールとして分けるような形にしたい。 + +不要なものをどうやって見極めようか。 \ No newline at end of file