為學Linux,我看了這些書

來源:互聯網
上載者:User

去年開始,抱著學習的態度開始了我的Linux學習,到現在,差不多一年了,收穫很多,不敢說精通Linux,但是,還是對得起“略懂”這兩個字的。這一年裡我看了很多書,細細數下,大概15本左右,其中包含了兩個方面,一個是Android,另一個就是Linux。當然,在學習之初,遇到了不少瓶頸,在這裡,還要感謝師兄師姐的指導。寫這篇文章的目的有兩個:

1.分享自己的學習經驗

2.記錄下我的學習曆程

既然談到了學習,那一定需要從看書說起,下面我就羅列下我看過的關於Linux學習的書


1.《鳥哥的Linux私房菜-基礎學習篇》



      首先聲明,我用的Linux系統是Ubuntu11.10;大學時沒接觸過Linux系統,所以不知道怎麼開始學習是好,請教吧,師兄告訴我看這本書,現在回想起來,他的建議不錯,這本書很適合初學Linux系統的人。

      我們大概都知道,或許是聽說過,Linux系統經典的地方是它的命令列操作方式,這本書的主要內容就是介紹Linux系統下的命令,教你怎麼使用這個系統,並簡單的管理這個系統,這本書我記得後面幾章的內容是關於系統營運的,由於對這方面的管理,我還暫時不需要,所以最後幾章的內容並沒有涉獵。


2.《Linux Shell 指令碼攻略》



      這本書雖然放在第二的位置,但是確實是最近才看完的,讀這本書的緣由是項目的需要,不過,現在,對這本書我又有了新的想法。

      Linux的思想是“一切皆檔案”,所以,對於檔案的處理是Linux最基本的功能,那麼使用什麼處理檔案呢?使用什麼效率高呢? 答案是:Shell指令碼。所謂Shell指令碼其實就是Linux命令的集合。這本書正是講解這種語言的,但是內容不是很簡單,需要知道一些簡單的命令和參數是做什麼的,所以,讀這本書之前最好還是看看第一本書吧。

      我們大概都已經知道,Linux對網路的支援也是非常好的,它在核心中接入網路,所以我們需要知道和運用一些Linux系統提供給我們的命令實現網路的測試,健全狀態查看等操作,這本書又派上用場了,我記得這本書有一章的內容叫做“無網不利”,聽,這是對Linux系統多麼貼切的描述。


3.《Unix環境進階編程》



      相信知道這本書的人很多,這是講解Unix編程的經典書籍,由於Linux屬於類Unix系統,所以,學習Linux編程,這本書不可以少。

      這本書的開篇首先講的是對文字檔的操作,對了,就是那幾個我們常常看見的函數--open,read,write,seek,close,這裡,是不是又對應了“一切皆檔案”這個說法。當然,這本書介紹的內容很多,其中有很多非常好的章節,比如:Linux處理序間通訊,Socket編程,Linux管道等等,這裡,我就不詳細說了,想學習的朋友自己去看看這本書吧。


4.《Linux系統編程》



      首先說,這本書不是很好找,是一本比較老的書,但是內容卻是非常好,也是學習Linux編程不可多得的一本好書。

      從這本書的名字就能看出來,這本書所講的內容是“系統編程”,所以,這裡涉及的內容是系統調用,是我們的使用者進程需要核心的協助完成我們想要實現的功能,這本書我也是從頭看到尾,由於書並不是很厚,所以沒有花太久的時間,不過,需要理解的地方很多,有些地方比較難,所以,多看幾遍這本書肯定沒錯。


