#include <sys/types.h> #include <sys/processor.h>
int processor_info(processorid_t processorid, processor_info_t *infop);
The processor_info() function returns the status of the processor specified by processorid in the processor_info_t structure pointed to by infop.
The structure processor_info_t contains the following members:
int pi_state; char pi_processor_type[PI_TYPELEN]; char pi_fputypes[PI_FPUTYPE]; int pi_clock;
The pi_state member is the current state of the processor, either P_ONLINE, P_OFFLINE, P_NOINTR, P_FAULTED, P_SPARE, or P_POWEROFF.
The pi_processor_type member is a null-terminated ASCII string specifying the type of the processor.
The pi_fputypes member is a null-terminated ASCII string containing the comma-separated types of floating-point units (FPUs) attached to the processor. This string will be empty if no FPU is attached.
The pi_clock member is the processor clock frequency rounded to the nearest megahertz. It may be 0 if not known.
Upon successful completion, 0 is returned. Otherwise, -1 is returned and errno is set to indicate the error.
The processor_info() function will fail if:
EINVAL An non-existent processor ID was specified.
The caller is in a non-global zone, the pools facility is active, and the processor is not a member of the zone's pool's processor set.
EFAULT The processor_info_t structure pointed to by infop was not writable by the user.
pooladm(1M), psradm(1M), psrinfo(1M), zoneadm(1M), p_online(2), sysconf(3C)