出版時間:2009-11 出版社:周明德 清華大學(xué)出版社 (2009-11出版) 作者:周明德 頁數(shù):725
Tag標(biāo)簽:無
前言
電子計算機(jī)是人類在20世紀(jì)最重大的科技創(chuàng)造之一。自20世紀(jì)40年代誕生第一臺用電子管制造的現(xiàn)代電子計算機(jī)以來,電子計算機(jī)的主要元件先后經(jīng)歷了真空管、晶體管、中小規(guī)模集成電路、大規(guī)模超大規(guī)模集成電路4代。超大規(guī)模集成電路的發(fā)展,把計算機(jī)的主體——中央處理單元(CPU)集成在一個芯片上,稱為微處理器,使計算機(jī)進(jìn)入了微型計算機(jī)時代。自從1981年IBM公司進(jìn)入了微型計算機(jī)領(lǐng)域并推出了IBM—PC以后,計算機(jī)的發(fā)展開創(chuàng)了一個新的時代——微型計算機(jī)時代。微型計算機(jī)的迅速普及,使計算機(jī)真正廣泛應(yīng)用于工業(yè)、農(nóng)業(yè)、科學(xué)技術(shù)領(lǐng)域以及社會生活的各個方面。以前的大型機(jī)(MainFrame)、中型機(jī)、小型機(jī)的界線已經(jīng)日益模糊與消失。隨著微型機(jī)應(yīng)用的普及及技術(shù)的發(fā)展,芯片與微型機(jī)的功能和性能迅速提高,其功能已經(jīng)遠(yuǎn)遠(yuǎn)超過了20世紀(jì)80年代以前的中小型機(jī)甚至超過了大型機(jī)。到了20世紀(jì)90年代,隨著局域網(wǎng)、廣域網(wǎng)、城際網(wǎng)以及Internet的迅速普及與發(fā)展,微型計算機(jī)從功能上可分為網(wǎng)絡(luò)工作站(客戶端——Client)和網(wǎng)絡(luò)服務(wù)器(Server)兩大類型。網(wǎng)絡(luò)客戶端又稱為個人計算機(jī)(臺式PC或筆記本PC)。在個人計算機(jī)中,其核心是中央處理單元(CPU)。Intel公司的芯片在個人計算機(jī)中占據(jù)了統(tǒng)治地位(約占80%)。形成了個人計算機(jī)芯片的主流——x86系列結(jié)構(gòu)。x86系列結(jié)構(gòu)從8位的8088、16位的8086發(fā)展到32位的80386、80486直至奔騰4(P4)以及最近推出的雙核心、四核心的處理器,其功能與性能都有近千倍的提升。由于廣泛的應(yīng)用,x86系列結(jié)構(gòu)已成了事實(shí)上的工業(yè)標(biāo)準(zhǔn)。其他廠商,例如AMD也推出依從這樣的體系結(jié)構(gòu)的兼容的CPU,并得到了大量應(yīng)用。網(wǎng)絡(luò)時代的來臨、多媒體信息的數(shù)字化等,都使信息爆炸般增長。信息的存儲、處理、交換都強(qiáng)烈地促進(jìn)微處理器向64位時代過渡。當(dāng)前主流的64位處理器是AMD公司的x86—64系列,它是與32位x86處理器兼容的,得到了迅速的發(fā)展和廣泛的認(rèn)可與應(yīng)用。為此,Intel公司也推出了與IA一32(32位x86系列處理器)兼容的Intel64位體系結(jié)構(gòu)處理器。這兩種64位處理器,無論從應(yīng)用編程還是系統(tǒng)編程的角度來看都是一致的,所以作者把這兩者綜合起來統(tǒng)一進(jìn)行介紹。
內(nèi)容概要
《64位微處理器系統(tǒng)編程和應(yīng)用編程》綜合了Intel公司和AMD公司的x86系列的64位處理器的應(yīng)用和系統(tǒng)編程,是作者《微型計算機(jī)系統(tǒng)原理及應(yīng)用(第五版)》一書向64位處理器的擴(kuò)展與提高。反映了當(dāng)代微處理器的最新發(fā)展?!?4位微處理器系統(tǒng)編程和應(yīng)用編程》詳細(xì)介紹了64位處理器的應(yīng)用編程和64處理器體系結(jié)構(gòu)系統(tǒng)編程的具體內(nèi)容,對于應(yīng)用編程和系統(tǒng)編程的開發(fā)者都是十分重要和有用的。 《64位微處理器系統(tǒng)編程和應(yīng)用編程》適合希望了解和應(yīng)用64位處理器的科技人員使用,也可作為高等院校相關(guān)課程的教材。
作者簡介
周明德,教授,1959年畢業(yè)于清華大學(xué)計算機(jī)專業(yè)。畢業(yè)后留校。講授過“脈沖技術(shù)”、“微型計算機(jī)原理及應(yīng)用”等課程。在全國普及微型計算機(jī)的高潮中,應(yīng)邀在全國各地講授了數(shù)十次“微型計算機(jī)原理”課程,并制作了錄像帶在各地播放,受到了極高的評價,為普及微型計算機(jī)起到了重要作用。曾任中國計算機(jī)技術(shù)服務(wù)公司總工程師,為電子部有突出貢獻(xiàn)專家,享受政府津貼。主持了國家“八五”、“九五”重點(diǎn)科技攻關(guān)項目“國產(chǎn)操作系統(tǒng)開發(fā)”,任副總設(shè)計師。此項目獲電子部科技進(jìn)步特等獎,國家科技進(jìn)步二等獎。著有《微型計算機(jī)系統(tǒng)原理及應(yīng)用》、《64位微處理器應(yīng)用編程》、《64位微處理器系統(tǒng)編程》、《UNIX/Linux核心》等書,共約三百余萬字。累計發(fā)行三百余萬冊。
書籍目錄
第1章 引言1.1 符號約定1.1.1 位與字節(jié)順序1.1.2 保留位與軟件兼容性1.1.3 十六進(jìn)制與二進(jìn)制數(shù)1.1.4 分段的尋址1.1.5 對CPUID、CR和MSR值的新句法1.1.6 異常1.2 Intel 64和IA一32體系結(jié)構(gòu)的簡要?dú)v史1.2.1 16位處理器與分段1.2.2 Intel 286處理器1.2.3 Intel 386處理器1.2.4 Intel 486處理器1.2.5 Intel Pentium(奔騰)處理器1.2.6 處理器的P6族(系列)1.2.7 Intel Pentium 4處理器系列1.2.8 Intel Xeon處理器1.2.9 Intel Pentium M處理器1.2.10 Intel Pentium處理器極品版1.2.11 Intel Core Du0和Intel Core Sol0處理器1.2.12 Intel Xeon處理器5100系列和Intel Core 2處理器系列1.3 更多的關(guān)于特定的先進(jìn)技術(shù)1.3.1 P6族微體系結(jié)構(gòu)1.3.2 Intel NetBurst微體系結(jié)構(gòu)1.3.3 Intel Core微體系結(jié)構(gòu)1.3.4 SIMD指令1.3.5 超線程技術(shù)1.3.6 多核技術(shù)1.3.7 Intel 64體系結(jié)構(gòu)1.3.8 Intel虛擬化技術(shù)第2章 基本執(zhí)行環(huán)境2.1 操作方式2.1.1 Intel 64體系結(jié)構(gòu)2.1.2 x86—64的操作方式2.2 基本執(zhí)行環(huán)境概要2.2.1 64位方式執(zhí)行環(huán)境2.3 內(nèi)存組織2.3.1 IA一32方式2.3.2 分頁和虛擬存儲器2.3.3 64位方式的內(nèi)存組織2.3.4 操作方式與內(nèi)存模型2.3.5 32位和16位地址與操作數(shù)尺寸2.3.6 在保護(hù)方式擴(kuò)展的物理尋址2.3.7 在64位方式的地址計算2.4 基本程序執(zhí)行寄存器2.4.1 通用寄存器2.4.2 段寄存器2.4.3 EFLAGS寄存器2.5 指令指針2.6 操作數(shù)尺寸和地址尺寸屬性2.7 操作數(shù)尋址2.7.1 立即數(shù)2.7.2 寄存器操作數(shù)2.7.3 存儲器操作數(shù)2.7.4 規(guī)定段選擇子2.7.5 規(guī)定偏移量2.7.6 匯編程序和編譯器尋址方式2.7.7 I/O端口尋址第3章 數(shù)據(jù)類型3.1 基本數(shù)據(jù)類型3.2 數(shù)字?jǐn)?shù)據(jù)類型3.2.1 整數(shù)3.2.2 浮點(diǎn)數(shù)據(jù)類型3.3 指針數(shù)據(jù)類型3.4 位字段數(shù)據(jù)類型3.5 串?dāng)?shù)據(jù)類型3.6 組合的SIMD數(shù)據(jù)類型3.6.1 64位SIMD組合的數(shù)據(jù)類型3.6.2 128位組合的SIMD數(shù)據(jù)類型3.7.BCD和組合的BCD整數(shù)3.8 實(shí)數(shù)和浮點(diǎn)格式3.8.1 實(shí)數(shù)系統(tǒng)3.8.2 浮點(diǎn)格式3.8.3 實(shí)數(shù)和非數(shù)字編碼3.8.4 舍入3.9 浮點(diǎn)異常概要3.9.1 浮點(diǎn)異常條件3.9.2 浮點(diǎn)異常優(yōu)先權(quán)3.9.3 浮點(diǎn)異常處理程序的典型動作第4章 Intel64(AMDx86.6 4)和IA-32系統(tǒng)體系結(jié)構(gòu)概要4.1 系統(tǒng)級體系結(jié)構(gòu)概要4.1.1 全局和局部描述符表4.1.2 系統(tǒng)段、段描述符和門4.1.3 任務(wù)狀態(tài)段和任務(wù)門4.1.4 中斷和異常處理4.1.5 存儲管理4.1.6 系統(tǒng)寄存器4.1.7 其他系統(tǒng)資源4.2 操作方式4.3 在EFLAGS寄存器中的系統(tǒng)標(biāo)志和字段4.4 存儲管理寄存器4.4.1 全局描述符表寄存器(GDTR)4.4.2 局部描述符表寄存器(LDTR)4.4.3 中斷描述符表寄存器(IDTR)4.4.4 任務(wù)寄存器(TR)4.5 控制寄存器4.6 系統(tǒng)指令概要4.6.1 裝入和存儲系統(tǒng)寄存器4.6.2 驗(yàn)證訪問權(quán)4.6.3 裝入和存儲調(diào)試寄存器4.6.4 無效緩存和TLB4.6.5 控制處理器4.6.6 讀性能監(jiān)視和時戳計數(shù)器4.6.7 讀和寫模型特定寄存器第5章 保護(hù)方式存儲管理5.1 存儲管理概要5.2 使用分段5.2.1 基本平面模型5.2.2 保護(hù)的平面模型5.2.3 多段模型5.2.4 在IA一32e方式中的分段5.2.5 分頁和段5.3 物理地址空間5.4 邏輯和線性地址5.4.1 在IA一32e方式中邏輯地址的轉(zhuǎn)換5.4.2 段選擇子5.4.3 段寄存器5.4.4 在1A一32e方式中的段裝入指令5.4.5 段描述符5.5 系統(tǒng)描述符類型5.5.1 段描述符表5.5.2 在IA一32e方式中的段描述符表5.6 分頁(虛擬存儲器)概要5.6.1 分頁選項5.6.2 頁表和頁目錄5.7 使用32位物理尋址的頁轉(zhuǎn)換5.7.1 線性地址轉(zhuǎn)換(4KB頁)5.7.2 線性地址轉(zhuǎn)換(4MB頁)5.7.3 混合4KB和4MB頁5.7.4 內(nèi)存混合5.7.5 頁目錄的基地址5.7.6 頁目錄和頁表項5.7.7 頁目錄和頁項不存在5.8 使用PAE分頁機(jī)制的36位物理尋址5.8.1 增強(qiáng)的傳統(tǒng)PAE分頁5.8.2 具有PAE啟用的(4KB頁)的線性地址轉(zhuǎn)換5.8.3 具有PAE啟用的(2MB頁)的線性地址轉(zhuǎn)換5.8.4 訪問具有擴(kuò)展的頁表結(jié)構(gòu)的全擴(kuò)展物理地址空間5.8.5 具有擴(kuò)展的地址啟用的頁目錄和頁表5.9 使用PSE一36分頁機(jī)制的36位物理尋址5.10 在IA一32e方式中PAE啟用的分頁5.10.1 IA一32e方式線性地址轉(zhuǎn)換(4KB頁)5.10.2 IA一32e方式線性地址轉(zhuǎn)換(2MB頁)……第6章 內(nèi)存緩存控制第7章 保護(hù)第8章 中斷和異常處理第9章 指令集小結(jié)第10章 用x87 FPU編程第11章 64位和128位媒體與科學(xué)編程第12章 用SSE3和追加的SSE3編程第13章 任務(wù)管理第14章 調(diào)試與性能監(jiān)視第15章 先進(jìn)的可編程的中斷控制器第16章 多處理器管理第17章 處理器標(biāo)識及特性第18章 處理器管理和初始化參考文獻(xiàn)
章節(jié)摘錄
插圖:此流水線設(shè)計以高速、流水線的微處理器解決公共問題。這些問題中的兩個構(gòu)成主要的延遲源。從目標(biāo)讀取的指令的譯碼時間;由于在緩存行的中間的分支目標(biāo),浪費(fèi)了譯碼帶寬。流水線的追蹤緩存的操作解決這些問題。指令由轉(zhuǎn)換引擎(取指/譯碼邏輯部分)經(jīng)常地讀取和譯碼并構(gòu)造為稱為追蹤的微操作序列。在任何時候多追蹤(代表預(yù)取分支)存放在追蹤緩存中。為了跟在有效分支后的指令,搜索追蹤緩存。若指令也作為預(yù)取分支中的第一條指令出現(xiàn),從內(nèi)存層次中讀取和譯碼指令,且預(yù)取的分支變?yōu)橹噶畹男碌脑?。追蹤緩存和轉(zhuǎn)換引擎共同操作分支預(yù)測硬件。分支目標(biāo)基于它們的線性地址用分支目標(biāo)緩沖器(BTB)被預(yù)測,盡可能快地被讀取。2.超序執(zhí)行核超序執(zhí)行核超序執(zhí)行指令的能力是允許并行的一關(guān)鍵因素。此特性允許處理器重排序指令,因此,一個微操作被延遲圍繞它的其他微操作可能處理。處理器使用若干緩沖器以平滑微操作流。核心設(shè)計以推動平行執(zhí)行。每個周期它能分派多至6個微操作(這超過了追蹤緩存和撤出微操作帶寬)。大多數(shù)流水線每個周期能開始執(zhí)行一個新的微操作,所以對于每個流水線,若干個指令同時在處理中。一些算術(shù)邏輯單元(ALU)指令每周期能開始兩個;許多浮點(diǎn)指令每兩個周期啟動一個。3.撤出單元撤出單元接收從超序執(zhí)行核執(zhí)行的微操作的結(jié)果并處理此結(jié)果,所以,體系結(jié)構(gòu)狀態(tài)按照原始的程序順序更新。當(dāng)一微操作完成和寫它的結(jié)果時,它被撤出。每個周期可能撤出多至3個微操作。重新排序緩沖器(ROB)是處理器中緩沖完成的微操作、按序更新體系結(jié)構(gòu)狀態(tài)和管理執(zhí)行順序的單元。撤出節(jié)也保持分支的蹤跡和送更新的分支目標(biāo)信息至BTB。然后清除不再需要的預(yù)取的蹤跡。
編輯推薦
《64位微處理器系統(tǒng)編程和應(yīng)用編程》特色針對當(dāng)前應(yīng)用最廣泛的兩種64位處理器——Intel和AMD的四核處理器作為基礎(chǔ)進(jìn)行介紹分析。反映了當(dāng)代微處理器的最新發(fā)展。把Intel和AMD兩種處理器綜合起來進(jìn)行分析。不論是應(yīng)用編程還是系統(tǒng)編程,《64位微處理器系統(tǒng)編程和應(yīng)用編程》的內(nèi)容對兩種處理器都適用。應(yīng)用編程全面而完整:既有通用編程,又有利用x86處理器的浮點(diǎn)和數(shù)學(xué)運(yùn)算編程以及利用MMX技術(shù)和SSE2、SSE3、SSSE3的多媒體和科學(xué)計算的應(yīng)用編程。《64位微處理器系統(tǒng)編程和應(yīng)用編程》包括了應(yīng)用編程的詳盡內(nèi)容,也包含了系統(tǒng)編程的主要內(nèi)容,對于絕大多數(shù)應(yīng)用者自如地編程和應(yīng)用是足夠的。《64位微處理器系統(tǒng)編程和應(yīng)用編程》立足于應(yīng)用。給出了豐富的編程實(shí)例。
圖書封面
圖書標(biāo)簽Tags
無
評論、評分、閱讀與下載
64位微處理器系統(tǒng)編程和應(yīng)用編程 PDF格式下載