Failure Sharing

Bootup your energy with sharing failure.

LPIC 試験まとめ 第三章:プロセス管理

アクティブなプロセス全てを表示する

pstree
ps aux # BSD
ps -ef # UNIX

-bash: pstree: command not found
P46575:lpic woohyeok.kim$ ps aux
USER               PID  %CPU %MEM      VSZ    RSS   TT  STAT STARTED      TIME COMMAND
woohyeok.kim      5717   2.3  0.7  3003884 125448   ??  S     6:17PM   0:21.87 /Applications/Utilities/Terminal.app/Contents/MacOS/Terminal
_windowserver      145   1.6  0.2  3876692  40948   ??  Ss    5:10PM   2:06.34 /System/Library/PrivateFrameworks/SkyLight.framework/Resources/WindowServer -daemon
_hidd              112   1.4  0.1  2473784   9036   ??  Ss    5:10PM   1:01.31 /usr/libexec/hidd
...
psは、現在起動中のプロセス。

プロセスの優先度を確認

P46575:lpic woohyeok.kim$ ps -l
  UID   PID  PPID        F CPU PRI NI       SZ    RSS WCHAN     S             ADDR TTY           TIME CMD
538502547  5719  5718     4006   0  31  0  2461044   2320 -      S                   0 ttys000    0:00.34 -bash

の中で、「N I」カラム。

topコマンドのデフォルトの更新周期は3秒。 -d オプションで、秒単位設定可能

プロセスの優先度をデフォルトから変更して実行

nice -n 19 bc

-20~19の値で変更可能。 niceコマンドのデフォルトの nice値は、10。

実行中のプロセスの優先度を変更

renice

ジョブを制御する主なコマンド

jobs : Background job and stopped job
[1]+  Stopped                 nice bc

bg %JobId : ジョブのバック化
fg %JobId : ジョブのフォア化

Ctrl + z : 実行しているジョブを一時停止

ユーザからのコマンド入力を可能にしたままで、停止しているappを再開させる

bg app

ジョブの全てを表示

jobs

システムが稼働し続けている期間を調べる

uptime
 8:50  up 15:40, 2 users, load averages: 2.31 2.59 3.37

1, 5, 15分の負荷平均を表示する。

kill PIDの際、送られるシグナル(外部からプロセスを終了させる)

SIGTERM(15) ... killコマンドのデフォルト

主なシグナル

SIGHUP(1) : 端末の切断によるプロセスの終了 SIGINT(2):割り込みによるプロセスの終了(Ctrl + c) SIGKILL(9):プロセスの強制終了 SIGTERM(15):プロセスの終了 (default : cleanup + exit) SIGCONT(18):一時停止したプロセスの再開

使い方
1) kill -15 1234
2) kill -s SIGTERM 1234

PIDではなく、JobIdで指定するときは、

kill %JobId

になる。

GUI端末の画面制御プログラム

screen