5.《Linux核心設計的藝術》



      這裡,我首先引用這本書封面上的一句話--“本書對作業系統核心的駕馭能力和深刻理解程度達到世界頂尖級水平,是一本能真正引導你深入理解Linux核心設計思想的經典著作。”

      在學習Linux之初,我們可能會“百度一下”--怎麼學習Linux?網上好多人會回答你--看原始碼。如果這時你真的照著做了,那麼,你可能走上了一條學習Linux的不歸路。為什麼呢?因為,Linux有好多個版本,我們看哪個版本?原始碼都在幾百萬行左右,怎麼去看?所以,這是不切實際的。那麼,為什麼會有那麼多的網友這樣說呢?下面我來分析下。

      這本書到現在我看完了兩遍,當然,還是有很多地方理解的不夠透徹,不過,還是有一些自己的想法的。這本書選擇的版本是Linux0.11,書中配合插圖和文字去分析原始碼,起初,我只是看書上的“內容”,並沒有分析原始碼,不過,漸漸地,我發現一個問題,合上書之後,馬上就忘了我看了些什麼。開始,我覺得這是對系統的不理解,對系統不熟。就這樣,帶著這些疑問,看完了第一遍。大概兩個星期之後我開始了第二遍的閱讀,這一次,我配合原始碼去閱讀這本書,再合上書之後,我非常欣慰,我記得那些東西是什麼,現在,我才明白為什麼。你想理解這個東西,想記得牢,就去分析原始碼吧。

      現在,可以回答那個問題了。其實,大家所說的閱讀原始碼並不是讓你從頭看原始碼,我們應該做的是,想知道哪一部分是做什麼的,是怎麼實現的,為什麼會是這樣,我們需要做的就是把這一部分的原始碼找出來,閱讀,分析。


6.《Linux核心設計與實現》



這本書所講的內容也是分析Linux核心的,內容比較深,博主現在對這本書的理解也是比較淺顯,so,還需努力。

    這本書中前面幾章的內容很像我們的《作業系統》教科書,不過,內容要深入的多,我記得這本書對進程調度演算法的講解非常好,非常深入,以至於第一遍閱讀時我沒有看懂,映像比較深的還有就是進程間的協調工作,就是IPC機制的實現,這裡 ,我們知道通訊的媒介是管道,可是,管道是什嗎?它是一種檔案,沒錯,但是它是用什麼實現的?這本書中也有非常細緻的講解。所以,要想更深入的理解Linux系統,這本書還是閱讀下吧。


    這篇文章寫了好長時間了,不過,並沒有完全寫下我的學習曆程,因為,還有很長的路要走。。。

http://blog.csdn.net/dlutbrucezhang/article/details/9396211

去年開始,抱著學習的態度開始了我的Linux學習,到現在,差不多一年了,收穫很多,不敢說精通Linux,但是,還是對得起“略懂”這兩個字的。這一年裡我看了很多書,細細數下,大概15本左右,其中包含了兩個方面,一個是Android,另一個就是Linux。當然,在學習之初,遇到了不少瓶頸,在這裡,還要感謝師兄師姐的指導。寫這篇文章的目的有兩個:

1.分享自己的學習經驗

2.記錄下我的學習曆程

既然談到了學習,那一定需要從看書說起,下面我就羅列下我看過的關於Linux學習的書


1.《鳥哥的Linux私房菜-基礎學習篇》



      首先聲明,我用的Linux系統是Ubuntu11.10;大學時沒接觸過Linux系統,所以不知道怎麼開始學習是好,請教吧,師兄告訴我看這本書,現在回想起來,他的建議不錯,這本書很適合初學Linux系統的人。

      我們大概都知道,或許是聽說過,Linux系統經典的地方是它的命令列操作方式,這本書的主要內容就是介紹Linux系統下的命令,教你怎麼使用這個系統,並簡單的管理這個系統,這本書我記得後面幾章的內容是關於系統營運的,由於對這方面的管理,我還暫時不需要,所以最後幾章的內容並沒有涉獵。


2.《Linux Shell 指令碼攻略》



      這本書雖然放在第二的位置,但是確實是最近才看完的,讀這本書的緣由是項目的需要,不過,現在,對這本書我又有了新的想法。

      Linux的思想是“一切皆檔案”,所以,對於檔案的處理是Linux最基本的功能,那麼使用什麼處理檔案呢?使用什麼效率高呢? 答案是:Shell指令碼。所謂Shell指令碼其實就是Linux命令的集合。這本書正是講解這種語言的,但是內容不是很簡單,需要知道一些簡單的命令和參數是做什麼的,所以,讀這本書之前最好還是看看第一本書吧。

      我們大概都已經知道,Linux對網路的支援也是非常好的,它在核心中接入網路,所以我們需要知道和運用一些Linux系統提供給我們的命令實現網路的測試,健全狀態查看等操作,這本書又派上用場了,我記得這本書有一章的內容叫做“無網不利”,聽,這是對Linux系統多麼貼切的描述。


