那些被遗忘的 UNIX/Linux 经典著作

书单来自:https://medium.com/@sarahelson81/top-6-books-for-unix-and-shell-scripting-beginners-d3e4de7af7a6

你可以通过许多种不同的方式去学习新的编程语言,有些人关注博客,有些人看在线教程,而有些人则喜欢安安静静坐下来读一本好书,就我个人而言,我还是比较信赖传统的学习方式,Unix自1960年诞生以来,就一直在不断发展,特别是对于移动开发和服务器环境管理,学习Unix非常重要,因为它为高级编程奠定了基础。

本文,我将会列出一些需要阅读的书籍,如果你希望Unix和shell脚本编写的熟练程度,不妨从这几本书里选择

1、《UNIX环境高级编程(第3版)》

这本书是市场上最好的书之一,W.Richard Stevens在30年前就写下了这本书,开发人员一致认为本书是永恒的经典,新的第3版支持当今领先的系统平台,反映了最新技术进展和最佳实践,并且符合最新的Single UNIX Specification第4版(SUSv4)。

如果你想学习Unix,这是最好的入门书籍,对于已经了解了Unix并希望进一步提升学习的程序员,也大力推荐这本书,总之本书所有层次UNIX/Linux程序员

2、《Linux/UNIX系统编程手册》

这本书的作者Michael Kerrisk是Unix的维护者,他从1987年开始研究Unix,从1990年开始关注Linux。但是,要理解本书,你需要清楚地了解Unix的基本概念。涵盖了逾500个系统调用及库函数,并给出逾200个程序示例,另含88张表格和115幅示意图。

总体而言,本书布局合理,论述清晰,说理透彻,尤其是作者对示例代码的构思巧妙,独具匠心,仔细研读定会受益良多。

3、《Linux程序设计》

Richard Stones和Neil Mathew写的这本书,有几个版本可供选择,目前是第四版,对于想要成为一名Unix编程专家的初学者来说,这是最好的入门书籍之一,这本书从shell一直讲到x-window编程,从简单的TCP/IP网络协议到最大限度利用Linux中的开发工具,使你很容易就学会在不同版本的Linux版本上编写出运行良好的程序。

4、《How Linux Works》

这本书由布莱恩·沃德(Brian Ward)撰写,程序员通常都把时间花在理解技术上(如.Net或Java)背后的工作流程/原理,却很少有人把时间花在Linux上,通过阅读这本书,开发人员就能详细了解每个细节是如何运作的:

网络是如何运作的

系统重新启动的过程

......

5、《Linux Kernel Development》

本书由Robert Love编写,主要关注Linux内核级编程新手所犯的错误。理解内核是Linux开发人员的基本要求之一。不管你是专家还是初学者,这本书都会在很多方面帮助你,它详细讲解了内核的接口、设计和实现,通过实际例子来解释内核编程,章节包括使用虚拟内存的内存分配,内核数据结构、处理内核Bug等。

6、《Advanced Unix Programming》

Mark J. Rochkind编写了这本书的第二版,为开发人员提供了一种更现代的学习方法。这本书既可用作工作指南,也可用作参考书。书中介绍了Linux的历史,还包括套接字、线程等细节。早些时候,Stevens的书被认为是最适合学习Linux的开发人员的书,但是就可读性而言,这本书稍微好一些。

7、《UNIX编程环境》

是Brian W.Kernighan和Rob Pike两位UNIX大师的合力之作,书中引用了大量编程实例,由浅入深地讲解了如何使用unix及其各种工具,以及如何用c语言在unix环境下写出高质量的程序。对于想深入掌握unix和c语言的程序设计人员是一本很好的参考书。

8、《UNIX操作系统设计》

这本书很老,但是不可错过,是Linux之父Linux Torvalds曾捧读的经典著作。它向读者展示了UNIX最开始的设计和实现,UNIX内核体系结构,紧密耦合的多处理机UNIX系统和松散耦合的分布式UNIX系统等,为从事UNIX系统研究与实用程序开发人员提供了一本极有价值的参考资料。

9、《莱昂氏UNIX源代码分析》

本书由上、下两篇组成。上篇为UNIX版本6的源代码,下篇是莱昂先生对UNIX操作系统版本6源代码的详细分析。本书语言简洁、透彻,曾作为未公开出版物广泛流传了二十多年,是一部杰出经典之作。

以上提到的名单仅代表我的个人观点,市面上还有许多书,都值得称赞,程序员也都非常喜欢,要成为一名更好的程序员,Linux是一定要学的,因为它教会您很多关于网络、系统编程、操作系统以及进程间通信的知识。所以,赶紧深入研究shell脚本和内核编程吧

如果上面这些书还不够你选择,你还可以点击以下链接查阅:

●编号662,输入编号直达本文

●输入m获取文章目录

推荐↓↓↓

运维

更多推荐《25个技术类公众微信》

涵盖:程序人生、算法与数据结构、黑客技术与网络安全、大数据技术、前端开发、Java、Python、Web开发、安卓开发、iOS开发、C/C++、.NET、Linux、数据库、运维等。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181218B0KS8P00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券