sched cpuinfo_t Structure

The cpuinfo_t structure defines a CPU. Arguments to both the enqueue and dequeue probes include a pointer to a cpuinfo_t. Additionally, the cpuinfo_t corresponding to the current CPU is pointed to by the curcpu variable. The definition of the cpuinfo_t structure is as follows:

typedef struct cpuinfo {
        processorid_t cpu_id;           /* CPU identifier */
        psetid_t cpu_pset;              /* processor set identifier */
        chipid_t cpu_chip;              /* chip identifier */
        lgrp_id_t cpu_lgrp;             /* locality group identifier */
        id_t      cpu_core;             /* CPU core id */
        processor_info_t cpu_info;      /* CPU information */
} cpuinfo_t;

The cpu_core member is the identifier of the physical core. For more information, see psrinfo(8) and p_online(2) man pages.

The cpu_pset member is the processor set that contains the CPU, if any. See psrset(8) for more details on processor sets.

The cpu_chip member is the identifier of the physical chip. Physical chips may contain several CPUs. For more information, see the psrinfo(8) man page.

The cpu_lgrp member is the identifier of the latency group associated with the CPU. See liblgrp(3LIB) for details on latency groups.

The cpu_info member is the processor_info_t structure associated with the CPU, as returned by processor_info. For more information, see the processor_info(2) man page.