教育行業(yè)A股IPO第一股(股票代碼 003032)

全國咨詢/投訴熱線:400-618-4000

讓Linux和C/C++工程師肆意飽覽的十二本群書

更新時間:2018年01月05日10時37分 來源:傳智播客 瀏覽次數(shù):

人類的成長和進步是離不開書籍的。那是我們進步的階梯,成功的基石。程序員也不外如是。然而,哪些才能真正的開卷有益,可以放心大膽的拿來肆意翻看呢。

現(xiàn)在每年增加的信息量比過去幾百年還要多,不過好書還是那么少,能經(jīng)得起時間考驗的經(jīng)典書就更少了,每個領域的經(jīng)典書就那么幾本,作為初學者應該首先看完該領域的經(jīng)典書,然后再看其他的流行好書。

選擇經(jīng)典,是因為躋身于這個站在光速上的互聯(lián)網(wǎng)時代,我們實在沒有時間花在爛書上,好書能更快更好的幫助我們理解內(nèi)容,好書是一種享受,你不會覺得讀書是一種辛苦。選擇英文書是因為,這些經(jīng)典書的英文都寫得樸實、簡單,不超過大學四級的閱讀水平,長時間侵淫英文書可以為自己以后學習和工作打好基礎。在工作中,最新最好最的資料都是英文的。多多浸染,不無益處。

以下是不管怎么推薦和轉(zhuǎn)載都不過分好書。

Linux 入門

《Running Linux》 和 《Linux in a Nutshell》 都是很棒的 Linux 入門書,如果你是計算機專業(yè)出身,只需要這兩本書就可以了,這兩本書都包括一些初級系統(tǒng)管理內(nèi)容,Linux in a Nutshell 稍微難一點,建議閱讀順序是先 Running Linux 后 Linux in a Nutshell.

系統(tǒng)管理和網(wǎng)絡

《UNIX System Administration Handbook 》可能是系統(tǒng)管理方面最權(quán)威的的一本大部頭百科全書式著作,第一版本是1989年發(fā)行的,以后一直是 Unix 系統(tǒng)管理的方面的經(jīng)典,其作者在2002年發(fā)布了對應的 Linux Administration Handbook 第一版,然后又成了 Linux 系統(tǒng)管理的必讀,終于在2010年的時候作者把這兩本書合為一本 UNIX and Linux System Administration Handbook.

《Essential System Administration 》是另一個 Unix/Linux 系統(tǒng)管理的經(jīng)典書,可以替代 UNIX and Linux System Administration Handbook,不過建議兩本都看看。

《TCP/IP Illustrated, Volume 1: The Protocols 》是理解 TCP/IP 協(xié)議的必讀經(jīng)典,書的內(nèi)容不涉及具體的網(wǎng)絡管理命令,也不討論如何架設各種服務器,主要討論 TCP/IP 各層協(xié)議是如何工作的,不管你是 System Administrator, Network Administrator, DevOps 還是 System Programmer 這本書都必讀,就算今天用 Django, Ruby on Rails 之類的框架編程也應該了解一下底層 HTTP 協(xié)議是如何工作的,網(wǎng)絡包是如何一層一層的封裝、解封的。TCP/IP Illustrated 三部曲的另外兩本也很經(jīng)典,不過太窄太具體,除非你是 TCP/IP 協(xié)議設計者或網(wǎng)絡棧碼農(nóng),看 《TCP/IP Illustrated, Volume 2: The Implementation》的用處不是很大。

系統(tǒng)編程

《The UNIX Programming Environment 》是兩位 UNIX 大師 Brian W. Kernighan 和 Rob Pike 的合著,UNIX/Linux 編程入門的最好讀物,字里行間里浸透了 UNIX 的哲學和設計思想。

《The C Programming Language》 可能有人會問為啥學 Unix/Linux 要懂 C 語言,C 是 Unix/Linux 的核心,想繼續(xù)深入理解 Unix/Linux 必須懂點 C 語言,不然下面一些書沒法繼續(xù)讀,C 語言還是一種優(yōu)美、高效的語言,每個程序員都應該會(個人觀點)。

《Advanced Programming in the Unix Environment 》是 Unix/Linux 編程的經(jīng)典必讀書,被譽為業(yè)界圣經(jīng),Linux程序員必讀之作。Unix大師級作者 Richard Stevens 的巨著,事實上 Richard Stevens 的每本書都是巨著。

《Unix Network Programming》 是 Richard Stevens 另一巨著,這本經(jīng)典 Unix 網(wǎng)絡編程書可看作上面那本的補充。

編程還應該包括 shell 編程,這里沒有單獨拿出來推薦是因為因為上面推薦的入門和系統(tǒng)管理書里面都或多或少包括了一些 shell 編程基礎知識。

操作系統(tǒng)原理和內(nèi)核

《Operating Systems: Design and Implementation》 是操作系統(tǒng)原理的經(jīng)典書,講系統(tǒng)原理的還有另一本經(jīng)典恐龍書 Operating System Concepts,我個人更喜歡前一本一些,理論加實踐,書的作者在大學教書的時候沒能找到滿意的操作系統(tǒng)來教學自己寫了一個 Minix,Linus Torvalds 發(fā)現(xiàn) Minix 太簡單不實用自己寫了一個 Linux,貌似牛人都有共同的特點,不滿意就自己造一個~,修改 Minix 內(nèi)核是很有趣的事情,換工作后一直沒機會再玩 Minix.

《Linux Device Drivers 》是內(nèi)核編程的入門讀物,難得這本經(jīng)典書還是免費的。

《Understanding the Linux Kernel》 是 Linux 內(nèi)核方面的經(jīng)典,看這本書之前最好看過一些上面講操作系統(tǒng)原理的書,不要指望看一遍就把這本書都搞懂,理解內(nèi)核難點的地方在于內(nèi)核之間的子系統(tǒng)是獨立又是交叉的,又缺少實際可運行可修改的例子,不像 web 編程,改幾行代碼就可以立刻看到效果,所以內(nèi)核學習是個痛苦的過程,這本書有助于建立一幅完整的 Linux 內(nèi)核圖景。

本文版權(quán)歸傳智播客C/C++學院所有,歡迎轉(zhuǎn)載,轉(zhuǎn)載請注明作者出處。謝謝!
作者:傳智播客C/C++學院
首發(fā):http://m.fskzgqt.cn/c/
0 分享到:
和我們在線交談!