ファイルproc
システムを使用すると、カーネルはLinuxシステムで実行されているすべてのプロセスに関する情報を渡すことができます。
なぜproc
ファイルシステムと呼ばれるのですか?これはext4
実行中のプロセスに関する情報を含むファイルの集まりです。
答え1
/proc
opendir()
これは、ユーザープロセスがおなじみのシステムコールとライブラリ呼び出し(およびreaddir()
)を使用してchdir()
ナビゲートできるため、ファイルシステムですgetcwd()
。でもopen()
、に表示される多くread()
のclose()
「ファイル」を処理します/proc
。ほとんどの意図とほとんどすべての目的のために/proc
ファイルシステムですが、そのファイルは特定のディスクブロックを占有しません。
私たち全員が「ファイルシステム」という用語の現在の定義を明確にする必要があると思います。 ext4の文脈で「ファイルシステム」を書くとき、私たちはおそらくディスクブロックレイアウト、ディスクのどこかにあるディスクブロックのメタデータ情報仕様と処理コードの組み合わせについて話します。ディスクのレイアウト。のような文脈では、私たちは何か/usr
を命名する方法についての理解や共有された概念について書いています。 「ファイルシステム」という用語の2つの用途は実際には非常に異なる。指摘したように、実際には2番目の「ファイルシステム」です。/tmp
/var/run
/proc
答え2
情報を含むファイルの領域だけです。
しかし、それはファイルシステムの目的です。はい。ファイルシステムは書き込み可能または永続ストレージに常駐する必要はありません。
procfs
注:(カーネルの擬似ファイルシステムの実装)と既存のマウントポイントの間に違いがあります/proc
。理論的にはどこにでも設置できますが、procfs
そのような場合はまれです。このため、人々はしばしば/proc
自分が実際に意味するものについて話しますprocfs
。
procfs
procfs
のファイルは、通常のファイルシステム操作によって生成されず、カーネルの他の場所で発生する状況に応じてファイルシステム実装自体によって追加および削除されるため、擬似ファイルシステムと呼ばれます。
答え3
ファイルシステムで使用されているメカニズムを介してアクセスできるようにデータが設定されている場合は、全体をファイルシステムと呼ぶことができます。