zoukankan      html  css  js  c++  java
  • top命令查看CPU状态信息:%us、%sy、%ni、%id、%wa、%hi、%si、%st 表示的是什么意思

    Linux CPU负载状态:%us/%sy/%ni/%id/%wa/%hi/%si/%st含义

     

    缙哥哥发现用了雅黑的探针,在 Linux 的 CPU 状态信息中发现,有“%us、%sy、%ni、%id、%wa、%hi、%si、%st”等状态。不仅如此,你用 ssh 在服务器上使用“top”命令,也可以看到以上几项参数状态,这些是什么意思呢?缙哥哥今天查了一些文章,学习后跟大家分享一下!

    CPU 相关监控项

    • us:用户空间占用CPU百分比(Host.cpu.user)
    • sy:内核空间占用CPU百分比(Host.cpu.system)
    • ni:用户进程空间内改变过优先级的进程占用CPU百分比
    • id:空闲CPU百分比(Host.cpu.idle)
    • wa:等待输入输出的CPU时间百分比
    • hi:硬件中断
    • si:软件中断
    • st:实时
    监控项名称监控项含义单位说明
    Host.cpu.idle 当前空闲CPU百分比 % 当前CPU处于空闲状态的百分比
    Host.cpu.system 当前内核空间占用CPU百分比 % 指系统上下文切换的消耗,该监控项数值比较高,说明服务器开了太多的进程或者线程
    Host.cpu.user 当前用户空间占用CPU百分比 % 用户进程对CPU的消耗
    Host.cpu.iowait 当前等待IO操作的CPU百分比 % 该项数值比较高说明有很频繁的IO操作
    Host.cpu.other 其他占用CPU百分比 % 其他消耗,计算方式为(Nice + SoftIrq + Irq + Stolen)的消耗
    Host.cpu.totalUsed 当前消耗的总CPU百分比 % 指以上各项CPU消耗的总和,通常用于报警

    系统平均负载监控项

    除了前3组数字分别表示一分钟、五分钟、十五分钟的平均进程数量;第四组数字,分母表示系统进程总数,分子表示正在运行的进程数;最后一个数字表示最近运行的进程ID。

    监控项名称监控项含义单位
    Host.load1 过去1分钟的系统平均负载
    Host.load5 过去5分钟的系统平均负载
    Host.load15 过去15分钟的系统平均负载

    好了,现在是不是就很清楚很明白了呢!现在缙哥哥是越来越爱 Linux 操作系统了,不仅能充分利用内存(《Linux 运行 WordPress 内存占用高?》),低配置也能跑各种程序,而且还安全!

     

    top命令查看CPU状态信息:%us、%sy、%ni、%id、%wa、%hi、%si、%st 表示的是什么意思

    在服务器上使用top命令查看服务器资源使用情况

    %Cpu(s): 10.6 us,  7.0 sy,  0.0 ni, 82.4 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st

    各项数据表示内容

    us:用户空间占用CPU百分比
    
    sy:内核空间占用CPU百分比
    
    ni:用户进程空间内改变过优先级的进程占用CPU百分比
    
    id:空闲CPU百分比
    
    wa:等待输入输出的CPU时间百分比
    
    hi:硬件中断
    
    si:软件中断
    
    st:实时


    top 命令详解

     

    top命令


    top命令
    [root@fpm_nginx /app]# top
    top - 12:19:58 up  3:45,  1 user,  load average: 0.00, 0.02, 0.05
    Tasks:  91 total,   1 running,  90 sleeping,   0 stopped,   0 zombie
    %Cpu(s):  0.3 us,  0.3 sy,  0.0 ni, 99.3 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
    KiB Mem :   995896 total,   695140 free,    94524 used,   206232 buff/cache
    KiB Swap:  2097148 total,  2097148 free,        0 used.   731568 avail Mem 
    
       PID USER      PR  NI    VIRT    RES    SHR S %CPU %MEM     TIME+ COMMAND                          
      6370 root      20   0  573936  17236   6096 S  0.3  1.7   0:05.52 tuned                            
      9977 root      20   0  161892   2172   1548 R  0.3  0.2   0:00.73 top      
      
    第一行:
    top - 12:19:58 up  3:45				# 启动了3小时45分钟,当前时间系统时间-12:19:58
    1 user							 	# 同时在线的用户
    load average: 0.00, 0.02, 0.05			# 服务器的负载,1min的负载、5min的负载、15min的负载
    
    第二行:
    Tasks:  91 total					# 当前有91个工作任务
    1 running							# 1个正在执行的
    90 sleeping							# 90个在休眠的
    0 stopped							# 没有被停止的
    0 zombie							# 没有僵尸进程
    
    第三行:
    %Cpu(s):  0.3 us,  0.3 sy			# 用户使用cpu的百分比
    		us		user		# 用户态
    		sy		system		# 内核态
    
    ni									# 优先级
    99.3 id								# cpu空闲程度
    0.0 wa								# 等待的状态的进程占cpu的百分比
    0.0 hi								# 硬中断
    0.0 si								# 软中断
    0.0 st								# 虚拟机占用物理机的百分比
    

    什么是中断


    中断是指计算机运行过程中,出现某些意外情况需主机干预时,机器能自动停止正在运行的程序并转入处理新的程序,处理完毕后又返回原被暂停的程序继续运行。


    什么是软中断呢?


    ​ 软中断和硬中断都有一个共同的特点,都会中断当前操作,但是呢又有所区别,软中断当在进行一个任务的时候来了一个新的任务,就将先停止当前的任务,然后立马将新的任务放入内存当中,延迟处理新任务,最后此 任务交由线程来进行处理。
    ​ 为了满足实时系统的要求,中断处理应该是越快越好。linux为了实现这个特点,当中断发生的时候,硬中断处理那些短时间就可以完成的工作,而将那些处理事件比较长的工作,放到中断之后来完成,也就是软中断 (softirq)来完成。


    什么是硬中断呢


    ​ 同样在执行一个进程的时候,又有新的任务请求访问,cpu会立马对当前进程进行处理,但是呢新的进程只能处于等待,等待上进程结束之后,才能对新进程进行处理
    ​ 由与系统相连的外设(比如网卡、硬盘)自动产生的。主要是用来通知操作系统,系统外设状态的变化。比如当网卡收到数据包的时候,就会发出一个中断。我们通常所说的中断指的是硬中断(hardirq)。

    top-的使用方法


    [root@fpm_nginx ~]# yum -y install htop
    htop
    top
    
    -d		# 指定动态变化时间
    -p		# 查看指定pid的进程
    -u		# 查看指定用户的进程
    -b		# 输出完整的内容
    	top -d1  -b -n2 >top.txt
    -n		# 指定次数
    
    # top的快捷键
    h		# 查看帮助
    z		# 高亮显示
    1 		# 显示所有cpu
    s		# 设置刷新时间
    b		# 高亮显示处于R状态的进程
    M		# 按内存百分比排序输出
    P		# 按CPU使用百分比排序输出
    R		# 对排序进行反转
    f		# 自定义显示字段
    k		# kill掉指定的pid进程
    W		# 保存top环境设置 ~/.toprc
    B		#  加粗
    q		# 退出
    
    PID 	# 进程id
    USER      # 用户
    PR  	# 优先级
    NI    	# nice值
    VIRT    # 虚拟内存
    RES    # 真实内存
    SHR 	# 共享内存
    S 		# 进程的状态
    %CPU	# 占用cpu的百分比
    %MEM 	# 占用内存的百分比
    TIME+ 	# 进程运行时间
    COMMAND		# 进程运行的命令
     
  • 相关阅读:
    mac 打开文件路径
    js 小技巧
    java 随机数
    sql server 2000 按日期查找
    WML
    Groovy
    Windows Azure Traffic Manager (4) Windows Azure Traffic Manager (4) 循环法和故障转移
    Windows Azure Cloud Service (28) 在Windows Azure发送邮件(中)
    [New Portal] Windows Azure Cloud Service (30) 新的Windows Azure SDK 1.7和新的Windows Azure Managemeng Portal
    Windows Azure Traffic Manager (3) Windows Azure Traffic Manager (3) 创建流量管理器策略和性能负载平衡
  • 原文地址:https://www.cnblogs.com/xuanbjut/p/13391578.html
Copyright © 2011-2022 走看看