sysconf()函数应用举例:查看CPU及内存信息

本文介绍了一个C语言程序,用于查询系统的CPU数量、页面大小、物理页数、可用页面数及总内存与空闲内存容量。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

代码
#include <stdio.h>
#include <unistd.h>

#define ONE_MB (1024 * 1024)

int  main ( void)
{
     long  num_procs;
     long  page_size;
     long  num_pages;
     long  free_pages;
     long  long   mem;
     long  long   free_mem;

     num_procs  =  sysconf ( _SC_NPROCESSORS_CONF);
     printf ( "CPU 个数为: %ld 个 \n " ,  num_procs);

     page_size  =  sysconf ( _SC_PAGESIZE);
     printf ( "系统页面的大小为: %ld K \n " ,  page_size  /  1024 );

     num_pages  =  sysconf ( _SC_PHYS_PAGES);
     printf ( "系统中物理页数个数: %ld 个 \n " ,  num_pages);

     free_pages  =  sysconf ( _SC_AVPHYS_PAGES);
     printf ( "系统中可用的页面个数为: %ld 个 \n " ,  free_pages);

     mem  = ( long  long) (( long  long) num_pages  * ( long  long) page_size);
     mem  /=  ONE_MB;

     free_mem  = ( long  long) free_pages  * ( long  long) page_size;
     free_mem  /=  ONE_MB;

     printf ( "总共有 %lld MB 的物理内存, 空闲的物理内存有: %lld MB \n " ,  mem ,  free_mem);
     return ( 0);
}
运行及输出
$ ./cpuinfo.exe 
CPU 个数为: 2 个
系统页面的大小为: 4 K
系统中物理页数个数: 1029329 个
系统中可用的页面个数为: 38518 个
总共有 4020 MB 的物理内存, 空闲的物理内存有: 150 MB

关于 sysconf() 函数的详细信息: http://www.groad.net/bbs/read.php?tid-1485.html
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值