多处理器编程的艺术

多处理器编程的艺术
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者: [美] , [以] , ,
2009-08
版次: 1
ISBN: 9787111268055
定价: 59.00
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 356页
正文语种: 简体中文
原版书名: The Art of Multiprocessor Programming
  •   《多处理器编程的艺术》从原理和实践两个方面全面阐述了多处理器编程的指导原则,包含编制高效的多处理器程序所必备的算法技术。此外,附录提供了采用其他程序设计语言包(如C#、C及C++的PThreads库)进行编程的相关背景知识以及硬件基础知识。《多处理器编程的艺术》适合作为高等院校计算机及相关专业高年级本科生及研究生的教材,同时也可作为相关技术人员的参考书。
      目前,多处理器的编程技术受到广泛关注,多处理器编程要求理解新型计算原理、算法及编程工具;至今很少有人能够精通这门编程艺术。
      现今,大多数工程技术人员都是通过艰辛的反复实践、求助有经验的朋友来学习多处理器编程技巧。这本最新的权威著作致力于改变这种状况,作者全面阐述了多处理器编程的指导原则,介绍了编制高效的多处理器程序所必备的算法技术。《多处理器编程的艺术》所涵盖的多处理器编程关键问题将使在校学生以及相关技术人员受益匪浅。   MauriceHerlihy,哈佛大学的数学学士和麻省理工学院的计算机科学博士,目前为美国布朗大学计算机科学系教授,曾工作于卡内基-梅隆大学和DEC剑桥实验室。他是美国ACM会士,2003年分布式计算Dijkstra奖获得者。 出版者的话
    译者序
    前言
    第1章引言
    1.1共享对象和同步
    1.2生活实例
    1.3生产者—消费者问题
    1.4读者—写者问题
    1.5并行的困境
    1.6并行程序设计
    1.7本章注释
    1.8习题
    第一部分原理
    第2章互斥
    2.1时间
    2.21临界区
    2.3双线程解决方案
    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.6形式化定义
    3.7演进条件
    3.8Java存储器模型
    3.9评析
    3.10本章注释
    3.11习题
    第4章共享存储器基础
    4.1寄存器空间
    4.2寄存器构造
    4.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.6时限队列锁
    7.7复合锁
    7.8层次锁
    7.9由一个锁管理所有的锁
    7.10本章注释
    7.11习题
    笫8章管程和阻塞同步
    8.1引言
    8.2管程锁和条件
    8.3读者—写者锁
    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.5本章注释
    11.6习题
    第12章计数、排序和分布式协作
    12.1引言
    12.2共享计数
    12.3软件组合
    12.4静态一致池和计数器
    12.5计数网
    12.6衍射树
    12.7并行排序
    12.8排序网
    12.9样本排序
    12.10分布式协作
    12.11本章注释
    12.12习题
    第13章并发哈希和固有并行
    13.1引言
    13.2封闭地址哈希集
    13.3无锁哈希集
    13.4开放地址哈希集
    13.5本章注释
    13.6习题
    第14章跳表和平衡查找
    14.1引言
    14.2顺序跳表
    14.3基于锁的并发跳表
    14.4无锁并发跳表
    14.5并发跳表
    14.6本章注释
    14.7习题
    第15章优先级队列
    15.1引言
    15.2基于数组的有界优先级队列
    15.3基于树的有界优先级队列
    15.4基于堆的无界优先级队列
    15.5基于跳表的无界优先级队列
    15.6本章注释
    15.7习题
    笫16章异步执行、调度和工作分配
    16.1引言
    16.2并行分析
    16.3多处理器的实际调度
    16.4工作分配
    16.5工作窃取双端队列
    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.2事务和原子性
    18.3软事务内存
    18.4硬事务内存
    18.5本章注释
    18.6习题

    第三部分附录
    附录A软件基础
    附录B硬件基础
    参考文献
  • 内容简介:
      《多处理器编程的艺术》从原理和实践两个方面全面阐述了多处理器编程的指导原则,包含编制高效的多处理器程序所必备的算法技术。此外,附录提供了采用其他程序设计语言包(如C#、C及C++的PThreads库)进行编程的相关背景知识以及硬件基础知识。《多处理器编程的艺术》适合作为高等院校计算机及相关专业高年级本科生及研究生的教材,同时也可作为相关技术人员的参考书。
      目前,多处理器的编程技术受到广泛关注,多处理器编程要求理解新型计算原理、算法及编程工具;至今很少有人能够精通这门编程艺术。
      现今,大多数工程技术人员都是通过艰辛的反复实践、求助有经验的朋友来学习多处理器编程技巧。这本最新的权威著作致力于改变这种状况,作者全面阐述了多处理器编程的指导原则,介绍了编制高效的多处理器程序所必备的算法技术。《多处理器编程的艺术》所涵盖的多处理器编程关键问题将使在校学生以及相关技术人员受益匪浅。
  • 作者简介:
      MauriceHerlihy,哈佛大学的数学学士和麻省理工学院的计算机科学博士,目前为美国布朗大学计算机科学系教授,曾工作于卡内基-梅隆大学和DEC剑桥实验室。他是美国ACM会士,2003年分布式计算Dijkstra奖获得者。
  • 目录:
    出版者的话
    译者序
    前言
    第1章引言
    1.1共享对象和同步
    1.2生活实例
    1.3生产者—消费者问题
    1.4读者—写者问题
    1.5并行的困境
    1.6并行程序设计
    1.7本章注释
    1.8习题
    第一部分原理
    第2章互斥
    2.1时间
    2.21临界区
    2.3双线程解决方案
    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.6形式化定义
    3.7演进条件
    3.8Java存储器模型
    3.9评析
    3.10本章注释
    3.11习题
    第4章共享存储器基础
    4.1寄存器空间
    4.2寄存器构造
    4.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.6时限队列锁
    7.7复合锁
    7.8层次锁
    7.9由一个锁管理所有的锁
    7.10本章注释
    7.11习题
    笫8章管程和阻塞同步
    8.1引言
    8.2管程锁和条件
    8.3读者—写者锁
    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.5本章注释
    11.6习题
    第12章计数、排序和分布式协作
    12.1引言
    12.2共享计数
    12.3软件组合
    12.4静态一致池和计数器
    12.5计数网
    12.6衍射树
    12.7并行排序
    12.8排序网
    12.9样本排序
    12.10分布式协作
    12.11本章注释
    12.12习题
    第13章并发哈希和固有并行
    13.1引言
    13.2封闭地址哈希集
    13.3无锁哈希集
    13.4开放地址哈希集
    13.5本章注释
    13.6习题
    第14章跳表和平衡查找
    14.1引言
    14.2顺序跳表
    14.3基于锁的并发跳表
    14.4无锁并发跳表
    14.5并发跳表
    14.6本章注释
    14.7习题
    第15章优先级队列
    15.1引言
    15.2基于数组的有界优先级队列
    15.3基于树的有界优先级队列
    15.4基于堆的无界优先级队列
    15.5基于跳表的无界优先级队列
    15.6本章注释
    15.7习题
    笫16章异步执行、调度和工作分配
    16.1引言
    16.2并行分析
    16.3多处理器的实际调度
    16.4工作分配
    16.5工作窃取双端队列
    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.2事务和原子性
    18.3软事务内存
    18.4硬事务内存
    18.5本章注释
    18.6习题

    第三部分附录
    附录A软件基础
    附录B硬件基础
    参考文献
查看详情
系列丛书 / 更多
多处理器编程的艺术
Java编程思想(第4版)
[美]Bruce Eckel 著;陈昊鹏 译
多处理器编程的艺术
数据挖掘:概念与技术(原书第3版)
[美]Jiawei、[美]Micheling、[美]Jian Pei 著;范明、孟小峰 译
多处理器编程的艺术
算法导论(原书第3版)
[美]Thomas、[美]Charles、[美]Ronald、[美]Clifford Stein 著;殷建平、徐云、王刚 译
多处理器编程的艺术
C程序设计语言(第二版)
[美]Brian(布莱恩·克尼汉)、[美]Dennis M.Ritchie(丹尼斯·里奇) 著;徐宝文、李志 译
多处理器编程的艺术
数据结构与算法分析:Java语言描述
[美]马克·艾伦·维斯 著;陈越 译
多处理器编程的艺术
计算机组成与设计(原书第5版):硬件/软件接口
[美]戴维A.帕特森、[美]约翰 L. 亨尼斯 著;王党辉、康继昌、安建峰 译
多处理器编程的艺术
深入理解计算机系统(原书第3版)
[美]兰德尔 E.布莱恩特(Randal E.·Bryant) 著;龚奕利、贺莲 译
多处理器编程的艺术
Java语言程序设计(基础篇 原书第10版)
[美]梁勇(Y.Daniel Liang) 著;Y.DanielLiang 编;戴开宇 译
多处理器编程的艺术
计算机科学导论:原书第3版
[美]Behrouz Forouzan 著;刘艺 译
多处理器编程的艺术
编译原理:原理、技术与工具
[美]阿霍 著;赵建华 译
多处理器编程的艺术
数据结构与算法分析:C语言描述
[美]MarkAllenWeiss 著;冯舜玺 译
多处理器编程的艺术
计算机科学丛书:计算机文化(原书第15版)
[美]June Jamrich、[美]Dan Oja 著;吕云翔、傅尔也 译
相关图书 / 更多
多处理器编程的艺术
多处理器编程的艺术:英文版·修订版
[美]Maurice、[美]Nir Shavit 著
多处理器编程的艺术
多处理器编程的艺术:中文版 修订版
[美]Maurice、[美]Nir Shavit 著
多处理器编程的艺术
多处理机系统可靠性分析(英文版)
周书明、董清风 编
多处理器编程的艺术
多处理器编程的艺术:The Art of Multiprocessor Programming
[美]赫利然、[以]谢菲特 著
多处理器编程的艺术
多处理器片上系统的硬件设计与工具集成
[德]迈克尔·哈布纳(MichaelHübner)、于尔根·贝克尔(Jürgen Becker) 著;姚舜才、连晓峰 译
您可能感兴趣 / 更多
多处理器编程的艺术
油画自学大师课:印象派风景油画技法
[美]辛迪·萨拉斯基 著;[美]乔治·加洛、周蕾 译
多处理器编程的艺术
给孩子的艺术简史
[美]希瑟·亚历山大 著;刘思成 译;[美]梅雷迪斯·汉密尔顿 绘;未读 出品
多处理器编程的艺术
情报搜集:技术、方法与思维
[美]罗伯特·克拉克(Robert M. Clark)
多处理器编程的艺术
我的世界 伍德斯沃德历险记(6册套装)
[美]尼克·艾利奥普洛斯 著;童趣出版有限公司 编译
多处理器编程的艺术
国家地理可爱的动物(圆溜溜篇)
[美]珍妮弗·希曼斯基 著;吴婧 译
多处理器编程的艺术
无星之海
[美]艾琳·摩根斯顿(Erin Morgenstern) 著;王晨颖 译
多处理器编程的艺术
欧美经典儿歌·奇幻音乐剧(全九册)
[美]帕姆·康恩·比尔(Pamela Conn Beall) 编著;[美]苏珊·哈根·尼普(Susan Hagen Nipp)
多处理器编程的艺术
颅骨、脊柱和中枢神经系统的先天性异常/北美小动物临床医学
[美]柯蒂斯·W.杜威(Gurtis W.Dewey) 著;刘钰、王晖 译
多处理器编程的艺术
神奇树屋(14音乐家奇妙夜进阶版)/故事系列
[美]玛丽·波·奥斯本 著
多处理器编程的艺术
神奇树屋(12南极洲大冒险进阶版)/故事系列
[美]玛丽·波·奥斯本 著
多处理器编程的艺术
神奇树屋(10达芬奇的狂想进阶版)/故事系列
[美]玛丽·波·奥斯本 著
多处理器编程的艺术
航天飞行医学原理与实践
[美]迈克尔 著