本博文的主要内容有

  .系统内存管理、监控:vmstat和free -mt

  .系统CPU管理、监控:sar -u、mpstat、uptime

  linux系统内存和CPU是在系统运行的过程中不断消耗的资源,其随系统进程的不断增加而减少,并在进程关闭后会回收有些资源。通过对系统内存和CPU使用率的监控,就能给了解linx系统当前的“繁忙”程序。

1、系统内存管理、监控:vmstat和free -mt

  在linux系统中,内存分为物理内存和虚拟内存。

  物理内存是真实存在的,即存在内存条上。

  虚拟内存,称为交换分区。

  在linux系统,用vmstat,即Virtual Memory Statistics,虚拟内存统计命令。

[root@weekend110 ~]# man vmstat
VMSTAT(8) Linux Administrator’s Manual VMSTAT(8)

NAME
vmstat - Report virtual memory statistics

SYNOPSIS
vmstat [-a] [-n] [-t] [-S unit] [delay [ count]]
vmstat [-s] [-n] [-S unit]
vmstat [-m] [-n] [delay [ count]]
vmstat [-d] [-n] [delay [ count]]
vmstat [-p disk partition] [-n] [delay [ count]]
vmstat [-f]
vmstat [-V]

DESCRIPTION
vmstat reports information about processes, memory, paging, block IO, traps, and cpu activity.

The first report produced gives averages since the last reboot. Additional reports give information on a sam-
pling period of length delay. The process and memory reports are instantaneous in either case.

Options
The -a switch displays active/inactive memory, given a 2.5.41 kernel or better.

The -f switch displays the number of forks since boot. This includes the fork, vfork, and clone system calls,
and is equivalent to the total number of tasks created. Each process is represented by one or more tasks,
depending on thread usage. This display does not repeat.

The -t switch adds timestamp to the output.

The -m switch displays slabinfo.

The -n switch causes the header to be displayed only once rather than periodically.

The -s switch displays a table of various event counters and memory statistics. This display does not repeat.

delay is the delay between updates in seconds. If no delay is specified, only one report is printed with the

[root@weekend110 ~]# vmstat
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
0 0 0 953576 65676 531364 0 0 101 50 113 278 4 4 90 1 0
[root@weekend110 ~]# vmstat 2 4     每隔2秒执行一次,共执行4次

procs ,是进程,只输出两列信息,r表示正在运行的进程数,b是处于等待状态的进程数。

memory,是内存,输出四列信息,swpd涉及分页读取或写入磁盘的进程所消耗的所有内存,其表示系统已使用交换分区空间的数量。

                free为空闲的物理内存空间

                buff为系统用于缓冲区的物理内存空间

                cache为用作缓存的物理内存空间

swap,只输出两列信息,si表示系统从磁盘交换到内存的交换页数量,so表示从内存交换到磁盘的交换页数量

io,bi表示从磁盘读入到内存的块数量,bo为从内存读入到磁盘的块数。

system,in表示每秒系统的中断数,cs表示 每秒系统进程上下文切换的次数。

cpu,us表示执行用户进程时所使用的cpu时间,sy为执行系统进程时所使用的cpu时间,id表示cpu的空间时间,wa是等待I/O时所使用的cpu时间。

procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
0 0 0 953584 65676 531376 0 0 101 50 113 277 4 4 90 1 0
0 0 0 953576 65676 531376 0 0 0 12 38 51 1 0 99 0 0
1 0 0 953576 65676 531376 0 0 0 0 31 46 0 1 99 0 0
0 0 0 953576 65676 531376 0 0 0 0 38 170 1 1 99 0 0
[root@weekend110 ~]#

[root@weekend110 ~]# free -mt      m表示以兆字节为单位输出,t表示提供一个合计行
total used free shared buffers cached
Mem: 1861 931 930 0 64 518
-/+ buffers/cache: 348 1513
Swap: 3055 0 3055
Total: 4917 931 3985
[root@weekend110 ~]#

2、系统CPU管理、监控:sar -u、mpstat、uptime

[root@weekend110 ~]# sar -u     -u是sar的默认选项,其表示以百分比的形式输出
Linux 2.6.32-431.el6.x86_64 (weekend110) 10/21/2016 _x86_64_ (1 CPU)

09:10:46 AM LINUX RESTART

