Linux查看CPU和内存使用情况

2023-10-27

top命令

  top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。

  运行 top 命令后,CPU 使用状态会以全屏的方式显示,并且会处在对话的模式 -- 用基于 top 的命令,可以控制显示方式等等。退出 top 的命令为 q (在 top 运行中敲 q 键一次)。

 

  


内容解释:

第一行(top):

  15:24:36 系统当前时刻

  14 days 系统启动后到现在的运作时间

  3 users 当前登录到系统的用户,更确切的说是登录到用户的终端数 -- 同一个用户同一时间对系统多个终端的连接将被视为多个用户连接到系统,这里的用户数也将表现为终端的数目

  load average 当前系统负载的平均值,后面的三个值分别为1分钟前、5分钟前、15分钟前进程的平均数,一般的可以认为这个数值超过 CPU 数目时,CPU 将比较吃力的负载当前系统所包含的进程

 

第二行(Tasks):

  288 total 当前系统进程总数

  1 running 当前运行中的进程数

  287 sleeping 当前处于等待状态中的进程数

  0 stoped 被停止的系统进程数

  0 zombie 僵尸进程数

 

第三行(Cpus):

  7.3% us 用户空间占用CPU百分比
  2.0% sy 内核空间占用CPU百分比
  0.0% ni 用户进程空间内改变过优先级的进程占用CPU百分比
  90.4% id 空闲CPU百分比
  0.3% wa 等待输入输出的CPU时间百分比
  0.0% hi
  0.0% si

  0.0% st

 

第四行(Mem):

  2042616 total 物理内存总量
  1770116 used 使用的物理内存总量
  272500 free 空闲内存总量
  163912 buffers 用作内核缓存的内存量

    

第五行(Swap):

表示类别同第四行(Mem),但此处反映着交换分区(Swap)的使用情况。通常,交换分区(Swap)被频繁使用的情况,将被视作物理内存不足而造成的。

  2094076 total 交换区总量
  45052 used 使用的交换区总量
  2049024 free 空闲交换区总量
  346624 cached 缓冲的交换区总量

 

最下部分的进程列表栏:

以 PID 区分的进程列表将根据所设定的画面更新时间定期的更新。通过 top 内部命令可以控制此处的显示方式:

  PID:进程的ID
  USER:进程所有者
  PR:进程的优先级别,越小越优先被执行
  NInice:值
  VIRT:进程占用的虚拟内存
  RES:进程占用的物理内存
  SHR:进程使用的共享内存
  S:进程的状态。S表示休眠,R表示正在运行,Z表示僵死状态,N表示该进程优先值为负数
  %CPU:进程占用CPU的使用率
  %MEM:进程使用的物理内存和总内存的百分比
  TIME+:该进程启动后占用的总的CPU时间,即占用CPU使用时间的累加值。
  COMMAND:进程启动命令名称

 

top 运行中可以通过 top 的内部命令对进程的显示方式进行控制。内部命令如下表:

  s- 改变画面更新频率

  l - 关闭或开启第一部分第一行 top 信息的表示

  t - 关闭或开启第一部分第二行 Tasks 和第三行 Cpus 信息的表示

  m - 关闭或开启第一部分第四行 Mem 和 第五行 Swap 信息的表示

  N - 以 PID 的大小的顺序排列表示进程列表(第三部分后述)

  P - 以 CPU 占用率大小的顺序排列进程列表 (第三部分后述)

  M - 以内存占用率大小的顺序排列进程列表 (第三部分后述)

  h - 显示帮助

  n - 设置在进程列表所显示进程的数量

  q - 退出 top

  s -改变画面更新周期

 

