@ -4,18 +4,44 @@ import (
"encoding/json"
)
// Memory usage statistics. Total, Available and Used contain numbers of bytes
// for human consumption.
//
// The other fields in this struct contain kernel specific values.
type VirtualMemoryStat struct {
Total uint64 ` json:"total" `
Available uint64 ` json:"available" `
Used uint64 ` json:"used" `
// Total amount of RAM on this system
Total uint64 ` json:"total" `
// RAM available for programs to allocate
//
// This value is computed from the kernel specific values.
Available uint64 ` json:"available" `
// RAM used by programs
//
// This value is computed from the kernel specific values.
Used uint64 ` json:"used" `
// Percentage of RAM used by programs
//
// This value is computed from the kernel specific values.
UsedPercent float64 ` json:"used_percent" `
Free uint64 ` json:"free" `
Active uint64 ` json:"active" `
Inactive uint64 ` json:"inactive" `
Buffers uint64 ` json:"buffers" `
Cached uint64 ` json:"cached" `
Wired uint64 ` json:"wired" `
Shared uint64 ` json:"shared" `
// This is the kernel's notion of free memory; RAM chips whose bits nobody
// cares about the value of right now. For a human consumable number,
// Available is what you really want.
Free uint64 ` json:"free" `
// OS X / BSD specific numbers:
// http://www.macyourself.com/2010/02/17/what-is-free-wired-active-and-inactive-system-memory-ram/
Active uint64 ` json:"active" `
Inactive uint64 ` json:"inactive" `
Wired uint64 ` json:"wired" `
// Linux specific numbers
// https://www.centos.org/docs/5/html/5.1/Deployment_Guide/s2-proc-meminfo.html
Buffers uint64 ` json:"buffers" `
Cached uint64 ` json:"cached" `
}
type SwapMemoryStat struct {