使用sigar开源库
sigar_t* sigar_handle = NULL;
sigar_open(&sigar_handle);
sigar_mem_t mem_info;
sigar_mem_get(sigar_handle, &mem_info);
sigar_cpu_t pre_cpu_info;
sigar_cpu_get(sigar_handle, &pre_cpu_info);
sleep(1);
sigar_cpu_t cur_cpu_info;
sigar_cpu_get(sigar_handle, &cur_cpu_info);
sigar_cpu_perc_t cpu_prec_info;
sigar_cpu_perc_calculate(&pre_cpu_info, &cur_cpu_info, &cpu_prec_info);
sigar_close(sigar_handle);
参考博客 http://blog.csdn.net/fengyishang/article/details/46473801