Linux下查看CPU以及内存信息命令及参数结果解释说明
查看CPU信息1.ps命令
一些查看参数:
1)ps a 显示现行终端机下的所有程序,包括其他用户的程序。
2)ps -A 显示所有程序。
3)ps c 列出程序时,显示每个程序真正的指令名称,而不包含路径,参数或常驻服务的标示。
4)ps -e 此参数的效果和指定"A"参数相同。
5)ps e 列出程序时,显示每个程序所使用的环境变量。
6)ps f 用ASCII字符显示树状结构,表达程序间的相互关系。
7)ps -H 显示树状结构,表示程序间的相互关系。
8)ps -N 显示所有的程序,除了执行ps指令终端机下的程序之外。
9)ps s 采用程序信号的格式显示程序状况。
10)ps S 列出程序时,包括已中断的子程序资料。
11)ps -t<终端机编号> 指定终端机编号,并列出属于该终端机的程序的状况。
12)ps u 以用户为主的格式来显示程序状况。
13)ps x显示所有程序,不以终端机来区分。
最常用的方法是ps -aux,然后再利用一个管道符号导向到grep去查找特定的进程,然后再对特定的进程进行操作。
2.top命令
直接键入 top,返回一个类似windows下任务管理器的动态输出结果,此结果会长期占据控制台,而ps则相当于某时刻的一个剪影,所以到底用哪个是情况而定。
top输出结果详解:
前五行是系统整体的统计信息。第一行是任务队列信息,同 uptime 命令的执行结果。其内容如下:
01:06:48
当前时间
up 1:22
系统运行时间,格式为时:分
1 user
当前登录用户数
load average: 0.06, 0.60, 0.48
系统负载,即任务队列的平均长度。三个数值分别为 1分钟、5分钟、15
分钟前到现在的平均值。
第二、三行为进程和CPU的信息。当有多个CPU时,这些内容可能会超过两行。内容如下:
Tasks:
29 total 进程总数
1 running
正在运行的进程数
28 sleeping
睡眠的进程数
0 stopped
停止的进程数
0 zombie
僵尸进程数
Cpu(s): 0.3% us 用户空间占用CPU百分比
1.0% sy
内核空间占用CPU百分比
0.0% ni
用户进程空间内改变过优先级的进程占用CPU百分比
98.7% id
空闲CPU百分比
0.0% wa
等待输入输出的CPU时间百分比
0.0% hi
0.0% si
最后两行为内存信息。内容如下:
Mem: 191272k total
物理内存总量
173656k used
使用的物理内存总量
17616k free
空闲内存总量
22052k buffers
用作内核缓存的内存量
Swap: 192772k total
交换区总量
0k used
使用的交换区总量
192772k free
空闲交换区总量
123988k cached
缓冲的交换区总量。
内存中的内容被换出到交换区,而后又被换入到内存,但使用过的交换区尚未被覆盖,
该数值即为这些内容已存在于内存中的交换区的大小。
相应的内存再次被换出时可不必再对交换区写入。
进程信息区
统计信息区域的下方显示了各个进程的详细信息。首先来认识一下各列的含义。
序号
列名
含义
a
PID
进程id
b
PPID
父进程id
c
RUSER
Real user name
d
UID
进程所有者的用户id
e
USER
进程所有者的用户名
f
GROUP
进程所有者的组名
g
TTY
启动进程的终端名。不是从终端启动的进程则显示为 ?
h
PR
优先级
i
NI
nice值。负值表示高优先级,正值表示低优先级
j
P
最后使用的CPU,仅在多CPU环境下有意义
k
%CPU
上次更新到现在的CPU时间占用百分比
l
TIME
进程使用的CPU时间总计,单位秒
m
TIME+
进程使用的CPU时间总计,单位1/100秒
n
%MEM
进程使用的物理内存百分比
o
VIRT
进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES
p
SWAP
进程使用的虚拟内存中,被换出的大小,单位kb。
q
RES
进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA
r
CODE
可执行代码占用的物理内存大小,单位kb
s
DATA
可执行代码以外的部分(数据段+栈)占用的物理内存大小,单位kb
t
SHR
共享内存大小,单位kb
u
nFLT
页面错误次数
v
nDRT
最后一次写入到现在,被修改过的页面数。
w
S
进程状态。
D=不可中断的睡眠状态
R=运行
S=睡眠
T=跟踪/停止
Z=僵尸进程
x
COMMAND
命令名/命令行
y
WCHAN
若该进程在睡眠,则显示睡眠中的系统函数名
z
Flags
任务标志,参考 sched.h
默认情况下仅显示比较重要的 PID、USER、PR、NI、VIRT、RES、SHR、S、%CPU、%MEM、TIME+、COMMAND 列。可以通过下面的快捷键来更改显示内容。
查看内存信息:
# free -m
total used free shared buffers cached
Mem: 2074340 1340400 733940 0 216736 857836
-/+ buffers/cache: 265828 1808512
Swap: 0 0 0
查看/proc/kcore文件的大小:
PS:/kcore文件是虚拟内存映像,与内存的大小相等,属于虚拟文件系统,所以他不占磁盘空间的,可用#du -h /proc/kcore
查看其实际大小
# ll -h /proc/kcore
or
#ls -l -h /proc/core
-r-------- 1 root root 897M Jan 30 19:39 /proc/kcore
--------------下面是参数 ------------------------------
-b 以Byte为单位显示内存使用情况。
-k 以KB为单位显示内存使用情况。
-m 以MB为单位显示内存使用情况。
-o 不显示缓冲区调节列。
-s<间隔秒数> 持续观察内存使用状况。
-t 显示内存总和列。
-V 显示版本信息。
linux 优先运用物理内存,当物理内存还有空闲时,linux是不会施放内存
的,即使占用内存的程序已经被关闭了(这部分内存就用来做缓存了)。也就
是说,即时你有2G的内存,用过一段时间后,也会被占满。这样做的裨益是,启
动那些刚开启过的程序、或是读取刚存取过得数据会比较快,对于服务器很有
裨益。
用 used 减去 buffer 和 cache,才是运行中的程序所占用的空间
页:
[1]