ps命令

  ps命令用于报告当前系统的进程状态。ps命令是最基本同时也是非常强大的进程查看命令,使用该命令可以确定有哪些进程正在运行和运行的状态、进程是否结束、进程有没有僵死、哪些进程占用了过多的资源等等,总之大部分信息都是可以通过执行该命令得到的。

 

  F 代表这个程序的旗标 (flag), 4 代表使用者为 super user;

  S 代表这个程序的状态 (STAT);

  PID 程序的 ID ;

  C CPU 使用的资源百分比

  PRI 这个是 Priority (优先执行序) 的缩写;

  NI 这个是 Nice 值。

  ADDR 这个是 kernel function,指出该程序在内存的那个部分。如果是个 running # 的程序,一般就是『 - 』

  SZ 使用掉的内存大小;

  WCHAN 目前这个程序是否正在运作当中,若为 - 表示正在运作;

  TTY 登入者的终端机位置;

  TIME 使用掉的 CPU 时间。

  CMD 所下达的指令

 

pmap命令

  pmap命令用于报告进程的内存映射关系

  $ pmap -d 16613

 

 

free命令

  free命令可以显示当前系统未使用的和已使用的内存数目,还可以显示被内核使用的内存缓冲区。

  

 

下面是对这些数值的解释:
  total:总计物理内存的大小。
  used:已使用多大。
  free:可用有多少。
  Shared:多个进程共享的内存总额。
  Buffers/cached:磁盘缓存的大小。


第三行(-/+ buffers/cached):
  used:已使用多大。
  free:可用有多少。

转载于:https://www.cnblogs.com/mengchunchen/p/9669704.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Linux查看CPU和内存使用情况 的相关文章

