La structure cpuinfo_t définit une CPU. Comme indiqué dans le Tableau 26–2, les arguments des sondes enqueue et dequeue incluent un pointeur sur cpuinfo_t. De plus, la structure cpuinfo_t correspondant à la CPU actuelle est indiquée par la variable curcpu. La définition de la structure cpuinfo_t est la suivante :
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 identifer */ processor_info_t cpu_info; /* CPU information */ } cpuinfo_t;
Le membre cpu_id est l'identificateur de processeur, tel que renvoyé par psrinfo(1M) et p_online(2).
L'élément cpu_pset est le processeur défini contenant la CPU, le cas échéant. Pour plus d'informations sur les définitions du processeur, reportez-vous à psrset(1M).
L'élément cpu_chip est l'identificateur de la puce physique. Les puces physiques peuvent contenir plusieurs CPU. Pour plus d'informations, reportez-vous à psrinfo(1M).
L'élément cpu_lgrp est l'identificateur du groupe de latence associé à la CPU. Pour plus d'informations sur les groupes de latence, reportez-vous à liblgrp(3LIB).
Le membre cpu_info est la structure processor_info_t associée à la CPU, tel que renvoyé par processor_info(2).