最新免费av在线观看,亚洲综合一区成人在线,中文字幕精品无码一区二区三区,中文人妻av高清一区二区,中文字幕乱偷无码av先锋

Linux內(nèi)核學(xué)習(xí)的誤區(qū)相關(guān)書籍

出處:互聯(lián)網(wǎng)    發(fā)布于:2011-09-04 13:47:10

    說內(nèi)核經(jīng)典書籍之前,我覺得應(yīng)該先明確學(xué)習(xí)linux的方向。之前看到一篇關(guān)于linux學(xué)習(xí)方向的文章,覺得寫的很有道理,他把學(xué)習(xí)linux分為這么幾個(gè)方向:

  桌面系統(tǒng):應(yīng)用,像XP

  內(nèi)核源代碼學(xué)習(xí):研究,愛好,研發(fā)

  系統(tǒng)管理:工作

  應(yīng)用開發(fā):研發(fā)

  服務(wù)器領(lǐng)域:服務(wù)器應(yīng)用

  系統(tǒng)集成:這個(gè)不知道

  常常有人問:我想學(xué)習(xí)內(nèi)核,需要什么基礎(chǔ)嗎?Linus Torvalds本人是這樣回答的:你必須使用過Linux。 這個(gè)……還是有點(diǎn)太泛了吧,我想下面幾個(gè)基礎(chǔ)可能還是需要的,盡管不一定必需:

  1, 關(guān)于操作系統(tǒng)理論的初級(jí)的知識(shí)。不需要通讀并理解《操作系統(tǒng)概念》《現(xiàn)代操作系統(tǒng)》等巨著,但總要知道分時(shí)(time-shared)和實(shí)時(shí)(real-time)的區(qū)別是什么,進(jìn)程是個(gè)什么東西,CPU和系統(tǒng)總線內(nèi)存的關(guān)系(很粗略即可),等等。

  2, 關(guān)于C語言。不需要已經(jīng)很精通C語言,只要能熟練編寫C程序,能看懂鏈表、散列表等數(shù)據(jù)結(jié)構(gòu)的C實(shí)現(xiàn),用過gcc編譯器,就可以了。當(dāng)然,如果已經(jīng)精通C語言顯然是大占便宜的。

  3, 關(guān)于CPU的知識(shí)。這塊兒可以在學(xué)習(xí)內(nèi)核過程中補(bǔ),但這樣的話你就需要看講解很詳細(xì)的書,比方后面將會(huì)提到的《情景分析》。你是否熟悉Intel 80386 CPU?嘗試著回答這幾個(gè)問題來判斷一下:1)說出80386的中斷門和陷阱門的區(qū)別;2)說出保護(hù)模式與實(shí)模式的區(qū)別;3)多處理器機(jī)器上,普通的讀- 改-寫回一塊內(nèi)存這樣的動(dòng)作,為什么需要特殊的手段來保護(hù)。等等。講解基于其它CPU的Linux內(nèi)核的書,目前好象只有一本《IA64Linux內(nèi)核:設(shè)計(jì)與實(shí)現(xiàn)》──也還是Intel的,其它都是講解基于IA32的。

  Linux內(nèi)核完全剖析,0.11版本內(nèi)核,趙炯寫的,覺得麻雀雖小,五臟具全。一本書中差不多包含了所有的代碼,而且加了很多注釋。分析的很透徹,不錯(cuò)的內(nèi)核研度入門書。 深入理解LINUX內(nèi)核第二版,關(guān)于2.4內(nèi)核的,如果有一些linux操作系統(tǒng)的基礎(chǔ),讀著相當(dāng)爽, 內(nèi)容全面,而且用大量數(shù)據(jù)結(jié)構(gòu)、宏名和函數(shù),貫穿其中。遇到重點(diǎn)時(shí),又附以代碼、圖解,理解起來比較容易。其中有些概念不是很正統(tǒng),可能是作者有意為之吧!第三版是關(guān)于2.6。

  linux內(nèi)核源代碼情景分析 ,中國(guó)人寫的,博大精深呀。經(jīng)常在細(xì)節(jié)上深入進(jìn)去,看的時(shí)候,要記得經(jīng)常切換回來。不是很容易看懂。因?yàn)橛刑嗉?xì)節(jié),經(jīng)??粗懊娴模屯撕竺娴?,特別是函數(shù)、宏名,要是覺得自己內(nèi)存堆??臻g夠大的話??梢阅脕碓囋?。

  Linux設(shè)備驅(qū)動(dòng)程序,雖是掛著設(shè)備驅(qū)動(dòng),但是大多是講內(nèi)核,也講了很多系統(tǒng)接口。

  內(nèi)核2.4版源代碼分析大全,李善平寫的,典型的中國(guó)人寫的書,概念都很清楚,整體框架也不錯(cuò)。比較理解“中國(guó)國(guó)情”。

  還有UC/OS_II,5000多行代碼的嵌入式操作系統(tǒng),也是開源的,有了任哲、邵貝貝的那兩本書,足以搞定了。感覺比較適合本科操作系統(tǒng)課程的課程設(shè)計(jì),可惜俺哪會(huì)還看到。

  好了,我們接下來走。好多人裝上Linux之后,件事找到內(nèi)核源碼所在的路徑,打開一個(gè)C程序文件,開始嘩嘩嘩翻頁,看看大名鼎鼎的Linux內(nèi)核代碼到底長(zhǎng)啥模樣──然后關(guān)閉。這是可理解的,但卻不是學(xué)習(xí)的方法。剛開始,必須從讀書入手。至少要對(duì)內(nèi)核有一個(gè)Overview之后,才有可能帶著問題去試圖閱讀源代碼本身。 下面就講一下我讀過的幾本書:

  1, 《Linux內(nèi)核設(shè)計(jì)與實(shí)現(xiàn)》,英文名Linux Kernel Development(所以有人叫它LKD),機(jī)械工業(yè)出版社,¥35, 美國(guó)Robert Love著,陳莉君譯者。 評(píng)說:

  此書是當(dāng)今首屈一指的入門圖書。作者是為2.6內(nèi)核加入了搶占的人,對(duì)調(diào)度部分非常精通,而調(diào)度是整個(gè)系統(tǒng)的,因此本書是很權(quán)威的。這本書講解淺顯易懂,全書沒有列舉一條匯編語句,但是給出了整個(gè)Linux操作系統(tǒng)2.6內(nèi)核的概觀,使你能通過閱讀迅速獲得一個(gè)overview。而且對(duì)內(nèi)核中較為混亂的部分(如下半部),它的講解是透徹的。對(duì)沒怎么深入內(nèi)核的人來說,這是強(qiáng)烈推薦的一本書。

  2, 《Linux內(nèi)核源代碼情景分析》上、下。毛德操、胡希明著,浙江大學(xué)出版社,上冊(cè)¥80,下冊(cè)¥70. 評(píng)說:

  本書是基于2.4.0內(nèi)核的,比較早,也沒聽說會(huì)出第二版。上冊(cè)講解內(nèi)存管理、中斷、異常與系統(tǒng)調(diào)用、進(jìn)程控制、文件系統(tǒng)與傳統(tǒng)Unix IPC;下冊(cè)講解socket、設(shè)備驅(qū)動(dòng)、SMP和引導(dǎo)。關(guān)于這套書的評(píng)價(jià)褒貶不一,我個(gè)人認(rèn)為其深度是同類著作中秀的。本書基于Intel IA32體系,由于厚度大,很多體系上的知識(shí)都捎帶講解了,所以如果你想深入了解內(nèi)核的工作機(jī)制而又不非常熟悉Intel CPU的體系構(gòu)造,本書是合適的。缺點(diǎn)是:版本較老,沒有TCP/IP協(xié)議棧部分(它講的socket只是Unix域協(xié)議的),圖表太少,不適合初學(xué)者入門。還有就是對(duì)學(xué)生朋友來說,可能書價(jià)偏高,這樣的話可以考慮先買上冊(cè),因?yàn)樯蟽?cè)是部分,下冊(cè)一大部分都在講具體PCI/ISA/USB設(shè)備的驅(qū)動(dòng)。

  3, 《深入理解Linux內(nèi)核》第二版。中國(guó)電力出版社。也是陳莉君譯。此書是Linux內(nèi)核黑客在推薦圖書時(shí)的。 評(píng)說:

  此書C版的converse兄送了我一本版,因此就沒買第二版,比較后悔。因此只就版說一說,版基于2.2,第二版2.4 。我見O'Reilly主頁上說第三版的英文版將于2005年11月出版,也不知咱們何時(shí)才能見到。此書圖表很多,形象地給出了關(guān)鍵數(shù)據(jù)結(jié)構(gòu)的定義,與《情景分析》相比,本書內(nèi)容緊湊,不會(huì)一個(gè)問題講解動(dòng)輒上百頁,有提綱挈領(lǐng)的功用,但是深度上要遜于《情景分析》。

  4, 其它的幾本書。市面上能見到的其它的Linux內(nèi)核的圖書,象《Linux設(shè)備驅(qū)動(dòng)程序》、《Linux內(nèi)核源代碼完全注釋》以及新出的《Linux內(nèi)核分析及編程》等。

  《Linux設(shè)備驅(qū)動(dòng)程序》第二版是基于2.4的,中文翻譯不錯(cuò),中國(guó)電力出版。這書強(qiáng)調(diào)動(dòng)手實(shí)踐,但它是講解“設(shè)備驅(qū)動(dòng)”的,不是的東西,而且有些東西沒硬件的話無法實(shí)踐,可能更適合驅(qū)動(dòng)開發(fā)的程序員吧,不太適合那些For fun and profit的人。此書有第三版英文版,東南大學(xué)出版社影印,講解2.6的,行文流暢,講解的面也比第二版更廣泛,我讀過其中關(guān)于同步與互斥、內(nèi)存分配的部分,感覺很不錯(cuò)。

  《Linux內(nèi)核源代碼完全注釋》(機(jī)械工業(yè)出版社)是同濟(jì)大學(xué)的博士生趙炯的著作,講解0.1Linux內(nèi)核,我沒買也沒看,有看過的朋友說一說。

  《Linux內(nèi)核分析及編程》(電子工業(yè)出版社)是剛剛出版的,國(guó)人寫的,講解2.6.11 。很多人說好,但有人說不夠系統(tǒng),我沒買,不敢評(píng)說。

  還有一本清華出的《Linux內(nèi)核編程指南(第三版)》,原書應(yīng)該是好書,但是翻譯、排版十分糟爛,脫字跳行,根本沒法看,我買了一本又扔掉了 



  

版權(quán)與免責(zé)聲明

凡本網(wǎng)注明“出處:維庫電子市場(chǎng)網(wǎng)”的所有作品,版權(quán)均屬于維庫電子市場(chǎng)網(wǎng),轉(zhuǎn)載請(qǐng)必須注明維庫電子市場(chǎng)網(wǎng),http://www.udpf.com.cn,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。

如涉及作品內(nèi)容、版權(quán)等問題,請(qǐng)?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。

廣告
OEM清單文件: OEM清單文件
*公司名:
*聯(lián)系人:
*手機(jī)號(hào)碼:
QQ:
有效期:

掃碼下載APP,
一鍵連接廣大的電子世界。

在線人工客服

買家服務(wù):
賣家服務(wù):
技術(shù)客服:

0571-85317607

網(wǎng)站技術(shù)支持

13606545031

客服在線時(shí)間周一至周五
9:00-17:30

關(guān)注官方微信號(hào),
第一時(shí)間獲取資訊。

建議反饋

聯(lián)系人:

聯(lián)系方式:

按住滑塊,拖拽到最右邊
>>
感謝您向阿庫提出的寶貴意見,您的參與是維庫提升服務(wù)的動(dòng)力!意見一經(jīng)采納,將有感恩紅包奉上哦!