读书成神豪

从前有只坏猪

首页 >> 读书成神豪 >> 读书成神豪最新章节(目录)
大家在看绝世保安平凡的翅膀为了成为英灵我只好在历史里搞事诱拐敛财妻:我的BOSS是只鬼校花强制奔现?神级天赋我摊牌了开局获得垂钓诸天系统梦游的咸鱼娱乐之导演的成名之路军神出狱狼性老公,别过来!
读书成神豪 从前有只坏猪 - 读书成神豪全文阅读 - 读书成神豪txt下载 - 读书成神豪最新章节 - 好看的都市言情小说

第247章 旧书

上一章目录下一章阅读记录

送走了韩烟凝,章杉又开始读书。

读的是一本老书——《ComputerSystems:AProgrammer'sPerspective》

这本书的中译本为《深入理解计算机系统》。

说起来这本书的出处是一套丛书——计算机科学丛书。

这套丛书包含的书总共有五百多册(共527册),。这套丛书还有《现代操作系统》,《机器学习基础教程》,《C++精髓软件工程方法》,《计算机图形学与虚拟环境》,《80x86汇编语言与计算机体系结构》等。

这些书因为其经典性又有计算机黑皮书之称。

所谓计算机黑皮书,也大概是因为机械工业出版社引进的计算机科学丛书其封面都是黑色的大理石纹理式样的缘故,体现了直男审美计算机工业的品位和格调:冷峻而不失高雅。

这套书不仅包括操作系统、计算机网络、软件工程、编译原理、数据库等计算机专业核心课程,同时也带你领略量子编程、算法博弈论、增强现实等前沿知识领域。

“计算机科学丛书”历时20多年已经出版了五百多个品种,《算法导论》《深入理解计算机系统》《TCPIP详解》等经典着作不胜枚举。荟萃全球计算机领域名家着作,陪伴了一代代程序员和研究人员的职业成长。技术更迭,日新月异,历久弥新,经典永存!计算机科学丛书用专业的品质,彰显学术精神致敬经典思想。

章杉之前就拜读过这套书里面的《斯坦福算法博弈论二十讲》。

说起来之所以阅读这本书还是因为一个极其偶然的机会~

这本书讲述了计算机科学和经济学在过去的十多年中进行了热烈的交互,产生了新的算法博弈论领域。许多现代计算机科学的核心问题,从大型网络的资源分配到在线广告,都涉及多个自利方个体之间的相互作用。经济学和博弈论为这些问题提供了大量有用的模型和定义。同时,对于传统经济学的许多问题,来自计算机科学的研究又起到了补充作用。《斯坦福算法博弈论二十讲》源于作者在斯坦福大学的算法博弈论课程讲义,旨在让学生和其他新学者快速、方便地了解该领域的许多重要的概念。《斯坦福算法博弈论二十讲》通过在线广告、无线频谱交易和网络管理等案例来说明这些概念,非常适合课堂教授和自学……

虽然这套书叫计算机黑皮书,但是这套丛书也不完全是和计算机相关的,章杉在最早阅读和离散数学相关的时候就读过《计算机科学丛书:离散数学及其应用》这样一本书。

《计算机科学丛书:离散数学及其应用》是介绍离散数学理论和方法的经典教材,已经成为采用率高的离散数学教材,这本书被美国众多名校用作教材,获得了极大的成功。中文版也已被国内大学广泛采用为教材。

这本书的作者参考使用教师和学生的反馈,并结合自身对教育的洞察,对第7版做了大量的改进,使其成为更有效的教学工具。《计算机科学丛书:离散数学及其应用》可作为1至2个学期的离散数学课入门教材,适用于数学、计算机科学、计算机工程、信息技术等专业的学生。

而说到现在章杉正在阅读的这本书《ComputerSystems:AProgrammer'sPerspective》(《深入理解计算机系统》),这本书从程序员的视角详细阐述计算机系统的本质概念,并展示这些概念如何实实在在地影响应用程序的正确性、性能和实用性。

全书共12章,主要内容包括信息的表示和处理、程序的机器级表示、处理器体系结构、优化程序性能、存储器层次结构、链接、异常控制流、虚拟存储器、系统级IO、网络编程、并发编程等。书中提供大量的例子和练习,并给出部分答案,有助于读者加深对正文所述概念和知识的理解。

章杉很快就开始了阅读。

虽然这本书是全英文的,但在章杉面前这点词汇量基本不够看的,完全是小菜一碟。

通过阅读,章杉发现本书的最大优点是为程序员描述计算机系统的实现细节,帮助其在大脑中构造一个层次型的计算机系统,从最底层的数据在内存中的表示到流水线指令的构成,到虚拟存储器,到编译系统,到动态加载库,到最后的用户态应用。

