GNU/Linux >> Belajar Linux >  >> Linux

Linux – Apa Arti Bendera di /proc/cpuinfo?

Bagaimana cara mengetahui apakah prosesor saya memiliki fitur tertentu? (Set instruksi 64-bit, virtualisasi yang dibantu perangkat keras, akselerator kriptografi, dll.) Saya tahu bahwa file /proc/cpuinfo berisi informasi ini, dalam flags baris, tapi apa arti dari semua singkatan samar ini?

Misalnya, diberikan ekstrak berikut dari /proc/cpuinfo , apakah saya memiliki CPU 64-bit? Apakah saya memiliki virtualisasi perangkat keras?

model name      : Intel(R) Core(TM)2 Duo CPU     E8400  @ 3.00GHz
…
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good aperfmperf pni dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 lahf_lm tpr_shadow vnmi flexpriority

Jawaban yang Diterima:

x86

(32-bit alias i386–i686 dan 64-bit alias amd64. Dengan kata lain, workstation, laptop, atau server Anda.)

FAQ:Apakah saya punya…

  • 64-bit (x86_64/AMD64/Intel64)? lm
  • Virtualisasi perangkat keras (VMX/AMD-V)? vmx (Intel), svm (AMD)
  • AES yang dipercepat (AES-NI)? aes
  • TXT (TPM)? smx
  • sebuah hypervisor (diumumkan seperti itu)? hypervisor

Sebagian besar fitur lainnya hanya menarik bagi penyusun atau pembuat kernel.

Semua bendera

Daftar lengkap ada di sumber kernel, dalam file arch/x86/include/asm/cpufeatures.h .

Fitur CPU yang ditentukan oleh Intel, level CPUID 0x00000001 (edx)

