aboutsummaryrefslogtreecommitdiff
path: root/ja_JP.eucJP/man/man5/procfs.5
blob: 08e94c1762747acc5fc2dbb8fb5b016e187a28bf (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
.\" %Id: procfs.5,v 1.10 1998/06/28 21:33:42 hoek Exp %
.\" jpman %Id: procfs.5,v 1.3 1998/07/03 09:09:33 mutoh Stab %
.\" Written by Garrett Wollman
.\" This file is in the public domain.
.\"
.Dd August 10, 1994
.Dt PROCFS 5
.Os BSD 4.4
.Sh 名称
.Nm procfs
.Nd プロセスファイルシステム
.Sh 書式
.Bd -literal
proc		/proc	procfs	rw 0 0
.Ed
.Sh 解説
プロセスファイルシステム、すなわち
.Nm procfs 
はファイルシステム中でシステムプロセステーブルの閲覧を可能にします。
.Nm procfs 
は通常 
.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 etype
.Pa file
項目によって参照される実行形式のタイプ。
.It Pa file
プロセステキストが読まれる vnode への参照。
これはプロセスのシンボルテーブルへのアクセスを得る、
またはプロセスのもう 1 つのコピーを始めるために使われます。
.It Pa fpregs
.Pa <machine/reg.h>
中の
.Dv "struct fpregs"
で定義される浮動小数点レジスタ。
.Pa fpregs
は、汎用レジスタセットと浮動小数点レジスタセットが明確に区別されたマシンにのみ
実装されています。
.It Pa map
プロセスの仮想メモリのマップ。
.It Pa mem
プロセスの完全な仮想メモリイメージ。
プロセス中に存在するアドレスのみがアクセスできます。
このファイルに対する読み書きはプロセスを修正します。
テキストセグメントに対する書き込みはそのプロセスのみに留まります。
.It Pa note
プロセスへシグナルを送るために使われます。実装されていません。
.It Pa notepg
プロセスグループへシグナルを送るために使われます。実装されていません。
.It Pa regs
プロセスのレジスタセットへの読み書き手段を提供します。
このファイルは
.Pa <machine/reg.h>
中で定義されている
.Dv "struct regs"
バイナリデータ構造体を含んでいます。
.Pa regs
はプロセスが停止しているときのみ書き込みできます。
.It Pa status
プロセスの状態。
このファイルは読み込みのみで、空白で分けられた以下の多数のフィールドを
含んだ 1 行を返します:
.Pp
.Bl -bullet -compact
.It
コマンド名
.It
プロセス ID
.It
親プロセス ID
.It
プロセスグループ ID
.It
セッション ID
.It
制御端末の
.Ar major,minor
、またはもし制御端末がない場合には
.Dv -1,-1 。
.It
プロセスフラグのリスト:
.Dv ctty
制御端末がある、
.Dv sldr
プロセスがセッションリーダである、
.Dv noflags
他の 2 つのフラグがセットされていない。
.It
コンマで区切った秒とマイクロ秒によるプロセス開始時刻
.It
コンマで区切った秒とマイクロ秒によるユーザ時間
.It
コンマで区切った秒とマイクロ秒によるシステム時間
.It
ウェイトチャンネルメッセージ
.It
実効ユーザ ID と全てコンマで区切られた
グループリスト(最初の項目は実効グループ ID) から成っている
プロセスクリデンシャル
.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 procfs
の通常のマウントポイント。
.It Pa /proc/pid
プロセス
.Pa pid
のプロセス情報を含んだディレクトリ
.It Pa /proc/curproc
カレントプロセスのプロセス情報を含んだディレクトリ
.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/status
プロセスの現在の状態
.El
.Sh 関連項目
.Xr mount 2 ,
.Xr sigaction 2 ,
.Xr unmount 2 ,
.Xr mount_procfs 8
.Sh 作者
このマニュアルページは
.An Jan-Simon Pendry
によって提供された記述に基づいて
.An Garrett Wollman
によって書かれ、
後に
.An Mike Pritchard
によって手直しされました。