图片 Linux系统运行的各种参数_2020欧洲杯足球直播app |推荐下载软件*

2020欧洲杯足球直播app |推荐下载软件*

当前位置:主页 > 电脑教程 > 操作系统 > Linux教程 > >

闂備礁鎲$敮妤呫€冩径鎰ラ柛鎰靛枛缁€鍐煕濞戝崬寮鹃柛鐔锋搐椤啴濡堕崨顓熷€庣紓浣诡殔閸婂潡鎮伴鈧畷褰掝敊閽樺娈樺┑鐐舵彧缂嶅洭骞忛敓锟�-600*90

Linux系统运行的各种参数

来源::未知 | 作者:2020欧洲杯足球直播app |推荐下载软件* | 本文已影响
闂備礁鎲¢崝鏇㈠箠鎼搭煈鏁婇柟閭﹀幑娴滄粓鏌涢…鎴濅簽闁搞劎鍘ц灋闁绘鐓懖鈺冪當闁告稑顕畵渚€鏌涢…鎴濇灍闁哥喓鍋涢湁闁挎繂绻戠€氾拷-500*200
1、CPU

在文件”/proc/stat”里面就包含了CPU的信息。每一个CPU的每一tick用在什么地方都在这个文件里面记着。后面的数字含义分别是: user、nice、sys、idle、iowait。有些版本的kernel没有iowait这一项。这些数值表示从开机到现在,CPU的每tick用 在了哪里。例如:

cpu0 256279030 0 11832528 1637168262

就是cpu0从开机到现在有 256279030 tick用在了user消耗,11832528用在了sys消耗。所以如果想计算单位时间(例如1s)里面CPU的负载,那只需要计算1秒前后数值的差除 以每一秒的tick数量就可以了。gkrellm就是这样实现的:((200 * (v2 - v1) / CPU_TICKS_PER_SECOND) + 1) /2


例如,第一次读取/proc/stat,user的值是256279030;一秒以 后再读一次,值是256289030,那么CPU在这一秒的user消耗就是:((200 * (256289030 - 256279030) / CPU_TICKS_PER_SECOND) + 1) /2 = ((10000 * 200 / 1000000) + 1) / 2 = 1%了。


2、内存消耗

文件”/proc/meminfo”里面包含的就是内存的信息,还包括了swap的信息。例如:

$ cat /proc/meminfo

total: used: free: shared: buffers: cached:

Mem: 1057009664 851668992 205340672 0 67616768 367820800

Swap: 2146787328 164429824 1982357504

MemTotal: 1032236 kB

MemFree: 200528 kB

MemShared: 0 kB

……

不过从gkrellm的源代码看,有些版本没有前面那两行统计的信息,只能够根据下面的Key: Value这种各式的数据收集。


3、磁盘空间

从gkrellm的源代码看,这个是一个很复杂的数据。磁盘分区的数据有可能分布在:/proc/mounts、/proc/diskstats、 /proc/partitions等等。而且如果想要检查某几个特定的路径,还需要通过mount、df等命令的帮助。为了减少麻烦,这个数据我就直接用 statfs函数直接获得了。

int statfs(const char *path, struct statfs *buf);

这个函数只需要输入需要检查的路径名称,就可以返回这个路径所在的分区的空间使用情况:

总空间:buf.f_bsize * buf.f_blocks

空余空间:buf.f_bsize * buf.f_bavail


4、磁盘I/O

磁盘I/O的数据也同样比较复杂,有些版本看/proc/diskstats,有些版本看/proc/partitions,还有些版本至今我也不知道在那里看……不过可以看到数据的版本也像CPU那样,需要隔一段时间取值,两次取值的差就是流量。


5、网络流量

网络流量也是五花八门,不过基本上都可以在/proc/net/dev里面获得。同样也是需要两次取值取其差作为流量值。

2020欧洲杯足球直播app |推荐下载软件*

更多关于“Linux教程”的文章

闂備礁鎲¢崝鏇㈠箠鎼搭煈鏁婇柟閭﹀幑娴滄粓鏌涜箛鎾存喐闁荤喐鎸婚〃銉╂倷閼碱兛铏庨梺瑙勭ゴ閸撴繈骞忛崨瀛樻櫢闁跨噦鎷�-600*90
  闂備礁鎲$敮妤呫€冩径鎰ラ柛鎰靛枛缁€鍐煕濞戝崬寮鹃柛鐔锋搐椤啴濡舵径瀣敪閻熸粍婢橀幉锛勭箔閻旀椿妲荤紓浣哄Т缁夌懓鐣烽妸锔剧瘈濞达綀娅e瓭1-300*250
  闂備礁鎲$敮妤呫€冩径鎰ラ柛鎰靛枛缁€鍐煕濞戝崬寮鹃柛鐔锋搐椤啴濡舵径瀣敪閻熸粍婢橀幉锛勭箔閻旀椿妲荤紓浣哄Т缁夌懓鐣烽妸锔剧瘈濞达綀娅e瓭3-300*250

热榜阅读TOP

本周TOP10

 Linux系统管理

Linux系统管理

Linux属于多用户多任务的操作系统,可让不同的用户从本地登陆。在网络上则允许用户利用telnet、ssh等方式...