| 原作者 | ウィリアム・ルフェーブル |
|---|---|
| 初回リリース | 1984年 |
| 書かれた | C |
| オペレーティング·システム | Unixライク |
| タイプ | プロセスビューア /システムモニター |
top (プロセス テーブル) は、多くのUnix 系オペレーティング システムに搭載されているタスク マネージャーまたはシステム モニタープログラムであり、 CPUとメモリの使用率に関する情報を表示します。
概要
このプログラムは、ユーザーが指定した基準で選択された実行中のプロセスの順序付きリストを作成し、定期的に更新します。デフォルトの順序は CPU 使用率で、CPU を最も多く消費するプロセスのみが表示されます。top は、使用されている処理能力とメモリの量、および実行中のプロセスに関するその他の情報を表示します。top の一部のバージョンでは、列の選択や並べ替え方法など、表示を広範囲にカスタマイズできます。top は、特定の時点でどのユーザーとプロセスが最も多くのシステム リソースを消費しているかを表示するため、 システム管理者にとって便利です。

実装
topにはいくつかの異なるバージョンがあります。従来のUnixバージョンはWilliam LeFebvreによって書かれ、1984年に著作権が取得されました。[1] SourceForgeでホストされており、[2]リリース3.7は2008年に発表されました。[3]
Linux版のtopはprocps-ngツール群の一部です。元々はRoger Binns [4]によって書かれ、1992年初頭にリリースされましたが、その後すぐに他の人に引き継がれました。[5]
Solarisでは、ほぼ同等のプログラムは prstat です。Microsoft Windowsには、 tasklistコマンドとグラフィカルタスク マネージャーユーティリティがあります。IBM AIXには、topas コマンドとtopas_nmonコマンド の一部として、実行中のプロセス リストを更新する機能があります。
Linux の負荷平均数は、実行キューで待機しているプロセス数と現在実行中のプロセス数の合計です。この数は絶対値であり、相対値ではありません。したがって、使用率とは異なり、無制限にすることができます。プロセス数の瞬間的な変動は、固定小数点演算を使用して計算される指数関数的減少式によって減衰されます。[6]
psプログラムは top に似ていますが、呼び出し時に取得されたプロセスのスナップショットを生成します。top のn (反復回数) オプションは同様の結果を生成し、指定された回数の反復を実行し、出力を印刷した後にプログラムを終了します。
例
最初の 5 行はシステム全体の概要を示します。
トップ - 14:21:23 2 日間稼働、21:40、ユーザー 44 人、負荷平均: 14.44、14.13、14.64
| | | |
<時間> <システム稼働時間> <ユーザー数> <過去1、5、15分間の負荷平均>
タスク: 合計 1552、実行中 8、スリープ中 1544、停止中 0、ゾンビ 0
%CPU: 9.6 us、0.7 sy、0.0 ni、89.5 id、0.0 wa、0.0 hi、0.2 si、0.0 st
| | | | | | | '------。
<ユーザー> <システム> <nice> <アイドル> <IOWait> <ハードウェア/ソフトウェア割り込み> <スチール時間>
MiB メモリ: 1031911.+合計、368915.2 空き、172285.0 使用済み、490711.5 バフ/キャッシュ
MiB スワップ: 合計 2048.0、空き 2048.0、使用済み 0.0。使用可能なメモリ 807110.1
load average過去1/5/15分間の実行キューの長さの指数移動平均です。実行キューには、実行中のプロセスと実行待ちのプロセスの両方が含まれます。タスクの切り替えがない完全な使用率では、負荷平均はCPUの数に等しくなります。[7]
Tasksプロセスとそのステータスをカウントします。
%Cpu(s)CPU 使用率をカテゴリ別に分類してカウントします。
MiB Mem:メビバイト単位のメモリ使用量。バッファとキャッシュbuff/cacheで使用されるメモリです。
MiB Swap: スワップ領域の使用量 (メビバイト単位) 。システムにメモリ リソースがさらに必要で、RAM がいっぱいの場合、メモリ内の非アクティブなページはスワップ領域に移動されます。このスナップショットでは、合計 2048 MiB のスワップ領域があり、すべて空いています。これは、スワップが発生していないことを示し、パフォーマンスに良いことを示しています。
avail Mem: スワップなしで新しいアプリケーションに使用できるメモリの量。未使用の RAM だけでなく、RAM キャッシュから再利用できるメモリも考慮されます。
本文の残りの部分は、各行がプロセスである表を提供しており、多くの可能な列のうち、以下の列がよく使用されます(列の選択と順序は設定可能です)。[8]
PID ユーザー PR NI 仮想リソース SHR S %CPU %MEM 時間+ コマンド
1 ルート 20 0 2456 1612 1500 S 0.0 0.0 0:00.07 init(Ubuntu)
4 ルート 20 0 2456 4 0 S 0.0 0.0 0:00.00 初期化
656403 ユーザー2 20 0 80.0g 3.6g 370000 S 100.0 0.4 1594:38 python3
2024198 ロングネーム+ 20 0 50.5g 4.7g 609200 S 1.6 0.5 204:46.85 ロングネームプロシージャ
2056804 ロングナム+ 20 0 237.1g 31.1g 23.1g S 136.8 3.1 69:54.11 python3
PID:プロセス ID。実行中の各プロセスを識別する一意の番号です。USER:プロセスを開始したユーザー+。ユーザー名が長すぎる場合は、末尾にa が付きます。PR:システム スケジューラによって計算されるタスクのリアルタイム優先度。PR 番号が低いほど、スケジューラによって重要度が高いとみなされ、スケジュールされる可能性が高くなります。つまり、リアルタイムあたりの CPU 時間が多くなる傾向があります。NI:タスクのnice 度。ユーザーと管理者が手動で設定し、リアルタイムの優先度に影響します。nice 値が低いほどプロセスが優先され、nice 値が高いほどプロセスが優先されなくなります。範囲は -20 (最も優先) から 19 (最も優先されない) です。VIRT:プロセスの仮想メモリサイズ。これには、スワップアウトされたメモリ、割り当てられているが使用されていないメモリ、共有メモリなど、プロセスがアクセスできるすべてのメモリが含まれます。RES:常駐セット サイズ、RAM に保持されるプロセスのメモリの部分。 と比較するとVIRT、スワップアウトされたメモリ、まだ使用されていないメモリ、共有されているメモリは除外されます。SHR:共有メモリサイズ: プロセスによって要求される RAM のうち、他のプロセスと共有可能な量。S: プロセスのステータス。ステータスは次のいずれかになります。%CPU: プロセスが現在使用している CPU 時間の割合。%MEM: プロセスによって使用される物理 RAM の割合。TIME+: タスクが開始してから使用した合計 CPU 時間。これは に表示されますminutes:seconds。プラス記号は、TIME+精度が 0.01 秒であることを意味します。 が表示されている場合はTIME、精度は 1 秒です。COMMAND: プロセスを開始したコマンドライン引数。 とは異なり、コマンドが長すぎる場合は、末尾のUSERなしで切り捨てられます。+
参照
- Linux 向けBmon帯域幅監視
- Linux 用htopインタラクティブ システム モニター
- イフトップ
- レイテンシーTOP
- mpstat
- AIX および Linux 用のnmonシステム モニター
- トップ
- パワートップ
- sar (Unix)
参考文献
- ^ 「ドキュメント」。Unix Top。2008年4月13日時点のオリジナルよりアーカイブ。2016年5月22日閲覧。
- ^ LeFebvre, William (2014-09-16). 「Top について」Unix Top . 2004-04-20 時点のオリジナルよりアーカイブ。2016-05-22閲覧。
- ^ 「トップ/ニュース」。SourceForge 。 2016年5月22日閲覧。
- ^ "top(1): タスク - Linux man ページ". Linux ドキュメント. 2016 年 5 月 22 日閲覧。
- ^ Binns, Roger. 「Linux Top Origins | Roger's world」. Roger's world . 2016年5月22日閲覧。
- ^ J. Gunther, Neil (2010). 「UNIX Load Average Part 2: Not Your Average Average」(PDF) . teamquest.com. 2012-06-02 にオリジナル(PDF)からアーカイブ。2013-06-10に取得。
- ^ Walker, Ray (2006 年 12 月 1 日)。「負荷平均の調査」。Linux Journal。2012年3 月 13 日閲覧。
- ^ top(1) - Linux マニュアルページ
