LInux查看CPU状态
1、htop
?
2、top
內(nèi)容解釋:
PID:進(jìn)程的ID
USER:進(jìn)程所有者
PR:進(jìn)程的優(yōu)先級(jí)別,越小越優(yōu)先被執(zhí)行
NInice:值
VIRT:進(jìn)程占用的虛擬內(nèi)存
RES:進(jìn)程占用的物理內(nèi)存
SHR:進(jìn)程使用的共享內(nèi)存
S:進(jìn)程的狀態(tài)。S表示休眠,R表示正在運(yùn)行,Z表示僵死狀態(tài),N表示該進(jìn)程優(yōu)先值為負(fù)數(shù)
%CPU:進(jìn)程占用CPU的使用率
%MEM:進(jìn)程使用的物理內(nèi)存和總內(nèi)存的百分比
TIME+:該進(jìn)程啟動(dòng)后占用的總的CPU時(shí)間,即占用CPU使用時(shí)間的累加值。
COMMAND:進(jìn)程啟動(dòng)命令名稱
?
3、cat /proc/stat
?4、
pmap
可以根據(jù)進(jìn)程查看進(jìn)程相關(guān)信息占用的內(nèi)存情況,(進(jìn)程號(hào)可以通過ps查看)如下所示:
$ pmap -d 5647
?
ps
如下例所示:
$ ps -e -o 'pid,comm,args,pcpu,rsz,vsz,stime,user,uid'? 其中rsz是是實(shí)際內(nèi)存
$ ps -e -o 'pid,comm,args,pcpu,rsz,vsz,stime,user,uid' | grep oracle |? sort -nrk
其中rsz為實(shí)際內(nèi)存,上例實(shí)現(xiàn)按內(nèi)存排序,由大到小
在Linux下查看內(nèi)存我們一般用free命令:
[root@scs-2 tmp]# free
???????????? total?????? used?????? free???? shared??? buffers???? cached
Mem:?????? 3266180??? 3250004????? 16176????????? 0???? 110652??? 2668236
-/+ buffers/cache:???? 471116??? 2795064
Swap:????? 2048276????? 80160??? 1968116
下面是對(duì)這些數(shù)值的解釋:
total:總計(jì)物理內(nèi)存的大小。
used:已使用多大。
free:可用有多少。
Shared:多個(gè)進(jìn)程共享的內(nèi)存總額。
Buffers/cached:磁盤緩存的大小。
第三行(-/+ buffers/cached):
used:已使用多大。
free:可用有多少。
第四行就不多解釋了。
區(qū)別:第二行(mem)的used/free與第三行(-/+ buffers/cache) used/free的區(qū)別。 這兩個(gè)的區(qū)別在于使用的角度來看,第一行是從OS的角度來看,因?yàn)閷?duì)于OS,buffers/cached 都是屬于被使用,所以他的可用內(nèi)存是16176KB,已用內(nèi)存是3250004KB,其中包括,內(nèi)核(OS)使用+Application(X, oracle,etc)使用的+buffers+cached.
第三行所指的是從應(yīng)用程序角度來看,對(duì)于應(yīng)用程序來說,buffers/cached 是等于可用的,因?yàn)閎uffer/cached是為了提高文件讀取的性能,當(dāng)應(yīng)用程序需在用到內(nèi)存的時(shí)候,buffer/cached會(huì)很快地被回收。
所以從應(yīng)用程序的角度來說,可用內(nèi)存=系統(tǒng)free memory+buffers+cached。
如上例:
2795064=16176+110652+2668236
接下來解釋什么時(shí)候內(nèi)存會(huì)被交換,以及按什么方交換。 當(dāng)可用內(nèi)存少于額定值的時(shí)候,就會(huì)開會(huì)進(jìn)行交換。
如何看額定值:
cat /proc/meminfo
[root@scs-2 tmp]# cat /proc/meminfo
MemTotal:????? 3266180 kB
MemFree:???????? 17456 kB
Buffers:??????? 111328 kB
Cached:??????? 2664024 kB
SwapCached:????????? 0 kB
Active:???????? 467236 kB
Inactive:????? 2644928 kB
HighTotal:?????????? 0 kB
HighFree:??????????? 0 kB
LowTotal:????? 3266180 kB
LowFree:???????? 17456 kB
SwapTotal:???? 2048276 kB
SwapFree:????? 1968116 kB
Dirty:?????????????? 8 kB
Writeback:?????????? 0 kB
Mapped:???????? 345360 kB
Slab:?????????? 112344 kB
Committed_AS:?? 535292 kB
PageTables:?????? 2340 kB
VmallocTotal: 536870911 kB
VmallocUsed:??? 272696 kB
VmallocChunk: 536598175 kB
HugePages_Total:???? 0
HugePages_Free:????? 0
Hugepagesize:???? 2048 kB
用free -m查看的結(jié)果:
[root@scs-2 tmp]# free -m?
???????????? total?????? used?????? free???? shared??? buffers???? cached
Mem:????????? 3189?????? 3173???????? 16????????? 0??????? 107?????? 2605
-/+ buffers/cache:??????? 460?????? 2729
Swap:???????? 2000???????? 78?????? 1921
?
總結(jié)
以上是生活随笔為你收集整理的LInux查看CPU状态的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: jconsole命令(Java Moni
- 下一篇: Google 在开源上的贡献