Heim  >  Artikel  >  Web-Frontend  >  Detaillierte Erläuterung der Top-Befehls- und Ausgabeergebnisse unter Linux

Detaillierte Erläuterung der Top-Befehls- und Ausgabeergebnisse unter Linux

小云云
小云云Original
2018-03-05 09:38:571617Durchsuche

Der Befehl top ist ein unter Linux häufig verwendetes Leistungsanalysetool. Er kann die Ressourcennutzung jedes Prozesses im System anzeigen. Er wird häufig für die serverseitige Leistungsanalyse verwendet der Parameter des oberen Befehls und der Erklärung der Ausgabeergebnisse kann es allen helfen.

Beschreibung des oberen Befehls

$ top
top - 16:07:37 up 241 days, 20:11, 1 user, load average: 0.96, 1.13, 1.25
Tasks: 231 total,  1 running, 230 sleeping,  0 stopped,  0 zombie
Cpu(s): 12.7%us, 8.4%sy, 0.0%ni, 77.1%id, 0.0%wa, 0.0%hi, 1.8%si, 0.0%st
Mem: 12196436k total, 12056552k used,  139884k free,  64564k buffers
Swap: 2097144k total,  151016k used, 1946128k free, 3120236k cached

PID   USER   PR  NI  VIRT  RES   SHR  S  %CPU  %MEM    TIME+  COMMAND
18411  pplive  20   0 11.9g  7.8g  5372  S 220.2  67.1   16761:00  java
 1875  pplive  20   0 3958m  127m  4564  S  4.6   1.1   12497:35  java
  4  root   20   0   0   0    0  S  0.3   0.0  184:01.76  ksoftirqd/0
  13  root   20   0   0   0    0  S  0.3   0.0  135:49.83  ksoftirqd/2
  25  root   20   0   0   0    0  S  0.3   0.0  136:54.49  ksoftirqd/5

Das Ergebnis des oberen Befehls ist in zwei Teile unterteilt:

Statistische Informationen: Die ersten fünf Zeilen sind die statistischen Informationen des Gesamtsystems;
Prozessinformationen: Der tabellenartige Bereich unterhalb der Statistikinformationen zeigt die Detailinformationen jedes Prozesses an, die standardmäßig alle 5 Sekunden aktualisiert werden.

Beschreibung der statistischen Informationen:

Zeile 1: Informationen zur Top-Task-Warteschlange (Systemlaufstatus und durchschnittliche Auslastung), die mit dem Ergebnis des Betriebszeitbefehls identisch sind.
Absatz 1: Die aktuelle Systemzeit, zum Beispiel: 16:07:37
Absatz 2: Systemlaufzeit, die Zeit vor dem Neustart. Je länger die Zeit, desto stabiler wird das System.
Format: up xx Tage, HH:MM
Zum Beispiel: 241 Tage, 20:11, was bedeutet, dass es 241 Tage, 20 Stunden und 11 Minuten ununterbrochen gelaufen ist
Absatz 3: Die aktuelle Zahl der angemeldeten Benutzer, zum Beispiel: 1 Benutzer, was darauf hinweist, dass derzeit nur ein Benutzer angemeldet ist
Absatz 4: Systemlast, also die durchschnittliche Länge der Aufgabenwarteschlange, die drei Werte zählen jeweils die durchschnittliche Systemlast in den letzten 1, 5 und 15 Minuten

Durchschnittliche Systemlast: Im Fall einer Single-Core-CPU bedeutet 0,00 keine Last, 1,00 bedeutet nur Volllast, mehr als eine Seite bedeutet Überlastung , der ideale Wert ist 0,7;
Multi-Core-CPU-Auslastung: Anzahl der CPU-Kerne * Idealwert 0,7 = ideale Auslastung, zum Beispiel: Die 4-Core-CPU-Auslastung überschreitet nicht 2,8, was bedeutet, dass keine hohe Auslastung vorliegt.

Zeile 2: Aufgabenprozessbezogene Informationen
Absatz 1: Gesamtzahl der Prozesse, zum Beispiel: Aufgaben: insgesamt 231, was insgesamt 231 laufende Prozesse anzeigt
Absatz 2: Anzahl der laufenden Prozesse, Zum Beispiel: 1 läuft,
Absatz 3: Anzahl der schlafenden Prozesse, zum Beispiel: 230 schlafend,
Absatz 4: Anzahl der gestoppten Prozesse, zum Beispiel: 0 gestoppt,
Absatz 5: Anzahl der Zombie-Prozesse , Zum Beispiel: 0 zombie

