centos计算内存CPU正确方法

   处理器使用率

  这里要从/proc/stat中提取四个数据:用户模式(user)、低优先级的用户模式(nice)、内核模式(system)以及空闲的处理器时间(idle)。它们均位于/proc/stat文件的第一行。CPU的利用率使用如下公式来计算。

  CPU利用率 = 100 *(user + nice + system)/(user + nice + system + idle)

  空闲内存=free+buffers+cached=total-used

  可用内存=free的内存+cached的内存+buffers的内存

  真正的内存利用率 = 可用内存 / 总内存(注意此处 可用内存 由上述公式计算而来,其实这个计算结果在free命令回显中已有,即回显结果第三行”-/+ buffers/cached”,此行第二个数值即为加上了buffers和cached之后的内存,即为上述公式所算的可用内存 )。

  你可以在Linux中,敲入free命令获得当前系统的内存使用情况。

  #busybox free

  total used free shared buffers

  Mem: 55636 52808 2828 0 3132

  Swap: 0 0 0

  Total: 55636 52808 2828

  当我满心欢喜的敲入上面的命令时,收到的却是一阵阵的冷汗,2828k,我的系统只剩下了2M多的内存,系统还能跑吗,是不是命令有错误!!!

  让我们来看看在PC机上的Linux系统中,结果是什么样子的。

  #free

  total used free shared buffers cached

  Mem: 4091524 4021016 70508 0 7656 1824312

  -/+ buffers/cache: 2189048 1902476

  Swap: 4088532 2891732 1196800

  这里我先解释一下几个关键的概念。

  buffers:主要是用来给Linux系统中块设备做缓冲区。

  cached:用来缓冲我们所打开的文件。

  在系统中内存是很宝贵的资源,Linux的思想是,如果内存充足,不用白不用,它会使用内存来cache一些文件,从而加快进程的运行速度;当内存不足时,这些内存又会被回收,供程序使用。

  所以真正可用的内存=free+buffers+cached=70508+7656+1824312=1902476。

时间: 2024-09-19 09:12:34

centos计算内存CPU正确方法的相关文章

linux中限制CPU和内存占用率方法

  查看cpu占用 在命令行中输入 "top" 即可启动 top top 的全屏对话模式可分为3部分:系统信息栏.命令输入栏.进程列表栏. 使用top查看系统负荷 top命令可以动态监视系统负荷,包括CPU.内存的使用率和占用资源较多的进程详情等. 动态查看系统负荷(占用一个终端) top 显示后退出 top -n 1 以文本方式输出,以备其它程序使用 top -b 好了,我们现在来看限制CPU和内存占用率方法 脚本内容:  代码如下   #!/bin/sh UPID=`top -bn

Android获取设备CPU核数、时钟频率以及内存大小的方法_Android

本文实例讲述了Android获取设备CPU核数.时钟频率以及内存大小的方法.分享给大家供大家参考,具体如下: 因项目需要,分析了一下 Facebook 的开源项目 - Device Year Class. Device Year Class 的主要功能是根据 CPU核数.时钟频率 以及 内存大小 对设备进行分级.代码很简单,只包含两个类: DeviceInfo -> 获取设备参数, YearClass -> 根据参数进行分级. 下表是 Facebook 公司提供的分级标准,其中 Year 栏表

解决PHP里大量数据循环时内存耗尽的方法_php实例

最近在开发一个PHP程序的时候遇到如下一问题: PHP Fatal error: Allowed memory size of 268 435 456 bytes exhausted 错误信息显示允许的最大内存已经耗尽.遇到这样的错误起初让我很诧异,但转眼一想,也不奇怪,因为我正在开发的这个程序是要用一个foreach循环语句在一个有4万条记录的表里全表搜索具有特定特征的数据,也就是说,一次要把4万条数据取出,然后逐条检查每天数据.可想而知,4万条数据全部加载到内存中,内存不爆才怪.   毕竟编

Android加载图片内存溢出问题解决方法

  这篇文章主要介绍了Android加载图片内存溢出问题解决方法,本文讲解使用BitmapFactory.Options解决内存溢出问题,需要的朋友可以参考下 1. 在Android软件开发过程中,图片处理是经常遇到的. 在将图片转换成Bitmap的时候,由于图片的大小不一样,当遇到很大的图片的时候会出现超出内存的问题,为了解决这个问题Android API提供了BitmapFactory.Options这个类. 2. 由于Android对图片使用内存有限制,若是加载几兆的大图片便内存溢出.Bi

CentOS 7.x中正确设置时间与时钟服务器同步

CentOS 7.x中正确设置时间与时钟服务器同步 Chrony是一个开源的自由软件,它能帮助你保持系统时钟与时钟服务器(NTP)同步,因此让你的时间保持精确.它由两个程序组成,分别是chronyd和chronyc.chronyd是一个后台运行的守护进程,用于调整内核中运行的系统时钟和时钟服务器同步.它确定计算机增减时间的比率,并对此进行补偿.chronyc提供了一个用户界面,用于监控性能并进行多样化的配置.它可以在chronyd实例控制的计算机上工作,也可以在一台不同的远程计算机上工作. 在像

实现释放CentOS系统内存的Shell脚本分享_linux shell

这几天发现CentOS系统内存一直涨,即使把apache和mysql关闭了,内存也不释放,可以使用以下脚本来释放内存:   脚本内容:   复制代码 代码如下:     #! /bin/bash       # cache释放:       # To free pagecache:       sync       sync       #echo 1 > /proc/sys/vm/drop_caches       # To free dentries and inodes:       #e

DOS下内存的配置方法_DOS/BAT

我们大家都知道,DOS大体上不能够完全依靠人机界面的方式来一步步地完成系统的配置.若要让系统发挥出最大的性能,必须依靠我们的进一步努力.下面介绍一下DOS内存的配置方法.  实模式的DOS通常只能使用1M以下的内存空间.其中基本内存为640K,而上位内存则需要相应的内存管理器.基本内存的管理尤为重要,因为使用不当会造成一些程序无法运行.那么,应如何优化使用它呢?这儿有一些建议.  首先,加载提供上位内存(UMB)的内存管理器.通常有EMM386和QEMM等,不过这些工具自身占用的内存较大,在此推

dos下通过wmic命令查看硬盘和内存/CPU信息(windows自带命令查看硬件信息)_DOS/BAT

如何在windows系统自带命令查看硬件信息,怎样dos命令查看硬盘和内存/CPU信息?最直接的是:开始→运行→CMD打开命令提示符,在该窗口下输入systeminfo执行,即可看到几乎所有想知道的系统信息,甚至包括机器上已安装的网卡及其IP. 问题描述: 如何从系统中 查看主板上内存条的数量.最佳答案: 在cmd命令下 输入:wmic memorychip list brief 或者 wmic MEMPHYSICAL list brief 就会看到内存条的数量 rem 查看cpu wmic c

python使用datetime模块计算各种时间间隔的方法

 这篇文章主要介绍了python使用datetime模块计算各种时间间隔的方法,实例分析了Python使用datetime模块进行各种常用的时间操作技巧,具有一定参考借鉴价值,需要的朋友可以参考下     本文实例讲述了python使用datetime模块计算各种时间间隔的方法.分享给大家供大家参考.具体分析如下: python中通过datetime模块可以很方便的计算两个时间的差,datetime的时间差单位可以是天.小时.秒,甚至是微秒,下面的代码就演示了datetime模块在计算时间差时的