fillin swap
This commit is contained in:
parent
3ba4a01afc
commit
6ecab7bba0
|
@ -7,6 +7,8 @@ int sigar_os_open(sigar_t **sigar)
|
|||
{
|
||||
*sigar = malloc(sizeof(**sigar));
|
||||
|
||||
(*sigar)->pagesize = getpagesize();
|
||||
|
||||
return SIGAR_OK;
|
||||
}
|
||||
|
||||
|
@ -45,9 +47,16 @@ int sigar_mem_get(sigar_t *sigar, sigar_mem_t *mem)
|
|||
|
||||
int sigar_swap_get(sigar_t *sigar, sigar_swap_t *swap)
|
||||
{
|
||||
swap->total = -1;
|
||||
swap->used = -1;
|
||||
swap->free = -1;
|
||||
struct tbl_swapinfo info;
|
||||
|
||||
table(TBL_SWAPINFO, -1, &info, 1, sizeof(info));
|
||||
|
||||
swap->total = info.size;
|
||||
swap->free = info.free;
|
||||
swap->total *= sigar->pagesize;
|
||||
swap->free *= sigar->pagesize;
|
||||
|
||||
swap->used = swap->total - swap->free;
|
||||
|
||||
return SIGAR_OK;
|
||||
}
|
||||
|
|
|
@ -1,6 +1,12 @@
|
|||
#ifndef SIGAR_OS_H
|
||||
#define SIGAR_OS_H
|
||||
|
||||
#include <sys/table.h>
|
||||
/* "i will *punch* you in the *face*" --will ferrell */
|
||||
#undef idle
|
||||
#undef usr
|
||||
#undef sys
|
||||
|
||||
#include <sys/vm.h>
|
||||
|
||||
#include <mach.h>
|
||||
|
@ -9,6 +15,7 @@
|
|||
|
||||
struct sigar_t {
|
||||
SIGAR_T_BASE;
|
||||
int pagesize;
|
||||
};
|
||||
|
||||
#endif /* SIGAR_OS_H */
|
||||
|
|
Loading…
Reference in New Issue