知識點記錄--x86與arm

x86 與 arm

x86與arm簡介

x86

xx86或80x86是英代爾Intel首先開發製造的一種微處理器體系結構的泛稱。

x86架構是重要地可變指令長度的CISC(複雜指令集電腦,Complex Instruction Set Computer)。

Intel Atom(中文:凌動,開發代號:Silverthorne)是Intel的一個超低電壓處理器系列。處理器採用45納米工藝製造,集成4700萬個晶體管。L2緩存爲512KB,支持SSE3指令集,和VT虛擬化技術(部份型號)。

arm

ARM架構,過去稱作進階精簡指令集機器(Advanced RISC Machine,更早稱作:Acorn RISC Machine),是一個32位精簡指令集(RISC)處理器架構,其廣泛地使用在許多嵌入式系統設計。由於節能的特點,ARM處理器非常適用於移動通訊領域,符合其主要設計目標爲低耗電的特性。

生產廠商:TI (德州儀器),Samsung(三星),Freescale(飛思卡爾),Marvell(馬維爾),Nvidia(英偉達)

下面是四核ARM芯片架構圖:

img

 

x86 與 arm 特性

x86

Power and Performance Technology

在x86平臺中,能耗和性能是兩個不可分割的部分,Intel提供了很多的技術來滿足不同的能耗和性能的需求。

1 Intel Multi-Core and Hyper-Threading Technology

多核心和超線程技術。前者指在一個CPU中包含多個物理核,後者是指一個物理核中包含若干個邏輯核

img

Hyper-Threading技術在2002年的推出的奔騰4系列CPU中首次引入。

關於多核支持,是在Intel奔騰處理器Extreme版本(就是雙核四線程)中首次引入的,那應該是在2005年

 

2 Intel Turbo Boost Technology

Turbo Boost的作用是讓CPU的核心(包括圖形處理的核)能夠在基準頻率之上運行。當然這種調節是自動的,並且是智能的。該技術是在2008年推出的Nehalem架構CPU中推出的.

 

3 Intel Virtualization Technology

虛擬化的作用是在一個平臺上模擬出多個獨立的平臺系統供軟件使用。

x86平臺支持的虛擬化有如下的幾種:

  • VT-x ——面向 IA-32 架構的英特爾® 虛擬化技術,爲 IA-32 增加了兩種全新的 CPU 操作模式:VMX 根操作和 VMX 非根操作。

  • VT-i ——面向安騰架構的英特爾® 虛擬化技術,可爲 VMM 提供客戶機軟件不能使用的虛擬地址位。

  • VT-d ——面向 Directed I/O 的英特爾® 虛擬化技術,是接下來通往英特爾平臺虛擬化全面硬件支持的關鍵一步。

簡單來說,VT-x是對CPU的虛擬化;VT-d是對外設(一般是PCIE的外設,也稱爲SRIOV)虛擬化;VT-i是安騰的架構下的虛擬化

4 除了CPU之外的特性

  1. 分段機制

  2. 堆棧切換

  3. 分頁機制

  4. 中斷

arm

1 ARM 採用統一編址體系結構

2 ARM 採用哈佛架構

 

x86 與 arm 區別

x86

 

 

arm

優勢:價格低;能耗低;

ARM 授權方式:ARM 公司本身並不靠自有的設計來製造或出售 CPU ,而是將處理器架構授權給有興趣的廠家。ARM 提供了多樣的授權條款,包括售價與散播性等項目。對於授權方來說,ARM 提供了 ARM 內核的整合硬件敘述,包含完整的軟件開發工具(編譯器、debugger、SDK),以及針對內含 ARM CPU 硅芯片的銷售權。

 

區別

 一、性能

  X86結構的電腦無論如何都比ARM結構的系統在性能方面要快得多、強得多。X86的CPU隨便就是1G以上、雙核、四核大行其道,通常使用45nm(甚至更高級)製程的工藝進行生產;而ARM方面:CPU通常是幾百兆,最近纔出現1G左右的CPU,製程通常使用不到65nm製程的工藝,可以說在性能和生產工藝方面ARM根本不是X86結構系統的對手。

  但ARM的優勢不在於性能強大而在於效率,ARM採用RISC流水線指令集,在完成綜合性工作方面根本就處於劣勢,而在一些任務相對固定的應用場合其優勢就能發揮得淋漓盡致。

  二、擴展能力

  X86結構的電腦採用“橋”的方式與擴展設備(如:硬盤、內存等)進行連接,而且x86結構的電腦出現了近30年,其配套擴展的設備種類多、價格也比較便宜,所以x86結構的電腦能很容易進行性能擴展,如增加內存、硬盤等。

  ARM結構的電腦是通過專用的數據接口使CPU與數據存儲設備進行連接,所以ARM的存儲、內存等性能擴展難以進行(一般在產品設計時已經定好其內存及數據存儲的容量),所以採用ARM結構的系統,一般不考慮擴展。基本奉行“夠用就好”的原則。

