top コマンドは、Linux で一般的に使用されるパフォーマンス分析ツールで、Windows タスク マネージャーと同様に、システム内の各プロセスのリソース使用量をリアルタイムで表示できます。以下に詳しい使い方を説明します。 top は動的な表示プロセスです。つまり、このコマンドがフォアグラウンドで実行されると、ユーザーがプログラムを終了するまで、現在のステータスが独占的に占有されます。 top コマンドはシステムのリアルタイム制御を提供し、システム内で最も「重要な」タスクのリストを表示します。このコマンドは、CPU 使用率、メモリ使用率、および多くの機能に基づいてタスクを並べ替えます。このコマンドの機能には、対話型コマンドを通じてアクセスするか、個人用カスタマイズ ファイルで設定を行うことができます。
1.コマンド形式:
top [パラメータ]
2.コマンド機能:
プロセスID、メモリ使用量、CPU使用量などを含む、システムによって現在実行されているプロセスに関する関連情報を表示します。
3.コマンドパラメータ:
-b バッチ処理
-c 完了処理コマンドの表示
-I 失敗処理無視
-s 機密モード
-S 蓄積モード
-i
- u ユーザー名を指定します
-p プロセスを指定します
-n
[root@TG1704 log]# top top - 14:06:23 up 70 days, 16:44, 2 users, load average: 1.25, 1.32, 1.35 Tasks: 206 total, 1 running, 205 sleeping, 0 stopped, 0 zombie Cpu(s): 5.9%us, 3.4%sy, 0.0%ni, 90.4%id, 0.0%wa, 0.0%hi, 0.2%si, 0.0%st Mem: 32949016k total, 14411180k used, 18537836k free, 169884k buffers Swap: 32764556k total, 0k used, 32764556k free, 3612636k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 28894 root 22 0 1501m 405m 10m S 52.2 1.3 2534:16 java 18249 root 18 0 3201m 1.9g 11m S 35.9 6.0 569:39.41 java 2808 root 25 0 3333m 1.0g 11m S 24.3 3.1 526:51.85 java 25668 root 23 0 3180m 704m 11m S 14.0 2.2 360:44.53 java 574 root 25 0 3168m 611m 10m S 12.6 1.9 556:59.63 java 1599 root 20 0 3237m 1.9g 11m S 12.3 6.2 262:01.14 java 1008 root 21 0 3147m 842m 10m S 0.3 2.6 4:31.08 java 13823 root 23 0 3031m 2.1g 10m S 0.3 6.8 176:57.34 java 28218 root 15 0 12760 1168 808 R 0.3 0.0 0:01.43 top 29062 root 20 0 1241m 227m 10m S 0.3 0.7 2:07.32 java 1 root 15 0 10368 684 572 S 0.0 0.0 1:30.85 init 2 root RT -5 0 0 0 S 0.0 0.0 0:01.01 migration/0 3 root 34 19 0 0 0 S 0.0 0.0 0:00.00 ksoftirqd/0 4 root RT -5 0 0 0 S 0.0 0.0 0:00.00 watchdog/0 5 root RT -5 0 0 0 S 0.0 0.0 0:00.80 migration/1 6 root 34 19 0 0 0 S 0.0 0.0 0:00.00 ksoftirqd/1 7 root RT -5 0 0 0 S 0.0 0.0 0:00.00 watchdog/1 8 root RT -5 0 0 0 S 0.0 0.0 0:20.59 migration/2 9 root 34 19 0 0 0 S 0.0 0.0 0:00.09 ksoftirqd/2 10 root RT -5 0 0 0 S 0.0 0.0 0:00.00 watchdog/2 11 root RT -5 0 0 0 S 0.0 0.0 0:23.66 migration/3 12 root 34 19 0 0 0 S 0.0 0.0 0:00.03 ksoftirqd/3 13 root RT -5 0 0 0 S 0.0 0.0 0:00.00 watchdog/3 14 root RT -5 0 0 0 S 0.0 0.0 0:20.29 migration/4 15 root 34 19 0 0 0 S 0.0 0.0 0:00.07 ksoftirqd/4 16 root RT -5 0 0 0 S 0.0 0.0 0:00.00 watchdog/4 17 root RT -5 0 0 0 S 0.0 0.0 0:23.07 migration/5 18 root 34 19 0 0 0 S 0.0 0.0 0:00.07 ksoftirqd/5 19 root RT -5 0 0 0 S 0.0 0.0 0:00.00 watchdog/5 20 root RT -5 0 0 0 S 0.0 0.0 0:17.16 migration/6 21 root 34 19 0 0 0 S 0.0 0.0 0:00.05 ksoftirqd/6 22 root RT -5 0 0 0 S 0.0 0.0 0:00.00 watchdog/6 23 root RT -5 0 0 0 S 0.0 0.0 0:58.28 migration/7説明:統計情報領域:最初の5行は、現在の全体の統計情報領域です。システム状況。以下では、各情報行の具体的な意味を見ていきます。 最初の行のタスクキュー情報は、uptime コマンドの実行結果と同じです。具体的なパラメーターの説明は次のとおりです: 14:06:23 — 現在のシステム時間 up 70 days, 16: 44 — システムは 70 日間 16 時間 44 分実行されています (この間、システムは再起動されていません!) 2 ユーザー — 現在システムにログインしているユーザーは 2 人です 負荷平均: 1.15、1.42、 1.44 — 負荷平均後の 3 つの数値は、それぞれ 1 分、5 分、15 分の負荷条件です。 負荷平均データは、5秒ごとにアクティブなプロセスの数を確認し、特定のアルゴリズムに従って計算された値です。この数値を論理 CPU の数で割った場合、結果が 5 より大きい場合は、システムが過負荷になっていることを示します。 2 行目、Tasks - タスク (プロセス)、具体的な情報は次のとおりです: システムには合計 206 個のプロセスがあり、そのうち 1 個が実行中、205 個がスリープ状態、0 個が停止状態にあります。ゾンビステータス(ゾンビ)は0です。 3 行目、CPU ステータス情報、特定の属性の説明は次のとおりです: 5.9%us - ユーザー空間が占有している CPU の割合。 3.4% sy — カーネル空間が占有する CPU の割合。 0.0% ni — 優先順位が変更されたプロセスによって占有されている CPU の割合 90.4% id — アイドル状態の CPU の割合 0.0% wa — IO 待機によって占有されている CPU の割合 0.0% hi — ハードウェア IRQ占有 CPU の割合 0.2% si - ソフトウェア割り込みによって占有される CPU の割合 注: ここでの CPU 使用率は、Windows の概念とは異なります。Linux システムのユーザー空間とカーネルに関する関連知識を理解する必要があります。空間! 4 行目のメモリステータス、具体的な情報は次のとおりです: 32949016k total — 合計物理メモリ (32GB) 14411180k used — 合計使用中のメモリ (14GB) 18537836k free — 合計空きメモリ (18GB) ) 169884kbuffers - キャッシュされたメモリの量(169M) 5行目、スワップパーティション情報、具体的な情報は次のとおりです: 32764556k total - スワップ領域の総量(32GB) 0k used -使用済みスワップ領域の合計 量 (0K) 32764556k free - 合計空きスワップ領域 (32GB) 3612636k キャッシュ済み - 合計バッファリングされたスワップ領域 (3.6GB)
以下7行目:各プロセス(タスク)の状態監視、項目列の情報は以下の通りです:
PID — プロセスID
USER — プロセス所有者
PR — プロセス優先度
NI — ナイス値。負の値は優先度が高いことを表し、正の値は優先度が低いことを表します
VIRT — プロセスによって使用される仮想メモリの合計量 (kb 単位)。 VIRT=SWAP+RES
RES — スワップアウトされていないプロセスによって使用されている物理メモリのサイズ (kb 単位)。 RES=CODE+DATA
SHR — 共有メモリのサイズ、単位は kb
S — プロセスのステータス。 D=無中断スリープ状態 R=実行 S=スリープ T=追跡/停止 Z=ゾンビプロセス
%CPU — 前回の更新以降に占有された CPU 時間の割合
%MEM — プロセスによって使用された物理メモリの割合
TIME+ — プロセスによって使用された合計 CPU 時間、単位は 1/100 秒
COMMAND — プロセス名 (コマンド名/コマンド ライン)
その他の使用上のヒント:
1.
一番上の基本 ビューで、キーボード番号「1」を押して、各論理 CPU のステータスを監視します。
上の図に注目してください。サーバーには 16 個の論理 CPU があり、これは実際には 4 個の物理 CPU です。もう一度数字キー 1 を押すと、最上部の基本ビュー インターフェイスに戻ります。
2. 現在実行中のプロセスを強調表示します
キーボードの「b」を押すと (強調表示効果のオン/オフを切り替えます)、上部の表示が次のように変わります:
プロセス ID 2570 が強調表示されると、最上位のプロセスがビューの 2 行目に表示される唯一の実行中プロセスになります。「y」キーをタップすると、実行中のプロセスの強調表示効果をオフまたはオンにできます。
3. プロセスフィールドの並べ替え
デフォルトで上位を入力すると、各プロセスは CPU 使用率に従って並べ替えられます。以下の図では、プロセス ID 28894 の Java プロセスが 1 位 (CPU 使用率 142%) にランクされます。 Java プロセスは 574 で 2 番目にランクされています (CPU 占有率は 16%)。
キーボードで「x」を入力すると (ソート列の強調表示効果をオン/オフにします)、トップの表示が次のように変わります:
トップのデフォルトのソート列が確認できます。は「%CPU」です。
4. 「shift + >」または「shift + 」を 1 回押した結果です。ビューは次のようになり、%MEM でソートされます。
例 2: コマンド全体を表示する
コマンド:
top -c
出力:
説明:
例 3: バッチモードでプログラム情報を表示する
コマンド:
top -b
出力:
説明:
例 4: 累積モードで番組情報を表示する
コマンド:
top -S
出力:
説明:
例5: 情報更新回数を設定します
コマンド:
top -n 2
出力:
説明:
は2回更新したら更新表示を終了することを意味します
例6: 情報更新時間を設定する
コマンド:
top -d 3
出力:
説明:
は更新周期が3秒であることを意味します
例7: 指定されたプロセス情報を表示します
コマンド:
top -p 5 74
出力:
指示:
5.top 対話型コマンド
top コマンドの実行中に使用できるいくつかの対話型コマンド。これらのコマンドは 1 文字であり、コマンド ラインで s オプションを使用するとブロックされる可能性があります。
h ヘルプ画面を表示し、いくつかの短いコマンド概要の指示を与えます。
k プロセスを終了します。
i アイドルプロセスとゾンビプロセスを無視します。これはスイッチコマンドです。
q プログラムを終了します
r プロセスの優先順位を再調整します
S 累積モードに切り替えます
s 2 回のリフレッシュ間の遅延時間を変更します (単位は s)。小数点がある場合は、それを m s に変換します。 。値 0 を入力すると、システムは 5 秒間継続して更新します。
f または F。現在の表示に項目を追加または削除します。
l 表示される項目の順序を変更します。平均負荷と起動時間の情報の表示を切り替えます
m メモリ情報の表示に切り替えます
t プロセスと CPU のステータス情報の表示に切り替えます
c コマンド名と完全なコマンドラインの表示に切り替えます
M 常駐メモリサイズで並べ替えます
P CPU 使用率で並べ替えます
T 時間/累積時間で並べ替えます
W 現在の設定を書き込みます~/ .toprc ファイル