mirror of
https://github.com/k3s-io/k3s.git
synced 2024-06-07 19:41:36 +00:00
53 lines
2.5 KiB
Go
53 lines
2.5 KiB
Go
|
package winapi
|
||
|
|
||
|
import "golang.org/x/sys/windows"
|
||
|
|
||
|
const SystemProcessInformation = 5
|
||
|
|
||
|
const STATUS_INFO_LENGTH_MISMATCH = 0xC0000004
|
||
|
|
||
|
// __kernel_entry NTSTATUS NtQuerySystemInformation(
|
||
|
// SYSTEM_INFORMATION_CLASS SystemInformationClass,
|
||
|
// PVOID SystemInformation,
|
||
|
// ULONG SystemInformationLength,
|
||
|
// PULONG ReturnLength
|
||
|
// );
|
||
|
//sys NtQuerySystemInformation(systemInfoClass int, systemInformation uintptr, systemInfoLength uint32, returnLength *uint32) (status uint32) = ntdll.NtQuerySystemInformation
|
||
|
|
||
|
type SYSTEM_PROCESS_INFORMATION struct {
|
||
|
NextEntryOffset uint32 // ULONG
|
||
|
NumberOfThreads uint32 // ULONG
|
||
|
WorkingSetPrivateSize int64 // LARGE_INTEGER
|
||
|
HardFaultCount uint32 // ULONG
|
||
|
NumberOfThreadsHighWatermark uint32 // ULONG
|
||
|
CycleTime uint64 // ULONGLONG
|
||
|
CreateTime int64 // LARGE_INTEGER
|
||
|
UserTime int64 // LARGE_INTEGER
|
||
|
KernelTime int64 // LARGE_INTEGER
|
||
|
ImageName UnicodeString // UNICODE_STRING
|
||
|
BasePriority int32 // KPRIORITY
|
||
|
UniqueProcessID windows.Handle // HANDLE
|
||
|
InheritedFromUniqueProcessID windows.Handle // HANDLE
|
||
|
HandleCount uint32 // ULONG
|
||
|
SessionID uint32 // ULONG
|
||
|
UniqueProcessKey *uint32 // ULONG_PTR
|
||
|
PeakVirtualSize uintptr // SIZE_T
|
||
|
VirtualSize uintptr // SIZE_T
|
||
|
PageFaultCount uint32 // ULONG
|
||
|
PeakWorkingSetSize uintptr // SIZE_T
|
||
|
WorkingSetSize uintptr // SIZE_T
|
||
|
QuotaPeakPagedPoolUsage uintptr // SIZE_T
|
||
|
QuotaPagedPoolUsage uintptr // SIZE_T
|
||
|
QuotaPeakNonPagedPoolUsage uintptr // SIZE_T
|
||
|
QuotaNonPagedPoolUsage uintptr // SIZE_T
|
||
|
PagefileUsage uintptr // SIZE_T
|
||
|
PeakPagefileUsage uintptr // SIZE_T
|
||
|
PrivatePageCount uintptr // SIZE_T
|
||
|
ReadOperationCount int64 // LARGE_INTEGER
|
||
|
WriteOperationCount int64 // LARGE_INTEGER
|
||
|
OtherOperationCount int64 // LARGE_INTEGER
|
||
|
ReadTransferCount int64 // LARGE_INTEGER
|
||
|
WriteTransferCount int64 // LARGE_INTEGER
|
||
|
OtherTransferCount int64 // LARGE_INTEGER
|
||
|
}
|