top是一个经常用的命令,平时只是留意一下哪个进程用得比较高CPU或者内存,但这里还是有一些小学问:

Top命令截图

Tasks

Tasks 任务(进程),系统现在共有627个进程,其中处于运行中的有1个,626个在休眠(sleep),stoped状态的有0个,zombie状态(僵尸)的有0个。

CPU(s)

top开始显示的是总的CPU使用的状况,而想看每一个逻辑CPU的状态,可按“1”。

关于us/sy/ni/id/wa/hi/si/st的含义:

us:用户空间(user)占用CPU的百分比。

sy:内核空间(system)占用CPU的百分比。

ni:改变过优先级的进程占用CPU的百分比

id:空闲(idle)CPU百分比

wa:IO等待(wait)占用CPU的百分比

hi:硬中断(Hardware IRQ)占用CPU的百分比

si:软中断(Software Interrupts)占用CPU的百分比

st:(Steal Time)当hypervisor服务另一个虚拟处理器的时候,虚拟 CPU 等待实际 CPU 的时间的百分比。

Load Average

Load Averge:系统负载,即任务队列的平均长度。 三个数值分别为 1分钟、5分钟、15分钟前到现在的平均值。

Load Averge是怎么观察比较合适呢?其定义为:单个逻辑CPU满载为1.0,超过1.0即为过载运行。一个稳定运行的系统一般是不会一直过载负荷运行的,因此最好观察的是5分钟和15分钟的值。如果这个值除以逻辑CPU数大于1.0的话,可能系统就需要优化才能继续运行。

如何看逻辑CPU的数量?给出Shell代码:

grep 'model name' /proc/cpuinfo | wc -l

Mem

Mem:系统内存的状态

total:交换区总量(64GB)

used:使用的交换区总量(62GB)

free:空闲交换区总量(448MB)

buffers:缓冲的交换区总量(4GB)

Swap

Swap:虚拟内存的状态

total:交换区总量(2GB)

used:使用的交换区总量(0)

free:空闲交换区总量(2GB)

cached:缓存的交换区总量(54GB)

再说多一点:Mem的buffer和Swap的cached

之前在微博很热的一条面试问题:buffer和cached的区别是什么?正好在top的命令出现了,也想多说一点。

buffers:出现在Mem,实际上是要从内存写入硬盘的数据,由于内存和硬盘的IO速度不一样,解决的是写效率的问题;

cached:出现在Swap,实际上是要从硬盘读入内存的数据,由于再读一次硬盘速度会很慢,虚拟内存就将一些次重要的文件放在cached,让二次读取同样数据时间会更快一点。

PID USER PR NI VIRT RES SHR %CPU %Mem Time+ COMMAND

标题够长的,实际要弄清楚的是各种标记的意义。

PID:进程id

USER:运行的用户

PR:进程优先权,代表这个进程可被执行的优先级,其值越小,优先级就越高,越早被执行

NI:进程Nice值,代表这个进程的优先值,越小,优先值越高(负值表示高优先级,正值表示低优先级)

VIRT:进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES

RES:进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA

SHR:共享内存大小,单位kb

%CPU:上次更新到现在的CPU时间占用百分比

%Mem:进程使用的物理内存百分比

Time+:进程使用的CPU时间总计,单位1/100秒

COMMAND:进程名称(命令名/命令行)

重点看看PR和NI的关系:

进程优先级:PRI(new)=PRI(old)+NICE

也就是进程最后的优先级是由PR和NIC共同决定的。

对nice值一个形象比喻,假设在一个CPU轮转中,有2个runnable的进程A和B,如果他们的nice值都为0,假设内核会给他们每人分配1k个cpu时间片。但是假设进程A的为0,但是B的值为-10,那么此时CPU可能分别给A和B分配1k和1.5k的时间片。故可以形象的理解为,nice的值影响了内核分配给进程的cpu时间片的多少,时间片越多的进程,其优先级越高,其优先级值(PRI)越低。%nice,就是改变过优先级的进程的占用CPU的百分比,如上例中就是0.5k/2.5k=1/5=20%。