Lihat juga Wikipedia dan tabel 2-27 di Referensi Pemrograman Ekstensi Vektor Lanjutan Intel

  • fpu :FPU onboard (dukungan floating point)
  • vme :Peningkatan mode virtual 8086
  • de :Ekstensi Debug (CR4.DE)
  • pse :Ekstensi Ukuran Halaman (halaman memori 4 MB)
  • tsc :Penghitung Stempel Waktu (RDTSC)
  • msr :Register Model-Spesifik (RDMSR, WRMSR)
  • pae :Ekstensi Alamat Fisik (mendukung lebih dari 4 GB RAM)
  • mce :Pengecualian Pemeriksaan Mesin
  • cx8 :instruksi CMPXCHG8 (bandingkan-dan-swap 64-bit)
  • apic :APIC Terpasang
  • sep :SYSENTER/SYSEXIT
  • mtrr :Register Rentang Jenis Memori
  • pge :Page Global Enable (global bit dalam PDE dan PTE)
  • mca :Arsitektur Pemeriksaan Mesin
  • cmov :instruksi CMOV (gerakan bersyarat) (juga FCMOV)
  • pat :Tabel Atribut Halaman
  • pse36 :PSE 36-bit (halaman besar)
  • pn :Nomor seri prosesor
  • clflush :Instruksi Cache Line Flush
  • dts :Debug Store (buffer untuk debugging dan instruksi pembuatan profil)
  • acpi :ACPI melalui MSR (pemantauan suhu dan modulasi kecepatan clock)
  • mmx :Ekstensi Multimedia
  • fxsr :FXSAVE/FXRSTOR, CR4.OSFXSR
  • sse :Instruksi vektor Intel SSE
  • sse2 :SSE2
  • ss :pengintaian CPU sendiri
  • ht :Hyper-Threading dan/atau multi-core
  • tm :Kontrol jam otomatis (Monitor Termal)
  • ia64 :Intel Itanium Architecture 64-bit (jangan dikelirukan dengan arsitektur x86 64-bit Intel dengan flag x86-64 atau bit “AMD64” ditunjukkan oleh flag lm )
  • pbe :Dukungan pengaktifan Pending Break Enable (PBE# pin)

Fitur CPU yang ditentukan AMD, level CPUID 0x80000001

Lihat juga Wikipedia dan tabel 2-23 di Referensi Pemrograman Ekstensi Vektor Lanjutan Intel

  • syscall :SYSCALL (Panggilan Sistem Cepat) dan SYSRET (Kembali Dari Panggilan Sistem Cepat)
  • mp :Multiprocessing Mampu.
  • nx :Jalankan Nonaktifkan
  • mmxext :Ekstensi AMD MMX
  • fxsr_opt :Pengoptimalan FXSAVE/FXRSTOR
  • pdpe1gb :Satu halaman GB (memungkinkan hugepagesz=1G )
  • rdtscp :Membaca Penghitung Cap Waktu dan ID Prosesor
  • lm :Mode Panjang (x86-64:amd64, juga dikenal sebagai Intel 64, yaitu mampu 64-bit)
  • 3dnowext :AMD 3DSekarang! ekstensi
  • 3dnow :3DSekarang! (Petunjuk vektor AMD, bersaing dengan Intel SSE1)

Fitur CPU yang ditentukan transmeta, level CPUID 0x80860001

  • recovery :CPU dalam mode pemulihan
  • longrun :Kontrol daya jangka panjang
  • lrti :Antarmuka tabel LongRun

Fitur lain, pemetaan yang ditentukan Linux

  • cxmmx :Ekstensi MMX Cyrix
  • k6_mtrr :MTRR tidak standar AMD K6
  • cyrix_arr :ARR Cyrix (=MTRR)
  • centaur_mcr :MCR Centaur (=MTRR)
  • constant_tsc :TSC berdetak dengan kecepatan konstan
  • up :Kernel SMP berjalan di ATAS
  • art :Timer Selalu Berjalan
  • arch_perfmon :Intel Architectural PerfMon
  • pebs :Pengambilan Sampel Berdasarkan Peristiwa Tepat
  • bts :Toko Jejak Cabang
  • rep_good :mikrokode rep berfungsi dengan baik
  • acc_power :Mekanisme daya akumulasi AMD
  • nopl :Instruksi NOPL (0F 1F)
  • xtopology :ekstensi enum topologi cpu
  • tsc_reliable :TSC dikenal dapat diandalkan
  • nonstop_tsc :TSC tidak berhenti di status C
  • cpuid :CPU memiliki instruksi CPUID itu sendiri
  • extd_apicid :telah memperpanjang APICID (8 bit)
  • amd_dcm :prosesor multi-simpul
  • aperfmperf :APERFMPERF
  • eagerfpu :Pemulihan FPU yang tidak malas
  • nonstop_tsc_s3 :TSC tidak berhenti dalam status S3
  • tsc_known_freq :TSC memiliki frekuensi yang diketahui
  • mce_recovery :CPU memiliki pemeriksaan mesin yang dapat dipulihkan

Fitur CPU yang ditentukan oleh Intel, level CPUID 0x00000001 (ecx)

Lihat juga Wikipedia dan tabel 2-26 di Referensi Pemrograman Ekstensi Vektor Lanjutan Intel

  • pni :SSE-3 (“Petunjuk Baru Prescott”)
  • pclmulqdq :Melakukan instruksi Perkalian Kuadrat yang Kurang Membawa — akselerator untuk GCM)
  • dtes64 :Toko Debug 64-bit
  • monitor :Dukungan Monitor/Mwait (suplemen Intel SSE3)
  • ds_cpl :Kualitas CPL. Toko Debug
  • vmx :Virtualisasi perangkat keras:Intel VMX
  • smx :Mode lebih aman:TXT (dukungan TPM)
  • est :Peningkatan Kecepatan
  • tm2 :Monitor Termal 2
  • ssse3 :SSE-3 Tambahan
  • cid :ID Konteks
  • sdbg :debug silikon
  • fma :Fused multiply-add
  • cx16 :CMPXCHG16B
  • xtpr :Mengirim Pesan Prioritas Tugas
  • pdcm :Kemampuan Performa
  • pcid :Pengidentifikasi Konteks Proses
  • dca :Akses Cache Langsung
  • sse4_1 :SSE-4.1
  • sse4_2 :SSE-4.2
  • x2apic :x2APIC
  • movbe :Memindahkan Data Setelah Mengganti instruksi Bytes
  • popcnt :Mengembalikan Count of Number of Bits Set ke 1 instruksi (Hamming weight, mis. bit count)
  • tsc_deadline_timer :Timer batas waktu tsc
  • aes /aes-ni :Standar Enkripsi Lanjutan (Petunjuk Baru)
  • xsaves :Save Processor Extended States:juga menyediakan XGETBY,XRSTOR,XSETBY
  • avx :Ekstensi Vektor Lanjutan
  • f16c :Konversi fp 16-bit (CVT16)
  • rdrand :Membaca Angka Acak dari instruksi pembuat angka acak perangkat keras
  • hypervisor :Berjalan di hypervisor
