從 Cpuinfo 讀取 CPU 標誌

Yahya Irmak 2022年5月11日
從 Cpuinfo 讀取 CPU 標誌

本文將解釋如何在 Linux 中讀取 cpuinfo 資訊。稍後,我們將研究什麼是 CPU 標誌及其含義。

在 Linux 中閱讀 cpuinfo

/proc/cpuinfo 檔案包含有關計算機中 CPU 的詳細資訊。使用以下命令讀取檔案的內容。

cat /proc/cpuinfo

處理器資訊

在這裡,我們可以看到,

  • 處理器數量,
  • CPU 供應商、系列、型號名稱,
  • CPU 的核心數量,
  • 快取、TLB、clflush 和地址大小,
  • 許多標誌和其他資訊。

在本文的其餘部分,我們將解釋這些標誌中最常見的含義。有關所有標誌的詳細資訊,請參閱 arch/x86/include/asm/cpufeature.h

/proc/cpuinfo 中最常見的標誌

一個 CPU 可以具有數百個功能,這些功能因型號而異。在這裡,我們將包括官方文件中描述的最常見標誌的定義。

AMD 定義的 CPU 特性

標誌 說明
SYSCALL 系統呼叫/系統呼叫
MP 國會議員能力
NX 執行禁用
MMXEXT AMD MMX 擴充套件
FXSR_OPT FXSAVE/FXRSTOR 優化
GBPAGES pdpe1gb GB 頁面
LM 長模式 (x86-64)

擴充套件 AMD 標誌

標誌 說明
LAHF_LM 長模式下的 LAHF/SAHF
CMP_LEGACY 如果是,超執行緒無效
SVM 安全虛擬機器
ABM 高階位操作
MISALIGNSSE 未對齊的 SSE 模式
3DNOWPREFETCH 3DNow 預取指令
OSVW 作業系統可見的解決方法
IBS 基於指令的取樣
XOP 擴充套件的 AVX 指令
SKINIT SKINIT/STGI 指令
WDT 看門狗定時器
LWP 輕量級分析
TCE 翻譯快取擴充套件
TBM 尾隨位操作
TOPOEXT 拓撲擴充套件 CPUID 葉
PERFCTR_CORE 核心效能計數器擴充套件
BPEXT 資料斷點擴充套件

Intel 定義的 CPU 特性

標誌 描述
FPU 板載 FPU
VME 虛擬模式擴充套件
DE 除錯擴充套件
PSE 頁面大小擴充套件
TSC 時間戳計數器
MSR 特定於模型的暫存器
PAE 實體地址擴充套件
MCE 機器檢查異常
MTRR 記憶體型別範圍暫存器
PGE 頁面全域性啟用
MCA 機器檢查架構
PAT 頁面屬性表
MMX 多媒體擴充套件
PBE 掛起中斷啟用
DTES64 64 位除錯儲存
MWAIT 監視器 監視器/Mwait 支援
VMX 硬體虛擬化
SMX 更安全的模式
TM2 熱監視器 2
XTPR 傳送任務優先順序訊息
PDCM 效能能力
PCID 程序上下文識別符號
DCA 直接快取訪問
HYPERVISOR 在管理程式上執行

虛擬化標誌

標誌 說明
EPT 英特爾擴充套件頁表
VPID 英特爾虛擬處理器 ID
NPT AMD 巢狀頁表支援
LBRV AMD LBR 虛擬化支援
NRIPS nrip_save AMD SVM next_rip 儲存
TSCRATEMSR tsc_scale AMD TSC 縮放支援
VMCBCLEAN vmcb_clean AMD VMCB 清潔位支援
VMCBCLEAN AMD 按 ASID 重新整理支援
FLUSHBYASID AMD 解碼輔助支援
PAUSEFILTER AMD 過濾暫停攔截
PFTHRESHOLD AMD 暫停過濾閾值
VMMCALL 更喜歡 vmmcall 到 vmcall

輔助標誌

標誌 描述
IDA 英特爾動態加速
ARAT 始終執行 APIC 計時器
CPB AMD 核心效能提升
EPB IA32_ENERGY_PERF_BIAS 支援
PLN 英特爾功率限制通知
PTS 英特爾封裝散熱狀態
DTHERM 數字熱感測器
PROC_FEEDBACK AMD ProcFeedback 介面
INTEL_PT 英特爾處理器跟蹤

檢測到的錯誤標誌

標誌 描述:F00F
F00F 英特爾 F00F
FDIV FPU FDIV
COMA Cyrix 6x86 coma
AMD_TLB_MMATCH tlb_mmatch AMD 勘誤表 383
AMD_APIC_C1E apic_c1e AMD 勘誤表 400
11AP 錯誤的本地 APIC 又名 11AP
FXSAVE_LEAK FXSAVE 洩漏 FOP/FIP/FOP
CLFLUSH_MONITOR 在 MONITOR 之前需要 AAI65、CLFLUSH
SYSRET_SS_ATTRS SYSRET 不修復 SS attrs
Author: Yahya Irmak
Yahya Irmak avatar Yahya Irmak avatar

Yahya Irmak has experience in full stack technologies such as Java, Spring Boot, JavaScript, CSS, HTML.

LinkedIn