查看CPU信息
Windows
-
查看處理器架構
cmd 中輸入
systeminfo
,找到處理器字段https://jingyan.baidu.com/article/f0062228272ebbfbd3f0c891.html
-
CPU-Z 軟件
下載 https://www.cpuid.com/softwares/cpu-z.html
Linux
-
查看操作系統位數
32位的系統中int類型和long類型一般都是4字節
64位的系統中int類型是4字節,long類型是8字節
lfp@legion:~$ getconf LONG_BIT 64 lfp@legion:~$ getconf WORD_BIT 32
Ubuntu 18.04.3 LTS版本同樣包含桌面和服務器版本,僅適用於64位系統的安裝映像
-
查看處理器架構
hostnamectl
lfp@legion:~$ hostnamectl Static hostname: legion Icon name: computer-laptop Chassis: laptop Machine ID: b28d62113b6242exxxxxxxxxxxxxxxxxxx2 Boot ID: b387c673b99xxxxxxxxxxf3a46a24 Operating System: Ubuntu 18.04.4 LTS Kernel: Linux 5.3.0-51-generic Architecture: x86-64
arch
lfp@legion:~$ arch x86_64
uname -p
lfp@legion:~$ uname -p # processor type 處理器類型 x86_64
-
查看物理CPU個數
lfp@legion:~$ cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l 1
-
查看每個物理CPU中core的個數(即核數)
lfp@legion:~$ cat /proc/cpuinfo| grep "cpu cores"| uniq cpu cores : 6
-
查看邏輯CPU的個數
lfp@legion:~$ cat /proc/cpuinfo| grep "processor"| wc -l 12
總核數 = 物理CPU個數 X 每顆物理CPU的核數
總邏輯CPU數 = 物理CPU個數 X 每顆物理CPU的核數 X 超線程數(如果支持並開啟超線程技術(HT))
-
綜合信息
lscpu
lfp@legion:~$ lscpu 架構: x86_64 CPU 運行模式: 32-bit, 64-bit 字節序: Little Endian CPU: 12 在線 CPU 列表: 0-11 每個核的線程數: 2 每個座的核數: 6 座: 1 NUMA 節點: 1 廠商 ID: GenuineIntel CPU 系列: 6 型號: 158 型號名稱: Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz 步進: 10 CPU MHz: 1300.054 CPU 最大 MHz: 2600.0000 CPU 最小 MHz: 800.0000 BogoMIPS: 5199.98 虛擬化: VT-x L1d 緩存: 32K L1i 緩存: 32K L2 緩存: 256K L3 緩存: 12288K NUMA 節點0 CPU: 0-11
cat /proc/cpuinfo
lfp@legion:~$ cat /proc/cpuinfo processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 158 model name : Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz stepping : 10 microcode : 0xca cpu MHz : 1300.109 cache size : 12288 KB physical id : 0 siblings : 12 core id : 0 cpu cores : 6 .....
CPU架構(指令集架構)
計算機中央處理器的一種設計模式
包括采用哪種指令集,哪種寄存器,等等
不同架構主要由指令集架構決定,然后決定寄存器等相關設備的型號
指令集架構相同,其他設計、工藝不同稱為一種微架構。例如AMD的Zen2微架構,Intel Coffee Lake微架構
指令集架構和微架構的關系:
-
指令集架構是指在處理器內被處理的程序,包括運行模型,寄存器,地址以及數據格式等
-
微架構包含處理器內部的構成以及這些構成起來的部分如何運行指令集架構。
微架構通常被表示成流程圖,以描述機器內部組件的鏈接狀況,從一個閘或是寄存器,到算術邏輯單元(ALU)
-
擁有不同微架構的機器可能擁有相同的指令集架構,因此可以運行相同的程序。由於半導體科技的進步,新型的處理器可以以較快的速度運行相同的指令集架構。
-
計算機架構是微架構和指令集架構的結合
指令集
又稱指令集架構(英語:Instruction Set Architecture,縮寫為ISA)、指令集體系、機器語言
計算機能夠進行計算,主要靠cpu中大規模集成電路中由晶體管組成的邏輯電路,這些邏輯電路可以進行運算和判斷,通過組合簡單邏輯電路,可以完成復雜的運算
通過一定格式的指令來控制邏輯電路進行運算,這些指令的總和就是指令集——機器語言
可以理解成硬件的的接口。
由高級語言編寫的程序通過操作系統調用硬件接口完成計算
是計算機體系結構中與程序設計有關的部分,包含了基本數據類型,指令集,寄存器,尋址模式,存儲體系,中斷,異常處理以及外部I/O
分為復雜指令集和精簡指令集
復雜指令集 CISC
Complex Instruction Set Computing;CISC)
每個指令可執行若干低端操作,諸如從存儲器讀取、存儲、和計算操作,多個操作集於單一指令之中
程序的各條指令是按順序串行執行的,每條指令中的各個操作也是按順序串行執行的。順序執行的優點是控制簡單,但計算機各部分的利用率不高,執行速度慢
包含許多應用程序中很少使用的特定指令,由此產生的缺陷是指令長度不固定
包括
-
x86 指令集
-
x86-64指令集
博主這樣理解,但是沒找到官方說法
精簡指令集 RISC
Reduced Instruction Set Computing,RISC)
對指令數目和尋址方式都做了精簡,使其實現更容易,指令並行執行程度更好,編譯器的效率更高
通過只執行在程序中經常使用的指令來簡化處理器的結構
包括
- arm指令集
x86架構
背景
x86
架構於1978年推出的 Intel 8086 中央處理器中首度出現,8086 在三年后為IBM PC 所選用,之后 x86
便成為了個人電腦的標准平台,成為了歷來最成功的 CPU 架構。8086 是 16 位處理器,接着一系列的處理器進行了 32 位架構的改進,現在 x86
一般指 32 位的架構。
該系列較早期的處理器名稱是以數字來表示 80x86。由於以 86 作為結尾,包括 Intel 8086、80186、80286、80386 以及 80486,因此其架構被稱為 x86
。
生產 x86
架構的 CPU 除了因特爾,它還把專利授權給了現在比較出名的超微(AMD)。然后在 1999 年 AMD 首次公開 64 位集以擴展 x86,此架構稱為 AMD64
。后來英特爾也推出了與之兼容的處理器,並命名Intel 64
。兩者一般被統稱為 x86-64
或 x64
,開創了 x86
的 64 位時代。
Intel為了不讓其他廠商模仿,申請了很多專利,與惠普聯合設計了全新的架構 IA-64
,但最大的問題就是它與之前的 x86
不兼容,且市場反應較冷淡,然后就涼涼了。
32位
x86、i386、IA-32架構
IA-32(英特爾32位架構,Intel Architecture(架構)32-bit,縮寫為IA-32)
x86架構32位處理器,采用x86指令集
x86指令集
- 由英特爾公司於1985年推出的指令集架構。它是8086架構的延伸版本,可支持32位運算,首次應用在Intel 80386芯片中。
x86 架構特征
只有8個32位通用寄存器
64位
x86_64、x64、AMD64、Intel 64架構
x86架構64位處理器,采用x86-64指令集
x86-64指令集
-
支持全部傳統x86指令集,增加了一些新的指令以支持長模式
通用指令、128位媒體指令、64位媒體指令、x87浮點指令
長模式是傳統的保護模式的擴展,由兩個子模式組成:64位模式和兼容模式。
-
64位模式支持x86-64架構的所有新特征和寄存器擴展。
-
兼容模式支持與已存在的16位和32位應用程序兼容,
長模式不支持傳統的實模式或虛擬8086模式,也不支持硬件任務切換
-
-
x64於1999年由AMD設計並公開64位集以擴展給x86,稱為“AMD64”。其后也為英特爾所采用
-
各種數據長度對比
x86-64架構特征
x86-64架構的的需求是由高性能服務器、數據庫管理系統和CAD工具等的應用程序,要求大型和高精度數據和大的虛擬和物理存儲器的地址范圍引出的。
傳統x86架構中可用的寄存器數只有8個,在強計算的應用程序中限制了性能
x86架構的64位拓展,向前兼容於16位及32位的x86架構
- 擴展了寄存器資源
- 新增8個通用寄存器
- 所有16個GPRs從32位擴展到64位
- 新增8個128位 XMM 寄存器
- 增加了64位尋址
x86-64指令系統 https://www.cnblogs.com/chenxuming/p/9689747.html
稱謂
-
蘋果公司和RPM包管理員以【x86-64】或【x86_64】稱呼此64位架構
-
甲骨文公司及Microsoft稱之為【x64】
-
BSD家族及其他Linux發行版使用【amd64】,32位版本則稱為【i386】(或 i486/586/686),
-
Arch Linux用【x86_64】稱呼此64位架構
Arch Linux 僅支持 x86_64 架構
Debian 支持 i386, x86_64 等等,Ubuntu是基於debian的商業發行版
x86 x64 含義
-
x86含義
- x86 指令集
- x86 CPU架構
- x86(32位)操作系統
-
x64含義
- x86-64 指令集
- x86-64 CPU架構
- x64(64位)位操作系統
ARM架構
由安謀控股公司(英語:ARM Holdings plc.),又稱ARM公司設計的處理器架構
采用arm指令集
第一款基於ARM v7指令集的Cortex-A8構架於06年發布
網上有這種描述
ARM處理器廣泛應用在嵌入式系統、移動通信設備,符合其主要設計目標為低成本、高性能、低耗電的特性
ARM架構指定了CPU模式。在任何時刻,CPU只可處於某一種模式,但可由於外部事件(中斷)或編程方式進行模式切換。
32位
ARM v3 --- ARM v7 指令集
ARMv3到ARMv7架構支持32位空間和32位算數運算,大部分架構的指令為定長32位
64位
ARM v8 指令集
ARMv8-A架構添加了對64位空間和64位算術運算的支持,同時也更新了32位定長指令集
ARMv8使用了兩種執行模式,AArch32和AArch64。顧名思義,一個運行32位代碼,一個運行64位代碼。ARM設計的巧妙之處,是處理器在運行中可以無縫地在兩種模式間切換。