Terkait:Linux – Nonaktifkan Unplugged Displays (xrandr)?

Fitur CPU yang ditentukan VIA/Cyrix/Centaur, level CPUID 0xC0000001

  • rng :Penghasil Angka Acak hadir (xstore)
  • rng_en :Penghasil Angka Acak diaktifkan
  • ace :kripto di-CPU (xcrypt)
  • ace_en :kripto di CPU diaktifkan
  • ace2 :Mesin Kriptografi Tingkat Lanjut v2
  • ace2_en :ACE v2 diaktifkan
  • phe :Mesin Hash PadLock
  • phe_en :PHE diaktifkan
  • pmm :Pengganda PadLock Montgomery
  • pmm_en :PMM diaktifkan

Tanda AMD yang lebih diperluas:level CPUID 0x80000001, ecx

  • lahf_lm :Muat AH dari Flags (LAHF) dan Simpan AH ke Flags (SAHF) dalam mode panjang
  • cmp_legacy :Jika ya HyperThreading tidak valid
  • svm :“Mesin virtual aman”:AMD-V
  • extapic :Ruang APIC yang diperluas
  • cr8_legacy :CR8 dalam mode 32-bit
  • abm :Manipulasi Bit Tingkat Lanjut
  • sse4a :SSE-4A
  • misalignsse :menunjukkan jika pengecualian perlindungan umum (#GP) dihasilkan ketika beberapa instruksi SSE lama beroperasi pada data yang tidak selaras. Juga tergantung pada bit CR0 dan Alignment Checking
  • 3dnowprefetch :instruksi prefetch 3DNow
  • osvw :menunjukkan Solusi Terlihat OS, yang memungkinkan OS untuk mengatasi kesalahan prosesor.
  • ibs :Pengambilan Sampel Berdasarkan Instruksi
  • xop :instruksi AVX yang diperluas
  • skinit :petunjuk SKINIT/STGI
  • wdt :Pengatur waktu pengawas
  • lwp :Pembuatan Profil Ringan
  • fma4 :4 operan instruksi MAC
  • tce :ekstensi cache terjemahan
  • nodeid_msr :NodeId MSR
  • tbm :Manipulasi Bit Trailing
  • topoext :Daun CPUID Ekstensi Topologi
  • perfctr_core :Ekstensi Penghitung Kinerja Inti
  • perfctr_nb :Ekstensi Penghitung Kinerja NB
  • bpext :ekstensi titik henti sementara data
  • ptsc :penghitung stempel waktu kinerja
  • perfctr_l2 :Ekstensi Penghitung Kinerja L2
  • mwaitx :MWAIT ekstensi (MONITORX /MWAITX )

Tanda bantu:Didefinisikan oleh Linux – Untuk fitur yang tersebar di berbagai level CPUID

  • ring3mwait :Deringkan 3 MONITOR/MWAIT
  • cpuid_fault :Intel CPUID rusak
  • cpb :Peningkatan Kinerja Inti AMD
  • epb :dukungan IA32_ENERGY_PERF_BIAS
  • cat_l3 :Teknologi Alokasi Cache L3
  • cat_l2 :Teknologi Alokasi Cache L2
  • cdp_l3 :Kode dan Prioritas Data L3
  • invpcid_single :efektif invpcid dan CR4.PCIDE=1
  • hw_pstate :AMD HW-PSstate
  • proc_feedback :AMD ProcFeedbackInterface
  • sme :Enkripsi Memori Aman AMD
  • pti :Isolasi Tabel Halaman Kernel (Kaiser)
  • retpoline :Mitigasi Retpoline untuk Spectre varian 2 (cabang tidak langsung)
  • retpoline_amd :Mitigasi AMD Retpoline
  • intel_ppin :Nomor Inventaris Prosesor Intel
  • avx512_4vnniw :Petunjuk Jaringan Neural AVX-512
  • avx512_4fmaps :AVX-512 Multiply Accumulation Presisi tunggal
  • mba :Alokasi Bandwidth Memori
  • rsb_ctxsw :Isi RSB pada sakelar konteks

Tanda virtualisasi:Linux ditentukan

  • tpr_shadow :Intel TPR Shadow
  • vnmi :Intel Virtual NMI
  • flexpriority :Intel FlexPriority
  • ept :Tabel Halaman Diperluas Intel
  • vpid :ID Prosesor Virtual Intel
  • vmmcall :lebih suka VMMCALL ke VMCALL

Fitur CPU yang ditentukan oleh Intel, level CPUID 0x00000007:0 (ebx)

  • fsgsbase :{RD/WR}{FS/GS}Petunjuk DASAR
  • tsc_adjust :MSR penyesuaian TSC
  • bmi1 :Ekstensi manipulasi bit grup pertama
  • hle :Penguncian Perangkat Keras
  • avx2 :instruksi AVX2
  • smep :Perlindungan Eksekusi Mode Pengawas
  • bmi2 :ekstensi manipulasi bit grup ke-2
  • erms :Peningkatan REP MOVSB/STOSB
  • invpcid :Membatalkan ID Konteks Pemroses
  • rtm :Memori Transaksional Terbatas
  • cqm :Pemantauan QoS Cache
  • mpx :Ekstensi Perlindungan Memori
  • rdt_a :Alokasi Teknologi Direktur Sumber Daya
  • avx512f :Yayasan AVX-512
  • avx512dq :AVX-512 Instruksi Double/Quad
  • rdseed :Instruksi RDSEED
  • adx :Instruksi ADCX dan ADOX
  • smap :Pencegahan Akses Mode Pengawas
  • clflushopt :CLFLUSHOPT instruksi
  • clwb :CLWB instruksi
  • intel_pt :Pelacakan Prosesor Intel
  • avx512pf :Prefetch AVX-512
  • avx512er :AVX-512 Eksponensial dan Timbal Balik
  • avx512cd :Deteksi Konflik AVX-512
  • sha_ni :Ekstensi Instruksi SHA1/SHA256
  • avx512bw :AVX-512 Byte/Word instruksi
  • avx512vl :AVX-512 128/256 Ekstensi Panjang Vektor

Fitur status yang diperluas, level CPUID 0x0000000d:1 (eax)

  • xsaveopt :XSAVE yang dioptimalkan
  • xsavec :XSAVEC
  • xgetbv1 :XGETBV dengan ECX =1
  • xsaves :XSAVES /XRSTORS

Sub-leaf QoS CPU yang ditentukan oleh Intel, level CPUID 0x0000000F:0 (edx)

  • cqm_llc :QoS LLC

Sub-leaf QoS CPU yang ditentukan oleh Intel, level CPUID 0x0000000F:1 (edx)

  • cqm_occup_llc :pemantauan hunian LLC
  • cqm_mbm_total :Total pemantauan MBM LLC
  • cqm_mbm_local :Pemantauan MBM lokal LLC

Fitur CPU yang ditentukan AMD, level CPUID 0x80000008 (ebx)

  • clzero :CLZERO instruksi
  • irperf :instruksi pensiunan penghitung kinerja
  • xsaveerptr :Selalu simpan/pulihkan penunjuk kesalahan FP

Leaf Manajemen Daya dan Termal, level CPUID 0x00000006 (eax)

  • dtherm (sebelumnya dts ):sensor termal digital
  • ida :Akselerasi Dinamis Intel
  • arat :Selalu Menjalankan Timer APIC
  • pln :Pemberitahuan Batas Daya Intel
  • pts :Status Termal Paket Intel
  • hwp :Intel Hardware P-state
  • hwp_notify :Pemberitahuan HWP
  • hwp_act_window :Jendela Aktivitas HWP
  • hwp_epp :Preferensi Kinerja Energi HWP
  • hwp_pkg_req :Permintaan tingkat paket HWP

Identifikasi Fitur AMD SVM, level CPUID 0x8000000a (edx)

  • npt :Dukungan Tabel Halaman Bersarang AMD
  • lbrv :Dukungan Virtualisasi AMD LBR
  • svm_lock :AMD SVM mengunci MSR
  • nrip_save :AMD SVM next_rip simpan
  • tsc_scale :Dukungan penskalaan AMD TSC
  • vmcb_clean :Dukungan bit bersih AMD VMCB
  • flushbyasid :Dukungan AMD flush-by-ASID
  • decodeassists :Dukungan AMD Decode Assists
  • pausefilter :Intersep jeda yang difilter AMD
  • pfthreshold :Ambang batas filter jeda AMD
  • avic :Pengontrol Interupsi Virtual
  • vmsave_vmload :Virtual VMSAVE VMLOAD
  • vgif :GIF Virtual
Terkait:Linux – Penambahan tamu 'tidak dapat menemukan program' Kali Linux 2.0?

Fitur CPU yang ditentukan oleh Intel, level CPUID 0x00000007:0 (ecx)

  • avx512vbmi :Instruksi Manipulasi Bit Vektor AVX512
  • umip :Perlindungan Instruksi Mode Pengguna
  • pku :Kunci Perlindungan untuk Ruang Pengguna
  • ospke :Tombol Perlindungan OS Diaktifkan
  • avx512_vbmi2 :Petunjuk Manipulasi Bit Vektor AVX512 tambahan
  • gfni :Petunjuk Baru Bidang Galois
  • vaes :Vektor AES
  • vpclmulqdq :Perkalian Double Quadword Tanpa Membawa
  • avx512_vnni :Petunjuk Jaringan Saraf Vektor
  • avx512_bitalg :Instruksi VPOPCNT[B,W] dan VPSHUF-BITQMB
  • avx512_vpopcntdq :POPCNT untuk vektor DW/QW
  • la57 :tabel halaman 5 tingkat
  • rdpid :instruksi RDPID

Fitur CPU yang ditentukan AMD, level CPUID 0x80000007 (ebx)

  • overflow_recov :dukungan pemulihan luapan MCA
  • succor :penahanan dan pemulihan kesalahan yang tidak dapat diperbaiki
  • smca :MCA yang Dapat Diskalakan

Bug CPU yang terdeteksi (ditentukan Linux)

  • f00f :Intel F00F
  • fdiv :FDIV CPU
  • coma :Cyrix 6×86 koma
  • amd_tlb_mmatch :tlb_mmatch AMD Erratum 383
  • amd_apic_c1e :apic_c1e AMD Erratum 400
  • 11ap :APIC lokal buruk alias 11AP
  • fxsave_leak :FXSAVE membocorkan FOP/FIP/FOP
  • clflush_monitor :AAI65, CLFLUSH diperlukan sebelum MONITOR
  • sysret_ss_attrs :SYSRET tidak memperbaiki atribut SS
  • espfix :“” IRET ke SS 16-bit merusak bit tinggi ESP/RSP
  • null_seg :Meniadakan pemilih mempertahankan basis
  • swapgs_fence :SWAPGS tanpa masukan pada GS
  • monitor :IPI diperlukan untuk mengaktifkan CPU jarak jauh
  • amd_e400 :CPU termasuk yang terpengaruh oleh Erratum 400
  • cpu_meltdown :CPU dipengaruhi oleh serangan krisis dan membutuhkan isolasi tabel halaman kernel
  • spectre_v1 :CPU dipengaruhi oleh serangan Spectre varian 1 dengan cabang bersyarat
  • spectre_v2 :CPU dipengaruhi oleh serangan Spectre varian 2 dengan cabang tidak langsung
  • spec_store_bypass :CPU dipengaruhi oleh kerentanan Speculative Store Bypass (Varian Spectre 4).

P.S.
Daftar ini berasal dari arch/x86/include/asm/cpufeatures.h di sumber kernel. Bendera terdaftar dalam urutan yang sama dengan kode sumber. Tolong bantu dengan menambahkan tautan ke deskripsi fitur ketika fitur tersebut hilang, dengan menulis deskripsi singkat tentang fitur yang memiliki nama yang tidak ekspresif, dan dengan memperbarui daftar untuk versi kernel baru. Daftar saat ini berasal dari Linux 4.15 ditambah beberapa tambahan selanjutnya.


Linux
  1. Di linux, apa arti semua nilai di atas perintah?

  2. Bagaimana cara mendapatkan jalur proses di Unix / Linux

  3. Apa arti __init dalam kode kernel Linux?

  1. Apa arti &di akhir perintah linux?

  2. Apa arti nama antarmuka eth0 di Linux?

  3. Apa arti huruf 'u' di /dev/urandom?

  1. Menjelajahi sistem file Linux /proc

  2. Bagaimana Linux Menangani Beberapa Pemisah Jalur Berturut-turut (/home////username///file)?

  3. Apa arti akhiran .d di Linux?