失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > linux系统中ps和top linux中PS和TOP命令用法详解.docx

linux系统中ps和top linux中PS和TOP命令用法详解.docx

时间:2022-01-28 04:51:50

相关推荐

linux系统中ps和top linux中PS和TOP命令用法详解.docx

程序与进程:

程序是静态的(文件),进程是动态的(运行的程序)

进程和线程:

一个程序至少有一个进程,一个进程至少有一个线程

进程之间的内存是独立的

线程之间的内存是共享(共享的优点并发连接高,缺点安全性差)

查看进程树:

Pstree 树形结构显示系统进程信息

[[emailprotected] ~]# pstree

init─┬─auditd───{auditd}

├─console-kit-dae───63*[{console-kit-da}]

├─crond

├─dbus-daemon───{dbus-daemon}

├─dhclient

├─login───bash

├─master─┬─pickup

│ └─qmgr

├─5*[mingetty]

├─rhsmcertd

├─rsyslogd───3*[{rsyslogd}]

├─sshd───sshd─┬─bash───pstree

│ └─sftp-server

└─udevd

-P 显示进程号

[[emailprotected] ~]# pstree -p

init(1)─┬─auditd(1113)───{auditd}(1114)

├─console-kit-dae(1308)─┬─{console-kit-da}(1309)

│ ├─{console-kit-da}(1310)

│ ├─{console-kit-da}(1311)

│ ├─{console-kit-da}(1312)

│ ├─{console-kit-da}(1313)

│ ├─{console-kit-da}(1314)

│ ├─{console-kit-da}(1315)

│ ├─{console-kit-da}(1316)

│ ├─{console-kit-da}(1317)

│ ├─{console-kit-da}(1318)

│ ├─{console-kit-da}(1319)

│ ├─{console-kit-da}(1320)

│ ├─{console-kit-da}(1321)

│ ├─{console-kit-da}(1322)

│ ├─{console-kit-da}(1323)

│ ├─{console-kit-da}(1324)

│ ├─{console-kit-da}(1325)

│ ├─{console-kit-da}(1326)

│ ├─{console-kit-da}(1327)

│ ├─{console-kit-da}(1328)

│ ├─{console-kit-da}(1329)

│ ├─{console-kit-da}(1330)

│ ├─{console-kit-da}(1331)

│ ├─{console-kit-da}(1332)

│ ├─{console-kit-da}(1333)

│ ├─{console-kit-da}(1334)

│ ├─{console-kit-da}(1335)

│ ├─{console-kit-da}(1336)

│ ├─{console-kit-da}(1337)

│ ├─{console-kit-da}(1338)

│ ├─{console-kit-da}(1339)

│ ├─{console-kit-da}(1340)

│ ├─{console-kit-da}(1341)

│ ├─{console-kit-da}(1342)

│ ├─{console-kit-da}(1343)

│ ├─{console-kit-da}(1344)

│ ├─{console-kit-da}(1345)

│ ├─{console-kit-da}(1346)

│ ├─{console-kit-da}(1347)

│ ├─{console-kit-da}(1348)

│ ├─{console-kit-da}(1349)

│ ├─{console-kit-da}(1350)

│ ├─{console-kit-da}(1351)

│ ├─{console-kit-da}(1352)

│ ├─{console-kit-da}(1353)

│ ├─{console-kit-da}(1354)

│ ├─{console-kit-da}(1355)

│ ├─{console-kit-da}(1356)

│ ├─{console-kit-da}(1357)

│ ├─{console-kit-da}(1358)

│ ├─{console-kit-da}(1359)

│ ├─{console-kit-da}(1360)

│ ├─{console-kit-da}(1361)

│ ├─{console-kit-da}(1362)

│ ├─{console-kit-da}(1363)

│ ├─{console-kit-da}(1364)

│ ├─{console-kit-da}(1365)

│ ├─{console-kit-da}(1366)

│ ├─{console-kit-da}(1367)

│ ├─{console-kit-da}(1368)

│ ├─{console-kit-da}(1369)

│ ├─{console-kit-da}(1370)

│ └─{console-kit-da}(1372)

├─crond(1260)

├─dbus-daemon(1141)───{dbus-daemon}(1143)

├─dhclient(1064)

├─login(1287)───bash(1375)

├─master(1250)─┬─pickup(1998)

│ └─qmgr(1259)

├─mingetty(1289)

├─mingetty(1291)

├─mingetty(1293)

├─mingetty(1295)

├─mingetty(1297)

├─rhsmcertd(1273)

├─rsyslogd(1129)─┬─{rsyslogd}(1130)

│ ├─{rsyslogd}(1132)

│ └─{rsyslogd}(1133)

├─sshd(1174)───sshd(1388)─┬─bash(1392)───pstree(2307)

│ └─sftp-server(1426)

└─udevd(457)

显示目录树形结构

安装tree命令

[[emailprotected] ~]# tree /wang/

/wang/

└── zhang

└── wang.txt

列出目前所有的正在内存中运行的进程

PS

[[emailprotected] ~]# ps –aux(A代表全部,U代表命令,X代表用户)

Warning: bad syntax, perhaps a bogus -? See /usr/share/doc/procps-3.2.8/FAQ

USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND

