734 words
4 minutes
【Unix】topコマンドの解説
最終更新:2025-02-22
top
コマンドは、Unix系システムにおいてリアルタイムでシステムリソースの使用状況やプロセスの動作状態を監視するためのツールである。
これにより、CPU使用率、メモリ使用状況、システム負荷、各プロセスの状態などを即座に把握することが可能となる。システム管理やトラブルシューティングにおいては、特に有用である。
出力結果の例
以下の例は、top
コマンドを実行した際の典型的な出力例である。
top - 04:58:30 up 10 days, 3:10, 4 users, load average: 0.15, 0.20, 0.25
Tasks: 150 total, 1 running, 148 sleeping, 0 stopped, 1 zombie
%Cpu(s): 2.0 us, 1.0 sy, 0.0 ni, 96.0 id, 0.0 wa, 0.0 hi, 1.0 si, 0.0 st
KiB Mem : 2048000 total, 150000 free, 500000 used, 995000 buff/cache
KiB Swap: 1024000 total, 1024000 free, 0 used. 800000 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1234 alice 20 0 150000 5000 3000 S 5.0 0.2 0:30.00 bash
2345 bob 20 0 250000 12000 5000 S 7.5 0.6 0:45.00 top
出力結果の解釈
最上部システム情報
04:58:30
: 現在のシステム時刻である。up 10 days, 3:10
: システムが再起動してから10日と3時間10分経過していることを示す。4 users
: 現在ログインしているユーザーの数。load average: 0.15, 0.20, 0.25
: 過去1分、5分、15分の平均負荷を表しており、システムへの負荷の度合いがわかる。
タスク情報
Tasks: 150 total, 1 running, 148 sleeping, 0 stopped, 1 zombie
: システム上で管理されているプロセスの状態を示す。- Zombieプロセス:プロセスが終了した後、親プロセスが終了ステータスを回収していないために、プロセス表に残った状態を意味する。
CPU使用率
%Cpu(s): 2.0 us, 1.0 sy, 0.0 ni, 96.0 id, 0.0 wa, 0.0 hi, 1.0 si, 0.0 st
us
(ユーザー領域)、sy
(システム領域)、ni
(ナイスされたプロセス)、id
(アイドル)、wa
(I/O待ち)、hi
(ハードウェア割り込み)、si
(ソフトウェア割り込み)、st
(仮想マシンによるスティール)の各割合が表示される。
メモリ使用状況
KiB Mem
およびKiB Swap
の行で、システムの総メモリ、使用中、空き、バッファ/キャッシュ、スワップ領域の情報が示される。
プロセス一覧
- 各行はプロセスの詳細情報を示し、PID、ユーザー、優先度(PR)、ナイス値(NI)、仮想メモリサイズ(VIRT)、実メモリサイズ(RES)、共有メモリ(SHR)、プロセス状態(S)、CPU使用率(%CPU)、メモリ使用率(%MEM)、累積実行時間(TIME+)、実行コマンド(COMMAND)が記載される。
ハンズオン
以下に、top
コマンドを活用してシステムの状態を見る手順を示す。
1. 基本的な使用方法
ターミナルで以下のコマンドを実行する。
top
実行すると、上記のようなシステム統計情報及びプロセス一覧がリアルタイムで表示される。画面は定期的に自動更新され、最新の状態が随時反映される。
2. インタラクティブな操作方法
top
コマンドは対話型のツールであり、以下のキー操作を行える。
P
: CPU使用率順にプロセスを並び替える。M
: メモリ使用率順にプロセスを並び替える。q
:top
を終了する。u
: 特定のユーザー名を入力して、該当ユーザーのプロセスのみを表示する。
【Unix】topコマンドの解説
https://ss0832.github.io/posts/20250222_top_command_guide/