现代体系结构上的UNIX系统

当前位置:首页 > 计算机网络 > 操作系统/系统开发 > 现代体系结构上的UNIX系统

出版社:人民邮电出版社
出版日期:2003-4
ISBN:9787115108760
作者:希梅尔
页数:289页

媒体关注与评论

  本书在揭示UNIX内核奥秘的诸多书籍中是具有重要意义的崭新里程碑。在体现当今先进技术水平的系统上,采用对称多处理机技术和高速缓存存储系统来提高系统性能,已是颇为划算的重要技术。  本书是为NUIX内核开发人员编写的,它全面而通俗地阐述了高速缓存和对称多处理机的操作、二者如何协调工作,以及为了在融合两者的机器上运行操作系统必须解决的问题。  在第一部分中回顾了UNIX内部原理之后,Curt Schimmel开始详细描述高速缓存存储系统,其中包括几种虚拟地址和物理地址高速缓存,另外还用一章的篇幅讲述了高效的高速缓存管理技术,针对每一种高速缓存的类型,本书不仅说明了它们对软件的影响,而且还说明了操作系统为这些系统所进行的必要调整和变化。第二部分说细介绍了紧密耦合,共享存储和对称多处理机的操作。这一部分研究了这些多处理机给操作系统带来的问题,比如竞争条件上、死锁以及存储器操作的次序,而且考察了如何对UNIX内核进行调整使之适于在这样的系统上运行。本书最后一部分考察了高速缓存存储系统和多处理机之间的相互作用以及这种相互作用给内核带来的新问题,随后阐述了用于解决这些问题的技术。  本书以大量示例来演示所讲述的概述,其中既有代表CISC处理器的例子,也有代表RISC处理器的例子,如何Intel 80486和Pentium、Motorla68040和88000,以及MIPS和SPARC处理器。为了增进读者对概念的理解,每一章还包含了一组练习题,在本书末尾在有选择地给出了习题的答案。

书籍目录

第1章 回顾UNIX内核原理
1.1 引言
1.2 进程、程序和线程
1.3 进程地址空间
1.4 现场切换
1.5 存储管理和进程管理的系统调用
1.6 小结
1.7 习题
1.8 进一步的读物
第一部分 高速缓存存储系统
第2章 高速缓存存储系统概述
2.1 存储器层次结构
2.2 高速缓存基本原理
2.3 直接映射高速缓存
2.4 双路组相联高速缓存
2.5 n路组相联高速缓存
2.6 全相联高速缓存
2.7 n路组相联高速缓存的总结
2.8 高速缓存冲洗
2.9 无高速缓存操作
2.10 独立的指令高速缓存和数据高速缓存
2.11 高速缓存的性能
2.12 如何区分不同的高速缓存结构
2.13 习题
2.14 进一步的读物
第3章 虚拟高速缓存
3.1 虚拟高速缓存的操作
3.2 虚拟高速缓存的问题
3.3 管理虚拟高速缓存
3.4 小结
3.5 习题
3.6 进一步的读物
第4章 带有键的虚拟高速缓存
4.1 带有键的虚拟高速缓存的操作
4.2 管理带有键的虚拟高速缓存
4.3 在MMU中使用虚拟高速缓存
4.4 小结
4.5 习题
4.6 进一步的读物
第5章 带有物理地址标记的虚拟高速缓存
5.1 带有物理标记的虚拟高速缓存的组成
5.2 管理带有物理标记的虚拟高速缓存
5.3 小结
5.4 习题
5.5 进一步的读物
第6章 物理高速缓存
6.1 物理高速缓存的组成
6.2 管理物理高速缓存
6.3 多级高速缓存
6.4 小结
6.5 习题
6.6 进一步的读物
第7章 高效的高速缓存管理技术
7.1 引言
7.2 地址空间布局
7.3 受限于高速缓存大小的冲洗操作
7.4 滞后的高速缓存无效操作
7.5 按高速缓存对齐数据结构
7.6 小结
7.7 习题
7.8 进一步的读物
第二部分 多处理机系统
第8章 多处理机系统概述
8.1 引言
8.2 紧密耦合、共享存储的对称多处理机
8.3 MP存储器模型
8.4 互斥
8.5 回顾单处理机Unix系统上的互斥
8.6 在MP上使用UP互斥策略的问题
8.7 小结
8.8 习题
8.9 进一步的读物
第9章 主从处理机内核
9.1 引言
9.2 自旋锁
9.3 死锁
9.4 主从处理机内核的实现
9.5 性能考虑
9.6 小结
9.7 习题
9.8 进一步的读物
第10章 采用自旋锁的内核
10.1 引言
10.2 巨型上锁
10.3 不需要上锁的多线程情况
10.4 粗粒度上锁
10.5 细粒度上锁
10.6 sleep和wakeup对多处理机的影响
10.7 小结
10.8 习题
10.9 进一步的读物
第11章 采用信号量的内核
11.1 引言
11.2 死锁
11.3 实现信号量
11.4 粗粒度信号量的实现
11.5 采用信号量的多线程
11.6 性能考虑
11.7 小结
11.8 习题
11.9 进一步的读物
第12章 其他MP原语
12.1 引言
12.2 管程
12.3 事件计数和定序器
12.4 SVR4.2 MP的MP原语
12.5 比较MP同步原语
12.6 小结
12.7 习题
12.8 进一步的读物
第13章 其他存储模型
13.1 引言
13.2 Dekker算法
13.3 其他存储模型
13.4 TSO
13.5 PSO
13.6 作为存储层次结构一部分的store缓冲
13.7 小结
13.8 习题
13.9 进一步的读物
第三部分 带有高速缓存的多处理机系统
第14章 MP高速缓存一致性概述
14.1 引言
14.2 高速缓存一致性问题
14.3 软件高速缓存一致性
14.4 小结
14.5 习题
14.6 进一步的读物
第15章 硬件高速缓存一致性
15.1 引言
15.2 写-使无效协议
15.3 写-更新协议
15.4 读-改-写操作的一致性
15.5 多级高速缓存的硬件一致性
15.6 其他主要的存储体系结构
15.7 对软件的影响
15.8 非顺序存储模型的硬件一致性
15.9 软件的性能考虑
15.10 小结
15.11 习题
15.12 进一步的读物
附录A 体系结构汇总
附录B 部分习题的答案

