linux中查询cpu型号、内核版本

CPU类型和型号

内核版本

从系统最后一期启动以来的时间,形式为dd:hh:mm:ss

 

 

void partB()
{
 printf("*********************************************/n");
 printf("                    partB/n");
 printf("*********************************************/n");

 char computer[MAX];
 struct utsname uts;
 char all[MAX];
 int procFile;
 int info;
 char *start,*end;

 //显示时间
 time_t timeval;
 (void)time(&timeval);
 printf("Current time is: %s",ctime(&timeval));      
 
 //打印hostname
 if(gethostname(computer,MAX-1) != 0 ||uname(&uts),0)
 {
  fprintf(stderr,"Could not get host information/n");
  exit(1);
 }

 printf("Machine hostname: %s /n",computer);

 //打印cpu型号
 procFile=open("/proc/cpuinfo",O_RDONLY); 
 info=read(procFile,all,sizeof(all));
 start = strstr(all,"model name");     
 end = strstr(start,"/n");
 int a= 0;
 a = (int)end-(int)start;     
 
 char text[a];        
 strncpy(text,start,a);      
  
 printf("%s/n",text);      
 close(info);     

 //打印内核版本
 printf("Linux version: %s/n",uts.release);

 //打印系统启动时间
 //打印系统启动时间
 fp=fopen("/proc/uptime","r");
 char temp;
 long run_time=0,re;
 long day,hour,minute,second;
 while ((temp=fgetc(fp))==' ')
 {
 }
 do
 {
  run_time=run_time*10+(temp-'0');
  temp=fgetc(fp);
 
 }while(temp!='.');
 re=run_time;
 second=run_time%60;
 run_time=run_time/60;
 minute=run_time%60;
 run_time=run_time/60;
 hour=run_time%24;
 day=run_time/24;
 
 printf("Machine has been on for:%2.2ld:%2.2ld:%2.2ld:%2.2ld/n",day,hour,minute,second);
 fclose(fp);}

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值