3.《Unix環境進階編程》



      相信知道這本書的人很多,這是講解Unix編程的經典書籍,由於Linux屬於類Unix系統,所以,學習Linux編程,這本書不可以少。

      這本書的開篇首先講的是對文字檔的操作,對了,就是那幾個我們常常看見的函數--open,read,write,seek,close,這裡,是不是又對應了“一切皆檔案”這個說法。當然,這本書介紹的內容很多,其中有很多非常好的章節,比如:Linux處理序間通訊,Socket編程,Linux管道等等,這裡,我就不詳細說了,想學習的朋友自己去看看這本書吧。


4.《Linux系統編程》



      首先說,這本書不是很好找,是一本比較老的書,但是內容卻是非常好,也是學習Linux編程不可多得的一本好書。

      從這本書的名字就能看出來,這本書所講的內容是“系統編程”,所以,這裡涉及的內容是系統調用,是我們的使用者進程需要核心的協助完成我們想要實現的功能,這本書我也是從頭看到尾,由於書並不是很厚,所以沒有花太久的時間,不過,需要理解的地方很多,有些地方比較難,所以,多看幾遍這本書肯定沒錯。


5.《Linux核心設計的藝術》



      這裡,我首先引用這本書封面上的一句話--“本書對作業系統核心的駕馭能力和深刻理解程度達到世界頂尖級水平,是一本能真正引導你深入理解Linux核心設計思想的經典著作。”

      在學習Linux之初,我們可能會“百度一下”--怎麼學習Linux?網上好多人會回答你--看原始碼。如果這時你真的照著做了,那麼,你可能走上了一條學習Linux的不歸路。為什麼呢?因為,Linux有好多個版本,我們看哪個版本?原始碼都在幾百萬行左右,怎麼去看?所以,這是不切實際的。那麼,為什麼會有那麼多的網友這樣說呢?下面我來分析下。

      這本書到現在我看完了兩遍,當然,還是有很多地方理解的不夠透徹,不過,還是有一些自己的想法的。這本書選擇的版本是Linux0.11,書中配合插圖和文字去分析原始碼,起初,我只是看書上的“內容”,並沒有分析原始碼,不過,漸漸地,我發現一個問題,合上書之後,馬上就忘了我看了些什麼。開始,我覺得這是對系統的不理解,對系統不熟。就這樣,帶著這些疑問,看完了第一遍。大概兩個星期之後我開始了第二遍的閱讀,這一次,我配合原始碼去閱讀這本書,再合上書之後,我非常欣慰,我記得那些東西是什麼,現在,我才明白為什麼。你想理解這個東西,想記得牢,就去分析原始碼吧。

      現在,可以回答那個問題了。其實,大家所說的閱讀原始碼並不是讓你從頭看原始碼,我們應該做的是,想知道哪一部分是做什麼的,是怎麼實現的,為什麼會是這樣,我們需要做的就是把這一部分的原始碼找出來,閱讀,分析。


6.《Linux核心設計與實現》



這本書所講的內容也是分析Linux核心的,內容比較深,博主現在對這本書的理解也是比較淺顯,so,還需努力。

    這本書中前面幾章的內容很像我們的《作業系統》教科書,不過,內容要深入的多,我記得這本書對進程調度演算法的講解非常好,非常深入,以至於第一遍閱讀時我沒有看懂,映像比較深的還有就是進程間的協調工作,就是IPC機制的實現,這裡 ,我們知道通訊的媒介是管道,可是,管道是什嗎?它是一種檔案,沒錯,但是它是用什麼實現的?這本書中也有非常細緻的講解。所以,要想更深入的理解Linux系統,這本書還是閱讀下吧。


    這篇文章寫了好長時間了,不過,並沒有完全寫下我的學習曆程,因為,還有很長的路要走。。。

http://blog.csdn.net/dlutbrucezhang/article/details/9396211

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.