第 30章/proc ファイルシステム

30.1. /proc ファイルシステムの概要

/proc ファイルシステムは、カーネルや実行しているプロセスの状態をユーザーやアプリケーションから参照できる特別なインターフェースとなるファイルシステムです。cat コマンドなどを利用して /proc 以下にある仮想的なファイルにアクセスすることで簡単にこれらの情報を得ることができます。例えば、CPU の情報を参照したいのであれば、以下のように /proc/cpuinfo の内容を cat コマンドで表示します。

# cat /proc/cpuinfo
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 8
model name      : Pentium III (Coppermine)
stepping        : 3
cpu MHz         : 648.618
cache size      : 256 KB
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 2
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 sep mtrr pge mca cmov pat p
se36 mmx fxsr sse
bogomips        : 1282.04

ティップ

カーネル 2.6 には、/proc ファイルシステムと同様に仮想的なインターフェースを提供する sysfs ファイルシステムが導入されています。/proc ファイルシステムは、非常に便利なインターフェースを提供していますが、必要に応じてファイルが無秩序に追加されてきたため、アクセスする際のインターフェースが統一されていません。sysfs ファイルシステムでは、ハードウェアデバイスの接続形態や統一された論理的なカテゴリ別のツリー構造でファイルを管理します。また、USB 機器などの検出時には、そのデバイスのエントリをダイナミックに登録します。Turbolinux 10 Server では、sysfs ファイルシステムは、/sys ディレクトリにマウントされており、このディレクトリからデバイスの情報を得ることができます。