知りたい情報が日本語で見つからなかったので簡単にまとめておく。
例えば、
$ ps f -A
次のような項目がでる
PID TTY STAT TIME COMMAND
2 ? S 0:00 [kthreadd]
3 ? I< 0:00 \_ [rcu_gp]
この「STAT」の部分、I<
、Ss
、S+
など色々あってよくわからん(´・ω・`)
STAT
DeepL翻訳
STAT | 内容 |
---|---|
D | 中断できないスリープ (通常は IO) |
I | アイドルカーネルスレッド |
R | 実行中または実行可能 (実行キュー上) |
S | 割り込み可能なスリープ(イベントの完了を待っている状態) |
T | ジョブ制御信号による停止 |
t | トレース中にデバッガによって停止されている |
W | ページング (2.6.xx カーネル以降では無効) |
X | dead(決して見てはならない) |
Z | 機能していないゾンビプロセス。終了したがリープされていない |
追加文字
STAT | 内容 |
---|---|
< | 高優先 |
N | 低優先 |
L | ページがメモリにロックされている (リアルタイムおよびカスタム IO 用) |
s | セッションリーダー |
l | マルチスレッド (NPTL pthreads のように CLONE_THREAD を使用) |
+ | フォアグラウンドプロセスグループにある |
結果
よくわからん。
R
実行中なんだな~
S
はスリープで待機状態にあるんだな〜
X
は見られたら死ぬんだな〜
Z
は機能してないからkillするべきなのかもなぁ〜
<
は優先度高いんだな〜
s
はリーダーなんだなぁ〜
+
は今動かしてるやつか〜
Ss
はリーダーが寝てる
S+
は自分が寝てる
Zs
リーダーがゾンビに?!
みたことないけど
調べなければならないことが多そうだったので今はここでやめた(´・ω・`)