Package com.sun.jna.platform.mac
Interface SystemB
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static class
SystemB.Group
Return type for getgrgidstatic class
SystemB.HostCpuLoadInfo
static class
SystemB.HostLoadInfo
static class
SystemB.IFdata
Data type as part of IFmsgHdrstatic class
SystemB.IFdata64
Data type as part of IFmsgHdrstatic class
SystemB.IFmsgHdr
Return type for sysctl CTL_NET,PF_ROUTEstatic class
SystemB.IFmsgHdr2
Return type for sysctl CTL_NET,PF_ROUTEstatic class
SystemB.Passwd
Return type for getpwuidstatic class
SystemB.ProcBsdInfo
static class
SystemB.ProcTaskAllInfo
static class
SystemB.ProcTaskInfo
static class
SystemB.RUsageInfoV2
static class
SystemB.Statfs
The statfs() routine returns information about a mounted file system.static class
SystemB.Timeval
Time valuestatic class
SystemB.Timezone
Time Zonestatic class
SystemB.VMMeter
static class
SystemB.VMStatistics
static class
SystemB.VMStatistics64
static class
SystemB.VnodeInfoPath
static class
SystemB.VnodePathInfo
static class
SystemB.XswUsage
Return type for sysctl vm.swapusage-
Nested classes/interfaces inherited from interface com.sun.jna.platform.unix.LibCAPI
LibCAPI.size_t, LibCAPI.ssize_t
-
Nested classes/interfaces inherited from interface com.sun.jna.Library
Library.Handler
-
Nested classes/interfaces inherited from interface com.sun.jna.platform.unix.Resource
Resource.Rlimit
-
-
Field Summary
Fields Modifier and Type Field Description static int
CPU_STATE_IDLE
static int
CPU_STATE_MAX
static int
CPU_STATE_NICE
static int
CPU_STATE_SYSTEM
static int
CPU_STATE_USER
static int
HOST_CPU_LOAD_INFO
static int
HOST_LOAD_INFO
static int
HOST_VM_INFO
static int
HOST_VM_INFO64
static SystemB
INSTANCE
static int
INT_SIZE
static int
MAXCOMLEN
static int
MAXPATHLEN
static int
MFSTYPENAMELEN
static int
MNAMELEN
static int
MNT_DWAIT
static int
MNT_NOWAIT
static int
MNT_WAIT
static int
PROC_ALL_PIDS
static int
PROC_PIDPATHINFO_MAXSIZE
static int
PROC_PIDTASKALLINFO
static int
PROC_PIDTASKINFO
static int
PROC_PIDTBSDINFO
static int
PROC_PIDVNODEPATHINFO
static int
PROCESSOR_BASIC_INFO
static int
PROCESSOR_CPU_LOAD_INFO
static int
RUSAGE_INFO_V2
static int
UINT64_SIZE
-
Fields inherited from interface com.sun.jna.platform.unix.LibCAPI
HOST_NAME_MAX
-
Fields inherited from interface com.sun.jna.Library
OPTION_ALLOW_OBJECTS, OPTION_CALLING_CONVENTION, OPTION_CLASSLOADER, OPTION_FUNCTION_MAPPER, OPTION_INVOCATION_MAPPER, OPTION_OPEN_FLAGS, OPTION_STRING_ENCODING, OPTION_STRUCTURE_ALIGNMENT, OPTION_TYPE_MAPPER
-
Fields inherited from interface com.sun.jna.platform.unix.Reboot
RB_AUTOBOOT, RB_DISABLE_CAD, RB_ENABLE_CAD, RB_HALT_SYSTEM, RB_KEXEC, RB_POWER_OFF, RB_SW_SUSPEND
-
Fields inherited from interface com.sun.jna.platform.unix.Resource
RLIMIT_AS, RLIMIT_CORE, RLIMIT_CPU, RLIMIT_DATA, RLIMIT_FSIZE, RLIMIT_LOCKS, RLIMIT_MEMLOCK, RLIMIT_MSGQUEUE, RLIMIT_NICE, RLIMIT_NLIMITS, RLIMIT_NOFILE, RLIMIT_NPROC, RLIMIT_RSS, RLIMIT_RTPRIO, RLIMIT_RTTIME, RLIMIT_SIGPENDING, RLIMIT_STACK
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description int
getfsstat64(SystemB.Statfs[] buf, int bufsize, int flags)
The getfsstat() function returns information about all mounted file systems.SystemB.Group
getgrgid(int gid)
This function searches the group database for the given group name pointed to by the group id given by gid, returning the first one encountered.int
getpid()
Returns the process ID of the calling process.SystemB.Passwd
getpwuid(int uid)
This function searches the password database for the given user uid, always returning the first one encountered.int
gettimeofday(SystemB.Timeval tp, SystemB.Timezone tzp)
The system's notion of the current Greenwich time and the current time zone is obtained with the gettimeofday() call, and set with the settimeofday() call.int
host_page_size(int hostPort, LongByReference pPageSize)
The host_page_size function returns the page size for the given host.int
host_processor_info(int hostPort, int flavor, IntByReference procCount, PointerByReference procInfo, IntByReference procInfoCount)
The host_processor_info function returns information about processors.int
host_statistics(int hostPort, int hostStat, Structure stats, IntByReference count)
The host_statistics function returns scheduling and virtual memory statistics concerning the host as specified by hostStat.int
host_statistics64(int hostPort, int hostStat, Structure stats, IntByReference count)
The host_statistics64 function returns 64-bit virtual memory statistics concerning the host as specified by hostStat.int
mach_host_self()
The mach_host_self system call returns the calling thread's host name port.int
mach_port_deallocate(int port, int name)
Decrement the target port right's user reference count.int
mach_task_self()
The mach_task_self system call returns the calling thread's task_self port.int
proc_listpids(int type, int typeinfo, int[] buffer, int buffersize)
Search through the current processesint
proc_pid_rusage(int pid, int flavor, SystemB.RUsageInfoV2 buffer)
Return resource usage information for the given pid, which can be a live process or a zombie.int
proc_pidinfo(int pid, int flavor, long arg, Structure buffer, int buffersize)
Return in buffer a proc_*info structure corresponding to the flavor for the specified processint
proc_pidpath(int pid, Pointer buffer, int buffersize)
Return in buffer the name of the specified processint
sysctl(int[] name, int namelen, Pointer oldp, IntByReference oldlenp, Pointer newp, int newlen)
The sysctl() function retrieves system information and allows processes with appropriate privileges to set system information.int
sysctlbyname(String name, Pointer oldp, IntByReference oldlenp, Pointer newp, int newlen)
The sysctlbyname() function accepts an ASCII representation of the name and internally looks up the integer name vector.int
sysctlnametomib(String name, Pointer mibp, IntByReference size)
This function accepts an ASCII representation of the name, looks up the integer name vector, and returns the numeric representation in the mib array pointed to by mibp.-
Methods inherited from interface com.sun.jna.platform.unix.LibCAPI
close, getdomainname, getegid, getenv, geteuid, getgid, gethostname, getloadavg, getuid, msync, munmap, setdomainname, setegid, setenv, seteuid, setgid, sethostname, setuid, unsetenv
-
-
-
-
Field Detail
-
INSTANCE
static final SystemB INSTANCE
-
HOST_LOAD_INFO
static final int HOST_LOAD_INFO
- See Also:
- Constant Field Values
-
HOST_VM_INFO
static final int HOST_VM_INFO
- See Also:
- Constant Field Values
-
HOST_CPU_LOAD_INFO
static final int HOST_CPU_LOAD_INFO
- See Also:
- Constant Field Values
-
HOST_VM_INFO64
static final int HOST_VM_INFO64
- See Also:
- Constant Field Values
-
CPU_STATE_MAX
static final int CPU_STATE_MAX
- See Also:
- Constant Field Values
-
CPU_STATE_USER
static final int CPU_STATE_USER
- See Also:
- Constant Field Values
-
CPU_STATE_SYSTEM
static final int CPU_STATE_SYSTEM
- See Also:
- Constant Field Values
-
CPU_STATE_IDLE
static final int CPU_STATE_IDLE
- See Also:
- Constant Field Values
-
CPU_STATE_NICE
static final int CPU_STATE_NICE
- See Also:
- Constant Field Values
-
PROCESSOR_BASIC_INFO
static final int PROCESSOR_BASIC_INFO
- See Also:
- Constant Field Values
-
PROCESSOR_CPU_LOAD_INFO
static final int PROCESSOR_CPU_LOAD_INFO
- See Also:
- Constant Field Values
-
UINT64_SIZE
static final int UINT64_SIZE
-
INT_SIZE
static final int INT_SIZE
-
MAXCOMLEN
static final int MAXCOMLEN
- See Also:
- Constant Field Values
-
MAXPATHLEN
static final int MAXPATHLEN
- See Also:
- Constant Field Values
-
PROC_PIDPATHINFO_MAXSIZE
static final int PROC_PIDPATHINFO_MAXSIZE
- See Also:
- Constant Field Values
-
PROC_ALL_PIDS
static final int PROC_ALL_PIDS
- See Also:
- Constant Field Values
-
PROC_PIDTASKALLINFO
static final int PROC_PIDTASKALLINFO
- See Also:
- Constant Field Values
-
PROC_PIDTBSDINFO
static final int PROC_PIDTBSDINFO
- See Also:
- Constant Field Values
-
PROC_PIDTASKINFO
static final int PROC_PIDTASKINFO
- See Also:
- Constant Field Values
-
PROC_PIDVNODEPATHINFO
static final int PROC_PIDVNODEPATHINFO
- See Also:
- Constant Field Values
-
MFSTYPENAMELEN
static final int MFSTYPENAMELEN
- See Also:
- Constant Field Values
-
MNAMELEN
static final int MNAMELEN
- See Also:
- Constant Field Values
-
MNT_WAIT
static final int MNT_WAIT
- See Also:
- Constant Field Values
-
MNT_NOWAIT
static final int MNT_NOWAIT
- See Also:
- Constant Field Values
-
MNT_DWAIT
static final int MNT_DWAIT
- See Also:
- Constant Field Values
-
RUSAGE_INFO_V2
static final int RUSAGE_INFO_V2
- See Also:
- Constant Field Values
-
-
Method Detail
-
gettimeofday
int gettimeofday(SystemB.Timeval tp, SystemB.Timezone tzp)
The system's notion of the current Greenwich time and the current time zone is obtained with the gettimeofday() call, and set with the settimeofday() call. The time is expressed in seconds and microseconds since midnight (0 hour), January 1, 1970. The resolution of the system clock is hardware dependent, and the time may be updated continuously or in ``ticks.'' If tp is NULL and tzp is non-NULL, gettimeofday() will populate the timezone struct in tzp. If tp is non-NULL and tzp is NULL, then only the timeval struct in tp is populated. If both tp and tzp are NULL, nothing is returned.- Parameters:
tp
- Timeval structuretzp
- Timezone structure- Returns:
- A 0 return value indicates that the call succeeded. A -1 return value indicates an error occurred, and in this case an error code is stored into the global variable errno.
-
mach_host_self
int mach_host_self()
The mach_host_self system call returns the calling thread's host name port. It has an effect equivalent to receiving a send right for the host port.- Returns:
- the host's name port
-
mach_task_self
int mach_task_self()
The mach_task_self system call returns the calling thread's task_self port. It has an effect equivalent to receiving a send right for the task's kernel port.- Returns:
- the task's kernel port
-
mach_port_deallocate
int mach_port_deallocate(int port, int name)
Decrement the target port right's user reference count.- Parameters:
port
- The port holding the right.name
- The port's name for the right.- Returns:
- 0 if successful, a
kern_return_t
code otherwise.
-
host_page_size
int host_page_size(int hostPort, LongByReference pPageSize)
The host_page_size function returns the page size for the given host.- Parameters:
hostPort
- The name (or control) port for the host for which the page size is desired.pPageSize
- The host's page size (in bytes), set on success.- Returns:
- 0 on success; sets errno on failure
-
host_statistics
int host_statistics(int hostPort, int hostStat, Structure stats, IntByReference count)
The host_statistics function returns scheduling and virtual memory statistics concerning the host as specified by hostStat.- Parameters:
hostPort
- The control port for the host for which information is to be obtained.hostStat
- The type of statistics desired (HOST_LOAD_INFO
,HOST_VM_INFO
, orHOST_CPU_LOAD_INFO
)stats
- Statistics about the specified host.count
- On input, the maximum size of the buffer; on output, the size returned (in natural-sized units).- Returns:
- 0 on success; sets errno on failure
-
host_statistics64
int host_statistics64(int hostPort, int hostStat, Structure stats, IntByReference count)
The host_statistics64 function returns 64-bit virtual memory statistics concerning the host as specified by hostStat.- Parameters:
hostPort
- The control port for the host for which information is to be obtained.hostStat
- The type of statistics desired (HOST_VM_INFO64
)stats
- Statistics about the specified host.count
- On input, the maximum size of the buffer; on output, the size returned (in natural-sized units).- Returns:
- 0 on success; sets errno on failure
-
sysctl
int sysctl(int[] name, int namelen, Pointer oldp, IntByReference oldlenp, Pointer newp, int newlen)
The sysctl() function retrieves system information and allows processes with appropriate privileges to set system information. The information available from sysctl() consists of integers, strings, and tables. The state is described using a "Management Information Base" (MIB) style name, listed in name, which is a namelen length array of integers. The information is copied into the buffer specified by oldp. The size of the buffer is given by the location specified by oldlenp before the call, and that location gives the amount of data copied after a successful call and after a call that returns with the error code ENOMEM. If the amount of data available is greater than the size of the buffer supplied, the call supplies as much data as fits in the buffer provided and returns with the error code ENOMEM. If the old value is not desired, oldp and oldlenp should be set to NULL. The size of the available data can be determined by calling sysctl() with the NULL argument for oldp. The size of the available data will be returned in the location pointed to by oldlenp. For some operations, the amount of space may change often. For these operations, the system attempts to round up so that the returned size is large enough for a call to return the data shortly thereafter. To set a new value, newp is set to point to a buffer of length newlen from which the requested value is to be taken. If a new value is not to be set, newp should be set to NULL and newlen set to 0.- Parameters:
name
- MIB array of integersnamelen
- length of the MIB arrayoldp
- Information retrievedoldlenp
- Size of information retrievednewp
- Information to be writtennewlen
- Size of information to be written- Returns:
- 0 on success; sets errno on failure
-
sysctlbyname
int sysctlbyname(String name, Pointer oldp, IntByReference oldlenp, Pointer newp, int newlen)
The sysctlbyname() function accepts an ASCII representation of the name and internally looks up the integer name vector. Apart from that, it behaves the same as the standard sysctl() function.- Parameters:
name
- ASCII representation of the MIB nameoldp
- Information retrievedoldlenp
- Size of information retrievednewp
- Information to be writtennewlen
- Size of information to be written- Returns:
- 0 on success; sets errno on failure
-
sysctlnametomib
int sysctlnametomib(String name, Pointer mibp, IntByReference size)
This function accepts an ASCII representation of the name, looks up the integer name vector, and returns the numeric representation in the mib array pointed to by mibp. The number of elements in the mib array is given by the location specified by sizep before the call, and that location gives the number of entries copied after a successful call. The resulting mib and size may be used in subsequent sysctl() calls to get the data associated with the requested ASCII name. This interface is intended for use by applications that want to repeatedly request the same variable (the sysctl() function runs in about a third the time as the same request made via the sysctlbyname() function).The number of elements in the mib array can be determined by calling sysctlnametomib() with the NULL argument for mibp.
The sysctlnametomib() function is also useful for fetching mib prefixes. If size on input is greater than the number of elements written, the array still contains the additional elements which may be written programmatically.
- Parameters:
name
- ASCII representation of the namemibp
- Integer array containing the corresponding name vector.size
- On input, number of elements in the returned array; on output, the number of entries copied.- Returns:
- 0 on success; sets errno on failure
-
host_processor_info
int host_processor_info(int hostPort, int flavor, IntByReference procCount, PointerByReference procInfo, IntByReference procInfoCount)
The host_processor_info function returns information about processors.- Parameters:
hostPort
- The control port for the host for which information is to be obtained.flavor
- The type of information requested.procCount
- Pointer to the number of processorsprocInfo
- Pointer to the structure corresponding to the requested flavorprocInfoCount
- Pointer to number of elements in the returned structure- Returns:
- 0 on success; sets errno on failure
-
getpwuid
SystemB.Passwd getpwuid(int uid)
This function searches the password database for the given user uid, always returning the first one encountered.- Parameters:
uid
- The user ID- Returns:
- a Passwd structure matching that user
-
getgrgid
SystemB.Group getgrgid(int gid)
This function searches the group database for the given group name pointed to by the group id given by gid, returning the first one encountered. Identical group gids may result in undefined behavior.- Parameters:
gid
- The group ID- Returns:
- a Group structure matching that group
-
proc_listpids
int proc_listpids(int type, int typeinfo, int[] buffer, int buffersize)
Search through the current processes- Parameters:
type
- types of processes to be searchedtypeinfo
- adjunct information for typebuffer
- a C array of int-sized values to be filled with process identifiers that hold an open file reference matching the specified path or volume. Pass NULL to obtain the minimum buffer size needed to hold the currently active processes.buffersize
- the size (in bytes) of the provided buffer.- Returns:
- the number of bytes of data returned in the provided buffer; -1 if an error was encountered;
-
proc_pidinfo
int proc_pidinfo(int pid, int flavor, long arg, Structure buffer, int buffersize)
Return in buffer a proc_*info structure corresponding to the flavor for the specified process- Parameters:
pid
- the process identifierflavor
- the type of information requestedarg
- argument possibly needed for some flavorsbuffer
- holds resultsbuffersize
- size of results- Returns:
- the number of bytes of data returned in the provided buffer; -1 if an error was encountered;
-
proc_pidpath
int proc_pidpath(int pid, Pointer buffer, int buffersize)
Return in buffer the name of the specified process- Parameters:
pid
- the process identifierbuffer
- holds resultsbuffersize
- size of results- Returns:
- the length of the name returned in buffer if successful; 0 otherwise
-
proc_pid_rusage
int proc_pid_rusage(int pid, int flavor, SystemB.RUsageInfoV2 buffer)
Return resource usage information for the given pid, which can be a live process or a zombie.- Parameters:
pid
- the process identifierflavor
- the type of information requestedbuffer
- holds results- Returns:
- 0 on success; or -1 on failure, with errno set to indicate the specific error.
-
getfsstat64
int getfsstat64(SystemB.Statfs[] buf, int bufsize, int flags)
The getfsstat() function returns information about all mounted file systems. The buf argument is a pointer to an array of statfs structures. Fields that are undefined for a particular file system are set to -1. The buffer is filled with an array of statfs structures, one for each mounted file system up to the size specified by bufsize.- Parameters:
buf
- Array of statfs structures that will be filled with results. If buf is given as NULL, getfsstat() returns just the number of mounted file systems.bufsize
- Size of the buffer to fillflags
- If flags is set to MNT_NOWAIT, getfsstat() will directly return the information retained in the kernel to avoid delays caused by waiting for updated information from a file system that is perhaps temporarily unable to respond. Some of the information returned may be out of date, however; if flags is set to MNT_WAIT or MNT_DWAIT instead, getfsstat() will request updated information from each mounted filesystem before returning.- Returns:
- Upon successful completion, the number of statfs structures is returned. Otherwise, -1 is returned and the global variable errno is set to indicate the error.
-
getpid
int getpid()
Returns the process ID of the calling process. The ID is guaranteed to be unique and is useful for constructing temporary file names.- Returns:
- the process ID of the calling process.
-
-