随机推荐

  • tslib移植的问题:No raw modules loaded.ts_config:No such file or directory

    1 在开发板上运行校正程序时出现No raw modules loaded 解决方法是把 tslib etc目录下的ts conf 的 module raw input 的注释符号 去掉 但记住不要在前面留有 空格 否则会出现错误Segme
  • python 打开读取文件 出现异常 关闭文件的处理(世界上没有傻问题!但我是个傻子)

    事情梗概 try 尝试读取一个不存在的文件 except Exception as e 打印异常 finally 关闭文件 但是关闭文件时报异常 算了 看代码吧 try f open file name rb file data f rea
  • Vue.js的组件化开发

    组件化开发 什么是组件 web中的组件其实就是页面组成的一部分 好比是电脑中的每一个元件 如硬盘 键盘 鼠标 它是一个具有独立的逻辑和功能或界面 同时又能根据规定的接口规则进行相互融化 变成一个完整的应用 页面就是由一个个类似这样的组成部分
  • iOS开源系列——下拉刷新控件

    EGOTableViewPullRefresh FaceBook开源控件 下拉刷新的鼻祖 SVPullToRefresh 下拉刷新控件 MJRefresh 比较好用的下拉刷新 可以自定义上下拉刷新的文字说明 具体使用看 使用方法 国人写 X
  • 中间件的分类和作用

    要说清这个问题我们用一个生活中的实例来比喻 把分布式系统看作北京市区的交通系统 网络看作市区马路 通过交通工具 汽车 实现通信 每分钟将有几万辆车在马路上行驶 如果没有相应的交通设施和管理规划 北京市将会乱成一团 发生各种交通事故 1 通信
  • java各种报错汇总与分析

    1 没有找到pom文件 需要设置版本号 在这里插入图片描述 https img blog csdnimg cn 20210720112611634 png pic center 解决办法 https blog csdn net SSband
  • 从2023蓝帽杯0解题heapSpary入门堆喷

    从2023蓝帽杯0解题heapSpary入门堆喷 关于堆喷 堆喷射 Heap Spraying 是一种计算机安全攻击技术 它旨在在进程的堆中创建多个包含恶意负载的内存块 这种技术允许攻击者避免需要知道负载确切的内存地址 因为通过广泛地 喷射
  • adb shell 小米手机_【ADB命令实战】免ROOT停用小米手机系统应用

    对于未解锁的手机 总存在那么一些我们用不到 甚至看都不想看到的应用 但是没办法卸载 在这里提供一些禁用掉这些应用的方法供参考 本内容是以小米的MIUI系统为例 其他品牌机型不确保可以成功 毕竟系统应用的包名是不一样的 需要自己去发现 1 打
  • linux-hd.c

    linux kernel hd c C 1991 Linus Torvalds This is the low level hd interrupt support It traverses the request list using i
  • 数据结构与算法课程笔记(二)

    实验二 线性表的顺序存储结构实现 一 实验目的 二 实验内容 一 实验目的 熟悉VC 工程项目的文件组织方式 线性表中数据元素间的关系及其顺序存储结构方式表示方法 顺序表的操作方法与接口函数的设计方法 二 实验内容 1 利用本次实验提供的文
  • element input复合框 修改下拉框样式

    element input复合框 修改下拉框样式 1 项目中经常会遇到修改ui组件库样式的问题 elemetui官网自带样式是这样的 我想修改选中颜色 以及背景颜色 这样设置发现不生效 加上 popper append to body fa
  • python 翻译模块 翻译API使用(百度、有道、谷歌)

    1 翻译模块 api使用分析 1 translate库 使用简单 但是有次数限制 翻译的准确性中等 2 百度api 推荐使用 代码简单 有模块 但是需要注册 获取key值 翻译的准确性中下 3 chrome翻译api 代码复杂 次数限制 但
  • java8的常用的新特性

    Java 8引入了许多新的特性 下面列举了一些常用的新特性 Lambda表达式 Lambda表达式是Java 8中引入的一种函数式编程特性 提供了一种更简洁和灵活的方式来编写匿名函数 方法引用 方法引用允许直接引用已经存在的方法作为Lamb
  • 华为od机试面试题目

    1 华为机试102道题解 2 华为机考题目 2023年7月30日 19 30 22 00 机考提示 注意事项 考前必看 1 注意编译环境的变化及语言选择 选自己熟悉的语言机考 2 机考共3道题 150分钟完成 3 题目难度为 一星和两星 2
  • JS——Mediator(中介者)模式

    我们从日常的生活中打个简单的比方 我们去房屋中介租房 房屋中介人在租房者和房东出租者之间形成一条中介 租房者并不关心他租谁的房 房东出租者也不关心他租给谁 因为有中介的存在 这场交易才变得如此方便 在软件的开发过程中 势必会碰到这样一种情况
  • 自己定义控件

    http blog csdn net lmj623565791 article details 38173061
  • qt信号槽连接方式Qt::UniqueConnection的使用

    qt信号槽连接方式Qt UniqueConnection的使用 qt信号槽连接方式一共有以下五种 具体方式不在一一赘述 本文记录第五种Qt UniqueConnection的使用方法 Qt AutoConnection Qt DirectC
  • 机器学习的训练数据(Training Dataset)、测试数据(Testing Dataset)和验证数据(Validation Dataset)

    三者的意义 训练数据 用来训练模型的数据 验证数据 用来检验模型准确率 测试数据 再一次确认验证数据集中的模型是好的模型 一般步骤 测试数据集和验证数据的数据一定不能用来训练 否则会出现过拟合的现象 代码 import math impor
  • linux笔记(10):ubuntu环境下,基于SDL2运行lvgl+ffmpeg播放mp4

    文章目录 1 ubuntu安装ffmpeg 1 1 源码安装 1 1 克隆ffmpeg源码 1 2 配置编译条件 编译 安装 1 2 直接安装依赖包 2 下载lvgl源码 2 1 测试原始代码 2 2 运行lv example ffmpeg
  • Linux查看CPU和内存使用情况

    top命令 top命令是Linux下常用的性能分析工具 能够实时显示系统中各个进程的资源占用状况 类似于Windows的任务管理器 运行 top 命令后 CPU 使用状态会以全屏的方式显示 并且会处在对话的模式 用基于 top 的命令 可以