三、操作系統的兼容性

  X86系統由微軟及Intel構建的Wintel聯盟一統天下,壟斷了個人電腦操作系統近30年,形成巨大的用戶羣,也深深固化了衆多用戶的使用習慣,同時x86系統在硬件和軟件開發方面已經形成統一的標準,幾乎所有x86硬件平臺都可以直接使用微軟的視窗系統及現在流行的幾乎所有工具軟件,所以x86系統在兼容性方面具有無可比擬的優勢。

  ARM系統幾乎都採用Linux的操作系統,而且幾乎所有的硬件系統都要單獨構建自己的系統,與其他系統不能兼容,這也導致其應用軟件不能方便移植,這一點一直嚴重製約了ARM系統的發展和應用。GOOGLE開發了開放式的Android系統後,統一了ARM結構電腦的操作系統,使新推出基於ARM結構的電腦系統有了統一的、開放式的、免費的操作系統,爲ARM的發展提供了強大的支持和動力。

  四、軟件開發的方便性及可使用工具的多樣性

  X86結構的系統推出已經近30年,在此期間,x86電腦經過飛速發展的黃金時期,用戶的應用、軟件配套、軟件開發工具的配套及兼容等工作,已經到達非常成熟甚至可以說是完美的境界。所以使用X86電腦系統不僅有大量的第三方軟件可供選擇,也有大量的軟件編程工具可以幫助您完成您所希望完成的工作。

  Arm結構的電腦系統因爲硬件性能的制約、操作系統的精簡、以及系統兼容等問題的制約,造成Arm結構的電腦系統不可能像X86電腦系統那樣有衆多的編程工具和第三方軟件可供選擇及使用,ARM的編程語言大多采用C和JAVA

  對這一點的比較,更直接的結論是:基於x86結構電腦系統平臺開發軟件比arm結構系統更容易、更簡單、實際成本也更低,同時更容易找到第三方軟件(免去自己開發的時間和成本),而且軟件移植更容易。

  從以上對比分析,給了我們的一個很清晰的感覺,ARM和X86結構的電腦根本就無法對比,ARM根本就不是X86電腦的的對手。是的,如果只考慮上述幾個方面的要數,ARM確實無法與X86電腦競爭,甚至連比較的資格都沒有。但是近1、2年,ARM的產品在終端應用特別是手持終端應用飛速發展(如:智能手機、平板電腦等),其銷售數量已經遠遠超出x86結構的電腦銷售數量,可見ARM是具有其與X86結構電腦不可對比的優勢。該優勢就是:功耗。

  五、功耗

  X86電腦因考慮要適應各種應用的需求,其發展思路是:性能+速度。20多年來x86電腦的速度從原來8088的幾M發展到現在隨便就是幾G,而且還是幾核,其速度和性能已經提升了千、萬倍,技術進步使x86電腦成爲大衆生活中不可缺少的一部分。但是x86電腦發展的方向和模式,使其功耗一直居高不下,一臺電腦隨便就是幾百瓦,即使是號稱低功耗節能的手提電腦或上網本,也有十幾、二十多瓦的功耗,這與ARM結構的電腦就無法相比。

參考書籍

Intel軟件開發者手冊

https://software.intel.com/en-us/articles/intel-sdm

卷3中的《MULTIPLE-PROCESSOR (MP) INITIALIZATION》章節

 

網絡資源

x86架構——x86上的那些不明覺厲的功能

https://blog.csdn.net/jiangwei0512/article/details/82667625

ARM、X86/Atom、MIPS、PowerPC

https://cloud.tencent.com/developer/article/1392466

需要了解的x86特性

http://blog.chinaunix.net/uid-29951612-id-5608435.html

X86處理器架構--Nehalem

https://www.jianshu.com/p/0a9d4c868833

arm體系結構總結

https://blog.csdn.net/frank_zyp/article/details/84646051

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章