diff options
Diffstat (limited to 'vendor/github.com/pbnjay/memory')
-rw-r--r-- | vendor/github.com/pbnjay/memory/LICENSE | 29 | ||||
-rw-r--r-- | vendor/github.com/pbnjay/memory/README.md | 41 | ||||
-rw-r--r-- | vendor/github.com/pbnjay/memory/doc.go | 24 | ||||
-rw-r--r-- | vendor/github.com/pbnjay/memory/memory_bsd.go | 19 | ||||
-rw-r--r-- | vendor/github.com/pbnjay/memory/memory_darwin.go | 49 | ||||
-rw-r--r-- | vendor/github.com/pbnjay/memory/memory_linux.go | 29 | ||||
-rw-r--r-- | vendor/github.com/pbnjay/memory/memory_windows.go | 60 | ||||
-rw-r--r-- | vendor/github.com/pbnjay/memory/memsysctl.go | 21 | ||||
-rw-r--r-- | vendor/github.com/pbnjay/memory/stub.go | 10 |
9 files changed, 0 insertions, 282 deletions
diff --git a/vendor/github.com/pbnjay/memory/LICENSE b/vendor/github.com/pbnjay/memory/LICENSE deleted file mode 100644 index 63ca4a6d2..000000000 --- a/vendor/github.com/pbnjay/memory/LICENSE +++ /dev/null @@ -1,29 +0,0 @@ -BSD 3-Clause License - -Copyright (c) 2017, Jeremy Jay -All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - -* Redistributions of source code must retain the above copyright notice, this - list of conditions and the following disclaimer. - -* Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - -* Neither the name of the copyright holder nor the names of its - contributors may be used to endorse or promote products derived from - this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE -FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER -CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, -OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/vendor/github.com/pbnjay/memory/README.md b/vendor/github.com/pbnjay/memory/README.md deleted file mode 100644 index e98f261a0..000000000 --- a/vendor/github.com/pbnjay/memory/README.md +++ /dev/null @@ -1,41 +0,0 @@ -# memory - -Package `memory` provides two methods reporting total physical system memory -accessible to the kernel, and free memory available to the running application. - -This package has no external dependency besides the standard library and default operating system tools. - -Documentation: -[](https://godoc.org/github.com/pbnjay/memory) - -This is useful for dynamic code to minimize thrashing and other contention, similar to the stdlib `runtime.NumCPU` -See some history of the proposal at https://github.com/golang/go/issues/21816 - - -## Example - -```go -fmt.Printf("Total system memory: %d\n", memory.TotalMemory()) -fmt.Printf("Free memory: %d\n", memory.FreeMemory()) -``` - - -## Testing - -Tested/working on: - - macOS 10.12.6 (16G29), 10.15.7 (19H2) - - Windows 10 1511 (10586.1045) - - Linux RHEL (3.10.0-327.3.1.el7.x86_64) - - Raspberry Pi 3 (ARMv8) on Raspbian, ODROID-C1+ (ARMv7) on Ubuntu, C.H.I.P - (ARMv7). - - Amazon Linux 2 aarch64 (m6a.large, 4.14.203-156.332.amzn2.aarch64) - -Tested on virtual machines: - - Windows 7 SP1 386 - - Debian stretch 386 - - NetBSD 7.1 amd64 + 386 - - OpenBSD 6.1 amd64 + 386 - - FreeBSD 11.1 amd64 + 386 - - DragonFly BSD 4.8.1 amd64 - -If you have access to untested systems please test and report success/bugs. diff --git a/vendor/github.com/pbnjay/memory/doc.go b/vendor/github.com/pbnjay/memory/doc.go deleted file mode 100644 index 4e4f984c0..000000000 --- a/vendor/github.com/pbnjay/memory/doc.go +++ /dev/null @@ -1,24 +0,0 @@ -// Package memory provides a single method reporting total system memory -// accessible to the kernel. -package memory - -// TotalMemory returns the total accessible system memory in bytes. -// -// The total accessible memory is installed physical memory size minus reserved -// areas for the kernel and hardware, if such reservations are reported by -// the operating system. -// -// If accessible memory size could not be determined, then 0 is returned. -func TotalMemory() uint64 { - return sysTotalMemory() -} - -// FreeMemory returns the total free system memory in bytes. -// -// The total free memory is installed physical memory size minus reserved -// areas for other applications running on the same system. -// -// If free memory size could not be determined, then 0 is returned. -func FreeMemory() uint64 { - return sysFreeMemory() -} diff --git a/vendor/github.com/pbnjay/memory/memory_bsd.go b/vendor/github.com/pbnjay/memory/memory_bsd.go deleted file mode 100644 index 49d808a9e..000000000 --- a/vendor/github.com/pbnjay/memory/memory_bsd.go +++ /dev/null @@ -1,19 +0,0 @@ -// +build freebsd openbsd dragonfly netbsd - -package memory - -func sysTotalMemory() uint64 { - s, err := sysctlUint64("hw.physmem") - if err != nil { - return 0 - } - return s -} - -func sysFreeMemory() uint64 { - s, err := sysctlUint64("hw.usermem") - if err != nil { - return 0 - } - return s -} diff --git a/vendor/github.com/pbnjay/memory/memory_darwin.go b/vendor/github.com/pbnjay/memory/memory_darwin.go deleted file mode 100644 index a3f457699..000000000 --- a/vendor/github.com/pbnjay/memory/memory_darwin.go +++ /dev/null @@ -1,49 +0,0 @@ -// +build darwin - -package memory - -import ( - "os/exec" - "regexp" - "strconv" -) - -func sysTotalMemory() uint64 { - s, err := sysctlUint64("hw.memsize") - if err != nil { - return 0 - } - return s -} - -func sysFreeMemory() uint64 { - cmd := exec.Command("vm_stat") - outBytes, err := cmd.Output() - if err != nil { - return 0 - } - - rePageSize := regexp.MustCompile("page size of ([0-9]*) bytes") - reFreePages := regexp.MustCompile("Pages free: *([0-9]*)\\.") - - // default: page size of 4096 bytes - matches := rePageSize.FindSubmatchIndex(outBytes) - pageSize := uint64(4096) - if len(matches) == 4 { - pageSize, err = strconv.ParseUint(string(outBytes[matches[2]:matches[3]]), 10, 64) - if err != nil { - return 0 - } - } - - // ex: Pages free: 1126961. - matches = reFreePages.FindSubmatchIndex(outBytes) - freePages := uint64(0) - if len(matches) == 4 { - freePages, err = strconv.ParseUint(string(outBytes[matches[2]:matches[3]]), 10, 64) - if err != nil { - return 0 - } - } - return freePages * pageSize -} diff --git a/vendor/github.com/pbnjay/memory/memory_linux.go b/vendor/github.com/pbnjay/memory/memory_linux.go deleted file mode 100644 index 3d07711ce..000000000 --- a/vendor/github.com/pbnjay/memory/memory_linux.go +++ /dev/null @@ -1,29 +0,0 @@ -// +build linux - -package memory - -import "syscall" - -func sysTotalMemory() uint64 { - in := &syscall.Sysinfo_t{} - err := syscall.Sysinfo(in) - if err != nil { - return 0 - } - // If this is a 32-bit system, then these fields are - // uint32 instead of uint64. - // So we always convert to uint64 to match signature. - return uint64(in.Totalram) * uint64(in.Unit) -} - -func sysFreeMemory() uint64 { - in := &syscall.Sysinfo_t{} - err := syscall.Sysinfo(in) - if err != nil { - return 0 - } - // If this is a 32-bit system, then these fields are - // uint32 instead of uint64. - // So we always convert to uint64 to match signature. - return uint64(in.Freeram) * uint64(in.Unit) -} diff --git a/vendor/github.com/pbnjay/memory/memory_windows.go b/vendor/github.com/pbnjay/memory/memory_windows.go deleted file mode 100644 index c8500cc6f..000000000 --- a/vendor/github.com/pbnjay/memory/memory_windows.go +++ /dev/null @@ -1,60 +0,0 @@ -// +build windows - -package memory - -import ( - "syscall" - "unsafe" -) - -// omitting a few fields for brevity... -// https://msdn.microsoft.com/en-us/library/windows/desktop/aa366589(v=vs.85).aspx -type memStatusEx struct { - dwLength uint32 - dwMemoryLoad uint32 - ullTotalPhys uint64 - ullAvailPhys uint64 - unused [5]uint64 -} - -func sysTotalMemory() uint64 { - kernel32, err := syscall.LoadDLL("kernel32.dll") - if err != nil { - return 0 - } - // GetPhysicallyInstalledSystemMemory is simpler, but broken on - // older versions of windows (and uses this under the hood anyway). - globalMemoryStatusEx, err := kernel32.FindProc("GlobalMemoryStatusEx") - if err != nil { - return 0 - } - msx := &memStatusEx{ - dwLength: 64, - } - r, _, _ := globalMemoryStatusEx.Call(uintptr(unsafe.Pointer(msx))) - if r == 0 { - return 0 - } - return msx.ullTotalPhys -} - -func sysFreeMemory() uint64 { - kernel32, err := syscall.LoadDLL("kernel32.dll") - if err != nil { - return 0 - } - // GetPhysicallyInstalledSystemMemory is simpler, but broken on - // older versions of windows (and uses this under the hood anyway). - globalMemoryStatusEx, err := kernel32.FindProc("GlobalMemoryStatusEx") - if err != nil { - return 0 - } - msx := &memStatusEx{ - dwLength: 64, - } - r, _, _ := globalMemoryStatusEx.Call(uintptr(unsafe.Pointer(msx))) - if r == 0 { - return 0 - } - return msx.ullAvailPhys -} diff --git a/vendor/github.com/pbnjay/memory/memsysctl.go b/vendor/github.com/pbnjay/memory/memsysctl.go deleted file mode 100644 index 438d9eff8..000000000 --- a/vendor/github.com/pbnjay/memory/memsysctl.go +++ /dev/null @@ -1,21 +0,0 @@ -// +build darwin freebsd openbsd dragonfly netbsd - -package memory - -import ( - "syscall" - "unsafe" -) - -func sysctlUint64(name string) (uint64, error) { - s, err := syscall.Sysctl(name) - if err != nil { - return 0, err - } - // hack because the string conversion above drops a \0 - b := []byte(s) - if len(b) < 8 { - b = append(b, 0) - } - return *(*uint64)(unsafe.Pointer(&b[0])), nil -} diff --git a/vendor/github.com/pbnjay/memory/stub.go b/vendor/github.com/pbnjay/memory/stub.go deleted file mode 100644 index f29473ba0..000000000 --- a/vendor/github.com/pbnjay/memory/stub.go +++ /dev/null @@ -1,10 +0,0 @@ -// +build !linux,!darwin,!windows,!freebsd,!dragonfly,!netbsd,!openbsd - -package memory - -func sysTotalMemory() uint64 { - return 0 -} -func sysFreeMemory() uint64 { - return 0 -} |