linux上命令详解

  

高级命令主要用于查看进程的相关信息,同时它也会提供系统平均负载,cpu信息和内存信息。下面的截图展示了顶级命令默认提供的信息:

  

發inux上命令详解"

  

  

高级命令输出中的第一行是系统的平均负载,这和正常运行时间命令的输出是一样的:

  

發inux上命令详解"

  

13:05:49表示系统当前时间。
  7天表示系统最后一次启动后总的运行时间。
  1用户表示当前系统中只有一个登录用户。
  平均负载:0.01,0.04,0.00表示系统的平均负载,最后的三个数字分别表示最后一分钟的系统平均负载,最后五分钟的系统平均负载,最后十五分钟的系统平均负载。

  

<强>小写字母我可以控制是否显示系统平均负载信息。

  

  

在linux系统中,一般把进程和线程统称为任务。第二行信息是对当前系统中所有任务的统计:

  

發inux上命令详解"

  

任务:270总表示当前系统的进程总数。
  1运行表示当前系统中有1个正在运行的进程。
  269年睡眠表示当前系统中有269个休眠的进程。
  0停止表示停止状态的进程数为0。
  0僵尸表示处于僵死状态的进程数为0。

  

  

第三行显示CPU的使用情况:

  

發inux上命令详解"

  

这里一共有八个字段,是我们了解CPU负载的主要依据、下面我们逐一介绍。

  我们

<强>
  

  

进程在用户地址空间中消耗CPU时间的百分比。像壳程序,各种语言的编译器,数据库应用,web服务器和各种桌面应用都算是运行在用户地址空间的进程。这些程序如果不是处于空闲状态,那么绝大多数的CPU时间都是运行在用户态。

  

<强> sy
  

  

进程在内核地址空间中消耗CPU时间的百分比。所有进程要使用的系统资源都是由Linux内核处理的。当处于用户态(用户地址空间)的进程需要使用系统的资源时,比如需要分配一些内存,或是执行IO操作,再或者是去创建一个子进程,此时就会进入内核态(内核地址空间)运行。事实上,决定进程在下一时刻是否会被运行的进程调度程序就运行在内核态。对于操作系统的设计来说,消耗在内核态的时间应该是越少越好。在实践中有一类典型的情况会使sy变大,那就是大量的IO操作,因此在调查IO相关的问题时需要着重关注它。

  

<强>倪
  

  

倪是不错的缩写,可以通过好值调整进程用户态的优先级。这里显示的倪表示调整过好值的进程消耗掉的CPU时间。如果系统中没有进程被调整过不错的值,那么倪就显示为0。

  

<强> id
  

  

CPU处于空闲状态的百分比。一般情况下,我们+镍+ id应该接近100%。

  

<强> wa
  

  

CPU等待磁盘IO操作的时间。和CPU的处理速度相比,磁盘IO操作是非常慢的。有很多这样的操作,比如:CPU在启动一个磁盘读写操作后,需要等待磁盘读写操作的结果。在磁盘读写操作完成前,CPU只能处于空闲状态.Linux系统在计算系统平均负载时会把CPU等待IO操作的时间也计算进去,所以在我们看到系统平均负载过高时,可以通过佤邦来判断系统的性能瓶颈是不是过多的IO操作造成的。

  

<强>你好,如果
  

  

这两个值表示系统处理中断消耗的时间。中断分为硬中断和软中断,嗨表示处理硬中断消耗的时间,si表示处理软中断消耗的时间。硬中断是硬盘,网卡等硬件设备发送给CPU的中断消息,当CPU收到中断消息后需要进行适当的处理(消耗CPU时间)。软中断是由程序发出的中断,最终也会执行相应的处理程序(消耗CPU时间)。

  

<强>圣
  

  

只有Linux在作为虚拟机运行圣才时是有意义的。它表示虚机等待CPU资源的时间(虚机分到的是虚拟CPU,当需要真实的CPU时,可能真实的CPU正在运行其它虚机的任务,所以需要等待)。

  

小写字母t可以控制是否显示任务信息汇总CPU和信息。没错,它能控制是否显示两行信息。

  

  

内存信息包含两行内容,内存和交换空间:

linux上命令详解