获取内存使用率(Linux C)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了获取内存使用率(Linux C)相关的知识,希望对你有一定的参考价值。


#define SYS_MEM_NAME_LEN 20
#define SYS_MEM_BUFF_LEN 256
#define SYS_100_PERSENT 100
int
get_sysMemUsage()
{
    FILE *fd;
    char buff[SYS_MEM_BUFF_LEN];
    double mem_used_rate;
    char name01[SYS_MEM_NAME_LEN];
    unsigned long mem_total;
    char name02[SYS_MEM_NAME_LEN];

    char name11[SYS_MEM_NAME_LEN];
    unsigned long mem_free;
    char name12[SYS_MEM_NAME_LEN];

    fd = fopen ("/proc/meminfo", "r");  

    fgets (buff, sizeof(buff), fd);  

    sscanf (buff, "%s %lu %s
", name01, &mem_total, name02);  

    fgets (buff, sizeof(buff), fd); 

    sscanf (buff, "%s %lu %s
", name11, &mem_free, name12); 

    mem_used_rate = (1.0 - (double)mem_free/(double)mem_total) * SYS_100_PERSENT;

    fclose(fd);

    return mem_used_rate;
}

以上是关于获取内存使用率(Linux C)的主要内容,如果未能解决你的问题,请参考以下文章

[linux][c/c++]代码片段01

[linux][c/c++]代码片段02

获取内存使用率(Linux C)

如何用c/c++获取cpu利用率 和 内存利用率

Android 逆向Linux 文件权限 ( Linux 权限简介 | 系统权限 | 用户权限 | 匿名用户权限 | 读 | 写 | 执行 | 更改组 | 更改用户 | 粘滞 )(代码片段

请问怎么用c语言获取电脑(windows)的cpu,内存,硬盘利用率等信息?Linux系统一样吗?