差分

移動先: 案内検索

ファイルシステム

316 バイト除去, 2010年11月25日 (木) 14:49
/* VFS */
=== VFS ===
[[File:Filesystem-layer-1.png‎|thumb|right|300px|VFSレイヤ概念図]]複数のファイルシステム方式があるのに、何故ユーザは統一したインタフェースでファイルにアクセスできるのでしょう複数のファイルシステム方式があるのに、何故ユーザは統一したインタフェースでファイルにアクセスできるのでしょう? それはVFS (Virtual FileSystem)
<ref>VFSに関する資料 http://www.valinux.co.jp/docs/pdf/D-2.pdf</ref>
が用意されているからです。
 
+------------------------------+s
| ユーザ |
+------------------------------+
| VFS | ^
+----+----+---+---+---+--------+ | ファイルシステム
|ext2|ext3|JFS|FAT|NFS|..... | V
+----+----+---+---+---+--------+
| バッファキャッシュ |
+------------------------------+
|ハードウェア |ネットワーク|
+-----------------+------------+
VFSは個々のファイルシステムとユーザの間のクッションの役目を果たしておVFSは個々のファイルシステムとユーザの間のクッションの役目を果たしており、り、ユーザ側からはVFSしか見えないようになっています。このVFSがファイルユーザ側からはVFSしか見えないようになっています。システム間の違いを吸収し、統一したインタフェースをユーザ側に提供します。このVFSがファイルシステム間の違いを吸収し、統一したインタフェースをユーザ側に提供します。
むかしむかしのUNIXはディレクトリとファイルのアクセスの違いはありませんむかしむかしのUNIXはディレクトリとファイルのアクセスの違いはありませんでした。でした。ディレクトリはシステムがファイルを管理するための内容を持ったファディレクトリはシステムがファイルを管理するための内容を持ったファイルでしかありませんでした。イルでしかありませんでした。ファイルシステムが1種類しかなく自分のマシファイルシステムが1種類しかなく自分のマシンに接続するハードディスク上にあった頃は、ンに接続するハードディスク上にあった頃は、これでも十分ですが、複数のファこれでも十分ですが、複数のファイルシステムが存在する場合はそうもいきません。イルシステムが存在する場合はそうもいきません。機能や仕様が個々に違う、すべてのファイルシステムに同じ方法でアクセスすることを提供しなければいけません。機能や仕様が個々に違う、すべてのファイルシステムに同じ方法でアクセスすることを提供しなければいけません。
VFSのようなファイルシステムの上に仮想的なファイルシステムを加えて統一したインタフェースを作ったのは1980年代後半にSUN VFSのようなファイルシステムの上に仮想的なファイルシステムを加えて統一したインタフェースを作ったのは1980年代後半にSUN MicrosystemsがNFS(Network File System)のために作ったのが最初です。別のマシン上にあるファのために作ったのが最初です。イルシステムをネットワーク経由でマウントできるようにするには、このよう別のマシン上にあるファイルシステムをネットワーク経由でマウントできるようにするには、な方法が適切だからです。このような方法が適切だからです。
VFSの下に位置するファイルシステムは、少なくともカーネルのソースコードVFSの下に位置するファイルシステムは、少なくともカーネルのソースコードをチェックする限り30以上あります。をチェックする限り30以上あります。個々のファイルシステムがどこまで利用<ref>http://lxr.linux.no/#linux+v2.6.36/fs/</ref>可能なのか、つまり、常用のファイルシステムとして使えるのか、互換性のた個々のファイルシステムがどこまで利用可能なのか、つまり、常用のファイルシステムとして使えるのか、めに残しているのか、あるいは読み込みだけで書き込みができない、あるいは互換性のために残しているのか、あるいは読み込みだけで書き込みができない、一部の機能しか使えないなどに関しての資料が見当たらないので一概に30以上あるいは一部の機能しか使えないなどに関しての資料が見当たらないので一概に30以上というのは不適切かも知れません。というのは不適切かも知れません。次によく使われるファイルシステムを取り上げて説明してみましょう。次によく使われるファイルシステムを取り上げて説明してみましょう。
== ファイルシステム ==
匿名利用者