09:20:02 AM CPU %user %nice %system %iowait %steal %idle
09:30:01 AM all 0.03 0.00 0.27 0.03 0.00 99.67
09:40:01 AM all 0.02 0.00 0.27 0.09 0.00 99.62
09:50:01 AM all 0.10 0.00 0.37 0.01 0.00 99.53
10:00:02 AM all 14.65 0.00 10.17 2.27 0.00 72.92
10:10:02 AM all 11.55 0.00 11.19 0.37 0.00 76.90
10:20:01 AM all 11.05 0.17 10.43 2.37 0.00 75.98
10:30:01 AM all 3.17 0.00 2.58 0.06 0.00 94.19
10:40:01 AM all 2.00 0.00 1.60 0.48 0.00 95.92
10:50:01 AM all 0.84 0.00 0.67 0.01 0.00 98.48
11:00:01 AM all 0.72 0.00 0.62 0.01 0.00 98.65
Average: all 4.33 0.02 3.76 0.56 0.00 91.34
[root@weekend110 ~]#

CPU表示系统中运行的CPU的编号(如双核)

%user表示,在用户模式下进程运行所花的CPU时间(%)

%nice表示,一个运行良好的进程运行所花的CPU时间(%)

%system表示,进程在内核模式下运行所花的CPU时间(%)

%iowait表示,在无进程运行时CPU等待I/O完成所花的时间(%)

%idle表示,CPU空闲时间(%)

[root@weekend110 ~]# mpstat
Linux 2.6.32-431.el6.x86_64 (weekend110) 10/21/2016 _x86_64_ (1 CPU)

11:08:56 AM CPU %usr %nice %sys %iowait %irq %soft %steal %guest %idle
11:08:56 AM all 3.89 0.01 3.52 1.01 0.02 0.15 0.00 0.00 91.40
[root@weekend110 ~]# mpstat 2    表示2秒收集一次,按ctrl + c组合键退出
Linux 2.6.32-431.el6.x86_64 (weekend110) 10/21/2016 _x86_64_ (1 CPU)

11:08:59 AM CPU %usr %nice %sys %iowait %irq %soft %steal %guest %idle
11:09:01 AM all 0.52 0.00 0.52 0.00 0.00 0.00 0.00 0.00 98.97
11:09:03 AM all 0.00 0.00 0.51 0.00 0.00 0.00 0.00 0.00 99.49
11:09:05 AM all 0.50 0.00 0.50 0.00 0.00 0.50 0.00 0.00 98.51
11:09:07 AM all 0.52 0.00 0.52 0.00 0.00 0.00 0.00 0.00 98.97
11:09:09 AM all 0.00 0.00 0.51 0.00 0.00 0.00 0.00 0.00 99.49
11:09:11 AM all 0.51 0.00 0.51 0.00 0.00 0.51 0.00 0.00 98.46
^C
[root@weekend110 ~]#

  %ird表示,硬件中断和软件中断所花费的CPU时间(%)

  %intr/s表示,CPU每秒处理中断的次数

[root@weekend110 ~]# uptime
11:10:54 up 2:00, 3 users, load average: 0.01, 0.11, 0.07
[root@weekend110 ~]#

   当然,也可以使用System Monitor窗口监控CPU的使用情况。

最新文章

  1. orm映射 封装baseDao
  2. Javascript运动基础
  3. 使用Linux碎解三_CentOS7搭建Lamp环境安装zabbix遇到的问题
  4. Effective Java 69 Prefer concurrency utilities to wait and notify
  5. 如何选择linux 版本
  6. iOS开发-使用Storyboard进行界面跳转及传值
  7. 一步步优化JVM六:优化吞吐量
  8. POJ 2989 All Friends 极大团计数
  9. 基于Haproxy+Keepalived构建高可用负载均衡集群
  10. 从事务角度粗窥架构的可扩展性和可维护性:内容整理自java web轻量级开发面试教程
  11. Python学习笔记 - 数据类型和变量
  12. thinkphp5 去除缓存
  13. json元素顶部插入unshift、尾部插入push、顶部获取shift、尾部获取pop
  14. 深入理解CSS系列(二):为什么height:100%不生效?
  15. luogu 2051 中国象棋
  16. springMVC源码分析--FlashMap和FlashMapManager重定向数据保存
  17. Linux 压缩解压缩命令详解
  18. cpio解压initramfs.img
  19. MySQL主从复制(Replication for Backup)
  20. item2

热门文章

  1. centos 6.5 安装jenkins
  2. 简单Linq笔记
  3. 转换rgb为16进制颜色值
  4. XML2_XML的节点和元素
  5. validate插件的使用
  6. LOL(英雄联盟)系统鼠标速度锁定工具
  7. UIApplication 常用方法
  8. SQL Join PK ChinaJoy
  9. 分享关于学习new BufferedWriter()方法时常遇到的一个无厘头的问题
  10. IE8下String的Trim()方法失效的解决方法