现代体系结构上的UNIX系统 内核程序员的SMP和Caching技术PDF电子书下载
- 电子书积分:11 积分如何计算积分?
- 作 者:(美)Curt Schimmel著;张辉译
- 出 版 社:北京:人民邮电出版社
- 出版年份:2003
- ISBN:7115108765
- 页数:289 页
目录 1
第1章 回顾UNIX内核原理 1
1.1 引言 1
1.2 进程、程序和线程 2
1.3 进程地址空间 4
1.3.1 地址空间映射 5
1.4 现场切换 6
1.5 存储管理和进程管理的系统调用 7
1.5.1 系统调用fork 7
1.5.2 系统调用exec 9
1.5.3 系统调用exit 10
1.5.4 系统调用sbrk和brk 10
1.5.5 共享存储 10
1.6 小结 11
1.5.7 映射文件 11
1.5.6 输入输出操作 11
1.7 习题 12
1.8 进一步的读物 13
第一部分 高速缓存存储系统 17
第2章 高速缓存存储系统概述 17
2.1 存储器层次结构 17
2.2 高速缓存基本原理 19
2.2.1 如何存取高速缓存 19
2.2.2 虚拟地址还是物理地址 21
2.2.3 搜索高速缓存 21
2.2.4 替换策略 22
2.2.5 写入策略 22
2.3 直接映射高速缓存 25
2.3.1 直接映射高速缓存的散列算法 26
2.3.2 直接映射高速缓存的实例 28
2.3.3 直接映射高速缓存的缺失处理和替换策略 30
2.3.4 直接映射高速缓存的总结 31
2.4 双路组相联高速缓存 32
2.4.1 双路组相联高速缓存的总结 33
2.5 n路组相联高速缓存 34
2.6 全相联高速缓存 34
2.7 n路组相联高速缓存的总结 35
2.8 高速缓存冲洗 35
2.9 无高速缓存操作 36
2.10 独立的指令高速缓存和数据高速缓存 37
2.11 高速缓存的性能 38
2.12 如何区分不同的高速缓存结构 39
2.13 习题 40
2.14 进一步的读物 42
3.1 虚拟高速缓存的操作 45
第3章 虚拟高速缓存 45
3.2 虚拟高速缓存的问题 47
3.2.1 歧义 47
3.2.2 别名 48
3.3 管理虚拟高速缓存 51
3.3.1 现场切换 51
3.3.2 fork 52
3.3.3 exec 54
3.3.4 exit 54
3.3.5 brk和sbrk 55
3.3.6 共享存储器和映射文件 55
3.3.7 输入输出 56
3.3.8 用户-内核数据的歧义 59
3.4 小结 60
3.5 习题 60
3.6 进一步的读物 62
第4章 带有键的虚拟高速缓存 63
4.1 带有键的虚拟高速缓存的操作 63
4.2 管理带有键的虚拟高速缓存 64
4.2.1 现场切换 64
4.2.2 fork 65
4.2.3 exec 67
4.2.4 exit 68
4.2.5 brk和sbrk 68
4.2.6 共享存储和映射文件 68
4.2.7 输入输出 71
4.2.8 用户-内核数据的歧义 71
4.3 在MMU中使用虚拟高速缓存 71
4.4 小结 72
4.5 习题 73
4.6 进一步的读物 74
第5章 带有物理地址标记的虚拟高速缓存 75
5.1 带有物理标记的虚拟高速缓存的组成 75
5.2 管理带有物理标记的虚拟高速缓存 78
5.2.1 现场切换 78
5.2.2 fork 78
5.2.3 exec 79
5.2.4 exit 79
5.2.5 brk和sbrk 80
5.2.6 共享存储和映射文件 80
5.2.7 输入输出 80
5.2.8 用户-内核数据的歧义 80
5.3 小结 81
5.4 习题 81
5.5 进一步的读物 82
6.1 物理高速缓存的组成 83
第6章 物理高速缓存 83
6.2 管理物理高速缓存 85
6.2.1 现场切换 85
6.2.2 fork 85
6.2.3 exec、exit、brk和sbrk 85
6.2.4 共享存储和映射文件 86
6.2.5 用户-内核数据的歧义 86
6.2.6 输入输出和总线监视 86
6.3 多级高速缓存 91
6.3.1 带有次级物理高速缓存的主虚拟高速缓存 92
6.3.2 带有物理标记的主虚拟高速缓存和次级物理高速缓存 93
6.4 小结 95
6.5 习题 95
6.6 进一步的读物 96
7.2 地址空间布局 98
7.2.1 虚拟索引的高速缓存 98
7.1 引言 98
第7章 高效的高速缓存管理技术 98
7.2.2 动态地址绑定 101
7.2.3 物理索引高速缓存 103
7.3 受限于高速缓存大小的冲洗操作 104
7.4 滞后的高速缓存无效操作 104
7.4.1 带有键的虚拟高速缓存 105
7.4.2 没有总线监视机制的物理标记高速缓存 106
7.5 按高速缓存对齐数据结构 106
7.6 小结 108
7.7 习题 109
7.8 进一步的读物 110
第二部分 多处理机系统 113
第8章 多处理机系统概述 113
8.1 引言 113
8.1.1 MP操作系统 114
8.2 紧密耦合、共享存储的对称多处理机 115
8.3 MP存储器模型 116
8.3.1 顺序存储模型 117
8.3.2 原子读和原子写 117
8.3.3 原子读-改-写操作 119
8.4 互斥 121
8.5 回顾单处理机Unix系统上的互斥 123
8.5.1 短期互斥 123
8.5.2 和中断处理程序的互斥 123
8.5.3 长期互斥 124
8.6 在MP上使用UP互斥策略的问题 126
8.7 小结 127
8.8 习题 128
8.9 进一步的读物 130
9.1 引言 132
第9章 主从处理机内核 132
9.2 自旋锁 133
9.3 死锁 134
9.4 主从处理机内核的实现 136
9.4.1 运行队列的实现 136
9.4.2 从处理器的进程选择 139
9.4.3 主处理器的进程选择 140
9.4.4 时钟中断处理 140
9.5 性能考虑 141
9.5.1 主从处理机内核的改进 142
9.6 小结 142
9.7 习题 143
9.8 进一步的读物 145
10.1 引言 147
10.2 巨型上锁 147
第10章 采用自旋锁的内核 147
10.3 不需要上锁的多线程情况 149
10.4 粗粒度上锁 150
10.5 细粒度上锁 152
10.5.1 短期互斥 152
10.5.2 长期互斥 153
10.5.3 和中断处理程序的互斥 154
10.5.4 锁的粒度 155
10.5.5 性能 156
10.5.6 内核抢先 157
10.6 sleep和wakeup对多处理机的影响 157
10.7 小结 158
10.8 习题 159
10.9 进一步的读物 162
11.1 引言 164
第11章 采用信号量的内核 164
11.1.1 采用信号量的互斥 165
11.1.2 采用信号量的同步 165
11.1.3 采用信号量分配资源 166
11.2 死锁 166
11.3 实现信号量 167
11.4 粗粒度信号量的实现 170
11.5 采用信号量的多线程 171
11.5.1 长期互斥 171
11.5.2 短期互斥 172
11.5.3 同步 172
11.6 性能考虑 173
11.6.1 测量锁争用 173
11.6.2 结对 174
11.6.3 多读锁 176
11.8 习题 180
11.7 小结 180
11.9 进一步的读物 181
第12章 其他MP原语 184
12.1 引言 184
12.2 管程 184
12.3 事件计数和定序器 186
12.4 SVR4.2 MP的MP原语 188
12.4.1 自旋锁 188
12.4.2 睡眠锁 190
12.4.3 同步变量 191
12.4.4 多读锁 193
12.5 比较MP同步原语 194
12.6 小结 196
12.7 习题 197
12.8 进一步的读物 197
13.1 引言 200
第13章 其他存储模型 200
13.2 Dekker算法 201
13.3 其他存储模型 202
13.4 TSO 204
13.5 PSO 208
13.6 作为存储层次结构一部分的store缓冲 210
13.7 小结 210
13.8 习题 211
13.9 进一步的读物 211
第三部分 带有高速缓存的多处理机系统 217
第14章 MP高速缓存一致性概述 217
14.1 引言 217
14.2 高速缓存一致性问题 219
14.3 软件高速缓存一致性 221
14.3.1 共享数据不被高速缓存 222
14.3.2 有选择性地冲洗高速缓存 224
14.3.3 处理其他存储模型 227
14.4 小结 227
14.5 习题 228
14.6 进一步的读物 229
第15章 硬件高速缓存一致性 233
15.1 引言 233
15.2 写-使无效协议 235
15.2.1 写直通-使无效协议 235
15.2.2 写一次协议 236
15.2.3 MESI协议 238
15.3 写-更新协议 239
15.3.1 Firefly协议 239
15.4 读-改-写操作的一致性 240
15.3.2 MIPS R4000更新协议 240
15.5 多级高速缓存的硬件一致性 242
15.6 其他主要的存储体系结构 243
15.6.1 交叉开关互连 243
15.6.2 基于目录的硬件高速缓存一致性 245
15.7 对软件的影响 246
15.8 非顺序存储模型的硬件一致性 248
15.9 软件的性能考虑 249
15.9.1 数据结构在高速缓存内对齐 249
15.9.2 在获得自旋锁时减少对高速缓存行的争用 250
15.9.3 一致性协议与数据用途相匹配 251
15.10 小结 252
15.11 习题 253
15.12 进一步的读物 254
附录A 体系结构汇总 259
附录B 部分习题的答案 265
- 《联吡啶基钌光敏染料的结构与性能的理论研究》李明霞 2019
- 《异质性条件下技术创新最优市场结构研究 以中国高技术产业为例》千慧雄 2019
- 《程序逻辑及C语言编程》卢卫中,杨丽芳主编 2019
- 《柏里曼人体结构绘画教学描摹本 第2册 头手足结构》杨建飞主编 2019
- 《高等学校“十三五”规划教材 C语言程序设计》翟玉峰责任编辑;(中国)李聪,曾志华,江伟 2019
- 《改革进程中的刑事诉讼程序与证据问题研究 基于警察的视角》谢波 2019
- 《Java程序设计基础》罗刚 2018
- 《C++程序设计实验指导 第2版》张潇责任编辑;孟桂娥 2019
- 《认知语言学视野的抽象方位结构研究》曹爽著 2019
- 《国内外辐射环境监测体系对比研究》上海市辐射环境监督站 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《办好人民满意的教育 全国教育满意度调查报告》(中国)中国教育科学研究院 2019
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《人民院士》吴娜著 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《中国人民的心》杨朔著;夕琳编 2019
- 《高等院校旅游专业系列教材 旅游企业岗位培训系列教材 新编北京导游英语》杨昆,鄢莉,谭明华 2019
- 《中华人民共和国成立70周年优秀文学作品精选 短篇小说卷 上 全2册》贺邵俊主编 2019
- 《指向核心素养 北京十一学校名师教学设计 数学 九年级 上 配人教版》周志英总主编 2019
- 《中华人民共和国成立70周年优秀文学作品精选 中篇小说卷 下 全3册》洪治纲主编 2019