Scroll to navigation

cpuid(4) Device Drivers Manual cpuid(4)

ИМЯ

cpuid - устройство доступа к CPUID в процессорах x86

ОПИСАНИЕ

CPUID предоставляет интерфейс для получения информации о процессоре x86.

Для перехода на нужный уровень CPUID достаточно выполнить на устройстве lseek(2) или pread(2); чтение происходит порциями по 16 байт. Для получения большего количества данных нужно повторить операцию чтения на последующих уровнях.

Младшие 32 бита позиции файла используются как входящее значение для регистра %eax, а старшие 32 бита как входящее значение для %ecx, последнее предназначено для "подсчёта" уровней eax, например eax=4.

Этот драйвер использует устройства /dev/cpu/CPUNUM/cpuid, где CPUNUM указывает на младший номер, а в многопроцессорных машинах CPUNUM указывает на номер процессора, которые перечислены в /proc/cpuinfo.

Файл доступен на чтение только пользователю root или членам группы root.

ПРИМЕЧАНИЯ

Инструкция CPUID может непосредственно выполняться программой с помощью встроенных в языки ассемблерных вставок. Однако это устройство предоставляет удобный доступ ко всем процессорам без изменения в программе.

Большинство информации cpuid можно получить в готовом виде из файла /proc/cpuinfo или подкаталогов /sys/devices/system/cpu. Непосредственное использование CPUID через это устройство нужно использовать только в специальных случаях.

Драйвер cpuid автоматически не загружается. Если ядро модульное, то нужно выполнять загрузку явно:


$ modprobe cpuid

Функции CPUID с дополнительными входными регистра не поддерживаются.

Early i486 CPUs do not support the CPUID instruction; opening this device for those CPUs fails with EIO.

СМОТРИТЕ ТАКЖЕ

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.

ПЕРЕВОД

Русский перевод этой страницы руководства разработал Azamat Hackimov <azamat.hackimov@gmail.com>, Dmitriy S. Seregin <dseregin@59.ru>, Dmitry Bolkhovskikh <d20052005@yandex.ru>, Katrin Kutepova <blackkatelv@gmail.com>, Yuri Kozlov <yuray@komyakino.ru> и Иван Павлов <pavia00@gmail.com>

Этот перевод является свободной программной документацией; он распространяется на условиях общедоступной лицензии GNU (GNU General Public License - GPL, https://www.gnu.org/licenses/gpl-3.0.html версии 3 или более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.

Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом разработчику по его адресу электронной почты или по адресу списка рассылки русских переводчиков.

2 мая 2024 г. Linux man-pages (unreleased)