龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 操作系统 > LINUX系统 >

Linux 性能监控分析(5)

时间:2014-06-22 03:05来源:网络整理 作者:网络 点击:
分享到:
查看某个程序、进程占用了多少CPU资源: [root@localhost gmail]# while :; do ps -eo pid,ni,pri,pcpu,psr,comm | grep 'oracle'; sleep 1; done PID NI PRI %CPU PSR COMMAND 3668 0 24 0.0 0 orac

查看某个程序、进程占用了多少 CPU 资源:

[root@localhost gmail]#  while :; do ps -eo pid,ni,pri,pcpu,psr,comm | grep 'oracle'; sleep 1; done
  PID  NI PRI %CPU PSR COMMAND
 3668   0  24  0.0   0 oracle
 3670   0  21  0.0   0 oracle
 3672   0  24  0.0   0 oracle
 3674   0  23  0.0   0 oracle
 3676   0  24  0.0   1 oracle
 3678   0  23  0.0   0 oracle
 3680   0  21  0.0   1 oracle
 3682   0  24  0.0   1 oracle
 3684   0  24  0.0   0 oracle
 3686   0  21  0.0   0 oracle

三. Memory

       这里的讲到的 “内存” 包括物理内存和虚拟内存,虚拟内存(Virtual Memory)把计算机的内存空间扩展到硬盘,物理内存(RAM)和硬盘的一部分空间(SWAP)组合在一起作为虚拟内存为计算机提供了一个连贯的虚拟内存空间,好处是我们拥有的内存 ”变多了“,可以运行更多、更大的程序,坏处是把部分硬盘当内存用整体性能受到影响,硬盘读写速度要比内存慢几个数量级,并且 RAM 和 SWAP之间的交换增加了系统的负担。

       在操作系统里,虚拟内存被分成页,在 x86 系统上每个页大小是 4KB。 Linux 内核读写虚拟内存是以 “页” 为单位操作的,把内存转移到硬盘交换空间(SWAP)和从交换空间读取到内存的时候都是按页来读写的。内存和 SWAP 的这种交换过程称为页面交换(Paging),值得注意的是 paging 和 swapping 是两个完全不同的概念,国内很多参考书把这两个概念混为一谈,swapping 也翻译成交换,在操作系统里是指把某程序完全交换到硬盘以腾出内存给新程序使用,和 paging 只交换程序的部分(页面)是两个不同的概念。纯粹的 swapping 在现代操作系统中已经很难看到了,因为把整个程序交换到硬盘的办法既耗时又费力而且没必要,现代操作系统基本都是 paging 或者 paging/swapping 混合,swapping 最初是在 Unix system V 上实现的。

在这里只介绍和性能监测有关的两个内核进程:kswapd 和 pdflush。

精彩图集

赞助商链接