Zeile 3: CPU-bezogene Informationen. Wenn es sich um eine Multi-Core-CPU handelt, drücken Sie die Nummer 1, um die CPU-Informationen jedes Kerns anzuzeigen in die CPU-Kern-Nummernzeile umgewandelt werden, und die Nummer 1 kann hin und her geschaltet werden.
Absatz 1: Der Prozentsatz der CPU, der von uns Benutzerraum belegt wird, zum Beispiel: Cpu(s): 12,7 %us,
Absatz 2: sy Der Prozentsatz der CPU, der vom Kernel-Speicherplatz belegt wird, zum Beispiel: 8,4 %sy ,
Absatz 3 Abschnitt: ni Der Prozentsatz der CPU, der von Prozessen belegt wird, deren Prioritäten im Benutzerprozessraum geändert wurden, zum Beispiel: 0,0 % ni,
Abschnitt 4: id Der Prozentsatz der CPU im Leerlauf, zum Beispiel: 77,1 % id,
Abschnitt 5: wa Warten Der Prozentsatz der CPU-Zeit für Eingabe und Ausgabe, zum Beispiel: 0,0 % wa,
Absatz 6: hi Die Gesamtzeit, die die CPU für die Verarbeitung von Hardware-Interrupts benötigt, zum Beispiel: 0,0 % hi,
Absatz 7: si CPU bedient Soft-Interrupts Die Gesamtzeit, die aufgewendet wird, zum Beispiel: 1,8%si,
Absatz 8: st Steal time Die CPU-Zeit, die der virtuellen Maschine vom Hypervisor gestohlen wird (wenn die vm befindet sich derzeit unter einem Hypervisor, der Hypervisor verbraucht tatsächlich auch einen Teil der CPU-Verarbeitungszeit)

Zeile 4: Mem-Speicherbezogene Informationen (Mem: 12196436k insgesamt, 12056552k belegt, 139884k frei, 64564k Puffer)
Absatz 1: Gesamter physischer Speicher, zum Beispiel: Mem: 12196436k gesamt,
Absatz 2: Gesamtmenge des verwendeten physischen Speichers, zum Beispiel: 12056552k verwendet,
Absatz 3: Gesamtmenge des freien Speichers, zum Beispiel: Mem: 139884k frei,
Absatz 4: Wird als Kernel-Cache verwendet. Die Speichermenge, zum Beispiel: 64564k Puffer

Zeile 5: Swap-Partitionsbezogene Informationen (Swap: 2097144k insgesamt, 151016k verwendet, 1946128k frei, 3120236k zwischengespeichert)
Absatz 1: Gesamtmenge des Swap-Bereichs, zum Beispiel: Swap: 2097144k insgesamt,
Absatz 2: Gesamtmenge des verwendeten Swap-Bereichs, zum Beispiel: 151016k verwendet,
Absatz 3: Gesamtmenge von Freier Swap-Bereich, zum Beispiel: 1946128k frei,
Absatz 4: Gesamter gepufferter Swap-Bereich, 3120236k zwischengespeichert

Prozessinformationen:
Drücken Sie f im oberen Befehl, um die angezeigten Spalteninformationen anzuzeigen, und drücken Sie Der entsprechende Buchstabe zum Ein-/Ausschalten der Spalte bedeutet „Ein“. Die mit * gekennzeichneten Spalten sind die Standardspalten.

A: PID = (Process Id) 进程Id;
E: USER = (User Name) 进程所有者的用户名;
H: PR = (Priority) 优先级
I: NI = (Nice value) nice值。负值表示高优先级,正值表示低优先级
O: VIRT = (Virtual Image (kb)) 进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES
Q: RES = (Resident size (kb)) 进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA
T: SHR = (Shared Mem size (kb)) 共享内存大小,单位kb
W: S = (Process Status) 进程状态。D=不可中断的睡眠状态,R=运行,S=睡眠,T=跟踪/停止,Z=僵尸进程
K: %CPU = (CPU usage) 上次更新到现在的CPU时间占用百分比
N: %MEM = (Memory usage (RES)) 进程使用的物理内存百分比
M: TIME+ = (CPU Time, hundredths) 进程使用的CPU时间总计,单位1/100秒
b: PPID = (Parent Process Pid) 父进程Id
c: RUSER = (Real user name)
d: UID = (User Id) 进程所有者的用户id
f: GROUP = (Group Name) 进程所有者的组名
g: TTY = (Controlling Tty) 启动进程的终端名。不是从终端启动的进程则显示为 ?
j: P = (Last used cpu (SMP)) 最后使用的CPU,仅在多CPU环境下有意义
p: SWAP = (Swapped size (kb)) 进程使用的虚拟内存中,被换出的大小,单位kb
l: TIME = (CPU Time) 进程使用的CPU时间总计,单位秒
r: CODE = (Code size (kb)) 可执行代码占用的物理内存大小,单位kb
s: DATA = (Data+Stack size (kb)) 可执行代码以外的部分(数据段+栈)占用的物理内存大小,单位kb
u: nFLT = (Page Fault count) 页面错误次数
v: nDRT = (Dirty Pages count) 最后一次写入到现在,被修改过的页面数
y: WCHAN = (Sleeping in Function) 若该进程在睡眠,则显示睡眠中的系统函数名
z: Flags = (Task Flags ) 任务标志,参考 sched.h
X: COMMAND = (Command name/line) 命令名/命令行

