Solaris应用程序设计[赠品]
基本信息
- 原书名: Solaris Application Programming
- 原出版社: Pearson Education
- 作者: (英)Darryl Gove [作译者介绍]
- 译者: 张伟 刘子锐 董峻峰
- 丛书名: Sun公司核心技术丛书
- 出版社:机械工业出版社
- ISBN:9787111238782
- 上架时间:2009-12-11
- 出版日期:2008 年5月
- 开本:16开
- 页码:319
- 版次:1-1
- 所属分类:
赠品
编辑推荐
SUN中国技术社区推荐技术用书!
Solaris平台编程的必备参考书!
内容简介回到顶部↑
本书介绍如何在solaris操作系统上获得程序的最佳运行性能。全书共分五部分13章,包括常规处理器、sparc、x64处理器、信息工具、编译器、浮点数优化、库与链接、性能分析工具、校正与调试、性能计数器度量、源代码优化、多核多进程多线程以及性能分析。实用性强是本书的最大特点,全书覆盖了目前所有在solaris上可以使用的开发工具,并介绍了它们的用法,而且书中还提供了大量实例工具的用法并解释其输出数据的含义。
本书内容丰富,层次分明,不仅适合软件开发新手阅读,也可供有一定经验的开发者参考。
本书内容丰富,层次分明,不仅适合软件开发新手阅读,也可供有一定经验的开发者参考。
作译者回到顶部↑
本书提供作译者介绍
Darryl Gore是Sun Microsystems公司编译器性能设计小组的高级工程师,致力于在当前和未来的UllraSPARC系统上分析与优化应用程序性能。他不但经常为SDN(http://developerssun corn)供稿,而且维护着一个以开发为主题的博客(http://blogs sun com/d)。在加入Sun公司之前,Darryl曾经为几家研究软件架构和开发的英国组织工作并于英国南安普敦大学获得运筹学硕士和博士学位。
.. << 查看详细
.. << 查看详细
目录回到顶部↑
译者序
前言
第一部分 处理器综述
第1章 常规的处理器
1.1 本章目标
1.2 处理器的组成
1.3 时钟速率
1.4 乱序执行处理器
1.5 芯片多线程
1.6 执行管道
1.6.1 指令时延
1.6.2 装入/存储管道
1.6.3 整型操作管道
1.6.4 分支管道
1.6.5 浮点管道
1.7 高速缓存
1.8 系统交互
1.8.1 带宽与时延
1.8.2 系统总线
1.9 虚拟内存
前言
第一部分 处理器综述
第1章 常规的处理器
1.1 本章目标
1.2 处理器的组成
1.3 时钟速率
1.4 乱序执行处理器
1.5 芯片多线程
1.6 执行管道
1.6.1 指令时延
1.6.2 装入/存储管道
1.6.3 整型操作管道
1.6.4 分支管道
1.6.5 浮点管道
1.7 高速缓存
1.8 系统交互
1.8.1 带宽与时延
1.8.2 系统总线
1.9 虚拟内存
译者序回到顶部↑
由Prentice Hall出版的《SolarisTM应用程序设计》(作者Darryl Gove)是Solaris系列丛书中的一本。
本书的多语言翻译工作正在进行中,包括荷兰语、法语、德语、印度语、日语以及韩语等。当然,本书的中文版也即将与广大读者见面。.
此书之所以受到如此的追捧,主要原因是Solaris操作系统正在被越来越多的用户所接受。随着Solaris操作系统的开源,Open Solaris依靠其优异的性能和稳定的特性在全球迅速升温,官方网站的下载量节节攀升,各种有关Open Solaris的社区如雨后春笋般涌现出来,Solaris操作系统越来越受到人们的青睐。用户在享受Solaris操作系统带来的种种好处的同时,还热衷于为Solaris的发展贡献自己的力量:积极参与社区活动,为扩展Solaris的功能贡献源代码。
但问题也随之而来:如何在Solaris上编写出性能出众而且稳定的应用程序呢?本书的推出恰逢其时地解决了这个棘手问题。引用一位读者的话,“这本书对Solaris平台上的编程技术做了详细的总结和分类,并告诉读者如何使用这些技术。我非常喜欢这本书并把它作为最新的Solaris参考手册,如果你对应用程序性能十分挑剔,是性能至上的狂热份子,那么这将是一本必备图书。”..
由此可见,本书的适用读者对象十分广泛。无论是对应用程序性能分析一无所知的初学者,还是性能分析的专家,本书都同样具有指导和参考意义。即使在非Solaris平台上优化应用程序性能,本书的许多概念和方法仍然可以被借鉴和使用。
本书的翻译团队成员全部来自Sun中国工程研究院,包括:董峻峰、段少婷、焦梦葳、胡惠文、李志宏、刘子锐、吕华锋、孙勇、王秀燕、王宇博、许闽、薛东、薛晓舟、颜强、姚延栋、于继军、张伟、张扬眉、张羽和郑艺丁。为了使本书以最快的速度呈现在广大中文读者面前,翻译团队的每位成员都付出了艰苦的劳动。借此机会也要特别感谢翻译项目的发起方Sun中国技术社区和发起人蒋清野先生。
由于本书的翻译进度要求高,涉及技术面广,翻译难度较大;加之译者水平有限,书中难免有疏漏或错误,欢迎广大读者批评指正。...
张伟
2008年4月
本书的多语言翻译工作正在进行中,包括荷兰语、法语、德语、印度语、日语以及韩语等。当然,本书的中文版也即将与广大读者见面。.
此书之所以受到如此的追捧,主要原因是Solaris操作系统正在被越来越多的用户所接受。随着Solaris操作系统的开源,Open Solaris依靠其优异的性能和稳定的特性在全球迅速升温,官方网站的下载量节节攀升,各种有关Open Solaris的社区如雨后春笋般涌现出来,Solaris操作系统越来越受到人们的青睐。用户在享受Solaris操作系统带来的种种好处的同时,还热衷于为Solaris的发展贡献自己的力量:积极参与社区活动,为扩展Solaris的功能贡献源代码。
但问题也随之而来:如何在Solaris上编写出性能出众而且稳定的应用程序呢?本书的推出恰逢其时地解决了这个棘手问题。引用一位读者的话,“这本书对Solaris平台上的编程技术做了详细的总结和分类,并告诉读者如何使用这些技术。我非常喜欢这本书并把它作为最新的Solaris参考手册,如果你对应用程序性能十分挑剔,是性能至上的狂热份子,那么这将是一本必备图书。”..
由此可见,本书的适用读者对象十分广泛。无论是对应用程序性能分析一无所知的初学者,还是性能分析的专家,本书都同样具有指导和参考意义。即使在非Solaris平台上优化应用程序性能,本书的许多概念和方法仍然可以被借鉴和使用。
本书的翻译团队成员全部来自Sun中国工程研究院,包括:董峻峰、段少婷、焦梦葳、胡惠文、李志宏、刘子锐、吕华锋、孙勇、王秀燕、王宇博、许闽、薛东、薛晓舟、颜强、姚延栋、于继军、张伟、张扬眉、张羽和郑艺丁。为了使本书以最快的速度呈现在广大中文读者面前,翻译团队的每位成员都付出了艰苦的劳动。借此机会也要特别感谢翻译项目的发起方Sun中国技术社区和发起人蒋清野先生。
由于本书的翻译进度要求高,涉及技术面广,翻译难度较大;加之译者水平有限,书中难免有疏漏或错误,欢迎广大读者批评指正。...
张伟
2008年4月
前言回到顶部↑
关于本书
本书旨在介绍如何在Solaris操作系统上获得程序的最佳运行性能。本书适用的读者是那些对Solaris上的可用工具感兴趣的开发者和软件架构师,以及那些关心如何充分利用系统中每一种性能的人员。.
本书不仅适合性能分析和优化的新手阅读,也适合在这个领域有一定经验的开发者阅读。为了满足不同层次读者的需求,本书在介绍各种工具并进行深入讨论之前,首先综述了处理器的基本概念。
与其他的同类书籍相比,本书是一本实用性很强的入门书籍。人们在开发过程中经常会遇到两类问题。第一类问题是应该使用什么工具。针对这一问题,本书覆盖了目前所有在Solaris上可用的开发工具,并且介绍了它们的常见用法。第二类问题是如何理解这些工具的输出。书中提供了大量的例子,来演示工具的用法并解释其输出数据的含义。
对于编译器可以自动执行的优化技术,本书将避免解释手动启用它的方法。本书着重关注于如何利用适当的工具来定位问题,以及如何利用最简单的方法来解决问题。有时候,解决的方法是使用不同的编译选项优化应用程序,从而消除导致问题产生的热点代码。而有时候,解决的方法是修改编译器无法执行优化的代码;我会详细地解释编译器无法优化这些代码的原因。
目标和前提
本书要实现的目标如下:
全面地介绍影响处理器性能的部件。
介绍用于性能分析和性能提高的工具,包括操作系统所提供的工具和编译器所提供的工具。
介绍编译器以及编译器支持的提高性能的优化技术。
讨论SPARC和x64处理器家族的特征,并示范如何利用这些特征来提高应用程序的性能。
介绍利用多处理器或多线程来提高性能的可能性,以及有效地利用计算机资源的可能性。
本书假定读者可以熟练地使用C编程语言。书中的大多数例子都采用了这种语言。本书还假定读者了解一些处理器的基本原理和指令集的相关知识。本书不会详细地阐述处理器的内部细节,但是会介绍一些现代处理器的特征,这些特征可能影响应用程序的性能。
本书假定读者有Sun Studio编译器和相关的工具。这些工具都是可以免费下载的。本书使用Sun Studio 12编译大多数例子。新版本的编译器将产生相似的结果。编译器通常安装在/opt/SUNWspro/bin/目录下,并且假定该路径已经设置在读者的环境变量中。
本书是基于Solaris 10的。在此之前的操作系统支持书中涉及的大多数工具。如果某个工具需要更新版本的Solaris的支持,那么我将在书中给出说明。
本书章节综述
第一部分处理器综述..
第1章:常规的处理器
第2章:SPARC家族
第3章:x64处理器家族
本书旨在介绍如何在Solaris操作系统上获得程序的最佳运行性能。本书适用的读者是那些对Solaris上的可用工具感兴趣的开发者和软件架构师,以及那些关心如何充分利用系统中每一种性能的人员。.
本书不仅适合性能分析和优化的新手阅读,也适合在这个领域有一定经验的开发者阅读。为了满足不同层次读者的需求,本书在介绍各种工具并进行深入讨论之前,首先综述了处理器的基本概念。
与其他的同类书籍相比,本书是一本实用性很强的入门书籍。人们在开发过程中经常会遇到两类问题。第一类问题是应该使用什么工具。针对这一问题,本书覆盖了目前所有在Solaris上可用的开发工具,并且介绍了它们的常见用法。第二类问题是如何理解这些工具的输出。书中提供了大量的例子,来演示工具的用法并解释其输出数据的含义。
对于编译器可以自动执行的优化技术,本书将避免解释手动启用它的方法。本书着重关注于如何利用适当的工具来定位问题,以及如何利用最简单的方法来解决问题。有时候,解决的方法是使用不同的编译选项优化应用程序,从而消除导致问题产生的热点代码。而有时候,解决的方法是修改编译器无法执行优化的代码;我会详细地解释编译器无法优化这些代码的原因。
目标和前提
本书要实现的目标如下:
全面地介绍影响处理器性能的部件。
介绍用于性能分析和性能提高的工具,包括操作系统所提供的工具和编译器所提供的工具。
介绍编译器以及编译器支持的提高性能的优化技术。
讨论SPARC和x64处理器家族的特征,并示范如何利用这些特征来提高应用程序的性能。
介绍利用多处理器或多线程来提高性能的可能性,以及有效地利用计算机资源的可能性。
本书假定读者可以熟练地使用C编程语言。书中的大多数例子都采用了这种语言。本书还假定读者了解一些处理器的基本原理和指令集的相关知识。本书不会详细地阐述处理器的内部细节,但是会介绍一些现代处理器的特征,这些特征可能影响应用程序的性能。
本书假定读者有Sun Studio编译器和相关的工具。这些工具都是可以免费下载的。本书使用Sun Studio 12编译大多数例子。新版本的编译器将产生相似的结果。编译器通常安装在/opt/SUNWspro/bin/目录下,并且假定该路径已经设置在读者的环境变量中。
本书是基于Solaris 10的。在此之前的操作系统支持书中涉及的大多数工具。如果某个工具需要更新版本的Solaris的支持,那么我将在书中给出说明。
本书章节综述
第一部分处理器综述..
第1章:常规的处理器
第2章:SPARC家族
第3章:x64处理器家族
书摘回到顶部↑
第一部分处理器综述
第1章常规的处理器
1.1 本章目标
简单来说,处理器的功能就是从内存中取出指令,并执行该指令,如果需要的话,还将从内存取出数据,或将结果送人内存。但是,这样的描述遗漏了决定应用程序性能的许多重要细节。本章描述的是“常规的”处理器;也就是说,本章所描述的是,通常情况下处理器是如何工作的以及它由哪些部件构成。阅读完本章,读者将会了解有关处理器的一些术语,并且会理解一些应用在处理器设计方面的方法。
1.2 处理器的组成
每一台计算机的“心脏”是一个或多个中央处理器(CPU)。图1—1是UltraSPARC T1 CPU的照片。CPU是计算机中执行计算的部件,组成计算机的其他部件包括内存芯片、硬盘、电源、风扇(用来冷却计算机),以及其他使得计算机可以与外界通信的芯片(如显卡芯片及网卡芯片)。CPU的底部有成百的“引脚”;如图所示,它们组成了交织状的纹样。每一个引脚都是CPU和系统之间的一个连接。
在CPU封装的内部是一个称为“内核”的小硅片。一个CPU包含一个或者多个用于计算的内核,本机上的或者是片上的一些存储器,这称为“高速缓存”(用于保存指令和数据),以及系统接口(使得处理器可以和系统的其他部件进行通信)。
有些处理器只有一个内核。而图1.1中的处理器UltraSPARC T1有8个内核,每一个内核都可以同时运行4个线程。对于这个系统的用户来说,这看起来就像有32个虚拟的处理器。每一个虚拟处理器对操作系统来说就像是一个完整器,都能执行一条指令流。图1-2所示的中UltraSPARC T1处理器的核心,该图标示了CPU每个区域所执行的功能。
……
第1章常规的处理器
1.1 本章目标
简单来说,处理器的功能就是从内存中取出指令,并执行该指令,如果需要的话,还将从内存取出数据,或将结果送人内存。但是,这样的描述遗漏了决定应用程序性能的许多重要细节。本章描述的是“常规的”处理器;也就是说,本章所描述的是,通常情况下处理器是如何工作的以及它由哪些部件构成。阅读完本章,读者将会了解有关处理器的一些术语,并且会理解一些应用在处理器设计方面的方法。
1.2 处理器的组成
每一台计算机的“心脏”是一个或多个中央处理器(CPU)。图1—1是UltraSPARC T1 CPU的照片。CPU是计算机中执行计算的部件,组成计算机的其他部件包括内存芯片、硬盘、电源、风扇(用来冷却计算机),以及其他使得计算机可以与外界通信的芯片(如显卡芯片及网卡芯片)。CPU的底部有成百的“引脚”;如图所示,它们组成了交织状的纹样。每一个引脚都是CPU和系统之间的一个连接。
在CPU封装的内部是一个称为“内核”的小硅片。一个CPU包含一个或者多个用于计算的内核,本机上的或者是片上的一些存储器,这称为“高速缓存”(用于保存指令和数据),以及系统接口(使得处理器可以和系统的其他部件进行通信)。
有些处理器只有一个内核。而图1.1中的处理器UltraSPARC T1有8个内核,每一个内核都可以同时运行4个线程。对于这个系统的用户来说,这看起来就像有32个虚拟的处理器。每一个虚拟处理器对操作系统来说就像是一个完整器,都能执行一条指令流。图1-2所示的中UltraSPARC T1处理器的核心,该图标示了CPU每个区域所执行的功能。
……

点击看大图


加载中...
