/ dev、/ proc、/ sysには何がありますか?


15

mountいくつかのファイルシステムがリストされた後。私は中に何があるかを知る必要があり/dev/procそして/sys。いくつかの例は素晴らしいでしょう!



@dgsleepsカーネルに依存しているため、FHSは/ procおよび/ sysの内容を定義しません
Junaga

回答:


23

/devツリーには含まれていデバイスノード与え、ユーザ空間へのアクセスをデバイスドライバ持ってお使いのOSの実行中kernel.¹すべてのPOSIXタイプのOSで/devツリーを。

/procツリーには、それだけで使用して、実行中の各プロセスについての情報を与えたのSystem VのUnix、発祥の/proc/$PID/stuffスキームを。Linuxはそれを大幅に拡張し、実行中のカーネルのステータスに関するあらゆる種類の情報を追加しました。これらの読み取り専用情報ファイルに加えて、Linux /procには実行中のカーネルの状態を変更できる書き込み可能な仮想ファイルもあります。BSDタイプのOSは一般にまったく持っていない/procので、ここにあるものの多くは移植性がありません。

Linuxでのこの混乱の解決策/proc/sysです。理想的には、/procツリーに表示されたすべての非プロセス情報は/sys今までに移動しているはずですが、歴史的な慣性により多くのものがに保持されてい/procます。多くの場合、実行中のカーネルを変更するには2つの方法があります。/proc下位互換性のために保持されている古い方法と、現在使用/sysしているはずの新しい方法です。²


脚注:

  1. そこいくつかでもある/devようなハードウェアデバイスに対応していないエントリは、/dev/null/dev/random、と/dev/tty。これらは仮想デバイスであり、ユーザー空間プログラムが実行中のドライバー以外のカーネルの他の部分とデバイスのように通信できるようにします。

  2. 原則として、はシステムのリソースを管理する内部カーネルデータ構造をミラー/sys化するので/proc、より厳密に整理される傾向がありますが、長年にわたって有機的に成長し、古いインターフェイスを使用するプログラムがあるため、古い疑わしい設計決定は現在変更できません。はより明確なデザインから始まり、ほど歴史的な手荷物を引きずる必要はありません。/sys/proc/sys/proc


1
また、バックアップする必要のある種類のファイルは保持されません。それらは動的に生成されます。彼らは特別な「マジック」ファイルシステムを使用しています。
ctrl-alt-delor 2015年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.