通过掌握程序是如何映射到系统上,以及程序是如何执行的,读者能够更好地理解程序的行为为什么是这样的,以及效率低下是如何造成的。

《ComputerSystems:AProgrammer’sPerspective》这本书强调的便是作为一个程序员的基本知识。SICP来自世界顶级学府MIT(SICP即大名鼎鼎的《StructureandInterpretationofComputerPrograms》,在国内可以买到中译版,即机械工业出版社的《计算机程序的构造与解释》),而《ComputerSystems:AProgrammer’sPerspective》也同样出身名门:CMU(卡耐基梅隆大学)。

虽然没有SICP那么历史悠久,但它被世界几百所大学(幸运的是也包括章杉所就读的复旦大学)用作教材也有好多年了。

这本书的中译名为“深入理解计算机系统”,章杉非常,十分,以及百分之一百二十地不满意。章杉这么说的原因在于这个译法完全扭曲了书的本意。

如果直译原书名,应该是类似于“以程序员的视角理解计算机系统”,何来“深入”二字。可能在国内编辑看来,这是讲系统的,用C和汇编语言的,因此很“深入”,但章杉认为这只能说明国内技术氛围的浅薄。因为事实上,这是一本入门级别的书,这本书其实并不“深入”,它谈论的内容还是相对比较浅的。

但“浅”不代表“浅薄”,写一本面向初学者的好书往往是非常困难的,因此无论是SICP还是《ComputerSystems:AProgrammer’sPerspective》,它的作者都是顶尖学府的教授,结合多年教学经验而写出来的。

CMU把这本书作为“IntroductiontoComputerSystem”课程的教材,是面向计算机专业低年级学生的“计算机系统介绍(导论)”,可能这些学生只是刚刚了解如何使用一门高级语言——如Java进行编程,对于计算机系统的工作方式等话题可谓一点都没有接触过,而《ComputerSystems:AProgrammer’sPerspective》对读者的背景也只要求是“一些编程经验”而已。

这本书的话题覆盖面很广,从计算机的基本组成,二进制数据表示方式,到机器级别的指令,CPU工作方式,存储结构和优化,操作系统的虚拟内存管理,程序运行方式,IO,网络、到(较底层)程序性能优化和并行程序开发等等。所以,它其实覆盖了“计算机组成原理”,“操作系统”等许多课程的内容,其中的许多话题都能再次展开,继续深入,都能再变成一本,甚至N本经典。事实上,在高年级的计算机专业课程设置中,都会有更加纵向的内容出现。

因此,如果有人说它“底层”,章杉同意。

但如果说它“深入”,至少章杉不那么赞同。

“覆盖面广”,其实就是这本书的最大优点。它告诉我们计算机是如何设计和工作的,操作系统有哪些重点,它们的作用又是什么。《ComputerSystems:AProgrammer’sPerspective》的目标其实便是要讲清楚原理,但并不会把某个话题挖掘地过于深入,过于细节。例如书中第4章使用了自己“设计”和“实现”的“Y86”处理器架构,便是为了简化X86指令集,使课本内容在能够说明问题的前提下也不至于太复杂。因此,读完(其实也并不一定要读完,说实话章杉也没有读完)这本书后,我们就可以对计算机系统各组件的工作方式有了理性的认识。

那么,这本书适合什么人阅读呢?对于这个问题章杉也有过犹豫。

章杉对《ComputerSystems:AProgrammer’sPerspective》推崇备至。

无论是本科生还是打算新上手编程实战的程序员都能从这本书有所收获。

即便你是一个前端JavaScript程序员,也可以从《ComputerSystems:AProgrammer’sPerspective》这本书中获益。如果您是.NET程序员,那么您更加适合看这本书了。

说一句“豪情万丈”的话:如果不知道XX,YY或ZZ的话,这如何算是一个优秀的程序员?

这本书和平时的工作可能的确不一样,相比起来“底层”了一些,但是它还是会把“底层内容”控制在一定深度之内,而不会讲某个具体话题挖掘到“事倍功半”的程度。而事实上,虽然在进行.NET开发的时候我们已经在一个较高的抽象上工作了,但是我们的程序还是运行在操作系统上,还是在遵循着某个规律在运行着,了解一些内部的工作机制也有助于我们写出更好的应用程序。

说来也奇怪,虽然各种语言,框架发展地越来越好,按理来说我们写程序也应该越来越容易。但是现在看来,一些基础性的内容反而也变得越来越重要了,例如在并行计算面前,计算系统的一些细节,如内存一致性模型,线程调度,程序的局部性(Locality)又被提上台面,否则我们很难写出高效的应用程序。同样,一些如函数式编程,Monad等在几年前看起来十分科研型,数学化的事物也离我们越来越近了,如LINQ,ReactiveFramework等等,其实它们都已经是我们身边的事物了。

