控制集成系统需要了解系统的各项硬件信息,之前我们设计的时候,习惯使用c函数来搞,后来可能发现程序的移植性收到了一些影响,比如unix内核的一些c函数在linux下面是没有的:
比如
苹果达尔文内核的如下东西,linux里面就没有:
//kern_return_t kr;
//host_name_port_t myhost;
// kernel_version_t kversion;
// host_basic_info_data_t hinfo;
// mach_msg_type_number_t count;
char *cpu_type_name,*cpu_subtype_name;
// vm_size_t page_size;
// myhost = mach_host_self();
// kr = host_kernel_version(myhost, kversion);
// count = HOST_BASIC_INFO_COUNT;
// kr = host_info(myhost, HOST_BASIC_INFO, (host_info_t)&hinfo, &count);
// kr = host_page_size(myhost, &page_size); //
所以换一种思路我们考虑使用,shell命令获取信息,完后进行字符处理,这样即使换了系统,我们代码里面换换shell命令就可以了。
使用到的一些结构体跟宏定义:
下面是代码:
Systeminfo.h
实现:
搭建传输的socket平台参考下面博文:
<a target="_blank" href="http://blog.csdn.net/wangyaninglm/article/details/41940287">http://blog.csdn.net/wangyaninglm/article/details/41940287</a>
实现效果:
