LinuCの出題範囲である「1.01.4 プロセスの生成、監視、終了」についての技術的概要をまとめて解説します。
LinuC公式サイトに掲載のある以下の出題範囲について解説します。
重要度 3 概要 基本的なプロセス管理を行える。 詳細 ジョブをフォアグラウンドやバックグラウンドで実行する。
&, bg, fg, jobsログアウト後にも実行が継続されるようにプログラムにシグナルを送信する。
nohup, screen, tmux
活動中のプロセスを監視する。
top, ps, pstree, uptime
プロセス群を選択し、並べ替えて表示する。
pgrepプロセスにシグナルを送信する。
kill, pkill, killall

ジョブとは
Linuxにおけるジョブとは、シェルから見た作業の単位です。書き換えると、「シェルを実行する作業単位」のことです。
シェルは、Linuxを操作するためのインターフェースのことを指します。シェルをわかりやすく表現すると、カーネルにユーザーがコマンドを伝えるためのツールということになります。
フォアグラウンドジョブとバックグラウンドジョブ
Linuxのジョブにはフォアグラウンドジョブと、バックグラウンドジョブの2種類があります。

LinuC公式サイトでは以下のようにまとめられています。
「フォアグラウンド」は、キーボードからの入力など端末からの入力を受け付ける状態のことを指します。フォアグラウンドでジョブが実行されていると、そのジョブが終了するまでシェル上で他の作業はできません。
反対に「バックグラウンド」は端末からの入力は受け付けず、裏で動作している状態のことを指します。そのため、バックグラウンドでジョブが実行されていると。ジョブの終了を待たずにシェル上で他の作業をすることができます。

jobsコマンドの概要
jobsコマンドを実行するとLinuxで実行中のジョブの一覧を確認することができます。
root@localhost # jobs
Red Hat Enterprise Linux 10.0で、ping localhost コマンドを実行してCtrl+Zを押下してjobsコマンドでジョブの状態を確認した例は以下です。

プロセスとは
Linuxにおけるプロセスとは、「OS上で実行中のプログラム」のことを指します。Linuxで実行中のプロセスは後述のpsコマンドで確認します。


https://linuc.org/docs/seminar/20220424_linuc1.pdf
psコマンドの概要
Linuxで実行中のプロセスは以下のpsコマンドで確認することができます。
root@localhost # ps
psコマンドのオプション
psコマンドにオプションをつけて実行することで、確認できる情報が増えます。以下ではpsコマンドのオプションについて解説します。

https://linuc.org/docs/seminar/20220424_linuc1.pdf
ps auxコマンド
psコマンドに-をつけずにauxを付けて実行すると、プロセスの情報を一覧で確認できます。

https://linuc.org/docs/seminar/20220424_linuc1.pdf
killコマンドとシグナルの送信
psコマンドで確認できるプロセスを終了させるにはkillコマンドを使用します。
killコマンドは、実行しているプロセスを終了するコマンドです。
kill コマンドの構文は以下の通りです。kill [オプション] プロセスIDkill コマンドのオプションではシグナルを指定することができます。
シグナルの指定方法には以下の3通りあります。kill -SIGシグナル名 PID kill -s [シグナル名|シグナル番号] PID kill -[シグナル名|シグナル番号] PIDよく利用するシグナルには以下のようなものがあります。
シグナル名 シグナル番号 説明 HUP 1 ハングアップ(端末の切断)シグナル INT 2 キーボードからの割り込みシグナル QUIT 3 キーボードからの中止シグナル KILL 9 強制終了シグナル ALRM 14 タイマーによる終了シグナル TERM 15 終了シグナル(デフォルト設定) CONT 18 一時停止しているプロセスの再開シグナル STOP 19 一時停止シグナル TSTP 20 端末からの一時停止シグナル

参考資料
当記事の作成の参考にした記事です。


