ファイルシステム≒図書目録カード
皆さんは本屋さんへ行き、本を探した経験を当然お持ちであろう。店員に尋ねて目的の本を探すという手っ取り早い方法もあるが、大抵はそれが専門書であれ、漫画であれ、分類整理された本棚があるため、皆さんは目的とする本がありそうな棚を探し当て、そこに並んだ本の背表紙を見ながら欲しい本を探すということになる。
図書館の場合は本屋さんと同じように探す方法のほかに、「図書目録カード」というものを使って目的の本を探すことができる。カードは小さな引き出しの中に沢山入っており、著者名や分類事項に応じて整理されている。そのカードを1枚1枚めくりながら目的の本を探し出し、カードに書かれた場所(棚番号や分類番号)を基に本を探しにいくと目的の本がそこに置いてある。
今回取り上げるファイルシステムは、この図書目録カードのような機能を果たす代物だ。もちろんコンピュータと図書館では世界観が異なるため、全く同じものとは言えない。ただ、技術解説をキチンと読むのが得意でない方は雰囲気として「目的のファイルを探すために存在する仕組みである」ということだけでも何となく理解して頂ければ有難い。
図6-1にも示すようにファイルシステムには大きく分けて3つの役割がある。
- ファイルというイメージをユーザーに提供する
- ディスクの空きスペースの管理を行なう
- ディレクトリ・ツリーなどファイルシステムの構造を提供する
ファイルシステム自体をOSの一部と見るか、独立したミドルウェアと見るかは意見が分かれるところであろう。多くのファイルシステムはOSに同梱されており、個別のOSと共に発展を遂げているため、ファイルシステムには沢山の種類が存在する。
当解説では個別のファイルシステム名は挙げずに話を進めるが、もちろん独立した製品としてのファイルシステムも販売されている。このためOSの付属物と断言するのは忍びない。それにOSの立場から見ても、ファイルシステムは色々なものを組み込める構造(Installable File System)になっているケースが多い。しかしながらこの解説ではその辺りのことを学術的に分類して主張していこうなどとは更々考えていないため、敢えてどちらとも言えるとして話を進めてみたい。
また、技術者同士であっても、コンピュータ・システムを学習した時期や過程、経験が各人によって異なるため、ファイルシステムに関する常識の内容も異なってくる。そのような点についてもこの解説では触れていきたい。