cpuid(4)

NUME
cpuid - dispozitiv de acces CPUID x86

DESCRIERE
CPUID furnizează o interfață pentru interogarea informațiilor despre procesorul x86.

Acest dispozitiv este accesat prin lseek(2) sau pread(2) la nivelul CPUID corespunzător și citirea în bucăți de 16 octeți. O dimensiune de citire mai mare înseamnă citiri multiple de niveluri consecutive.

Cei 32 de biți inferiori ai poziției fișierului sunt utilizați ca %eax de intrare, iar cei 32 de biți superiori ai poziției fișierului ca %ecx de intrare, acesta din urmă este destinat „numărării” nivelurilor eax ca eax=4.

Acest controlor utilizează /dev/cpu/CPUNUM/cpuid, unde CPUNUM este numărul minor, iar pe o mașină SMP va direcționa accesul către CPU CPUNUM, așa cum este listat în /proc/cpuinfo.

Acest fișier este protejat astfel încât să poată fi citit numai de utilizatorul root sau de membrii grupului root.

NOTE
Instrucțiunea CPUID poate fi executată direct de un program care utilizează asamblorul inline. Cu toate acestea, acest dispozitiv permite accesul convenabil la toate procesoarele fără a schimba afinitatea procesului.

Majoritatea informațiilor din cpuid sunt raportate de către nucleu într-o formă prelucrată, fie în /proc/cpuinfo, fie prin intermediul subdirectoarelor din /sys/devices/system/cpu. Accesul direct la CPUID prin intermediul acestui dispozitiv ar trebui să fie utilizat numai în cazuri excepționale.

Controlorul cpuid nu este încărcat automat. Pe nucleele modulare, este posibil să fie necesar să utilizați următoarea comandă pentru a-l încărca în mod explicit înainte de utilizare:

    $ modprobe cpuid

Nu există suport pentru funcțiile CPUID care necesită registre de intrare suplimentare.

Procesoarele x86 foarte vechi nu acceptă CPUID.

CONSULTAȚI ȘI
cpuid(1)

Intel Corporation, Intel 64 and IA-32 Architectures Software Developer's Manual Volume 2A: Instruction Set Reference, A-M, 3-180 CPUID reference.

Intel Corporation, Intel Processor Identification and the CPUID Instruction, Application note 485.

TRADUCERE
Traducerea în limba română a acestui manual a fost creată de Remus-Gabriel Chelu <remusgabriel.chelu@disroot.org>

Această traducere este documentație gratuită; citiți Licența publică generală GNU Versiunea 3 (https://www.gnu.org/licenses/gpl-3.0.html) sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă Nicio RESPONSABILITATE.

Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la translation-team-ro@lists.sourceforge.net.