Sigar = System Information Gatherer And Reporter
源码地址
https://github.com/hyperic/sigar
文档和源码分享地址
src Makefile
1 | SUBDIRS = os |
sigar.h
sigar_cpu_info_t,sigar_cpu_t,sigar_cpu_list_t
- sigar_cpu_info_t存放的数据是对cpu所有核心的综合列表
- sigar_cpu_t则是对具体某个cpu的描述
- sigar_cpu_list_t包含了sigar_cpu_t
1 | typedef struct { |
1 | typedef struct { |
1 | typedef struct { |
内存
1 | typedef struct { |
路由
同理sigar_net_route_list_t中包含sigar_net_route_t数据
1 | typedef struct { |
sigar.c
调用一些库函数获取系统相关的数据,建表存数据
CPU
函数或变量 | 描述 |
---|---|
sigar_proc_cpu_get | 获取CPU占用 |
sigar_cpu_info_list_create | 根据SIGAR_CPU_INFO_MAX创建CPU信息列表sigar_cpu_info_list_t *cpu_infos |
sigar_cpu_info_list_grow | 一倍扩展列表空间(原有空间基础上扩展SIGAR_CPU_INFO_MAX个单位) |
sigar_cpu_info_list_destroy | 清除*cpu_infos 数据 |
sigar_cpu_list_create | 创建sigar_cpu_list_t *cpulist |
sigar_cpu_list_grow | 扩展cpu_list空间 |
sigar_cpu_list_destroy | 清除数据 |
内存
路由
函数或变量 | 描述 |
---|---|
sigar_net_route_list_create | 根据SIGAR_NET_ROUTE_LIST_MAX创建路由列表 |
sigar_net_route_list_grow | 一倍扩展空间 |
sigar_net_route_list_destroy | 清除数据 |