多处理器编程的艺术:中文版 修订版

多处理器编程的艺术:中文版 修订版
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者: [美] , [美]
2013-05
版次: 1
ISBN: 9787111418580
定价: 69.00
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 383页
原版书名: The Art of Multiprocessor Programming, Revised First Edition
  •   《计算机科学丛书:多处理器编程的艺术(修订版)》从原理和实践两个方面全面阐述了多处理器编程的指导原则,包含编制高效的多处理器程序所必备的算法技术。此外,附录提供了采用其他程序设计语言包(如C#、C及C++的PThreads库)进行编程的相关背景知识以及硬件基础知识。
      《计算机科学丛书:多处理器编程的艺术(修订版)》适合作为高等院校计算机及相关专业高年级本科生及研究生的教材,同时也可作为相关技术人员的参考书。 Maurice Herlihy 哈佛大学的数学学士和麻省理工学院的计算机科学博士,目前为美国布朗大学计算机科学系教授,曾工作于卡内基-梅隆大学和DEC剑桥实验室。他是美国ACM会士,2003年分布式计算领域Dijkstra奖获得者。
    Nir Shavit 以色列希伯来大学的计算机科学博士,目前为麻省理工学院电子工程和计算机科学系教授、以色列特拉维夫大学计算机科学系教授。1999~2011年期间,他担任Sun实验室的技术人员。
    两位作者在2004年获得了理论计算机领域最高奖——哥德尔奖(G?del Prize),2012年他们共享了分布式计算领域的Edsger W. Dijkstra奖,40多年来他们一起合作,从事并行和分布式计算教学和研发工作。 出版者的话
    译者序
    前言
    教学建议

    第1章引言
    1.1共享对象和同步
    1.2生活实例
    1.2.1互斥特性
    1.2.2道德
    1.3生产者-消费者问题
    1.4读者-写者问题
    1.5并行的困境
    1.6并行程序设计
    1.7本章注释
    1.8习题

    第一部分原理
    第2章互斥
    2.1时间
    2.2临界区
    2.3双线程解决方案
    2.3.1LockOne类
    2.3.2LockTwo类
    2.3.3Peterson锁
    2.4过滤锁
    2.5公平性
    2.6Bakery算法
    2.7有界时间戳
    2.8存储单元数量的下界
    2.9本章注释
    2.10习题
    第3章并发对象
    3.1并发性与正确性
    3.2顺序对象
    3.3静态一致性
    3.4顺序一致性
    3.5可线性化性
    3.5.1可线性化点
    3.5.2评析
    3.6形式化定义
    3.6.1可线性化性
    3.6.2可线性化性的复合性
    3.6.3非阻塞特性
    3.7演进条件
    3.8Java存储器模型
    3.8.1锁和同步块
    3.8.2volatile域
    3.8.3final域
    3.9评析
    3.10本章注释
    3.11习题
    第4章共享存储器基础
    4.1寄存器空间
    4.2寄存器构造
    4.2.1MRSW安全寄存器
    4.2.2MRSW规则布尔寄存器
    4.2.3M-值MRSW规则寄存器
    4.2.4SRSW原子寄存器
    4.2.5MRSW原子寄存器
    4.2.6MRMW原子寄存器
    4.3原子快照
    4.3.1无障碍快照
    4.3.2无等待快照
    4.3.3正确性证明
    4.4本章注释
    4.5习题
    第5章同步原子操作的相对能力
    5.1一致数
    5.2原子寄存器
    5.3一致性协议
    5.4FIFO队列
    5.5多重赋值对象
    5.6读-改-写操作
    5.7Common2RMW操作
    5.8compareAndSet()操作
    5.9本章注释
    5.10题
    第6章一致性的通用性
    6.1引言
    6.2通用性
    6.3一种通用的无锁构造
    6.4一种通用的无等待构造
    6.5本章注释
    6.6习题

    第二部分实践
    第7章自旋锁与争用
    7.1实际问题
    7.2测试-设置锁
    7.3再论基于TAS的自旋锁
    7.4指数后退
    7.5队列锁
    7.5.1基于数组的锁
    7.5.2CLH队列锁
    7.5.3MCS队列锁
    7.6时限队列锁
    7.7复合锁
    7.8层次锁
    7.8.1层次后退锁
    7.8.2层次CLH队列锁
    7.9由一个锁管理所有的锁
    7.10本章注释
    7.11习题
    第8章管程和阻塞同步
    8.1引言
    8.2管程锁和条件
    8.2.1条件
    8.2.2唤醒丢失问题
    8.3读者-写者锁
    8.3.1简单的读者-写者锁
    8.3.2公平的读者-写者锁
    8.4我们的可重入锁
    8.5信号量
    8.6本章注释
    8.7习题
    第9章链表:锁的作用
    9.1引言
    9.2基于链表的集合
    9.3并发推理
    9.4粗粒度同步
    9.5细粒度同步
    9.6乐观同步
    9.7惰性同步
    9.8非阻塞同步
    9.9讨论
    9.10本章注释
    9.11习题
    第10章并行队列和ABA问题
    10.1引言
    10.2队列
    10.3部分有界队列
    10.4完全无界队列
    10.5无锁的无界队列
    10.6内存回收和ABA问题
    10.7双重数据结构
    10.8本章注释
    10.9习题
    第11章并发栈和消除
    11.1引言
    11.2无锁的无界栈
    11.3消除
    11.4后退消除栈
    11.4.1无锁交换机
    11.4.2消除数组
    11.5本章注释
    11.6习题
    第12章计数、排序和分布式协作
    12.1引言
    12.2共享计数
    12.3软件组合
    12.3.1概述
    12.3.2一个扩展实例
    12.3.3性能和健壮性
    12.4静态一致池和计数器
    12.5计数网
    12.5.1可计数网
    12.5.2双调计数网
    12.5.3性能和流水线
    12.6衍射树
    12.7并行排序
    12.8排序网
    12.9样本排序
    12.10分布式协作
    12.11本章注释
    12.12习题
    第13章并发哈希和固有并行
    13.1引言
    13.2封闭地址哈希集
    13.2.1粗粒度哈希集
    13.2.2空间分带哈希集
    13.2.3细粒度哈希集
    13.3无锁哈希集
    13.3.1递归有序划分
    13.3.2BucketList类
    13.3.3LockFreeHashSet类
    13.4开放地址哈希集
    13.4.1Cuckoo哈希
    13.4.2并发Cuckoo哈希
    13.4.3空间分带的并发Cuckoo哈希
    13.4.4细粒度的并发Cuckoo哈希集
    13.5本章注释
    13.6习题
    第14章跳表和平衡查找
    14.1引言
    14.2顺序跳表
    14.3基于锁的并发跳表
    14.3.1简介
    14.3.2算法
    14.4无锁并发跳表
    14.4.1简介
    14.4.2算法细节
    14.5并发跳表
    14.6本章注释
    14.7习题
    第15章优先级队列
    15.1引言
    15.2基于数组的有界优先级队列
    15.3基于树的有界优先级队列
    15.4基于堆的无界优先级队列
    15.4.1顺序堆
    15.4.2并发堆
    15.5基于跳表的无界优先级队列
    15.6本章注释
    15.7习题
    第16章异步执行、调度和工作分配
    16.1引言
    16.2并行分析
    16.3多处理器的实际调度
    16.4工作分配
    16.4.1工作窃取
    16.4.2屈从和多道程序设计
    16.5工作窃取双端队列
    16.5.1有界工作窃取双端队列
    16.5.2无界工作窃取双端队列
    16.5.3工作平衡
    16.6本章注释
    16.7习题
    第17章障碍
    17.1引言
    17.2障碍实现
    17.3语义换向障碍
    17.4组合树障碍
    17.5静态树障碍
    17.6终止检测障碍
    17.7本章注释
    17.8习题
    第18章事务内存
    18.1引言
    18.1.1关于锁的问题
    18.1.2关于compareAndSet()的问题
    18.1.3关于复合性的问题
    18.1.4我们能做什么
    18.2事务和原子性
    18.3软事务内存
    18.3.1事务和事务线程
    18.3.2僵尸事务和一致性
    18.3.3原子对象
    18.3.4如何演进
    18.3.5争用管理器
    18.3.6原子对象的实现
    18.3.7无干扰原子对象
    18.3.8基于锁的原子对象
    18.4硬事务内存
    18.4.1缓存一致性
    18.4.2事务缓存一致性
    18.4.3改进
    18.5本章注释
    18.6习题

    第三部分附录
    附录A软件基础
    附录B硬件基础
    参考文献
    索引
  • 内容简介:
      《计算机科学丛书:多处理器编程的艺术(修订版)》从原理和实践两个方面全面阐述了多处理器编程的指导原则,包含编制高效的多处理器程序所必备的算法技术。此外,附录提供了采用其他程序设计语言包(如C#、C及C++的PThreads库)进行编程的相关背景知识以及硬件基础知识。
      《计算机科学丛书:多处理器编程的艺术(修订版)》适合作为高等院校计算机及相关专业高年级本科生及研究生的教材,同时也可作为相关技术人员的参考书。
  • 作者简介:
    Maurice Herlihy 哈佛大学的数学学士和麻省理工学院的计算机科学博士,目前为美国布朗大学计算机科学系教授,曾工作于卡内基-梅隆大学和DEC剑桥实验室。他是美国ACM会士,2003年分布式计算领域Dijkstra奖获得者。
    Nir Shavit 以色列希伯来大学的计算机科学博士,目前为麻省理工学院电子工程和计算机科学系教授、以色列特拉维夫大学计算机科学系教授。1999~2011年期间,他担任Sun实验室的技术人员。
    两位作者在2004年获得了理论计算机领域最高奖——哥德尔奖(G?del Prize),2012年他们共享了分布式计算领域的Edsger W. Dijkstra奖,40多年来他们一起合作,从事并行和分布式计算教学和研发工作。
  • 目录:
    出版者的话
    译者序
    前言
    教学建议

    第1章引言
    1.1共享对象和同步
    1.2生活实例
    1.2.1互斥特性
    1.2.2道德
    1.3生产者-消费者问题
    1.4读者-写者问题
    1.5并行的困境
    1.6并行程序设计
    1.7本章注释
    1.8习题

    第一部分原理
    第2章互斥
    2.1时间
    2.2临界区
    2.3双线程解决方案
    2.3.1LockOne类
    2.3.2LockTwo类
    2.3.3Peterson锁
    2.4过滤锁
    2.5公平性
    2.6Bakery算法
    2.7有界时间戳
    2.8存储单元数量的下界
    2.9本章注释
    2.10习题
    第3章并发对象
    3.1并发性与正确性
    3.2顺序对象
    3.3静态一致性
    3.4顺序一致性
    3.5可线性化性
    3.5.1可线性化点
    3.5.2评析
    3.6形式化定义
    3.6.1可线性化性
    3.6.2可线性化性的复合性
    3.6.3非阻塞特性
    3.7演进条件
    3.8Java存储器模型
    3.8.1锁和同步块
    3.8.2volatile域
    3.8.3final域
    3.9评析
    3.10本章注释
    3.11习题
    第4章共享存储器基础
    4.1寄存器空间
    4.2寄存器构造
    4.2.1MRSW安全寄存器
    4.2.2MRSW规则布尔寄存器
    4.2.3M-值MRSW规则寄存器
    4.2.4SRSW原子寄存器
    4.2.5MRSW原子寄存器
    4.2.6MRMW原子寄存器
    4.3原子快照
    4.3.1无障碍快照
    4.3.2无等待快照
    4.3.3正确性证明
    4.4本章注释
    4.5习题
    第5章同步原子操作的相对能力
    5.1一致数
    5.2原子寄存器
    5.3一致性协议
    5.4FIFO队列
    5.5多重赋值对象
    5.6读-改-写操作
    5.7Common2RMW操作
    5.8compareAndSet()操作
    5.9本章注释
    5.10题
    第6章一致性的通用性
    6.1引言
    6.2通用性
    6.3一种通用的无锁构造
    6.4一种通用的无等待构造
    6.5本章注释
    6.6习题

    第二部分实践
    第7章自旋锁与争用
    7.1实际问题
    7.2测试-设置锁
    7.3再论基于TAS的自旋锁
    7.4指数后退
    7.5队列锁
    7.5.1基于数组的锁
    7.5.2CLH队列锁
    7.5.3MCS队列锁
    7.6时限队列锁
    7.7复合锁
    7.8层次锁
    7.8.1层次后退锁
    7.8.2层次CLH队列锁
    7.9由一个锁管理所有的锁
    7.10本章注释
    7.11习题
    第8章管程和阻塞同步
    8.1引言
    8.2管程锁和条件
    8.2.1条件
    8.2.2唤醒丢失问题
    8.3读者-写者锁
    8.3.1简单的读者-写者锁
    8.3.2公平的读者-写者锁
    8.4我们的可重入锁
    8.5信号量
    8.6本章注释
    8.7习题
    第9章链表:锁的作用
    9.1引言
    9.2基于链表的集合
    9.3并发推理
    9.4粗粒度同步
    9.5细粒度同步
    9.6乐观同步
    9.7惰性同步
    9.8非阻塞同步
    9.9讨论
    9.10本章注释
    9.11习题
    第10章并行队列和ABA问题
    10.1引言
    10.2队列
    10.3部分有界队列
    10.4完全无界队列
    10.5无锁的无界队列
    10.6内存回收和ABA问题
    10.7双重数据结构
    10.8本章注释
    10.9习题
    第11章并发栈和消除
    11.1引言
    11.2无锁的无界栈
    11.3消除
    11.4后退消除栈
    11.4.1无锁交换机
    11.4.2消除数组
    11.5本章注释
    11.6习题
    第12章计数、排序和分布式协作
    12.1引言
    12.2共享计数
    12.3软件组合
    12.3.1概述
    12.3.2一个扩展实例
    12.3.3性能和健壮性
    12.4静态一致池和计数器
    12.5计数网
    12.5.1可计数网
    12.5.2双调计数网
    12.5.3性能和流水线
    12.6衍射树
    12.7并行排序
    12.8排序网
    12.9样本排序
    12.10分布式协作
    12.11本章注释
    12.12习题
    第13章并发哈希和固有并行
    13.1引言
    13.2封闭地址哈希集
    13.2.1粗粒度哈希集
    13.2.2空间分带哈希集
    13.2.3细粒度哈希集
    13.3无锁哈希集
    13.3.1递归有序划分
    13.3.2BucketList类
    13.3.3LockFreeHashSet类
    13.4开放地址哈希集
    13.4.1Cuckoo哈希
    13.4.2并发Cuckoo哈希
    13.4.3空间分带的并发Cuckoo哈希
    13.4.4细粒度的并发Cuckoo哈希集
    13.5本章注释
    13.6习题
    第14章跳表和平衡查找
    14.1引言
    14.2顺序跳表
    14.3基于锁的并发跳表
    14.3.1简介
    14.3.2算法
    14.4无锁并发跳表
    14.4.1简介
    14.4.2算法细节
    14.5并发跳表
    14.6本章注释
    14.7习题
    第15章优先级队列
    15.1引言
    15.2基于数组的有界优先级队列
    15.3基于树的有界优先级队列
    15.4基于堆的无界优先级队列
    15.4.1顺序堆
    15.4.2并发堆
    15.5基于跳表的无界优先级队列
    15.6本章注释
    15.7习题
    第16章异步执行、调度和工作分配
    16.1引言
    16.2并行分析
    16.3多处理器的实际调度
    16.4工作分配
    16.4.1工作窃取
    16.4.2屈从和多道程序设计
    16.5工作窃取双端队列
    16.5.1有界工作窃取双端队列
    16.5.2无界工作窃取双端队列
    16.5.3工作平衡
    16.6本章注释
    16.7习题
    第17章障碍
    17.1引言
    17.2障碍实现
    17.3语义换向障碍
    17.4组合树障碍
    17.5静态树障碍
    17.6终止检测障碍
    17.7本章注释
    17.8习题
    第18章事务内存
    18.1引言
    18.1.1关于锁的问题
    18.1.2关于compareAndSet()的问题
    18.1.3关于复合性的问题
    18.1.4我们能做什么
    18.2事务和原子性
    18.3软事务内存
    18.3.1事务和事务线程
    18.3.2僵尸事务和一致性
    18.3.3原子对象
    18.3.4如何演进
    18.3.5争用管理器
    18.3.6原子对象的实现
    18.3.7无干扰原子对象
    18.3.8基于锁的原子对象
    18.4硬事务内存
    18.4.1缓存一致性
    18.4.2事务缓存一致性
    18.4.3改进
    18.5本章注释
    18.6习题

    第三部分附录
    附录A软件基础
    附录B硬件基础
    参考文献
    索引
查看详情
系列丛书 / 更多
多处理器编程的艺术:中文版 修订版
Java编程思想(第4版)
[美]Bruce Eckel 著;陈昊鹏 译
多处理器编程的艺术:中文版 修订版
算法导论(原书第3版)
[美]Thomas、[美]Charles、[美]Ronald、[美]Clifford Stein 著;殷建平、徐云、王刚 译
多处理器编程的艺术:中文版 修订版
数据挖掘:概念与技术(原书第3版)
[美]Jiawei、[美]Micheling、[美]Jian Pei 著;范明、孟小峰 译
多处理器编程的艺术:中文版 修订版
C程序设计语言(第二版)
[美]Brian(布莱恩·克尼汉)、[美]Dennis M.Ritchie(丹尼斯·里奇) 著;徐宝文、李志 译
多处理器编程的艺术:中文版 修订版
数据结构与算法分析:Java语言描述
[美]马克·艾伦·维斯 著;陈越 译
多处理器编程的艺术:中文版 修订版
深入理解计算机系统(原书第3版)
[美]兰德尔 E.布莱恩特(Randal E.·Bryant) 著;龚奕利、贺莲 译
多处理器编程的艺术:中文版 修订版
编译原理:原理、技术与工具
[美]阿霍 著;赵建华 译
多处理器编程的艺术:中文版 修订版
计算机科学导论:原书第3版
[美]Behrouz Forouzan 著;刘艺 译
多处理器编程的艺术:中文版 修订版
计算机组成与设计(原书第5版):硬件/软件接口
[美]戴维A.帕特森、[美]约翰 L. 亨尼斯 著;王党辉、康继昌、安建峰 译
多处理器编程的艺术:中文版 修订版
系统分析与设计方法
[美]惠腾(Whitten J.L.) 著;肖刚、孙慧 译
多处理器编程的艺术:中文版 修订版
IT项目管理(原书第7版)
[美]凯西·施瓦尔贝(Kathy Schwalbe) 著;邢春晓、黄梦醒、张勇 译
多处理器编程的艺术:中文版 修订版
TCP/IP详解 卷2:实现
[美]赖特(Wright) 著
相关图书 / 更多
多处理器编程的艺术:中文版 修订版
多处理器编程的艺术:英文版·修订版
[美]Maurice、[美]Nir Shavit 著
多处理器编程的艺术:中文版 修订版
多处理器编程的艺术
[美]荷里希、[以]谢菲特 著;金海、胡侃 译
多处理器编程的艺术:中文版 修订版
多处理机系统可靠性分析(英文版)
周书明、董清风 编
多处理器编程的艺术:中文版 修订版
多处理器编程的艺术:The Art of Multiprocessor Programming
[美]赫利然、[以]谢菲特 著
多处理器编程的艺术:中文版 修订版
多处理器片上系统的硬件设计与工具集成
[德]迈克尔·哈布纳(MichaelHübner)、于尔根·贝克尔(Jürgen Becker) 著;姚舜才、连晓峰 译
您可能感兴趣 / 更多
多处理器编程的艺术:中文版 修订版
Spring 5攻略
[美]马腾·代伊纳姆(Marten Deinum)丹尼尔·鲁比奥(Daniel
多处理器编程的艺术:中文版 修订版
凭什么投你:成为独角兽的精明创业法
[美]洛基·理查德·阿诺德(Rocky Richard
多处理器编程的艺术:中文版 修订版
数据大泄漏:隐私保护危机与数据安全机遇
[美]雪莉·大卫杜夫(Sherri Davidoff)
多处理器编程的艺术:中文版 修订版
万千教育·存在之谜:形而上学导论
[美]西奥多·赛德(Theodore Sider) 著;焦卫华 译;[美]厄尔·康尼(Earl Conee)
多处理器编程的艺术:中文版 修订版
成为有影响力的产品经理:有效进行产品管理的实用工具包
[美]Ken Sandy(肯·桑迪)
多处理器编程的艺术:中文版 修订版
小屁孩日记(13)中文版
[美]杰夫·金尼∕著 朱力安∕ 译
多处理器编程的艺术:中文版 修订版
融于教学的形成性评价(原著第2版)
[美]迪伦·威廉
多处理器编程的艺术:中文版 修订版
夜行动物侦探团(套装全3册)
[美]特蕾西·赫克特 著
多处理器编程的艺术:中文版 修订版
你想对别人说啥,凯迪?——跟吴凯迪一起学写信
[美]弗兰·马努什金 著;生安锋 译;[美]塔米·莱昂绘
多处理器编程的艺术:中文版 修订版
你心里在想啥,凯迪?——跟吴凯迪一起写日记
[美]弗兰·马努什金 著;生安锋 译;[美]塔米·莱昂绘
多处理器编程的艺术:中文版 修订版
你觉得如何,凯迪?——跟吴凯迪一起写观点文章
[美]弗兰·马努什金 著;生安锋 译;[美]塔米·莱昂绘
多处理器编程的艺术:中文版 修订版
多处理器编程的艺术:英文版·修订版
[美]Maurice、[美]Nir Shavit 著