《支撑处理器的技术:永无止境地追求速度的世界》用通俗易懂的语言和大量的插图,介绍了处理器的历史、基本结构、实现原理等,还对时下流行的虚拟化技术、多任务、多核心、GPGPU等进行了全面的讲解,并介绍了有效利用处理器的各种功能来提高应用程序性能的方法。《支撑处理器的技术:永无止境地追求速度的世界》最后还介绍了处理器在移动设备、汽车、家电等方面的应用,并展望处理器的未来发展趋势,希望能对相关软硬件的开发者有所帮助。
第 1 章 处理器与计算机系统的基础........................................1
1.1 计算机的结构............................. 2
计算机组成部分——处理器、内存、输入/输出设备.......................2
专栏处理器封装的物理结构..................................... 4
计算机使用二进制进行计算..............................4
专栏 2 值和多值非二进制不可吗?不一定! ........................... 5
处理器——计算机的大脑,负责解释程序........................6
专栏处理器、微处理器的定义计算机最重要的组件——处理器............. 7
专栏流水线级............................. 8
专栏表示数量级的前缀............................ 10
内存——存储计算机的指令和数据........................13
输入/输出设备——计算机的眼睛、耳朵和嘴巴.............................18
北桥和南桥——逐渐淡化的称呼..............................21
1.2 支撑计算机高速化的半导体技术........................... 22
摩尔(Moore)定律——更多的晶体管,更高的并行度................22
缩放定律——晶体管的性能提升................24
源源不断的开发投资带来的半导体微型化——微型化的步伐还将长期维持.........24
提升性能的三大支柱——提高频率、并行处理和功能扩展..........25
1.3 计算机和数据表示方法........................ 26
字节、半字、字……——比特组及用途.........................26
文字编码............................................27
专栏日语与文字编码................................ 28
无符号整数与符号整数、1 的补数表示与2 的补数表示...............29
浮点小数——IEEE 754 标准...........................30
Big Endian 与Little Endian...............................32
1.4 处理器和指令........................... 34VIII
指令架构入门....................................34
机器指令——处理器的指令............................36
地址空间............................................36
专栏 AMD 和Intel 的64 位扩展架构.......................... 38
1.5 机器指令程序编写方法......................... 39
用汇编语言编程................................39
利用编译器进行高级语言编程................................40
解释语言编程....................................41
1.6 小结............................................. 43
专栏 半导体的微型化................................ 44
第2 章 处理器发展史......................................46
2.1 计算机之前的计算设备.............................. 47
算盘——最早的计算工具................................48
纳皮尔算筹(Napier's bones)——乘法辅助工具............................49
机械式计算机——Schikard 计算机、Pascaline ............50
巴贝奇的差分机——使用齿轮的超级计算机...................................52
2.2 最早的电子计算机................................. 53
最早的电子计算机——ABC 和ENIAC .................53
FUJIC——日本最早的电子计算机.....................54
2.3 处理器组成元件的变迁......................... 55
根据主要部件划分计算机的时代............................55
第1 代:真空管................................55
第2 代:晶体管................................56
第3 代:集成电路............................57
第4 代:大规模集成电路(VLSI) ...........................58
VLSI 处理器的元件数目和时钟频率的发展趋势............................61
2.4 指令架构的变迁...................................... 62
指令架构的发展之路........................62
存储程序的计算机——程序也从内存中读入...................................63
虚拟内存——更加丰富、取之不尽的内存.................64
多处理——需要改变程序的部署...............................66
TSS 与内存管理设施的登场............................67
专栏 MULTICS 之后的事.......................... 68
内存管理设施、特权管理——多用户需要解决安全问题..............68
ISA 扩展——指令架构的确立与指令兼容性的实现.......................69
2.5 微架构的发展........................... 70
微架构的发展之道............................70
流水线处理——通过流水线寄存器有效利用硬件..........................72
运算器的高速化——整数运算器、浮点数运算器..........................73
缓存——解决内存访问问题的锦囊...........................74
RISC 的出现——RISC 与CISC ...........................76
超标量执行——一个周期内执行多条指令.................. 77
乱序执行——改变指令顺序以提高性能...................78
专栏乱序执行(Out of Order):请注意!? ............................. 80
分支预测与投机执行——“条件分支指令”对策..........................80
多核心——耗电量的限制推动了多核心的发展..............................81
2.6 处理器的用途越来越广泛................................. 82
活跃在各种舞台的处理器................................82
节能、高可靠技术、实时性——各种各样的需求..........................83
2.7 小结............................................. 83
第 3 章 [详解]面向编程员的处理器架构................................86
3.1 支撑微架构的技术................................. 87
流水线执行的原理——并行处理指令......................87
缓存的构造——提高内存访问速度.........................99
RISC 与CISC——定长指令与变长指令............................ 112
提高运算器的速度——处理器中因处理复杂而处理时间长的组件之一........... 116
超标量执行的原理——一个周期内并行执行多条指令................126
乱序执行的原理——减轻数据灾难的影响......................128
分支预测的原理——降低控制灾难造成的损失............................134
现代处理器会消除或减轻各种灾难以提高性能............................140
内存、I/O 与输入/输出接口..........................141
性能计数器——性能分析器和处理器内部执行状况的信息........147
3.2 架构扩展扩大了处理器的使用范围.................................. 149
多程序和内存管理设施..................................149
中断处理设施..................................155X
专栏异常、中断、陷阱——术语整理.......................................159
虚拟化支持——内存访问和内存管理设施..................................160
多媒体、加密等支持——需要大量数据的计算............................162
3.3 x86 Nehalem 架构处理器............................. 167
x86 的指令体系和Intel 64 架构.................................167
Core i7 处理器的结构.....................................175
内存管理采用4 级表......................................180
新的处理器接口QPI ......................................184
3.4 小结........................................... 185
第 4 章 虚拟化支持.........................188
4.1 虚拟化的目的和优缺点............................. 189
虚拟化的基础知识(复习)..........................189
虚拟化的目的..................................190
实现用户间强隔离——虚拟化的优点........................................190
集合多台服务器,提高运行率——虚拟化的优点...................191
VMM 运行时的额外开销——虚拟化的缺点、注意点.................193
4.2 实现虚拟化的条件............................... 194
为操作系统提供独立的(虚拟)硬件的VMM.............................195
4.3 支撑虚拟化的硬件设施............................ 196
检测硬件操作命令..........................196
硬件状态的保存和还原——切换虚拟机.................198
双重地址转换、TLB ......................................199
I/O 的虚拟化....................................203
实时迁移(Live Migration) ...............................207
4.4 小结........................................... 208
专栏 虚拟化的前世今生...........................209
第5 章 多处理器的出现和普及..........................211
5.1 多线程处理器......................... 212
线程、多线程的纷繁芜杂(!?)——首先总结一下术语..............212
多线程的两种方式..........................213
VMT 的原理——短时间内切换线程......................214
SMT 的原理——混杂执行多个线程的指令...................................216
专栏历史悠久的SMT .............................216
SMT 必需的机制.........................217
多线程的效果如何——通过Windows 任务管理器查看效果.......219
5.2 多处理器系统......................... 222
多处理器、多核心是什么意思........................222
多核心处理器的结构......................................223
专栏超多核心处理器(Many-core processor)的结构..............224
缓存一致性控制——多处理器之间缓存的一致性........................225
多插槽系统......................................231
专栏插槽还是芯片..................................234
专栏多核心时代的处理器、CPU 的含义..................................236
提高多处理器系统的性能——问题和解决方案............................238
共享内存系统和分布式内存系统...........................244
5.3 小结........................................... 246
第 6 章 处理器周边技术...............................249
6.1 内存技术.................................. 250
内存历史概览..................................250
DRAM 内存的工作原理——利用电荷存储信息...........................251
DRAM 芯片和内存DIMM............................254
DRAM 芯片的内部结构——内存单元阵列、行/列解码器、检测放大器、Bank ........256
处理器和DIMM 的连接................................258
内存系统的错误处理......................................259
6.2 连接输入/输出设备.............................. 265
处理器的I/O 连接...........................265
PCI 总线...........................................266
专栏通向 PCI 总线之路..........................267
Intel Core i 系列处理器的I/O 结构......................272
Intel PCH 的I/O 控制结构.............................273
6.3 小结........................................... 273
专栏 DRAM的刷新.................................274
第7 章 GPGPU 和超并行处理...............................276
7.1 GPGPU 的原理...................................... 277
3D 图形和GPU——需要大量计算..........................277
GPU 系统.........................................279
从GPU 到GPGPU..........................280
作为“超并行SIMD 处理器”的GPGPU......................................281
作为“超多线程处理器”的GPGPU........................283
专栏 Warp! .............................284
GPGPU 的内存层次结构................................285
GPGPU 中的多线程需要分割使用通用寄存器..............................287
CPU 和GPGPU 的巨大不同..........................288
7.2 GPGPU 编程........................... 289
现代 GPGPU 编程...........................290
CUDA 的运行模型——线程块、网格..........................290
CUDA 中的函数声明和变量声明...............................292
OpenCL 编程...................................293
如何发挥GPGPU 的性能...............................295
7.3 小结........................................... 303
专栏 Top500 和GPU 计算....................................304
第 8 章 处理器的发展趋势..........................306
8.1 耗电量是万恶之源............................... 307
为何处理器要消耗电力..................................307
节能技术的发展..............................310
8.2 更高、更快、更强............................... 313
半导体微型化技术..........................314
如何有效利用增加的晶体管..........................315
利用部分晶体管降低生产成本....................................316
有效利用部分块不合格的芯片.........................................318
8.3 更可靠、更安全的处理器设计................ 320
为何处理器会有错误行为——故障、噪声.............................320
防止错误行为,确保安全运转......................................322
8.4 未来处理器的发展方向...................................... 323
无处不在的处理器..........................324
家电用处理器..................................324
汽车用处理器..................................324
个人计算机用处理器................................................325
智能手机用处理器..........................325
服务器用处理器..............................327
8.5 小结........................................... 329
索引...........................................................331
《版面设计网格构成》中的网格构成是现在版面设计最重要的基础修养之一。作为一种行之有效的版面设计形式法则,它将构成主义和秩
Haralambos(Babis)Marmanis博士是一个把机器学习技术应用于工业界的先行者,也是供应管理的世界级专家。DmitryBabenko曾经为银行
《你的保险指南》内容简介:如何基于自身身体状况挑选匹配的保险产品? •如何避免拒保拒赔? •如何为家庭成员量身定制保单? 作者结
本书由上、下两篇组成。上篇为UNIX版本6的源代码,下篇是莱昂先生对UNIX操作系统版本6源代码的详细分析。本书语言简洁、透彻,曾
《生命的火花》内容简介:☆《《西线无战事》作者雷马克创作巅峰期的泣血之作,照亮被残酷时代吞没的所有无名者。☆希望的星火在令
《华侨中医药防控新冠肺炎手册》内容简介:鉴于新冠肺炎疫情在全球蔓延,丽水有40余万华侨旅居世界100多个国家和地区,本书旨在为广
《普通高等教育十五国家级规划教材配套参考书•模拟电子技术基础(第4版)习题解答》是为配合清华大学电子学教研组编,华成英、童诗
《超级科学家:人工智能》内容简介:“超级科学家”系列是一套专门为7-12岁儿童量身打造的儿童科普书,通俗易懂是这套书的最大特色
实验与习题解答-微型计算机原理及应用(第二版) 本书特色 “微型计算机原理及应用”是高等学校工科电类各专业,特别是计算机应用专业大学生必修的一门专业基础课,目的...
《礼义之邦》内容简介:礼仪是礼的形式,礼义则是礼的本质。所有礼仪活动或者礼仪程序的背后,都蕴含有特定的道德认同、价值导向、
全国专业技术人员计算机应用能力考试考前冲刺WINDOWS XP操作系统 本书特色 《全国专业技术人员计算机应用能力考试考前冲刺:中文Windows XP操作系统...
《短线金手6:T+0战法实战剖析》内容简介:本书精选99种炒股T+0战法案例,结合私募实战操作分析,全方位解析T+0战法在实战中的运用
《温暖的麦穗》内容简介:本书是国务院新闻办公室三局局长张雁彬的随笔散文集。书中收录了作者自大学毕业后在生活、工作中写下的一
本书为知名互联网公司(明道)从市场的观察、产品的理念和自己的实践中开发的管理进步课程《高绩效团队的三个秘密》,概括了长期
《网络营销实战》内容简介:本书对现有的主要网络营销策略进行了全面梳理,详细解析其使用方法,并对各种营销手法的成败得失及具有
从Telsa到iPhone,从星巴克到无印良品,无论是塑造产品,还是打造品牌,设计似乎成为商业成功不可或缺的因素。然而,为什么绝大多
多智能体系统及应用 本书特色多智能体和多智能体技术是人工智能领域活跃的研究分支。本书在2014年度“中国智能体及多智能体系统”研讨会的基础上结集而成,全书共分1...
《深入RabbitMQ》内容简介:本书对RabbitMQ这一业界主流的消息中间件做了全面介绍,给出了如何使用RabbitMQ构建消息通信系统的方法
《人机情感交互》在详细介绍人机情感交互概念的基础上,分析了当前人机情感交互的研究前沿,特别是在情感模型、人脸表情交互、语
2006上半年试题分析与解答察团(软考) 内容简介 本书是针对全国计算机技术与软件专业技术资格(水平)考试而编写的,书中详尽分析与解答了2006年上半年的程序员...