《ComputerSystems:AProgrammer’sPerspective》这本书覆盖面很广,章杉认为并非要一字不漏地读完才行。

根据章杉的个人观点,我们应该着重阅读书的第1章“ATourofComputerSystems”和第一部分“ProgramStructureandExecution”(从第2章开始,大约占据了书中一半篇幅),其中包含了数据的机器级别表示方法,汇编语言和执行方式以及CPU架构方面的内容,我们应该关键性地理解其原理。

如第6章“OptimizingProgramPerformance”提出了许多种机器级别的优化方式,在现在看来,其中的某些方式过于细致,乃至在实际工作过程中已经不再推荐了(如内联一些方法以提高性能),我们要在把握住“为什么”而并不是单纯的吸收“怎么做”。对于书中的第二部分“RunningProgramsonaSystem”主要讲述的是操作系统方面的内容,可以读得略为简单一些,但其中的第10章“VirtualMemory”,它谈论了操作系统中虚拟内存机制的各个方面,非常关键,需要细读。至于书中的第三部分“InteractionandCommunicationBetweenPrograms”便可以更加“选择性”地阅读,章杉只阅读了第13章“ConcurrentProgramming”,而其他两章都只是简单地扫过而已。

作为经典的教材它一定有许多附加资源,例如在它的官方站点给出了一些链接,其中最关键的可能是学习者站点,其中包括这本书所需要的各种工具,参考文档等各种资源。

章杉读书的过程中又想起来之前某大牛提及两本书,一本是国产书精品《链接、装载与库》。

这本书主要讲解了编译过程中的“生成文件”的过程,以及应用程序执行时文件是如何被操作系统加载的,并且同时涉及到Linux和Windows两个平台。

第二本书书是《WindowsInternals5thEdition》,人民邮电出版社已经引进了其影印版。

和章杉现在读的这本“蹭蹭不进去”的书相比,这的确是本“深入”级别的书。

基本上覆盖了Windows内核的方方面面,包括系统架构,内存管理,线程调度,安全机制,文件系统等各种话题,对于我们Windows平台上的程序员,这方面内容可能更有针对性。

章杉前不久刚刚购入这本书,更别提仔细阅读了。

当然所谓购书这个行为,自然是吩咐骆常慧做的~

现在这种小事章杉根本不太关注,虽然章杉每分钟读书都有收入~

根本没办法统计好不好,除了特别大段时间读书收入,章杉根本不太在乎这些钱~

以章杉现在的生活,哪怕是不作任何改变。

每天银行里的钱也会带来大量利息,而哪怕不刻意去花钱,日常流水也高的吓人……

章杉注意到这本书和《C专家编程》有些地方是相通的~

请大家记得我们的网站:爱读书屋(m.aidushuwu.com)读书成神豪更新速度全网最快。

上一章目录下一章存书签
站内强推仙子,且慢穿越异世,我有点挂很合理吧【沙海】杨好我有一座随身农场大道之极绝世神医寻宝神瞳LoL,我,五路摇摆深渊独行团宠女主很神奇都听到女儿心声了,谁还惯着你啊空间医妃:战神王爷轻点宠刚重生就和离,全京城替宝宝找爹娱乐之导演的成名之路娱乐:玩刺激游戏,让杨蜜离婚了斩神:凡王之血,必以剑终!校花强制奔现?神级天赋我摊牌了校花的贴身高手穿越之掌家婆婆系统:我在斩神世界言出法随
经典收藏女权世界从当主播开始崛起星际之负债虫族恶龙枷锁重生九零小俏媳穿书之女二要逆袭暗帝:风华绝代之世子妃一世莫倾城:天赐欢喜俏冤家豪门追妻:BOSS大人快放手!我有九位绝美师姐全球性闹鬼事件骑士传奇,我的眼中只有古朗基脱下马甲就是大佬我能真人下副本心的人生高武:我的影子能弑神重生娱乐圈女王我真的很想堕落啊执手江山不负卿仙界兄弟背叛,重生都市卷土重来东京执教
最近更新让你下山潜修,没让你找老婆啊穿越回来,前方华夏,诸神退避不是哥们,种花种草也能杀人?我杀死了我的亲兄弟我见过很多神豪,他们都叫我神豪不存在的觉醒我真的只是来打酱油的抱歉,小道只谈钱,不谈感情!知道走了宝,不知我是感应异能王重生:我死后的一年柳条胡同之飞哥归来重案追凶:我在法医室守夜燃烧吧少年蓝星武道,正太修仙京城穿越之旅南锣鼓巷66号疯人院传奇:超能觉醒沙避寻宝全世界从成为亿万富豪开始沪风疆韵高武:开局武帝修为,我独断万古
读书成神豪 从前有只坏猪 - 读书成神豪txt下载 - 读书成神豪最新章节 - 读书成神豪全文阅读 - 好看的都市言情小说