书籍详情
《计算机科学丛书:深入理解计算机系统》[57M]百度网盘|亲测有效|pdf下载
  • 计算机科学丛书:深入理解计算机系统

  • 出版社:机械工业出版社自营官方旗舰店
  • 出版时间:2011-01
  • 热度:7466
  • 上架时间:2024-06-30 09:08:33
  • 价格:0.0
书籍下载
书籍预览
免责声明

本站支持尊重有效期内的版权/著作权,所有的资源均来自于互联网网友分享或网盘资源,一旦发现资源涉及侵权,将立即删除。希望所有用户一同监督并反馈问题,如有侵权请联系站长或发送邮件到ebook666@outlook.com,本站将立马改正

内容介绍

编辑推荐

  

  《计算机科学丛书:深入理解计算机系统(原书第2版)》被誉为“价值超过等重量黄金的无价资源宝库”!

  五星图书,伟大的计算机科学教材之一。
  卡耐基梅隆大学计算机学院院长、IEEE、ACM和美国工程院院士倾力奉献。
  超过120所美国和世界一流大学计算机专业选用本书为教材。

内容简介

  《计算机科学丛书:深入理解计算机系统(原书第2版)》从程序员的视角详细阐述计算机系统的本质概念,并展示这些概念如何实实在在地影响应用程序的正确性、性能和实用性。全书共12章,主要内容包括信息的表示和处理、程序的机器级表示、处理器体系结构、优化程序性能、存储器层次结构、链接、异常控制流、虚拟存储器、系统级i/o、网络编程、并发编程等。书中提供子大量的例子和练习题,并给出部分答案,有助于读者加深对正文所述概念和知识的理解。
  《计算机科学丛书:深入理解计算机系统(原书第2版)》适合作为高等院校计算机及相关专业本科牛、研究生的教材,也可供想要写出更快、更可靠程序的程序员及专业技术人员参考。

作者简介

  Randal E. Bryant,1973年于密歇根大学(University of Michigan)获得学士学位,随即就读于麻省理工学院(Massachusetts Institute of Technology)的研究生院,并在1981年获计算机博士学位。他在加州理工学院(California Institute of Technology)做了三年助教,从1984年至今一直是卡内基梅隆大学(Carnegie Mellon)的教师。他现在是计算机科学的大学教授(university professor)和计算机科学学院的院长。他同时还受邀于电子和计算机工程系。

目录

第1章 计算机系统漫游
第一部分 程序结构和执行
第2章 信息的表示和处理
第3章 程序的机器级表示
第4章 处理器体系结构
第5章 优化程序性能
第6章 存储器层次结构
第二部分 在系统上运行程序
第7章 链接
第8章 异常控制流
第9章 虚拟存储器
第三部分 程序间的交互和通信
第10章 系统级i/o
第11章 网络编程
第12章 并发编程
附录 错误处理
参考文献

精彩书摘

  第1章 计算机系统漫游
  计算机系统是由硬件和系统软件组成的,它们共同工作来运行应用程序。虽然系统的具体实现方式随着时间不断变化,但是系统内在的概念却没有改变。所有计算机系统都有相似的硬件和软件组件,它们执行着相似的功能。一些程序员希望深入了解这些组件是如何工作的,以及这些组件是如何影响程序的正确性和性能的,以此来提高自身的技能。本书便是为这些读者而写的。
  现在就要开始一次有趣的漫游历程了。如果你全力投身学习本书中的概念,完全理解底层计算机系统以及它对应用程序的影响,那么你将会逐渐成为凤毛麟角的“权威”程序员。
  你将会学习一些实践技巧,比如如何避免由计算机表示数字的方式导致的奇怪的数字错误。你将学会怎样通过一些聪明的小窍门来优化你的C代码,以充分利用现代处理器和存储器系统的设计。你将了解到编译器是如何实现过程调用的,以及如何利用这些知识避免缓冲区溢出错误带来的安全漏洞,这些弱点会给网络和因特网软件带来了巨大的麻烦。你将学会如何识别和避免链接时那些令人讨厌的错误,它们困扰着普通的程序员。你将学会如何编写自己的Unix外壳、自己的动态存储分配包,甚至是自己的Web服务器。你会认识到并发带来的希望和陷阱,当单个芯片上集成了多个处理器核时,这个主题变得越来越重要。
  ……

前言/序言

  本书通过程序员的视角来介绍计算机系统,首先把高级语言转换成计算机所能理解的一种中间格式(如汇编语言),然后描述计算机如何解释和执行这些中间格式的程序,系统的哪一部分影响程序的执行效率。在讲述计算机系统知识的同时,也给出了关于C语言和汇编语言的编程、阅读技巧以及基本的系统编程工具,还给出一些方法帮助程序员基于对计算机系统的理解来改善程序的性能等问题。本书强调对计算机系统概念的理解,但并不意味着不动手。如果按照本书的安排做每一章后面的习题,将有助于加深对正文所述概念和知识的理解,更可以从实际动手中学习到新的知识。
  本书的主要内容是关于计算机体系结构与编译器和操作系统的交互,包括:数据表示,汇编语言和汇编级计算机体系结构,处理器设计,程序的性能度量和优化,程序的加载器、链接器和编译器,I/O和设备的存储器层次结构,虚拟存储器,外部存储管理,中断、信号和进程控制。
  本书的最大优点是为程序员描述计算机系统的实现细节,帮助其在大脑中构造一个层次型的计算机系统,从最底层的数据在内存中的表示(如大多数程序员一直陌生或疑惑的浮点数表示),到流水线指令的构成,到虚拟存储器,到编译系统,到动态加载库,到最后的用户态应用。贯串本书的一条主线是使程序员在设计程序时,能充分意识到计算机系统的重要性,建立起所写程序可能被执行的数据或指令流图,明白执行程序时到底发生了什么事,从而能设计出高效、可移植、健壮的程序,并能够更快地对程序排错、改进程序性能等。
  原书是卡内基-梅隆大学(CMU)的教材,现在很多国内外著名的大学也选用其作为教材或辅助性资料,因此,本书的读者不仅仅是那些因为工作和兴趣而关注本书的人,还包括一些在校的大学生。我们认为,在校学生越早接触本书的内容,将越有利于他们学习计算机的相关课程,培养对计算机系统的研究兴趣。
  总的来说,本书是一座桥梁,它帮助程序员衔接了计算机系统各个领域的知识,为程序员构造了一个概念性框架。要想获取更多关于计算机系统结构、操作系统、编译器、网络、并发编程方面的知识,还需要进一步阅读相关书籍。