作者简介

本书首先回顾了与全书其他内容切实相关的UNIX系统内幕。回顾的目的是增进读者对UNIX操作系统概念的了解,并且定义随后使用的术语。本书接下来的内容分为3个部分。第一部分“高速缓存存储系统”介绍了高速缓存体系结构、术语和概念,详细考察了4种常见的高速缓存实现——3种虚拟高速缓存的变体和物理高速缓存。第二部分“多处理机系统”讨论了调整单处理机内核的实现,使之适合于紧密耦合、共享存储多处理机上运行时所面

图书封面


 现代体系结构上的UNIX系统下载 精选章节试读 更多精彩书评



发布书评

 
 


精彩书评 (总计2条)

  •     从单核的cache设计 引申出 多核smp架构的cache设计,并对单核和多核smp的cache一致性的实现,以及在内核设计时面临的同步和互斥的实现,提供了解决方案。本书前半部分介绍cache, 后半部分介绍同步和互斥等内核原语的实现方式。对想了解cache原理和内核原语实现方式的同学有借鉴意义。
  •     如果你读过pongba的C++多线程内存模型的博文(http://blog.csdn.net/pongba/article/details/1659952),对里面的一些内容抱有疑惑,并且你想从本质上逐步去解决这些疑惑。这本书可以帮你解答影响内存模型在SMP体系上,以及受Cache影响的所有问题。这本书的内容并不单纯面向内核程序员,事实上我认为更适合系统程序员阅读。同时,最后本书最后给出了一些内存模型相关的一些绝对有用的编程建议,比如cache line对齐等……同样送上guancheng的一篇博文。为什么程序员需要关心顺序一致性(Sequential Consistency)而不是Cache一致性(Cache Coherence?)http://www.parallellabs.com/2010/03/06/why-should-programmer-care-about-sequential-consistency-rather-than-cache-coherence/

精彩短评 (总计11条)

  •     最后面的一些内容没仔细看。很受益。
  •     距离原书出版已有近20年了,但这仍是一本经得起时间考验的经典。
  •     看到一半就看不下去了啊。
  •     深入浅出。SMP, Cache 对内核的影响,实现
  •     感觉没有多大的价值 作为一本普通参考书
  •     某大神推荐的书,:-),都是讲高速缓存的,受得了的孩子可以试一试~~
  •     读完了一半,有时间再读SMP的部分。
  •     以前总觉得缓存是一个线性平坦的结构,无非就是离cpu近点,访问快点。看完本书后,才知道自己原来是这么弱智。由缓存,内存模型引起的SMP缓存一致性问题往往很难调试且表芯怪异,加上对缓存结构的组织可能会影响到软件程序性能的时候,假如对此一无所知的话,快看这本书吧,她一定能刷新你对cache的理解。
  •     读完后半部分,感觉又啰嗦又无聊,讲的很浅显
  •     想了解多线程底层,搜索相关资料都指向这本书.看了确实如获至宝.内容很硬,不是畅销书.知识体系经得起考验.
  •     就是老了点,有没有新版的
 

外国儿童文学,篆刻,百科,生物科学,科普,初中通用,育儿亲子,美容护肤PDF图书下载,。 零度图书网 

零度图书网 @ 2024