procがファイルシステムと呼ばれるのはなぜですか?


20

procファイルシステムは、カーネルはLinuxシステム上で実行中の各プロセスに関する情報を通信することができます。

なぜprocファイルシステムと呼ばれるのですか?のような実際のファイルシステムではありませんext4。これは、実行中のプロセスに関する情報を含むファイルのコレクションです。

回答:


25

/procファイルシステムのような、ユーザプロセスが使い慣れたシステムコールやライブラリの呼び出しでそれをナビゲートすることができるためでopendir()readdir()chdir()getcwd()。でもopen()read()close()に表示される「ファイル」の多くの作品/proc/procファイルがディスク上のブロックを占有しないという事実にもかかわらず、ほとんどの目的とほぼすべての目的のために、ファイルシステムです。

私たちは皆、現在使用している「ファイルシステム」という用語の定義を明確にする必要があると思います。ext4のコンテキストでは、「ファイルシステム」を記述するとき、おそらくディスクブロックのレイアウト、ディスク上のどこかに存在するディスクブロックに関するメタデータ情報の指定、および対処するコードの組み合わせについて話しているそのディスク上のレイアウト。文脈では/usr/tmp/var/runなどの理解やいくつかのものを命名する方法の共有概念について、我々している書き込みに。「ファイルシステム」という用語のこれら2つの使用法は、実際にはまったく異なります。/proc既に述べたように、実際には2番目の種類の「ファイルシステム」です。


9
/procファイルが常にディスクでバックアップされている(またはテープでバックアップされている、CDでバックアップされている、または何でもバックアップされている9)と思わない限り、ファイルに怖い引用符を使用する理由はありません。で「本当の」ファイルオープン/書き込み/クローズシーケンス/home常に対応する変更が永続的にすでに行われ、完了して、このファイルのオンディスクのstoragehaveの状態を反映することを意図していることを意味しないかもしれない、と言う、。
ハーゲン・フォン・Eitzen

10
tl; dr:それはファイルのシステムだから?
ヨルグWミットタグ

1
これは「Linuxではすべてがファイルである」という言葉も説明していることに注意してください。
dr01

画面が「デスクトップ」であるのと同様の方法でファイルシステムです。コンピュータ用語には比metaがたくさんあります。
バーマー

18

それは情報を含むファイルの単なる領域です

しかし、それはまさにファイルシステムです。ファイルシステムは書き込み可能である必要はなく、永続的なストレージに存在する必要もありません。

注:(procfsカーネル内の擬似ファイルシステム実装)とその従来のマウントポイントには違いがあります/proc。理論上はprocfsどこにでもマウントできますが、それはまれです。そのため、人々はしばしば/proc本当に意味することについて話しprocfsます。

procfsのファイルprocfsは通常のファイルシステム操作では作成されないが、カーネルの他の場所で何が起こっているかに基づいてファイルシステムの実装自体によって追加および削除されるため、擬似ファイルシステムと呼ばれます。


たとえば、なぜ/ etc / bootがファイルシステムと呼ばれないのですか?
Makhlouf GHARBI

7
ファイルシステムのディレクトリだからです。(まあ、/boot多くの場合、別個のファイルシステムですが、別個の種類のファイルシステムではありません。)
cjm

9

データがファイルシステムに使用されるメカニズムを介してアクセスできるように構成されている場合、全体をファイルシステムと呼ぶこともできます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.