linux ジョブとプロセス覚え書き
用語集
- プロセス メモリ上で実行状態にあるプログラムで、カーネルから見た処理の単位
- デーモン バックグラウンドで実行される、ターミナルに接続されていないプロセス
- ジョブ シェルから見た処理の単位
プロセスの確認
$ ps
コマンドでプロセスの一覧を確認
オプション
x 現在ユーザが実行しているすべてのプロセスを表示
a すべてのユーザのプロセスを表示
f プロセスの親子関係を表示
u 詳細情報を表示
ハイフンをつけると意味が変わるらしい
例
$ ps xf PID TTY STAT TIME COMMAND 1393 tty1 S+ 0:00 -bash 1684 ? Ss 0:00 /sbin/upstart --user 1752 ? S 0:00 \_ upstart-udev-bridge --daemon --user 1762 ? Ss 0:01 \_ dbus-daemon --fork --session --address=unix:abstr 1774 ? Ss 0:00 \_ /usr/lib/x86_64-linux-gnu/hud/window-stack-bridge 1796 ? S 0:05 \_ /usr/bin/fcitx ・ ・ ・
ジョブの操作
$ jobs
コマンドで現在のジョブ一覧やジョブ番号を確認
ctrl + z
で現在操作中のジョブを中断
$ fg %<ジョブ番号>
ジョブをフォアグラウンド(操作可能な状態)に戻す
$ bg %<ジョブ番号>
ジョブをバックグラウンド(操作はできないが処理は続行中)にする
$ <コマンド> &
コマンドの末尾に&をつけると最初からバックグラウンドで実行する
ジョブ・プロセスの終了
$ kill %<ジョブ番号>
ジョブを終了させる
$ kill <プロセスID>
プロセスを終了させる