どーも!marusukeです!
この記事では
- pidstatでできること
- pidstatの使用例
- pidstatのオプション
をわかりやすく解説します!
pidstatコマンドでできること
pidstat [オプション] [間隔] [回数]
pidstat は、プロセスごとのCPU・メモリ・I/O使用状況を確認できるコマンドです。どのプロセスがどれだけリソースを使っているかを細かく把握でき、パフォーマンス調査やボトルネック特定に役立ちます。
top と似ていますが、一定間隔で履歴を取得できるのが特徴です。
プロセスとは?
実行中のプログラムのこと。Linuxではすべての処理がプロセスとして管理されます。
pidstatコマンドの使用例
この例では、1秒ごとに3回、各プロセスのCPU使用率を表示しています。%CPU を見ることで、どのプロセスが負荷をかけているかがわかります。
$ pidstat 1 3
Linux 5.15.0 (hostname) 04/19/2026
12:00:01 AM UID PID %usr %system %guest %CPU CPU Command
12:00:02 AM 0 1 0.00 0.01 0.00 0.01 0 systemd
12:00:02 AM 1000 1234 5.00 1.00 0.00 6.00 1 python
12:00:02 AM 1000 5678 2.00 0.50 0.00 2.50 0 chrome
pidstatの出力項目の意味
pidstatの出力にはプロセスごとのCPU使用状況が表示されます。それぞれの意味は以下の通りです。
| 項目 | 説明 |
|---|---|
| UID | プロセスを実行しているユーザーID |
| PID | プロセスID(各プロセスを識別する番号) |
| %usr | ユーザープログラムとしてCPUを使用した割合(アプリ処理) |
| %system | カーネル(OS)がCPUを使用した割合 |
| %guest | 仮想マシン(ゲストOS)の実行に使われたCPU時間 |
| %CPU | 合計のCPU使用率(%usr + %system + %guest などの合計) |
| CPU | そのプロセスが実行されたCPUコア番号 |
| Command | 実行されているコマンド名(プロセス名) |
pidstatコマンドのオプション
| オプション | 説明 |
|---|---|
| -u | CPU使用率を表示(デフォルト) |
| -r | メモリ使用量を表示 |
| -d | I/O(ディスク)統計を表示 |
| -w | コンテキストスイッチ情報を表示 |
| -t | スレッド単位で表示 |
| -p <PID> | 指定したPIDのみ表示 |
| -C <コマンド名> | 指定したコマンドのプロセスを表示 |
| -h | ヘッダを省略 |
| -V | バージョン情報を表示 |
コンテキストスイッチとは?
CPUが実行するプロセスを切り替えること。頻繁すぎるとパフォーマンス低下の原因になります。
よくある使い方
# 特定プロセスのCPU監視
pidstat -p 1234 1
# メモリ使用量の監視
pidstat -r 1
# I/Oの確認
pidstat -d 1
pidstat は sysstat パッケージに含まれているため、入っていない場合はインストールが必要です。
# Ubuntu / Debian
sudo apt install sysstat
# RHEL / CentOS
sudo yum install sysstat
以上です!
ここまで読んでいただきありがとうございました!

コメント