247 lines
5.8 KiB
Groff
247 lines
5.8 KiB
Groff
.\" %FreeBSD: src/share/man/man5/procfs.5,v 1.30 2004/07/03 18:29:23 ru Exp %
|
|
.\"
|
|
.\" $FreeBSD$
|
|
.\" Written by Garrett Wollman
|
|
.\" This file is in the public domain.
|
|
.\"
|
|
.Dd December 4, 2001
|
|
.Dt PROCFS 5
|
|
.Os
|
|
.Sh 名称
|
|
.Nm procfs
|
|
.Nd プロセスファイルシステム
|
|
.Sh 書式
|
|
.Bd -literal
|
|
proc /proc procfs rw 0 0
|
|
.Ed
|
|
.Sh 解説
|
|
プロセスファイルシステム、すなわち
|
|
.Nm
|
|
はファイルシステム中でシステムプロセステーブルの閲覧を可能にします。
|
|
.Nm
|
|
は通常
|
|
.Pa /proc
|
|
にマウントされ、
|
|
.Xr ps 1
|
|
や
|
|
.Xr w 1
|
|
といったプログラムの完全な動作に必要なものです。
|
|
.Pp
|
|
.Nm
|
|
は以前の
|
|
.Fx 1.1
|
|
.Nm
|
|
での実装とは異なり、
|
|
プロセス空間に 2 つのレベルの視点を提供します。
|
|
高いレベルでは、プロセスはそれ自身が、10 進数による先頭に 0 の付かない
|
|
自分のプロセス ID によって、名前付けされます。また
|
|
.Pa curproc
|
|
と呼ばれる調査要求を行なったプロセスを参照する特別なノードが存在します。
|
|
.Pp
|
|
それぞれのノードは以下の項目を含むディレクトリです:
|
|
.Pp
|
|
それぞれのディレクトリは数個のファイルを含んでいます:
|
|
.Bl -tag -width status
|
|
.It Pa ctl
|
|
多様な制御操作をサポートする書き込みのみのファイル。
|
|
制御コマンドは
|
|
.Pa ctl
|
|
ファイルに文字列として書き込まれます。
|
|
制御コマンドは:
|
|
.Bl -tag -width detach -compact
|
|
.It attach
|
|
対象プロセスを停止し、
|
|
送信プロセスに対してデバッグ制御プロセスとなるよう手配する。
|
|
.It detach
|
|
対象プロセスの実行を継続し、デバッグプロセスの制御下から離します
|
|
(送信プロセスである必要はありません)。
|
|
.It run
|
|
シグナルが届くか、ブレークポイントに達するか、または対象プロセスが
|
|
終了するまで対象プロセスを継続して動作させます。
|
|
.It step
|
|
シグナルを届けずに対象プロセスをシングルステップさせます。
|
|
.It wait
|
|
対象プロセスがデバッグに適した平衡状態になるまで待ちます。
|
|
対象プロセスは他のどのコマンドが許可されるよりも前に
|
|
この状態になる必要があります。
|
|
.El
|
|
.Pp
|
|
文字列は、
|
|
.Dv SIG
|
|
接頭辞なしの小文字のシグナル名でも構いません。
|
|
この場合、指定したシグナルがプロセスに届けられます。
|
|
.Pf ( Xr (sigaction 2
|
|
参照)。
|
|
.It Pa dbregs
|
|
.In machine/reg.h
|
|
中の
|
|
.Dv "struct dbregs"
|
|
で定義されるデバッグレジスタ。現在
|
|
.Pa dbregs
|
|
は i386 アーキテクチャでのみ実装されています。
|
|
.It Pa etype
|
|
.Pa file
|
|
項目によって参照される実行形式のタイプ。
|
|
.It Pa file
|
|
プロセステキストが読まれる file へのシンボリックリンク。
|
|
これはプロセスのシンボルテーブルへのアクセスを得る、
|
|
またはプロセスのもう 1 つのコピーを始めるために使われます。
|
|
ファイルが見つからなかった場合、そのリンクターゲットは
|
|
.Ql unknown
|
|
です。
|
|
.It Pa fpregs
|
|
.In machine/reg.h
|
|
中の
|
|
.Dv "struct fpregs"
|
|
で定義される浮動小数点レジスタ。
|
|
.Pa fpregs
|
|
は、汎用レジスタセットと浮動小数点レジスタセットが明確に区別されたマシンにのみ
|
|
実装されています。
|
|
.It Pa map
|
|
プロセスの仮想メモリのマップ。
|
|
.It Pa mem
|
|
プロセスの完全な仮想メモリイメージ。
|
|
プロセス中に存在するアドレスのみがアクセスできます。
|
|
このファイルに対する読み書きはプロセスを修正します。
|
|
テキストセグメントに対する書き込みはそのプロセスのみに留まります。
|
|
.It Pa note
|
|
プロセスへシグナルを送るために使われます。実装されていません。
|
|
.It Pa notepg
|
|
プロセスグループへシグナルを送るために使われます。実装されていません。
|
|
.It Pa regs
|
|
プロセスのレジスタセットへの読み書き手段を提供します。
|
|
このファイルは
|
|
.In machine/reg.h
|
|
中で定義されている
|
|
.Dv "struct regs"
|
|
バイナリデータ構造体を含んでいます。
|
|
.Pa regs
|
|
はプロセスが停止しているときのみ書き込みできます。
|
|
.It Pa rlimit
|
|
これは、プロセスの現在および最大の制限を含む、読み取り専用ファイルです。
|
|
各行の書式は
|
|
.Ar rlimit current max
|
|
であり、-1 は無限を意味します。
|
|
.It Pa status
|
|
プロセスの状態。
|
|
このファイルは読み込みのみで、空白で分けられた以下の多数のフィールドを
|
|
含んだ 1 行を返します:
|
|
.Pp
|
|
.Bl -bullet -compact
|
|
.It
|
|
コマンド名
|
|
.It
|
|
プロセス ID
|
|
.It
|
|
親プロセス ID
|
|
.It
|
|
プロセスグループ ID
|
|
.It
|
|
セッション ID
|
|
.It
|
|
制御端末の
|
|
.Ar major , Ns Ar minor
|
|
、またはもし制御端末がない場合には
|
|
.Dv -1,-1。
|
|
.It
|
|
プロセスフラグのリスト:
|
|
.Dv ctty
|
|
制御端末がある、
|
|
.Dv sldr
|
|
プロセスがセッションリーダである、
|
|
.Dv noflags
|
|
他の 2 つのフラグがセットされていない。
|
|
.It
|
|
コンマで区切った秒とマイクロ秒によるプロセス開始時刻
|
|
.It
|
|
コンマで区切った秒とマイクロ秒によるユーザ時間
|
|
.It
|
|
コンマで区切った秒とマイクロ秒によるシステム時間
|
|
.It
|
|
ウェイトチャネルメッセージ
|
|
.It
|
|
実効ユーザ ID と全てコンマで区切られた
|
|
グループリスト(最初の項目は実効グループ ID) から成っている
|
|
プロセスクリデンシャル
|
|
.It
|
|
プロセスが走行する jail のホスト名。
|
|
.Ql -
|
|
の場合、プロセスは jail 中で走行していないことを示します。
|
|
.El
|
|
.El
|
|
.Pp
|
|
対象がデバッガによって fork/exec される通常のデバッギング環境では、
|
|
デバッガが fork し、子は自分自身で止まる(例えば自分で与えた
|
|
.Dv SIGSTOP )
|
|
べきです。
|
|
親は適切な
|
|
.Pa ctl
|
|
ファイルを通じて
|
|
.Dv wait
|
|
そして
|
|
.Dv attach
|
|
コマンドを発行するべきです。
|
|
子プロセスは exec 呼び出しが終わった直後に
|
|
.Dv SIGTRAP
|
|
を受け取ります
|
|
.Pf ( Xr execve 2
|
|
参照)。
|
|
.Pp
|
|
それぞれのノードはプロセスのユーザに所持され、
|
|
ユーザのプライマリグループに属します。
|
|
.Pa mem
|
|
ノードは例外的に
|
|
.Li kmem
|
|
グループに属します。
|
|
.Sh 関連ファイル
|
|
.Bl -tag -width /proc/curproc/XXXXXXX -compact
|
|
.It Pa /proc
|
|
.Nm
|
|
の通常のマウントポイント。
|
|
.It Pa /proc/pid
|
|
プロセス
|
|
.Pa pid
|
|
のプロセス情報を含んだディレクトリ
|
|
.It Pa /proc/curproc
|
|
カレントプロセスのプロセス情報を含んだディレクトリ
|
|
.It Pa /proc/curproc/cmdline
|
|
プロセスの実行形式名
|
|
.It Pa /proc/curproc/ctl
|
|
プロセスへの制御メッセージを送るために使われます
|
|
.It Pa /proc/curproc/etype
|
|
実行形式タイプ
|
|
.It Pa /proc/curproc/file
|
|
実行形式イメージ
|
|
.It Pa /proc/curproc/fpregs
|
|
プロセス浮動小数点レジスタセット
|
|
.It Pa /proc/curproc/map
|
|
プロセスの仮想メモリマップ
|
|
.It Pa /proc/curproc/mem
|
|
プロセスの完全な仮想アドレス空間
|
|
.It Pa /proc/curproc/note
|
|
プロセスへのシグナル送信に使われます
|
|
.It Pa /proc/curproc/notepg
|
|
プロセスグループへのシグナル送信に使われます
|
|
.It Pa /proc/curproc/regs
|
|
プロセスのレジスタセット
|
|
.It Pa /proc/curproc/rlimit
|
|
プロセスの現在および最大の rlimit
|
|
.It Pa /proc/curproc/status
|
|
プロセスの現在の状態
|
|
.El
|
|
.Sh 関連項目
|
|
.Xr mount 2 ,
|
|
.Xr sigaction 2 ,
|
|
.Xr unmount 2 ,
|
|
.Xr mount_procfs 8 ,
|
|
.Xr pseudofs 9
|
|
.Sh 作者
|
|
.An -nosplit
|
|
このマニュアルページは
|
|
.An Jan-Simon Pendry
|
|
によって提供された記述に基づいて
|
|
.An Garrett Wollman
|
|
によって書かれ、
|
|
後に
|
|
.An Mike Pritchard
|
|
によって手直しされました。
|