linux top swap 为0,Linux:top相关推荐

  1. linux使用swap的命令,Linux系统如何使用swap和zram swap命令

    使用Linux的网管们肯定都知道swap和zram,事实上掌握swap和zram能提升答案及的工作效率,但有些网友并不清楚Linux swap和zram怎么使用,虽说Linux zram的使用情况比较 ...

  2. linux驱动基础开发0——linux 设备驱动概述-转

    目前,Linux软件工程师大致可分为两个层次: (1)Linux应用软件工程师(Application Software Engineer):       主要利用C库函数和Linux API进行应用 ...

  3. linux dd 尾部添加0,Linux命令dd的使用帮助 | Soo Smart!

    dd --help 常用dd来创建大文件,如dd if=/dev/zero of=/mybigfile bs=128M count=0 seek=24 参数: 1. if=文件名:输入文件名,缺省为标 ...

  4. linux编译gcc5.1.0,linux编译gcc-5.1.0

    最新的gcc-5.1.0才发布出来,迫不及待地装上试一试. 在外链网址已屏蔽下载gcc-5.1.0 然后解压到目录gcc-5.1.0/ 运行 ./contrib/download_prerequisi ...

  5. linux定时器时间间隔为0,linux下定时器的使用--timer_create等系列

    直接上程序 程序1:采用新线程派驻的通知方式 #include #include #include #include #include #include #define CLOCKID CLOCK_R ...

  6. 非cpu0启动linux,SD卡无法启动Linux的问题及解决

    最近在Zynq板上启动linaro桌面系统时,发现一个奇怪的问题,系统在启动到最后,已经打印了如下信息:[drm] Initialized axi_hdmi_drm 1.0.0 20120930 on ...

  7. Top 命令 如何查看linux系统中空闲内存/物理内存使用/剩余内存

    1.top命令 top前5行统计信息 ** 第一行: top - 13:59:30 up 15 days, 4:53, 2 users, load average: 1.31, 1.62, 1.41 ...

  8. linux 观察应用使用内存的情况,Linux学习笔记:free和top命令查看系统内存使用情况...

    free 命令 Linux free 命令用于显示内存状态. free 指令会显示内存的使用情况,包括实体内存,虚拟的交换文件内存,共享内存区段,以及系统核心使用的缓冲区等. 语法: free [-b ...

  9. 查看linux cpu和内存利用率__linux top命令

    查看cpu信息: cd / more /proc/cpuinfo 将列出cpu的详细信息. 更具体的讲解TOP文章(这里就不再剪切出来了) http://www.linuxidc.com/Linux/ ...

最新文章

  1. 2022-2028年中国高纯锑行业市场全景研究及发展趋势分析报告
  2. npm run build打包失败
  3. c++中的函数模版和类模版
  4. sql语句转linq的一个小工具
  5. 一个小程序:图片代替鼠标移动
  6. 动图-完整清晰展示TCP的三次握手与四次挥手
  7. java 数组遍历_Java中遍历数组使用foreach循环还是for循环?
  8. arm linux串口控制led,通信程序设计 - Linux下ARM和单片机的串口通信设计
  9. mysql-数据库操作-连接-创建-删除-修改编码-查询-切换
  10. access control java_Java Access Controller
  11. iOS-获取通讯录信息
  12. static、const、static const、const static成员的初始化问题
  13. 数据存储与访问(SharedPreferencesDemo)
  14. ajax submit 文件上传,ajaxSubmit() 上传文件和进度条显示
  15. LiveGBS/LiveNVR组合实现GB35114平台端和GB35114设备端的GB35114的交互流程
  16. scala下载和环境搭建
  17. 在spyder中设置缩进对齐线提示
  18. 手机NFC天线的集总参数设计
  19. “自我炒作”雄安新区 遭监管层严打
  20. 报表打印(rdlc)

热门文章

  1. Myeclipse 9正式版 下载
  2. 剪切板是计算机系统,必备的高效小工具Ditto轻松记录复制剪切板内容-win7剪切板...
  3. 企业财务管理升级,智慧税务和数据可视化打造新标准
  4. HTML结业做什么项目好,高薪就业-好程序员HTML5大前端12期毕业典礼!
  5. Linux最帅版主所经历的面试题,全部答对月薪10K+ ...答案公布
  6. python 读取Excel文件(包括后缀为.xls与.xlsx)
  7. mysql 中文乱码 mybatis_mybatis连接mysql数据库插入中文乱码
  8. jQuery之家的资源
  9. 计算机在土木工程中的应用课设,计算机在土木工程中的应用编程试题
  10. MFC菜单、工具栏和状态栏