top是给Linux设计的。在FreeBSD VM里面的Free概念和其他OS完全不同,使用top查看Free内存对于FreeBSD来说可以说没什么意义。正确的方法是看vmstat。

  procs memory page disk faults cpu

  r b w swap free re mf mi po fr de sr f0 s0 s1 s2 in sy cs us sy id

  0 0 0 14888 19120 0 4 2 11 10 0 0 0 0 0 8 198 2158 98 11 19 69

  SWAP的单位应该是K,不是M。还有两个比较重要的参数是PI、PO,表示内存的调入、调出页面,单位也是K

  还有,最好使用vmstat t [n]命令,例如 vmstat 5 5,表示在T(5)秒时间内进行N(5)次采样。如果只使用vmstat,无法反映真正的系统情况,试一下,看看结果就知道了。

  procs:

  r–>在运行队列中等待的进程数

  b–>在等待io的进程数

  w–>可以进入运行队列但被替换的进程

  memoy

  swap–>现时可用的交换内存(k表示)

  free–>空闲的内存(k表示)

  pages

  re--》回收的页面

  mf--》非严重错误的页面

  pi--》进入页面数(k表示)

  po--》出页面数(k表示)

  fr--》空余的页面数(k表示)

  de--》提前读入的页面中的未命中数

  sr--》通过时钟算法扫描的页面

  disk 显示每秒的磁盘操作。 s表示scsi盘,0表示盘号

  fault 显示每秒的中断数

  in--》设备中断

  sy--》系统中断

  cy--》cpu交换

  cpu 表示cpu的使用状态

  cs--》用户进程使用的时间

  sy--》系统进程使用的时间

  id--》cpu空闲的时间

  解释:

  如果 r经常大于 4 ,且id经常少于40,表示cpu的负荷很重。

  如果pi,po 长期不等于0,表示内存不足。

  如果disk 经常不等于0, 且在 b中的队列 大于3, 表示 io性能不好。