语法

#include <sys/sysinfo.h>

long int get_phys_pages(void);
long int get_avphys_pages(void);
GET_PHYS_PAGES - Linux手册页

Linux程序员手册 第3部分
更新日期: 2020-06-09

示例

以下示例显示如何使用get_phys_pages()和get_avphys_pages()。

#include <stdio.h>
#include <stdlib.h>
#include <sys/sysinfo.h>

int
main(int argc, char *argv[])
{
    printf("This system has %ld pages of physical memory and "
            "%ld pages of physical memory available.\n",
            get_phys_pages(), get_avphys_pages());
    exit(EXIT_SUCCESS);
}

出版信息

这个页面是Linux手册页项目5.08版的一部分。有关项目的说明、有关报告错误的信息以及此页面的最新版本,请访问https://www.kernel.org/doc/man-pages/

遵循规范

这些功能是GNU扩展。

名称

get_phys_pages,get_avphys_pages-获取总数和可用物理页数

另外参见

sysconf(3)

返回值

成功时,这些函数将返回DESCRIPTION中给出的非负值。失败时,它们返回-1并设置errno以指示错误原因。

错误说明

ENOSYS
系统无法提供所需的信息(可能是因为未安装/ proc文件系统)。

备注

这些函数通过扫描/ proc / meminfo的MemTotal和MemFree字段来获取所需的信息。

以下sysconf(3)调用提供了一种可移植的方式来获取与本页上描述的功能相同的信息。

total_pages = sysconf(_SC_PHYS_PAGES);    /* total pages */
avl_pages = sysconf(_SC_AVPHYS_PAGES);    /* available pages */

说明

函数get_phys_pages()返回系统上可用内存的物理页总数。

函数get_avphys_pages()返回系统上当前可用的物理内存页数。

日期:2019-08-20 18:00:25 来源:oir作者:oir