linux 系统信息查询,内存,闪存,cpu个数查询
2016-08-31 15:39
375 查看
</pre><pre name="code" class="plain">
#include <stdio.h> #include <unistd.h> #include <sys/utsname.h> #include <sys/sysinfo.h> #include <sys/statfs.h>
#include <iostream> #include <stdlib.h> #include <string.h>
using namespace std;
</pre><pre name="code" class="cpp">//获取系统名称,类似shell命令 uname -a
string getUname(){struct utsname u;uname(&u);char buf[256] = {0};sprintf(buf, "%s %s %s %s %s", u.sysname, u.nodename, u.release, u.version, u.machine);return string(buf);}
//获取系统cpu个数
unsigned int getCpuCoreNumber(){ return sysconf(_SC_NPROCESSORS_CONF);}
//获取使用的cpu个数
unsigned int getCpuCoreUseage(){ return sysconf(_SC_NPROCESSORS_ONLN);}
unsigned int getPhyTotalPages(){ return sysconf(_SC_PHYS_PAGES);}
unsigned int getPhyAvailablePages(){ return sysconf(_SC_AVPHYS_PAGES);}
//获取系统名字
string getHostname(){ char host[32] = {0}; gethostname(host, sizeof(host)); return string(host);}
//获取内存大小
string getRamTotalSize(){ struct sysinfo s_info; sysinfo(&s_info); char buf[100] = {0}; sprintf(buf,"%luMB", s_info.totalram/1024/1024); return string(buf);}
<pre name="code" class="cpp">//获取剩余内存大小
string getRamAvailSize(){ struct sysinfo s_info; sysinfo(&s_info); char buf[100] = {0}; sprintf(buf,"%luMB", s_info.freeram/1024/1024); return string(buf);}
//获取根目录挂载空间大小
string getRomTotalSize(){ struct statfs diskInof; statfs("/", &diskInof); unsigned long long blocksize = diskInof.f_bsize; unsigned long long totalsize = blocksize * diskInof.f_blocks; char buf[100] = {0}; sprintf(buf, "%lluMB", totalsize / 1000 / 1000 ); return string(buf);}
//获取根目录可用空间
string getRomAvailSize(){ struct statfs diskInof; if (statfs("/", &diskInof) != 0) { return string(""); } unsigned long long blocksize = diskInof.f_bsize; unsigned long long freeDisk = diskInof.f_bfree * blocksize; unsigned long long availableDisk = blocksize * diskInof.f_bavail; char buf[100] = {0}; sprintf(buf, "%lluMB", availableDisk / 1000 / 1000 ); return string(buf);}
//获取sdcard 挂载空间大小,路径根据自己挂载目录指定
string getSDcardTotalSize(){ struct statfs diskInof; if (statfs("/media/mmcblk1", &diskInof) != 0) { return string("0MB"); } unsigned long long blocksize = diskInof.f_bsize; unsigned long long totalsize = blocksize * diskInof.f_blocks; char buf[100] = {0}; sprintf(buf, "%lluMB", totalsize / 1000 / 1000 ); return string(buf);}
//获取SD卡可用空间大小
string getSDcardAvailSize(){ struct statfs diskInof; if (statfs("/media/mmcblk1", &diskInof) != 0) { return string("0MB"); } unsigned long long blocksize = diskInof.f_bsize; unsigned long long freeDisk = diskInof.f_bfree * blocksize; unsigned long long availableDisk = blocksize * diskInof.f_bavail; char buf[100] = {0}; sprintf(buf, "%lluMB", availableDisk / 1000 / 1000 ); return string(buf);}
相关文章推荐
- linux查询内存、CPU、硬盘等系统信息的命令
- linux 系统信息查询——系统版本,内核信息,cpu信息,内存信息,硬盘信息
- linux查询内存、CPU、硬盘等系统信息的命令
- Linux系统监测—查询系统CPU,内存,IO信息
- Linux 简单命令查询CPU、内存、网卡等信息
- linux-raspbian系统下编写python脚本显示树莓派的当前cpu温度、使用率、内存和硬盘信息
- 用java取得linux系统cpu、内存的实时信息
- ps 查看linux系统内存及cpu信息
- Linux系统查看当前主机CPU、内存、机器型号及主板信息
- 用java取得linux系统cpu、内存的实时信息
- 方法:Linux 下用JAVA获取CPU、内存、磁盘的系统资源信息
- 用java取得linux系统cpu、内存的实时信息
- 用java取得linux系统cpu、内存的实时信息
- linux系统下查看cpu,内存硬件信息
- Linux查询CPU、内存、网卡等信息
- Linux系统查看当前主机CPU、内存、机器型号及主板信息:
- 用java取得linux系统cpu、内存的实时信息
- 使用python获取CPU和内存信息的思路与实现(linux系统)
- 使用python获取CPU和内存信息的思路与实现(linux系统)
- 转载:linux系统下 python获取 内存、cpu、负载、网络流量、硬盘等信息