1.1 计算机系统的基本概念 1
1.2 计算机系统的发展 1
第1章 计算机系统结构导论 1
1.2.1 Von Neumann结构的特点 2
1.2.2 器件发展对系统结构的影响 3
1.2.3 应用对系统结构的影响 4
1.2.4 算法对系统结构的影响 5
1.2.5 现代计算机系统的分类和发展过程 6
1.3 计算机系统的功能和结构 7
1.3.1 计算机系统的层次结构 7
1.3.2 计算机系统结构的定义 9
1.3.4 计算机系统结构、组成和实现之间的关系 10
1.3.3 计算机组成与实现 10
1.3.5 计算机系统的特性 11
1.4 计算机系统的设计方法 13
1.4.1 软、硬件取舍的基本原则 13
1.4.2 计算机系统设计的定量原则 14
1.4.3 计算机系统的设计任务 18
1.4.4 计算机系统的设计步骤 19
1.5 现代计算机系统结构的研究领域 20
1.5.1 计算机系统结构分类 20
1.5.2 现代计算机系统结构研究方向 24
2.1.1 CPU的组成 26
2.1 中央处理器 26
第2章 计算机系统结构 26
2.1.2 数据表示 27
2.1.3 寻址方式分析 31
2.1.4 指令优化 34
2.2 总线结构 36
2.2.1 总线的分类 36
2.2.2 总线结构的特点 37
2.2.3 总线通信方式 37
2.2.4 总线仲裁 41
2.2.5 总线标准 42
2.3 存储系统概述 45
2.3.1 存储器容量、速度与价格的关系 46
2.3.2 存储系统的层次结构 47
2.3.3 存储系统的性能参数 49
2.3.4 程序访问的局部性 51
2.4 输入、输出系统 53
2.4.1 输入系统 53
2.4.2 输出系统 54
2.4.3 中断系统 56
2.4.4 通道处理机和I/O处理机 58
第3章 存储系统结构 64
3.1 地址的映像与变换 64
3.1.1 程序的定位 64
3.1.2 全相联映像及其变换 69
3.1.3 直接映像及其变换 70
3.1.4 组相联映像及其变换 71
3.1.5 段相联映像 74
3.1.6 对标志表的分析 74
3.1.7 散列概念在地址变换中的应用 75
3.2 替换算法及其实现 76
3.2.1 替换算法的分析 76
3.2.2 LRU替换算法的实现 79
3.3 并行主存系统 82
3.3.1 并行主存系统的频宽分析 82
3.3.2 单体多字存储器 84
3.3.3 多体交叉存储器 84
3.3.4 并行主存系统 86
3.4 高速缓冲存储器(Cache) 89
3.4.1 Cache的基本结构和工作原理 89
3.4.2 Cache的替换算法分析 91
3.4.3 Cache的透明性 92
3.4.4 任务切换对失效率的影响 93
3.4.5 多处理机系统的Cache结构 94
3.4.6 “Cache-主存”层次性能分析 95
3.5 虚拟存储器 97
3.5.1 虚拟存储器的基本结构和工作原理 97
3.5.2 虚地址和辅存实地址的变换 97
3.5.3 多用户虚拟存储器 98
3.5.4 加快地址变换的方法 102
3.5.5 虚拟存储器性能分析 104
3.6.1 主存保护 108
3.6 主存保护与控制 108
3.6.2 主存控制部件 110
第4章 流水线结构 112
4.1 系统结构中的并行性概念 112
4.1.1 并行性概念 112
4.1.2 并行处理的发展 113
4.2 流水线结构原理 118
4.2.1 重叠方式 118
4.2.2 先行控制 120
4.2.3 流水线处理机 122
4.3.1 流水线相关处理 127
4.3 流水线相关处理和技术指标 127
4.3.2 流水线技术指标 129
4.3.3 向量的流水处理 131
第5章 多处理机系统 135
5.1 多处理机的概念 135
5.1.1 多处理机系统的定义 135
5.1.2 多重处理对处理机特性的要求 136
5.2 并行处理机 137
5.2.1 并行处理机的结构 138
5.2.2 并行处理的特点 138
5.2.3 并行处理机的互连网络 139
5.2.4 阵列机结构 141
5.2.5 大规模并行处理机 144
5.3 多处理机结构 145
5.3.1 多处理机的基本结构 145
5.3.2 多处理机的互连网络 147
5.3.3 多处理机系统的存储器结构 154
5.3.4 多处理机系统的特点 157
5.4 多处理机的软件 159
5.4.1 算术表达式的并行算法 159
5.4.2 程序并行性分析 160
5.4.3 并行程序语言 161
5.4.4 多处理机的操作系统 164
5.5.1 C?多处理机 167
5.5 多处理机系统实例 167
5.5.2 Cmmp多处理机 170
第6章 RISC结构 172
6.1 RISC结构概述 172
6.1.1 传统计算机系统结构的设计思想 172
6.1.2 RISC设计思想的产生 172
6.1.3 RISC系统结构的特点 174
6.1.4 RISC的定义 175
6.1.5 关于CPI的讨论 176
6.2 流水线结构 177
6.3 指令调度 179
6.4 Cache结构 181
6.4.1 实地址Cache 181
6.4.2 虚地址Cache 183
6.4.3 多处理器的Cache一致性问题 184
第7章 分布计算环境结构 187
7.1 分布计算环境的发展 187
7.2 客户-服务器结构(Client/Server) 187
7.2.1 客户-服务器结构的特点 187
7.2.2 中间件的概念和特点 188
7.3 开放式分布处理(ODP) 188
7.4 公共对象请求代理体系结构(CORBA) 189
7.5 基于Web的分布计算 190
7.5.1 Browser/Server结构 190
7.5.2 基于Web的页面描述语言标准XML 191
8.2 数据流计算机的指令 193
8.2.1 数据流计算机指令的组成 193
第8章 数据流计算机结构 193
8.1 数据流计算机的基本原理 193
8.2.2 数据流计算机指令的执行 194
8.3 数据流计算机结构 195
8.3.1 静态数据流计算机模型及其结构 195
8.3.2 动态数据流计算机模型及其结构 196
8.3.3 静态与动态两种数据流计算机的比较 197
8.4 数据流程序图和数据流语言 198
8.4.1 数据流程序图 198
8.4.2 数据流语言及其性质 203
8.5.1 数据流计算机的优缺点 205
8.5 数据流计算机的评价 205
8.5.2 数据流计算机需解决的问题 206
第9章 软件对系统结构的影响 207
9.1 操作系统的影响 207
9.1.1 批量处理系统 208
9.1.2 单用户交互式系统 208
9.1.3 分时操作系统 208
9.1.4 实时操作系统 209
9.1.5 网络操作系统 209
9.1.6 分布式操作系统 209
9.2 语言发展的影响 210
9.2.1 实现新层次的方法 210
9.2.2 多层计算机的设计策略 211
9.2.3 程序移植 213
9.2.4 现代模型的研究方法——计算机仿真 215
9.3 并行处理的影响 216
9.3.1 并行计算机分类 216
9.3.2 并行计算机性能 216
9.3.3 并行处理技术中的基本问题 217
9.3.4 并行算法的效率与并行机系统结构的关系 219
9.4 面向对象程序设计的影响 220
9.4.1 面向对象的程序设计 220
9.4.2 基于面向对象程序设计语言的计算机系统结构 222
9.5 软件的固化与硬化 224
10.1.1 集群计算机系统及其特点 226
第10章 现代计算机系统结构的发展 226
10.1 集群计算机系统结构 226
10.1.2 集群系统的通信软件和网络服务 228
10.1.3 集群系统的资源管理和调度 228
10.1.4 集群系统的单一系统映像 228
10.1.5 集群系统的并行程序设计环境 229
10.2 高性能计算机系统实例 229
10.2.1 自强2000的体系结构 229
10.2.2 自强2000软件环境具有的特点 230
10.2.3 高性能计算机应用举例 231
10.3.1 网格技术基本概念 232
10.3.2 网格技术简介 232
10.3 网格技术 232
10.3.3 网格技术应用举例 234
10.4 性能评价和测量 235
10.4.1 性能评价的标志 235
10.4.2 性能的描述 236
10.4.3 性能评价的对象 236
10.4.4 性能评价的手段 236
10.4.5 性能的评价 236
10.4.6 性能评测标准举例 237
附录A 例题 238
附录B 习题 260
参考文献 274