proc主要文件说明
文件或目录名称 |
描 述 |
---|---|
apm |
高级电源管理信息 |
cmdline |
这个文件给出了内核启动的命令行 |
CPUinfo |
中央处理器信息 |
devices |
可以用到的设备(块设备/字符设备) |
dma |
显示当前使用的 DMA 通道 |
filesystems |
核心配置的文件系统 |
ioports |
当前使用的 I/O 端口 |
interrupts |
这个文件的每一行都有一个保留的中断 |
kcore |
系统物理内存映像 |
kmsg |
核心输出的消息,被送到日志文件 |
mdstat |
这个文件包含了由 md 设备驱动程序控制的 RAID 设备信息 |
loadavg |
系统平均负载均衡 |
meminfo |
存储器使用信息,包括物理内存和交换内存 |
modules |
这个文件给出可加载内核模块的信息。lsmod 程序用这些信息显示有关模块的名称,大小,使用数目方面的信息 |
net |
网络协议状态信息 |
partitions |
系统识别的分区表 |
pci |
pci 设备信息 |
scsi |
scsi 设备信息 |
self |
到查看/proc 程序进程目录的符号连接 |
stat |
这个文件包含的信息有 CPU 利用率,磁盘,内存页,内存对换,全部中断,接触开关以及赏赐自举时间 |
swaps |
显示的是交换分区的使用情况 |
uptime |
这个文件给出自从上次系统自举以来的秒数,以及其中有多少秒处于空闲 |
version |
这个文件只有一行内容,说明正在运行的内核版本。可以用标准的编程方法进行分析获得所需的系统信息 |
超全整理!Linux性能分析工具汇总合集 - 知乎
vmstat--虚拟内存统计
vmstat [参数][间隔时间][次数]
line1:平均值 ;line2:Now line3+:间隔N秒后
procs(进程):
r:多少进程在等待cpu,可判断是否需要增加CPU
b:多少进程正在不可中断的休眠(等待IO)
memory(内存):
swpd:使用虚拟内存大小
free: 空闲物理内存大小
buff: 用作缓冲的内存大小
cache: 用作缓存的内存大小
swpd:显示了多少块从块设备读取(si)和写出(so),通常反映了硬盘I/O。
si: 每秒从交换区写到内存的大小,由磁盘调入内存
so: 每秒写入交换区的内存大小,由内存调入磁盘
注意⚠️:内存够用的时候,这2个值都是0,如果这2个值长期大于0时,系统性能会受到影响,磁盘IO和CPU资源都会被消耗。有人看到空闲内存(free)很少的或接近于0时,就认为内存不够用了,不能光看这一点,还要结合si和so,如果free很少,但是si和so也很少(大多时候是0),那么不用担心,系统性能这时不会受到影响的。
IO:
bi: 每秒读取的块数
bo: 每秒写入的块数
注意⚠️:随机磁盘读写的时候,这2个值越大(如超出1024k),能看到CPU在IO等待的值也会越大。
system(系统):
in: 每秒中断数,包括时钟中断。
cs: 每秒上下文切换数。
cpu:
us: 用户进程执行时间百分比(user time)
⚠️:us的值比较高时,说明用户进程消耗的CPU时间多,但是如果长期超50%的使用,那么我们就该考虑优化程序算法或者进行加速。
sy: 内核系统进程执行时间百分比(system time)
⚠️:sy的值高时,说明系统内核消耗的CPU资源多,这并不是良性表现,应该检查原因。
id: 空闲时间百分比
wa: IO等待时间百分比
⚠️:wa的值高时,说明IO等待比较严重,这可能由于磁盘大量作随机访问造成,也有可能磁盘出现瓶颈(块操作)。
内存不足的表现:free memory急剧减少,回收buffer和cacher也无济于事,大量使用交换分区(swpd),页面交换(swap)频繁,读写磁盘数量(io)增多,缺页中断(in)增多,上下文切换(cs)次数增多,等待IO的进程数(b)增多,大量CPU时间用于等待IO(wa)
iostat--报告中央处理器(CPU)统计信息
报告中央处理器(CPU)统计信息和整个系统、适配器、tty 设备、磁盘和 CD-ROM 的输入/输出统计信息
Linux iostat命令详解 - 简书
iostat[参数][时间][次数]
-C 显示CPU使用情况
-d 显示磁盘使用情况
-k 以 KB 为单位显示
-m 以 M 为单位显示
-N 显示磁盘阵列(LVM) 信息
-n 显示NFS 使用情况
-p[磁盘] 显示磁盘和分区的情况
-t 显示终端和CPU的信息
-x 显示详细信息
-V 显示版本信息
常见用法
iostat -d -k 2 4
cpu属性值说明:
%user:CPU处在用户模式下的时间百分比。
%nice:CPU处在带NICE值的用户模式下的时间百分比。
%system:CPU处在系统模式下的时间百分比。
%iowait:CPU等待输入输出完成时间的百分比。
%steal:管理程序维护另一个虚拟处理器时,虚拟CPU的无意识等待时间百分比。
%idle:CPU空闲时间百分比。
disk属性值说明:
rrqm/s: 每秒进行 merge 的读操作数目。即 rmerge/s
wrqm/s: 每秒进行 merge 的写操作数目。即 wmerge/s
r/s: 每秒完成的读 I/O 设备次数。即 rio/s
w/s: 每秒完成的写 I/O 设备次数。即 wio/s
rsec/s: 每秒读扇区数。即 rsect/s
wsec/s: 每秒写扇区数。即 wsect/s
rkB/s: 每秒读K字节数。是 rsect/s 的一半,因为每扇区大小为512字节。
wkB/s: 每秒写K字节数。是 wsect/s 的一半。
avgrq-sz: 平均每次设备I/O操作的数据大小 (扇区)。
avgqu-sz: 平均I/O队列长度。
await: 平均每次设备I/O操作的等待时间 (毫秒)。
svctm: 平均每次设备I/O操作的服务时间 (毫秒)。
%util: 一秒中有百分之多少的时间用于 I/O 操作,即被io消耗的cpu百分比
⚠️:如果 %util 接近 100%,说明产生的I/O请求太多,I/O系统已经满负荷,该磁盘可能存在瓶颈。如果 svctm 比较接近 await,说明 I/O 几乎没有等待时间;如果 await 远大于 svctm,说明I/O 队列太长,io响应太慢,则需要进行必要优化。如果avgqu-sz比较大,也表示有当量io在等待。
dstat--系统监控工具
查看CPU信息(型号) [root@AAA ~]# cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
24 Intel(R) Xeon(R) CPU E5-2630 0 @ 2.30GHz
# 查看物理CPU个数 [root@AAA ~]# cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l
2
# 查看每个物理CPU中core的个数(即核数) [root@AAA ~]# cat /proc/cpuinfo| grep "cpu cores"| uniq
cpu cores : 6
# 查看逻辑CPU的个数 [root@AAA ~]# cat /proc/cpuinfo| grep "processor"| wc -l
24
proc主要文件说明相关推荐
- linux 下/proc/cpuinfo三级缓存,linux /proc/cpuinfo文件分析
基于不同指令集(ISA)的CPU产生的/proc/cpuinfo文件不一样,基于X86指令集CPU的/proc/cpuinfo文件包含如下内容: processor : 0 vendor_id :Ge ...
- linux /proc目录文件详解
Linux中/proc目录下文件详解(一) /proc文件系统下的多种文件提供的系统信息不是针对某个特定进程的,而是能够在整个系统范围的上下文中使用.可以使用的文件随系统配置的变化而变化.命令proc ...
- 使用/proc/meminfo文件查看内存状态信息
在Linux下可以使用/proc/meminfo文件查看操作系统内存的使用状态 # cat /proc/meminfo MemTotal: 16333852 kB MemFree: 1633564 k ...
- linux /proc/cpuinfo文件分析
为什么80%的码农都做不了架构师?>>> 基于不同指令集(ISA)的CPU产生的/proc/cpuinfo文件不一样,基于X86指令集CPU的/proc/cpuinfo文件包含 ...
- linux下/proc/cpuinfo 文件分析
/proc/cpuinfo文件分析 在Linux系统中,提供了proc文件系统显示系统的软硬件信息.如果想了解系统中CPU的提供商和相关配置信息,则可以通过/proc/cpuinfo文件得到.本文章针 ...
- /proc/cpuinfo_Linux中的/ proc / cpuinfo和/ proc / meminfo文件
/proc/cpuinfo /proc is a directory in the Linux system that contains information about the system. / ...
- /proc/cpuinfo文件分析(查看CPU信息)
2019独角兽企业重金招聘Python工程师标准>>> 在Linux系统中,提供了proc文件系统显示系统的软硬件信息.如果想了解系统中CPU的提供商和相关配置信息,则可以通过/pr ...
- /proc/cpuinfo 文件详解
总核数 = 物理CPU个数 X 每颗物理CPU的核数 总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数 查看物理CPU个数 cat /proc/cpuinfo| grep & ...
- Linux中/proc目录下文件详解 /proc/devices文件 /proc/modules文件
http://blog.chinaunix.net/uid-10449864-id-2956854.html 原来对linux系统中的/proc目录不是很了解,只知道可以查看cpu,内存等相关的信息, ...
- mpstat命令和/proc/stat文件
mpstat,top等命令都能显示出当前cpu的平均负载.这里总结一下实现原理.和磁盘容量相同,主要信息依然来自proc文件夹中的文件. /proc/stat文件 文件中包含了所有cpu活动信息,所有 ...
最新文章
- ImportError: cannot import name ‘secure_filename‘的解决办法
- python合成gif动图_Python图像处理之gif动态图的解析与合成操作详解
- linux管理子进程c,Linux 进程管理 CGroup
- boost::intrusive::sg_set用法的测试程序
- php知识点汇总与解答_PHP操作员能力倾向问题与解答
- windows 笔记本连接公共wifi不弹出登录页面的处理办法
- pcDuino上跑 MQ2 Shield
- 手机访问www如何自动跳转到m js代码实现
- Oracle ITL(Interested Transaction List)理解
- 华为p50 pro 鸿蒙,华为P50Pro真豪横!鸿蒙系统+真全屏5摄,网友:太香了!
- win10删除开机密码_教你电脑如何设置开机密码_win10教程
- Android蓝牙开锁讲解
- MATLAB自带插值函数
- vi/vim保存报错:E37: No write since last change E162: No write since last change for buffer “[文件名称]“
- 乐动ld06激光雷达sdk改bug记录分享
- codeforces1467E Distinctive Roots in a Tree
- 会员测试环境治理之路
- C++ - STL标准库
- HTML/XML转义字符对照表
- java中怎么让字体可以显示下划线呢_数字文字中的下划线(Java 7特性)