linux系统内存实际使用率

Linux 下使用Sigar 获取内存信息 上一篇文章介绍了linux下的sigar 库,并使用sigar 库来获取cpu 使用率,本文在这里介绍一下如何使用sigar 库获取内存信息.和cpu 一样,sigar中有和内存相关的结构体sigar_mem_t,我们来看一下结构体原型:typedef struct { sigar_uint64_t ram, total, used, 阅读详情
通过定期采集/proc文件系统内的meminfo文件来获取当前内存使用情况。
proc文件系统是一个伪文件系统,它只存在内存当中,而不占用外存空间。它以文件系统的方式为访问系统内核数据的操作提供接口。用户和应用程序可以通过proc得到系统的信息,并可以改变内核的某些参数。由于系统的信息,如进程,是动态改变的,所以用户或应用程序读取proc文件时,proc文件系统是动态从系统内核读出所需信息并提交的采集流程图。
/proc/meminfo 信息如下:
      
需要使用的指标有:MemTotal ,MemFree,Buffers,Cached
MemTotal:总内存大小
MemFree:空闲内存大小
Buffers和Cached:磁盘缓存的大小
Buffers和Cached的区别:
buffers是指用来给块设备做的缓冲大小,他只记录文件系统的metadata以及 tracking in-flight pages.
cached是用来给文件做缓冲。
buffers是用来存储目录里面有什么内容,权限等等。
而cached直接用来记忆我们打开的文件,比如先后执行两次命令#man X ,你就可以明显的感觉到第二次的开打的速度快很多。
而buffers随时都在增加,比如先后两次使用ls /dev后,就会发现第二次执行的速度会较第一次快。这就是buffers/chached的区别。
下面分别从操作系统角度和应用程序角度来区别Buffers和Cached  
使用free命令可以看到
 
     对操作系统来说,Buffers和Cached是已经被使用的(上图Mem:这一行)
MemFree=total-used
850748=16408552-15557804
     对应用来说(上图对应-/+ buffers/cache那一行)
MemFree=buffers+cached+free
14720816=157720+13712348+805748
所以本着监控应用对物理内存使用情况的目的采取如下计算方法:
内存使用率(MEMUsedPerc)=100*(MemTotal-MemFree-Buffers-Cached)/MemTotal
在这里为了PatrolAgent的监控性能,采用定期读取/proc/meminfo文件来获取MemTotal ,MemFree,Buffers,Cached这些参数的值
该算法在MEMORY.km中实现
7系列ZYNQ硬件调试:Vitis无法识别ARM DAP的排查与解决 本文针对7系列ZYNQ开发中Vitis无法识别ARM DAP的典型硬件调试问题,提供了系统性的排查与解决方案。文章深入剖析了问题本质,指出ARM DAP无法访问的核心原因在于PS部分的电源、时钟或复位等硬件基础条件未满足,并重点强调了PS参考时钟(如33.333MHz晶振)的完整性是关键排查点。通过从电源完整性、时钟与复位信号到JTAG连接与焊接的逐步硬件排查,并结合软件配置交叉验证,为开发者提供了清晰的故障定位思路与实战指南。 阅读详情

相关推荐

【Java】利用反射执行Spring容器Bean指定的方法,支持多种参数自动调用

目录 使用情景 目的 实现方式 前提: 思路 核心类 测试方法 使用情景 将定时任务录入数据库(这样做的好处是定时任务可视化,也可以动态修改各个任务的执行时间),通过反射执行对应的方法; 配合Netty实现简单的HTTP请求处理框架 其他需要使用反射执行Spring方法的业务亦可 目的 很多文章都提到了反射,但是对于方法参数处理这一块都是明确了类型,不支持按照实际参数动态转换,而本篇文章提供了一个思路怎么做到方法参数的动态调用。 大家也可以...

ITjianshuzhai的博客 2334

linux mem cache,Linux内存:MemTotal、MemFree、MemAvailable三者区别

今天一位朋友在了解Linux查看内存使用情况的时候,其中涉及到很多内存的相关知识,这不,今天我朋友就对命令:cat /proc/meminfo 结果中出来的MemTotal、Memory Free和Memory Avaliable这三个参数比较疑惑。[[emailprotected] ~]# cat /proc/meminfoMemTotal: 3785108 kBMemFree:...

weixin_32279911的博客 3916

【python】geopandas库安装出现各种问题?可以看看这篇文章

geopandas的安装方法

jgsecurity的博客 3888

Linux下/proc/meminfo参数MemTotal、MemFree、MemAvailable说明

使用cat /proc/meminfo查看结果如下 # cat /proc/meminfo MemTotal: 102724 kB MemFree: 8404 kB MemAvailable: 34336 kB Buffers: 4588 kB Cached: 22740 kB SwapCached: 0 kB Active: 17916 kB Inactive:

wgl307293845的博客 6173

针对中文CLIP模型训练失效的解决方案记录

解决了中文CLIP模型无法正确训练的问题

weixin_45906434的博客 1621

IDEA系列(四):IDEA导入Maven工程项目并配置Tomcat启动

本片文章主要介绍如何导入一个存在的maven项目并配置Tomcat启动项目,方便自己使用,也分享出来,希望可以帮助到其他人。

低调D树苗的博客 1244

linux 计算内存使用率

1、通过定期采集/proc文件系统内的meminfo文件来获取当前内存使用情况: proc文件系统是一个伪文件系统,它只存在内存当中,而不占用外存空间。它以文件系统的方式为访问系统内核数据的操作提供接口。用户和应用程序可以通过proc得到系统的信息,并可以改变内核的某些参数。由于系统的信息,如进程,是动态改变的,所以用户或应用程序读取proc文件时,proc文件系统是动态从系统内核读出所需信息并

csdn-gs 3698

人大金仓集群部署(主备)

4.2 上传安装包镜像和授权文件到install目录下并授权。1、复制系统脚本到/opt/kingbase目录下(主节点)4.2 修改cluster_install.sh。回车进行下一步,直到出现以下界面,回复Y键回车。三、安装kingbase客户端段(都要安装)install目录作为安装包具体存放目录。4.1 修改install.conf文件。2、复制授权文件到安装目录下(主节点)3、修改ssh参数(节点都要配置)5、安装kingbase客户端。二、基本环境配置(都要配置)6、数据库集群安装(主节点)

edutech_wang的博客 1996

为什么 /proc/meminfo 节点获取的 MemTotal 小于物理内存

/proc/meminfo MemTotal

zqwone的专栏 1264

避开命令行!在VMware vCenter 8.0图形化界面里搞定SSL证书续期全流程

本文详细介绍了在VMware vCenter 8.0图形化界面中完成SSL证书续期的全流程,包括计算机SSL证书、VMCA根证书和STS证书的管理。通过可视化操作,管理员无需使用命令行即可高效处理证书问题,确保vSphere环境的稳定运行。文章还提供了证书监控与预警配置的实用技巧,帮助用户提前规避证书过期风险。

weixin_27051161的博客 284

《PLECS仿真与实战:从建模到高端应用》-专栏文件目录

《PLECS仿真与实战:从建模到高端应用》是一本系统介绍PLECS电力电子仿真软件的实用指南。全书共10章,首先介绍软件安装与基础操作,包括RC电路仿真等入门内容;随后深入讲解各类电力电子电路的建模与仿真,涵盖整流、交交变换、直流变换、逆变等电路;最后探讨PWM控制建模和直流调速系统等高端应用。书中配有丰富的示例程序和波形分析方法,附录还包含电力电子器件、代码生成等实用资料。该书适合电力电子领域工程师和学生系统学习电路仿真技术。

542

/proc/meminfo 学习

在查看linux内存使用情况时,通常需要用到命令(cat /proc/meminfo)查看内核数据结构,有些字段大致知道什么意思,时间久了也容易忘记,故在这里详细记录一下。 [root@localhost ~]# cat /proc/meminfo MemTotal: 932004 kB MemFree: 567160 kB MemAvaila...

1万+

高级技能-高可用和容灾-两地三中心、异地多活架构

两地三中心和异地多活是当前主流的跨地域高可用架构方案。两地三中心通过生产中心、同城灾备和异地灾备的组合,提供多级容灾能力,适合对数据安全要求高的行业。异地多活则采用单元化设计,多个站点同时服务,提升资源利用率,但需解决网络延迟、数据冲突等挑战。两种架构在RTO/RPO、一致性、改造成本等方面各具特点,企业应根据业务规模、一致性要求和预算进行选择,可考虑从同城双活起步,逐步向异地多活演进。混合架构可能是平衡容灾与多活的务实方案。

zhongjianfeng100的博客 169

正确计算linux系统内存使用率

http://www.sealinger.com/archives/406/ linux系统内存实际使用率 图中的例子很典型,就是:多数的linux系统在free命令后会发现free(剩余)的内存很少,而自己又没有开过多的程序或服务。 对于上述的情况,正确的解释是: linux的内存管理机制与windows的有所不同。具体的机制我们无需知道,我们需要知道的是

jiang8640的专栏 762

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

正确理解Linux内存占用过高的问题

最近有个月经问题,老有人问为何开机后,还没有其他服务,mem就被用完了?是不是内存泄露?是否要重启服务?只能说不要看现象,要看本质才能找到问题的根源。 往往给出这样的结果,怀疑内存用了90%: Mem: 4146788k total, 3825536k used, 321252k free, 213488k buffers Swap: 2650684k total, 80k used, 26

xiaolang85的专栏 1万+

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

sigar如何获取linux的buffer内存,Linux 下使用Sigar 获取内存信息

上一篇文章介绍了linux下的sigar 库,并使用sigar 库来获取cpu 使用率,本文在这里介绍一下如何使用sigar 库获取内存信息.和cpu 一样,sigar中有和内存相关的结构体sigar_mem_t,我们来看一下结构体原型:typedef struct {sigar_uint64_tram,total,used,free,actual_used,actual_free;double ...

weixin_28704675的博客 398

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

linux 系统查看物理内存使用率的命令,以百分比形式输出

free -m | sed -n '2p' | awk '{print "used mem is "$3"M,total mem is "$2"M,used percent is "$3/$2*100"%"}'

wwwyuanliang10000的专栏 1万+

Linux命令- 查看内存占用率排行

ps -e -o ‘pid,comm,args,pcpu,rsz,vsz,stime,user,uid’| sort -nrk5 | head -n 10 [root@gds bin]# ps -e -o 'pid,comm,args,pcpu,rsz,vsz,stime,user,uid'| sort -nrk5 | head -n 10 11575 java /opt...

Java 程序源 4017

python 监控 linux memory 使用率

定时获得服务器上内存的使用率 linux的内存使用跟win是不一样的,以下linux命令获得内存使用率是,linux os 预先分配的,实际上可能还没有使用这么多内存,可以使用 [code="python"]$free -m total used free shared buffers cached Mem...

python mplayer ffmpeg vp6 258

Linux吃掉我的内存

原文转自: https://www.cnblogs.com/hazir/p/linux_ate_my_ram.html 在Windows下资源管理器查看内存使用的情况,如果使用率达到80%以上,再运行大程序就能感觉到系统不流畅了,因为在内存紧缺的情况下使用交换分区,频繁地从磁盘上换入换出页会极大地影响系统的性能。而当我们使用free命令查看Linux系统内存使用情况时,会发现内存使用一直...

mysteryflower的专栏 159

linux c 获取进程 cpu占用率 内存占用情况

实例如下: #include <stdio.h> #include <unistd.h> #include <sys/time.h> #include <string.h> #include <stdlib.h> #define VMRSS_LINE 17 #define VMSIZE_LINE 13 #define PROCESS_ITEM 14 typedef struct { unsigned long user; unsig

whatday的专栏 2443

Linux正确查看内存占用

free -g 实际内存占用要看-/+ buffers/cache行 参看: 正确理解Linux内存占用过高的问题 linux 系统内存占用 90%以上解决办法 Linux系统used内存占用很大,而实际系统中个进程并没有占用这么多内存(其中释放缓存部分未实际测试) linux 内存占用过大分析 Linux下Oracle进程CPU使用率过高处理方式 ...

s_156的博客 1011

Linux吃掉了我的内存

在Windows下资源管理器查看内存使用的情况,如果使用率达到80%以上,再运行大程序就能感觉到系统不流畅了,因为在内存紧缺的情况下使用交换分区,频繁地从磁盘上换入换出页会极大地影响系统的性能。而当我们使用free命令查看Linux系统内存使用情况时,会发现内存使用一直处于较高的水平,即使此时系统并没有运行多少软件。这正是Windows和Linux在内存管理上的区别,乍一看,Linux系统吃掉我们...

qq_43083284的博客 191
上一篇: Linux用户进程内存泄露一种检测方法
下一篇: Linux下SVN命令使用大全
legendmaker
博客等级 码龄18年 9粉丝 15原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值