zoukankan      html  css  js  c++  java
  • 【藏】深入理解计算机系统__书评

    摘自:http://www.china-pub.com/member/bookpinglun/viewpinglun.asp?id=18133

    我在过去半年中把这本书通读了三遍, 有些重点章节(也就是我觉得比较难的章节)甚至看了五遍, 所以我觉得我有必要把自己读这本书的感觉跟尚未读过这本书的同志共享一下,同时也极力地向各位同学推荐一下这本书.

    首先, 读这本书几乎不需要太多非常高深的计算机知识, 当然,一些基本的知识储备是必需的, 比如说数字电路方面的基本知识, C语言的基础知识. 当然,如果你是在看英文版的话, 你还需要达到CET-6.有了以上的基础知识,看本书应该说没有问题了. 除以上的知识以外,我个人觉得读者并不额外地需要关于CPU设计,计算机体系结构,存储器体系结构,编译链接原理以及操作系统的知识, 因为,这正是本书作者将带领我们学习的内容.

    本书的内容排布结构还是非常合理的,第一章是全面概述了全书的要讲的所有内容,我个人认为要做到这一点, 即把全书要点浓缩在短短20页中,作者的写作功力已经可见一斑了!

    接下来的三个部分,作者由计算机底层而上,带我们深入地理解整个计算机系统.第一部分是计算机底层硬件的相关知识, 这一部分可以说是所有搞计算机的人要弄懂计算机所必须具备的基础. 作者很好地向我们提示了计算机的底层运作, 显示了很深的教学功力.个人认为, 这一部分的第四章(讲述CPU设计)和第6章(讲述存储器体系结构)应该是这一部分,甚至是全书的出彩之处, 可以说,读了这两章, 对于计算机硬件中两个最重要的构成部分:CPU和存储器,基本上应该是了然于胸了.
    而本书第二部分,由硬件上升一个层次来到操作系统.这一部分也是写得很好的一个部分,第7章讲链接, 把链接中出现的各个概念(如两种目标文件,三种链接方式)讲得是非常清楚. 我是一个初学者,以前一直没搞明白什么是链接, 但是看完这本书以后,就感觉明白多了.第8章讲异常处理,最关键的是引出进程这个计算机领域的重要概念. 第10章前半部分讲虚拟内存, 讲解也是非常清晰的, 若能在看完第10章之后再返回第6章, 把两章结合起来思考, 那么对于计算机的存储器管理应该说是理解得八九不离十了.

    最后是第三部分. 我个人觉得这一部分看得不"过瘾". 因为作者在这一部分只安排了短短三章, 因此有些内容讲得不够深入, 所以看起来就不过瘾了. 个人觉得这一部分最重要的问题是两个, 一个是UNIX系统下的文件I/O函数, 另一个是提出线程这一重要概念.但是正如刚才所说, 我认为作者在这两个问题上都只是点到为止, 可能是因为篇幅所限或者是作者有自己的考量吧.
    总地来看, 这本书应该算作是一本广度很够的书, 它把计算机系统中由底向上的主要问题都给我们作了讲解. 当然, 这也使得本书在深度上不可避免地作一些折中. 如果论计算机体系结构, 它比不上Hennessy/Patterson的书,论操作系统,它也比不上Tanebaum的书, 论编译原理, 它也比不上Ullman等的书. 但是,我还是很愿意推荐这本书, 因为这本书的意义在于给我们提供了一种对于计算机的"大局观",提供了一个从上向下审视计算机系统的广阔视角. 以本书作为一个起点, 我相信很多同学能够在它提供的知识基础之上, 再深入地去学习上面列举的那些更专门的领域.

    不可否认,本书的中译本是译本中的上乘之作,但是我还是推荐英文较好的同学去看原版,我个人觉得原版的文字并不艰深, 还是很好懂的.只是因为我是初学者,所以才多读了几遍加深理解. 如果英文实在不太过关, 那么就放心看中译本, 也是很不错的!
    最后, 再次向各位强烈推荐本书的两个语言版本!
  • 相关阅读:
    2017校赛 问题 F: 懒人得多动脑
    2017校赛 C: 不爱学习的小W【模拟】
    方程解的个数【数论】
    小兔蹦蹦跳【脑洞】
    例2-2显示文字
    例2-6 数值转换列表
    例2-3 转换数值
    例2-1 输出文字
    例1-1 求n!
    #文件1向文件中输出字符数据——fgetc
  • 原文地址:https://www.cnblogs.com/xuyuan77/p/1214576.html
Copyright © 2011-2022 走看看