top命令选项

-b:以批处理模式操作;
-c:显示完整的治命令;
-d:屏幕刷新间隔时间;
-I:忽略失效过程;
-s:保密模式;
-S:累积模式;
-i<时间>:设置间隔时间;
-u<用户名>:指定用户名;
-p<进程号>:指定进程;
-n<次数>:循环显示的次数。

top命令交互

常用交互操作

基础操作

1:显示CPU详细信息,每核显示一行
d / s :修改刷新频率,单位为秒
h:可显示帮助界面
n:指定进程列表显示行数,默认为满屏行数
q:退出top

面板隐藏显示

l:隐藏/显示第1行负载信息;
t:隐藏/显示第2~3行CPU信息;
m:隐藏/显示第4~5行内存信息;

进程列表排序

M:根据驻留内存大小进行排序;
P:根据CPU使用百分比大小进行排序;
T:根据时间/累计时间进行排序;

详细交互指令:h / ? 可显示帮助界面,原始为英文版,简单翻译如下:

Help for Interactive Commands - procps version 3.2.8
Window 1:Def: Cumulative mode Off. System: Delay 3.0 secs; Secure mode Off.

 Z,B    Global: 'Z' change color mappings; 'B' disable/enable bold
      Z:修改颜色配置;B:关闭/开启粗体
 l,t,m   Toggle Summaries: 'l' load avg; 't' task/cpu stats; 'm' mem info
      l:隐藏/显示第1行负载信息;t:隐藏/显示第2~3行CPU信息;m:隐藏/显示第4~5行内存信息;
 1,I    Toggle SMP view: '1' single/separate states; 'I' Irix/Solaris mode
      1:单行/多行显示CPU信息;I:Irix/Solaris模式切换
 f,o   . Fields/Columns: 'f' add or remove; 'o' change display order
      f:列显示控制;o:列排序控制,按字母进行调整
 F or O . Select sort field 选择排序列
 <,>   . Move sort field: '<&#39; next col left; &#39;>' next col right 上下移动内容
 R,H   . Toggle: 'R' normal/reverse sort; 'H' show threads
      R:内容排序;H:显示线程
 c,i,S  . Toggle: 'c' cmd name/line; 'i' idle tasks; 'S' cumulative time
      c:COMMAND列命令名称与完整命令行路径切换;i:忽略闲置和僵死进程开关;S:累计模式切换
 x,y   . Toggle highlights: 'x' sort field; 'y' running tasks
      x:列排序;y:运行任务
 z,b   . Toggle: 'z' color/mono; 'b' bold/reverse (only if 'x' or 'y')
      z:颜色模式;b:粗体开关 仅适用于x,y模式中
 u    . Show specific user only 按用户进行过滤,当输入错误可按Ctrl + Backspace进行删除
 n or # . Set maximum tasks displayed 设置进程最大显示条数

 k,r    Manipulate tasks: 'k' kill; 'r' renice
      k:终止一个进程;r:重新设置一个进程的优先级别
 d or s  Set update interval 改变两次刷新之间的延迟时间(单位为s),如果有小数,就换算成ms。输入0值则系统将不断刷新,默认值是5s;
 W     Write configuration file 将当前设置写入~/.toprc文件中
 q     Quit    退出
     ( commands shown with '.' require a visible task display window )
      注意:带.的命令需要一个可见的任务显示窗口

相关推荐:

linux命令:top命令

php如何执行top命令讲结果写入文件.txt

Linux下使用python调用top命令获得CPU利用率

Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung der Top-Befehls- und Ausgabeergebnisse unter Linux. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn