Linux查看CPU信息
显示cpu的相关信息, lscpu
从sysfs
和/proc/cpuinfo
收集cpu
体系结构信息,命令的输出比较易读
$ lscpu
查看逻辑CPU个数
方法1:
$ cat /proc/cpuinfo
方法2
$ cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
查看CPU使用率
即时显示process的动态,top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。
$ top
第一行,任务队列信息,同 uptime 命令的执行结果,具体参数说明情况如下:
- 05:46:38 — 当前系统时间
- up 4 days, 4:28 — 系统已经运行了4天16小时44分钟(在这期间系统没有重启过的吆!)
- 6 users — 当前有6个用户登录系统
- load average: 5.69, 4.45, 2.77 — load average后面的三个数分别是1分钟、5分钟、15分钟的负载情况。
load average数据是每隔5秒钟检查一次活跃的进程数,然后按特定算法计算出的数值。如果这个数除以逻辑CPU的数量,结果高于5的时候就表明系统在超负荷运转了。
第二行,Tasks — 任务(进程),具体信息说明如下:
系统现在共有343个进程,其中处于运行中的有2个,341个在休眠(sleep),stoped状态的有0个,zombie状态(僵尸)的有0个。
第三行,cpu状态信息,具体属性说明如下:
- 10.2%us — 用户空间占用CPU的百分比。
- 0.4% sy — 内核空间占用CPU的百分比。
- 0.0% ni — 改变过优先级的进程占用CPU的百分比
- 86.8% id — 空闲CPU百分比
- 0.0% wa — IO等待占用CPU的百分比
- 0.0% hi — 硬中断(Hardware IRQ)占用CPU的百分比
- 0.2% si — 软中断(Software Interrupts)占用CPU的百分比
第四行,内存状态,具体信息如下:
- total — 物理内存总量
- used — 使用中的内存总量
- free — 空闲内存总量
- buffers — 缓存的内存量
第五行,swap交换分区信息,具体信息说明如下:
- total — 交换区总量
- 0k used — 使用的交换区总量
- free — 空闲交换区总量
- cached — 缓冲的交换区总量
第七行以下:各进程(任务)的状态监控,项目列信息说明如下:
- Ctrl+C可以退出TOP
- PID — 进程id
- USER — 进程所有者
- PR — 进程优先级
- NI — nice值。负值表示高优先级,正值表示低优先级
- VIRT — 进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES
- RES — 进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA
- SHR — 共享内存大小,单位kb
- S — 进程状态。D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程
- %CPU — 上次更新到现在的CPU时间占用百分比
- %MEM — 进程使用的物理内存百分比
- TIME+ — 进程使用的CPU时间总计,单位1/100秒
- COMMAND — 进程名称(命令名/命令行)
查看内存使用情况
free
命令是Linux
系统中最简单和最常用的内存查看命令
$ free -m
total used free shared buff/cache available
Mem: 31723 1960 264 1 29498 29295
Swap: 8191 2 8189
$ free -h
total used free shared buff/cache available
Mem: 30Gi 1.9Gi 250Mi 1.0Mi 28Gi 28Gi
Swap: 8.0Gi 2.0Mi 8.0Gi
其中, -m 选项是以MB为单位来展示内存使用信息; -h 选项则是以人类(human)可读的单位来展示。
后台运行
nohup command &