/proc
読み:プロック
外語:/proc: process

 UNIXPOSIX準拠OS(Linux等)で、プロセス関係の情報が置かれるディレクトリ
目次

概要
 具体的には、procfsをマウントするためのディレクトリ(マウントポイント)である。
 UNIX System VBSDLinuxなどオペレーティングシステム(OS)を問わずこのディレクトリは存在するが、その内容については各OSのカーネルの仕様に依存しており、相互の互換性などはない。
 OSによっては、プロセスの情報だけでなく、カーネルの情報を読み出すこともできる。
 Linuxでも、どのディストリビューションにも例外なくあるが、FHSには規定されていない。

特徴

ファイル
 ここに置かれた情報は、実際にはファイルとしてその実体は存在しない。
 procfsがマウントされていると、PIDのディレクトリがあるように見え、ここから各種プロセスの情報を読み出すことができる。情報は一見ディレクトリやファイルに見えるが、仮想化されたものであって、ディスク上にファイル等がある訳ではない。
 UNIXだけでなくLinuxでも同様だが、加えてカーネル内部の情報にアクセスするための情報がある。これも一見ファイルに見えるが、同様にファイルではない。

カレントプロセス
 FreeBSDなどでは、/proc/curprocが、自分のプロセスIDへのシンボリックリンクになっているように見える。
 また、Linuxでも/proc/selfが、自分のプロセスIDへのシンボリックリンクになっているように見える。

一覧

Linux
 Linuxでは、psなどの基本的なコマンドはじめ様々なコマンドで必須となるため、標準でprocfsをマウントする。
 ただし、Linuxのprocfsはプロセスとは直接関係のないカーネルの情報も提供されている。プロセスと無関係なものについては、順次sysfsへと移動されている。
 プロセスに関する情報は、/proc/<PID> ディレクトリ以下で提供されており、様々な仮想ファイルが提供されている。代表的なものをいくつか紹介する。
 プロセスと直接無関係なものは、次の通りである。代表的なものをいくつか紹介する。

再検索