linux下,怎么得到当前CPU的数目?

elssann 2004-11-02 04:49:51
也就是如何得到当前有几个CPU?

要用C来实现。
谢谢
...全文
65 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
lanting918 2004-11-02
  • 打赏
  • 举报
回复
sysconf(_SC_NPROCESSORS_ONLN)
返回值就是cpu的个数
winux0 2004-11-02
  • 打赏
  • 举报
回复
千万不要生搬硬套哦,知道怎么做的然后自己实现
cpuinfo 文件在 /proc 下面
winux0 2004-11-02
  • 打赏
  • 举报
回复
int get_ncpus(){
char buffer[MAX_LEN+1];
int fd, len,count;
char *p;;

chdir(PROCFS);
fd = open("cpuinfo", O_RDONLY);
if(fd==-1)return 0;
len = read(fd, buffer, sizeof(buffer)-1);
close(fd);
if(len<0)return 0;
count=0; buffer[len] = '\0';

p=buffer;

while(TRUE){
p=strstr(p,"processor");
if(p){count++;p+=strlen("processor");}
else break;
}
chdir(gPath); return count;
}

23,120

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