| #ifndef HEADER_SolarisMachine |
| #define HEADER_SolarisMachine |
| /* |
| htop - SolarisMachine.h |
| (C) 2014 Hisham H. Muhammad |
| (C) 2017,2018 Guy M. Broome |
| Released under the GNU GPLv2+, see the COPYING file |
| in the source distribution for its full text. |
| */ |
| |
| #include "config.h" // IWYU pragma: keep |
| |
| #include <kstat.h> |
| #include <stdbool.h> |
| #include <stdint.h> |
| #include <sys/param.h> |
| #include <sys/resource.h> |
| #include <sys/swap.h> |
| #include <sys/sysconf.h> |
| #include <sys/sysinfo.h> |
| #include <sys/uio.h> |
| |
| #include "Hashtable.h" |
| #include "UsersTable.h" |
| |
| #include "zfs/ZfsArcStats.h" |
| |
| |
| #define ZONE_ERRMSGLEN 1024 |
| extern char zone_errmsg[ZONE_ERRMSGLEN]; |
| |
| typedef struct CPUData_ { |
| double userPercent; |
| double nicePercent; |
| double systemPercent; |
| double irqPercent; |
| double idlePercent; |
| double systemAllPercent; |
| double frequency; |
| uint64_t luser; |
| uint64_t lkrnl; |
| uint64_t lintr; |
| uint64_t lidle; |
| bool online; |
| } CPUData; |
| |
| typedef struct SolarisMachine_ { |
| Machine super; |
| |
| kstat_ctl_t* kd; |
| CPUData* cpus; |
| |
| int pageSize; |
| int pageSizeKB; |
| |
| ZfsArcStats zfs; |
| } SolarisMachine; |
| |
| #endif |