root 1 0.0 0.0 19228 1520 ? Ss Jun29 0:01 /sbin/init

root 2 0.0 0.0 0 0 ? S Jun29 0:00 [kthreadd]

root 3 0.0 0.0 0 0 ? S Jun29 0:00 [migration/0]

root 4 0.0 0.0 0 0 ? S Jun29 0:00 [ksoftirqd/0]

root 5 0.0 0.0 0 0 ? S Jun29 0:00 [migration/0]

USER:运行此process的用户

PID:该process的进程码

%CPU:该process使用掉的CPU资源百分比

%MEM:该process所占用的物理内存百分比

VSZ: 该process所使用掉的虚拟内存量(Kbytes)

RSS: 该process所占用的固定的内存量(Kbytes)

TTY:该process是在那个终端机上面运作,若与终端机无关,则显示“?”,另外,tty1-tty6是本机上面的登陆者程序,若为pts/0等等的,则表示为由网络连接主机的程序。

STAT:该程序目前的状态,linux进程有5种基本状态

R:(正在运行或在运行队列中等待)

S:该进程目前正在睡眠当中,但可被某些讯号(signal)唤醒

T: 该进程目前暂停了

例如: 编辑vi a.txt时 按下ctrl+z

ps –aux |grep vi

Ctrl-c 是发送sigint信号,终止一个进程

Ctrl-z 是发送sigstop信号,挂起一个进程

Z:该程序应该已经终止,但是其父程序却无法正常终止它,造成zombie(僵尸)进程

D:不可中断状态

< 高优先级的

N 低优先级的

S 包含子进程

l 多线程

+ 前台程序

START:该process被触发启动时间

TIME:该process实际使用cpu运作的时间

COMMAND:该程序的实际指令

PS aux 使用BSD的格式来显示进程

Ps ef 是使用标准的格式显示进行

TOP 动态查看进程

统计新区前五行是系统整体的统计信息

1. 第一行是任务队列信息

和uptime命令的执行结果一样:

例:

[[emailprotected] ~]# top

top - 09:35:06 up 7 min, 3 users, load average: 0.44, 0.93, 0.57

Tasks: 348 total, 2 running, 346 sleeping, 0 stopped, 0 zombie

%Cpu(s): 0.7 us, 0.3 sy, 0.0 ni, 98.7 id, 0.0 wa, 0.0 hi, 0.3 si, 0.0 st

KiB Mem: 1878184 total, 1155664 used, 722520 free, 1584 buffers

KiB Swap: 2097148 total, 0 used, 2097148 free. 531364 cached Mem

[[emailprotected] ~]# uptime

09:36:42 up 9 min, 3 users, load average: 0.15, 0.68, 0.51

09:36:42

系统的当前时间

up 9 min

系统运行时间,格式为时、分

3 users

当前登陆用户

load average: 0.15, 0.68, 0.51

系统负载,即任务队列的平均长度。三个数值分别为1分钟、五分钟、15分钟前到现在的平均值

一般来说,每个CPU内核当前活动进程数不大于3,则表示运行表现良好!当然这里说的是每个CPU内核,也就是如果你的主机是四核cpu的话,那么只要Uptime最后输出的一串字符数值小于4*3=12即表示系统负载不是很严重

2. 第二、第三行为进程和CPU的信息

当有多个CPU时,这些内容可能会超过两行,内容如下

Tasks:348 total

进程总数

2 running

正在运行的进程数

346 sleeping

睡眠的进程数

0 stopped

停止的进程数

0 zombie

僵尸进程数

Cpu(s):0.7 us

系统用户进程使用cpu百分比。不包括调高优先级的进程。PU%是由每个核的CPU占用率之和算出来的。如果你是4核CPU,核1 ,CPU使用率为100%,核2,CPU使用率100%,则会出现CPU高于100%的现象,最终为200%

0.3 sy

内核空间占用CPU百分比

0.0 ni

用户进程空间内改变过优先级的进程占用CPU百分比

98.7 id

空闲CPU百分比

3. 第四五行为内存的信息

内容如下:

KiB Mem: 1878184 total

物理内存总量

1155664 used

使用的物理内存总量

722520 free

空闲内存总量

1584 buffers

用做内核缓存的内存量和free –K 一个意思

Swap: 2097148 total,

交换分区的总容量

0 used

使用的交换分区的总量

2097148 free

空闲的交换分区的总量

531364 cached Mem

缓冲的交换区总量。内存中的内容被换到交换区,而后又被换入内存,但使用过的交换去尚未被覆盖,该数值即为那些内容已存在于内存中的交换区的大小。相应的内存再次被换出时可不必再对交换区写入

和free –k 中cache一样

二、进程

列名

含义

PID

进程id

User

进程所有者的用户名

NI

进程优先级。Nice值,负值表示高优先级,正值表示低优先级

Res

实际使用的内存大小

S

进程状态

%CPU

上次更新到现在的CPU时间占用百分比

%MEM

进程使用的物理内存百分比

TIME+

进程使用CPU时间总计,单位1/100秒

Command

命令名/命令行

Top快捷键

默认3s刷新一下,按空格可以立即刷新

M按内存排序

P按CPU排序

展开阅读全文

如果觉得《linux系统中ps和top linux中PS和TOP命令用法详解.docx》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。