加餐(一) | 书单推荐:性能优化和Linux 系统原理
下载APP
关闭
渠道合作
推荐作者
加餐(一) | 书单推荐:性能优化和Linux 系统原理
2019-02-04 倪朋飞 来自北京
《Linux性能优化实战》
课程介绍
讲述:冯永吉
时长05:36大小5.11M
你好,我是倪朋飞。欢迎来到 Linux 性能优化专栏的加餐时间。
之前,很多同学留言让我推荐一些性能优化以及 Linux 系统原理方面的书,今天我就和你分享一些我认为不错的书。
Linux 系统原理和性能优化涉及的面很广,相关的书籍自然也很多。学习咱们专栏,你先要了解 Linux 系统的工作原理,基于此,再去分析、理解各类性能瓶颈,最终找出方法、优化性能。围绕这几个方面,我来推荐一些相应书籍。
Linux 基础入门书籍:《鸟哥的 Linux 私房菜》
咱们专栏的目标是优化 Linux 系统以及在 Linux 上运行的软件性能。那么,第一步当然是要熟悉 Linux 本身。所以,我推荐的第一本书,正是小有名气的 Linux 系统入门书——《鸟哥的 Linux 私房菜》。
这本书以 CentOS 7 为例,介绍了 Linux 系统的基本使用和管理方法,主要内容包括系统安装、文件和目录操作、磁盘和文件系统管理、编辑器、Bash 以及 Linux 系统的管理维护等。这些内容都是 Linux 初学者需要掌握的基础知识,非常适合刚入门 Linux 系统的新手。
当然,掌握这些基础知识,其实也是学习咱们专栏的基本门槛。比如,我在很多案例里提到的软件包的安装、Bash 命令的运行、grep 和 awk 等基本命令的使用、文档的查询方法等,这本书都有涉及。
计算机原理书籍:《深入理解计算机系统》
掌握 Linux 基础后,接下来就该进一步理解计算机系统的工作原理。所以,我推荐的第二本书,正是计算机系统原理的经典黑皮书——《深入理解计算机系统》。
这也是一本经典的计算机学科入门教材,它的英文版名称“Computer Systems: A Programmer’s Perspective”,其实更能体现本书的核心,即从开发者的角度来理解计算机系统。
这本书介绍了计算机系统最基本的工作原理,内容比较广泛。它主要包括信息的计算机表示,程序的编译、链接及运行,处理器体系结构,虚拟内存,存储系统 I/O,网络以及并发等内容。
书本身比较厚,内容也比较多,但作为一本优秀的入门书籍,这本书介绍的各个知识点虽然有点偏向于编程和系统底层,但并不会过于深入这些,对初学者来说非常合适。
Linux 编程书籍:《Linux 程序设计》和《UNIX 环境高级编程》
介绍完计算机系统工作原理的书籍,接下来,我要推荐的是编程相关的两本书,分别是《Linux 程序设计》和《UNIX 环境高级编程》。
之所以要推荐编程书籍,是因为优化性能的过程中,理解应用程序的执行逻辑至关重要。而要做到这一点,编程基础就是刚需。
我推荐的这两本书中,《Linux 程序设计》主要针对 Linux 系统中的应用程序开发,是一本入门书籍,内容包括 SHELL、标准库、数据库、多进程、进程间通信、套接字以及图像界面等。
《UNIX 环境高级编程》则被誉为 UNIX 编程圣经,是深入 UNIX 环境(包括 Linux)编程的必读书籍。主要内容包括标准库、文件 I/O、进程控制、多进程和进程间通信、多线程以及高级 I/O 等,这些内容都是开发高性能、高可靠应用程序的必备基础。
这两本书籍,可以让你更清楚 Linux 系统以及应用程序的执行过程,甚至在必要时帮你更好地理解应用程序乃至内核的源代码。
Linux 内核书籍:《深入 Linux 内核架构》
为了方便你学习和运用,我们专栏内容都是从 Linux 系统的原理出发,借助系统内置或外部安装的各类工具,找出瓶颈所在。所以,理解 Linux 系统原理也是我们的重点,同时,了解内核架构,也可以帮助你分析清楚瓶颈为什么发生。
所以,我推荐的第五本,就是关于 Linux 内核原理的一本书籍——《深入 Linux 内核架构》。这是一本大块头,涉及了 Linux 内核中的进程管理、内存管理、文件系统、磁盘、网络、设备驱动、时钟等大量知识。书中还引用了大量 Linux 内核的源码(内核版本为 2.6.24,虽然有些老,但不影响你理解原理),帮你透彻掌握相关知识点。
如果你是第一次读这本书,不要因为厚厚的页码或者部分内容看不懂就放弃。换个时间重新来看,你会有不同的发现。
性能优化书籍:《性能之巅:洞悉系统、企业与云计算》
这本书,堪称 Linux 性能优化最权威的一本书,而作者 Brendan Gregg ,也是很多我们熟悉的性能优化工具和方法的开创者。
书里主要提供了 Linux 性能分析和调优的基本思路,并具体讲解,如何借助动态追踪等性能工具,分析并优化各种性能问题。同时,这本书也介绍了很多性能工具的使用方法,可以当作你性能优化过程的工具参考书。
最后,我还想再说一句,读书不在多,而在精。
今天我推荐的这些书,你可能或多或少都看过一部分,但这远远不够。要真正掌握它们的核心内容,不仅需要你理解书中讲解的内容,更需要你用大量实践来融汇贯通。
有些书,你可能会觉得很难啃下来,还不如现在层出不穷的新技术时髦。但要注意,这些内容都是基本不会过时的硬知识,多花点儿时间坚持啃下来,相信你一定会有巨大的收获。
分享给需要的人,Ta购买本课程,你将得20元
生成海报并分享
赞 34
提建议
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
上一篇
58 | 答疑(六):容器冷启动如何性能分析?
下一篇
加餐(二) | 书单推荐:网络原理和 Linux 内核实现
精选留言(24)
- hola2019-02-23花了一周,每天下班晚上追,晚上终于追到这里来了。 关于深入理解计算机系统这本书,我建议不要完全按照目录顺序阅读,这样会容易从入门到放弃。 可以从后面几章开始阅读,前面几张是偏操作系统硬件层面,后面是偏操作系统软件层面,更贴近我们平时的了解。比如系统级IO,网络编程等等
作者回复: 嗯呢
15 - dahey2019-02-04谢谢老师推荐的书籍,虽然这几本我差不多都买了纸质书,但是深入理解计算机系统是真的难啃😢
作者回复: 可以先把跟手头工作相关的部分啃下来,其他再慢慢来,这样效果更好
共 2 条评论13 - MJ2019-02-04正在读深入理解计算机系统,每天10页
作者回复: 👍 加油
7 - crane2019-02-04这些书DBA有必须都看吗?
作者回复: 建议了解下
6 - 大坏狐狸2019-02-14老师,我这个人比较笨,比如linux 鸟哥私房菜 服务器架设篇-- 那么厚的书,我是要读完这一本再读下一本,还是交叉的学习呢。
作者回复: 这个看你的安排和学习习惯吧。我一般是看情况,有时间的化就按照书籍系统学习,但如果只对某个主题感兴趣,那就找几本相关书交叉学习。
5 - 辣椒2019-02-04老师辛苦,大年三十还推专栏。列举的书都是经典,我虽然是做开发的,也想买来读一下
作者回复: 👍 这些都是开发必读的
3 - 2xshu2019-02-04哎呀呀,准备起来看网络呢。结果没更新
作者回复: 现在已经更新两篇了
3 - ninuxer2019-02-13打卡day34 开工,赶紧补补落下的课程,深入理解Linux内核架构和性能之巅已经开始啃了,需要很大的毅力啊~2
- KimiZhou2019-08-22谢谢老师的推荐。最近在解决一个多媒体服务进程的性能瓶颈问题,参考了老师推荐的一些方法,的确给了我很多指导和启发。谢谢~
作者回复: 😊
1 - void *2019-04-10买了本性能之巅,摩拜下大神的巨作1
- Dale2019-02-12性能之巅不错,作为工具书使用1
- 马殿军2019-02-04很棒!1
- maoxiajun2023-01-12 来自上海打卡
- 无咎2022-09-15 来自广东建议搞的豆瓣的图书豆列。
- Geek_0c17322022-05-16学这些要会C吗
- TomShine2021-08-14推荐的书都不错
- aoe2020-10-13感谢老师推荐,找到对的书也是力气活。
- 忆水寒2020-03-24晚来了一年了,该课程有很大收获。
- bin.chen2020-02-25这么多书,边学边实践才能有所提高,书太多,怕自己坚持不下来
- ~尘曦~2019-08-18深入理解Linux内核架构 里面有些C代码还是比较晕的