想获取一下目标机运行时linux系统的硬件占用情况,写了这几个小程序,以后直接用了。
方法就是读取proc下的文件来获取了。
cpu使用率:
/proc/stat
,内存使用情况:
/proc/meminfo
看程序 :
typedef struct
PACKED
//定义一个cpu occupy的结构体
{
char
name[20];
//定义一个char类型的数组名name有20个元素
unsigned int user; //定义一个无符号的int类型的user
unsigned int nice; //定义一个无符号的int类型的nice
unsigned int system;//定义一个无符号的int类型的system
unsigned int idle; //定义一个无符号的int类型的idle
}CPU_OCCUPY;
typedef struct
PACKED
//定义一个mem occupy的结构体
{
char
name[20];
//定义一个char类型的数组名name有20个元素
unsigned long total;
char name2[20];
unsigned long
free;
}MEM_OCCUPY;
get_memoccupy (MEM_OCCUPY *mem) //对无类型get函数含有一个形参结构体类弄的指针O
{
FILE
*fd;
int
n;
char buff[256];
MEM_OCCUPY *m;
m=mem;
fd = fopen ("/proc/meminfo", "r");
fgets (buff, sizeof(buff), fd);