linux內核源代碼情景分析
『壹』 linux內核源代碼情景分析的作者簡介
1989年到美國留學,在其取得碩士學位後,先後在美國在摩托羅拉等知名企業從事IT工作,對計算機軟體和硬體有十分深入、透徹的理解,在此基礎上與胡希明一同撰寫了Linux業內的經典之作《LINUX核心源代碼情景分析》。1999年針對「千年蟲」問題,他曾巧妙應用「混合基數」原理,提出一種獨特的解決方案,該方法已獲美國專利登記,同時獲得日內瓦PCT國際專利局全球專利登記。歸國後,毛德操教授一直在浙江大學從事計算機軟體教育工作,同時在浙大網新作高級顧問兼研發中心主任。2003年12月毛教授來到北京出任新近改組的北京共創開源軟體有限公司執行副總裁職位。
『貳』 看Linux內核源代碼情景分析之前要看什麼書我完全是菜鳥。看第一章預備知識cpu定址方式就看不懂了。
先看看王爽的《匯編語言》,了解一下CPU基本原理和實模式下的寄存器和定址方式吧,然後建議看看深入理解LINUX內核,講得詳細一些。
《Linux內核源代碼情景分析》定址方面直接講的保護模式的定址方法,沒基礎的話一下子是看不懂的,等你了解了實模式的定址方式,對寄存器、內存分段管理有一定了解後,就比較容易看懂了。
『叄』 不知道哪位大蝦讀過浙大的《linux內核源代碼情景分析》這本書沒有,你們覺得這本書寫的怎麼樣
關於內核學習我建議不要上來就讀內核而是先了解內核的構成和特性,然後通過思考發現疑問這時再去讀內核源碼。即先了解概貌在讀局部細節。而且內核分成好多部分,不要只是按照順序去讀,應該針對某一部分比如內存管理或進程管理橫向讀幾本書,這樣可以理解很全面。我讀過的書有下面幾本,在網上也很容易找到:
Linux.Kernel.Development.Second.Edition.chm(中文叫LINUX內核設計與實現,這本書入門很適合的)
OReilly.Understanding.the.Linux.Kernel.3rd.Edition.Nov.2005.HAPPY.NEW.YEAR.chm
Linux+Device+Drivers(3rd+Edition).chm(這本書雖然是將驅動但是驅動模型和內存管理那一塊也有涉及)
此外,作為初學者必須先充分了解linux的上層API系統函數才行,特別應該了解進程管理、進程通信、文件訪問、IO訪問相關內容,否則你將無法深刻理解內核的好處體現在哪。(當然,這些你可能已經熟知了,全當做小提示吧)
網上的浙大的《linux內核源代碼情景分析》那本書很多是基於2.4內核講解的需要注意。如果學習的話也建議學習2.6,2.6跟2.4比發生了很多顯著改善,應該學習的。
學習內核是需要長期進行的,做好心理准備啊,這個大胖子我們無法一口吃掉的。
『肆』 怎麼學習linux
Linux主體分為「運維」與「開發」兩個方向,無論你是Linux相關從業者,還是說愛好都可以歸類到這里,其中「運維」一般是初學者或者轉行人員的首選,而Linux運維主要是對伺服器穩定、性能與安全方面的維護和調試。
實際上Linux入門並不困難,只要具備Linux基礎,讀懂Linux的命令格式,大多數的服務架構都是可以按照文檔部署出來。當然做Linux開發,個人建議去參加培訓學習更有效率,如果報班學習則大概需要4-6個月時間。
學習主要內容有:
1)網路基礎與linux系統的管理
2)優化及高可用技能
3)虛擬化與雲平台技術
4)開發運維
畢業後可從事的工作有:
1)Linux運維工程師
2)資料庫工程師
3)雲計算運維工程師
4)自動化運維工程師
5)雲計算架構工程師等
互聯網行業目前還是最熱門的行業之一,學習IT技能之後足夠優秀是有機會進入騰訊、阿里、網易等互聯網大廠高薪就業的,發展前景非常好,普通人也可以學習。
想要系統學習,你可以考察對比一下開設有相關專業的熱門學校,好的學校擁有根據當下企業需求自主研發課程的能力,能夠在校期間取得大專或本科學歷,中博軟體學院、南京課工場、南京北大青鳥等開設相關專業的學校都是不錯的,建議實地考察對比一下。
祝你學有所成,望採納。
『伍』 linux內核源代碼情景分析 怎麼樣
這段時間一直在為畢業論文糾結,論文題目是關於Linux進程模塊的源代碼分析與研究。 以前拜讀過《操作系統設計與實現》,《Linux內核設計與實現》,《understanding the linux kernel 3rd》等等,桌面還有大把的網路下下來的資料。 初識這本書,是大三時候一位同學跟我提起,當時覺得還沒到閱讀源代碼的程度。一直到做這篇論文,在我最糾結的時候,忽然想起朋友說過這本書,於是下了電子版本。 理所當然,我完全被這本書吸引。 我難掩心中的激動,幾乎要歡呼起來,這何嘗不是一本可以當做小說閱讀的書籍! 這本書不像前兩本那樣,僅僅只是羅列出Linux的特性,數據結構,相關的技術等等,他是在帶領你去走進Linux源代碼的世界,順著代碼的調用,一路斬荊披棘,最後帶你到底目的地。途中雖然驚險,但一路過來,卻是充滿了趣味,更是享受到了智力上的成就感。 關於書的語言。 讀這本書,彷彿是你的好朋友就坐在你面前跟你講話,他把Linux源碼中的枯燥的理論跟生活中普遍的事物聯系起來,像進程的task_struct結構體,相當於我們的「戶口本」,進程轉換到"zombie」狀態,「進程死亡了無法幫自己注銷戶口登記,要父進程幫忙」等等,這些解釋非常地形象。所謂的大師也便是如此,用最通俗的語言把最深奧的道理講明白,我想,這本書的作者做到了。 此書的不足。 這本書也存在著不足之處。第一點,此書是2001年出版的,所以是以2.4版本的源代碼為基礎的,而現在已經長期停留在2.6版本了;第二是,書中的圖片嚴重不足,很多原理只要附加張圖片便能讓讀者明了,可是作者花了不少的篇幅去解釋而沒有附加圖片,這很讓人費解,或者這是因為錄入不是作者本人做的原因;第三,這跟很多國內書籍類似,沒有索引,查找代碼的講解是件很痛苦的事情。 距離這本書第一次出版已經有八年的時間了,希望作者能抽出時間再修訂,在此基礎上做2.6版本源代碼的分析。 這是我見過的國內比較好的真正用心去寫的計算機書籍,在此之前也只讀過一本關於匯編語言的書籍,作者是王爽。依稀還記得當年舍友都睡了的時候,一個人小心翼翼地趴在筆記本前仔細閱讀的情景,如今甚是懷念。 這是本好書。
『陸』 有沒有Linux內核源碼指導書籍
1.《Linux內核設計與實現》
本書重在原理。適合入門的最佳圖書。作者是為2.6內核加入了搶占的人,對調度部分非常精通,而調度是整個系統的核心,因此本書是很權威的。
2.《深入理解Linux內核》
此書比上一本多了些細節。是Linux內核黑客在推薦圖書時的首選。寫的比較簡單易懂,適合剛剛接觸LINUX內核的。
此書圖表很多,形象地給出了關鍵數據結構的定義,與《Linux內核源代碼情景分析》相比,本書內容緊湊,不會一個問題講解動輒上百頁,有提綱挈領的功用,但是深度上要遜於《Linux內核源代碼情景分析》。
3.《LINUX設備驅動程序(第3版)》
這書強調動手實踐!但它是講解「設備驅動」的,不是最核心的東西,而且有些東西沒硬體的話無法實踐,可能更適合驅動開發的程序員吧
其中關於同步與互斥、內存分配的部分,感覺很不錯。
4.《Linux內核源代碼情景分析》
好,很經典,是浙大教授毛德操寫的,可惜成書於2001年之後一直沒有更新。分上下冊。
很多是基於2.4內核講解的需要注意。如果學習的話也建議學習2.6,2.6跟2.4比發生了很多顯著改善,應該學習的。
全書內容博大精深,不是非常好懂,對細節問題描述比較清晰。但是感覺對內核的整體感覺不夠強。另外缺少網路部分的分析。覺得不是很適合初學者。
5.《Linux內核源代碼分析》
點評:面對中高級,這本書很好,對了解操作系統是一本不可多得的好書。
6. 《LINUXKERNEL技術手冊》
參考手冊,很薄,值得一看。
7.《深入Linux內核架構》
這本書針對的是比較新的內核版本2.6.24;內容比較全面,深入淺出。
如果沒有對Linux內核的初步結構的認識,那麼會看得比較吃力。建議可以一邊去翻在國內已經聞名已經久的四本Linux內核著作(《Linux內核原代碼情景分析》、《Linux內核設計與實現》、《深入理解Linux內核》、《Linux設備驅動程序》),再一邊看這本書,把這本書當作一個補充或者當作一個內核框架圖譜說明書來閱讀,收效會更好。
8.《Linux內核完全注釋》
主要描述和注釋了Linux0.11內核全部源代碼。對於初學Linux內核操作系統的人來講,該書能夠引領讀者快速入門,並且能全面了解一個簡單操作系統的工作機理。對於進一步學習現在的Linux內核具有非常大的指導作用。對於學習嵌入式應用的技術人員來講,通過《完全注釋》一書的學習也能迅速融入嵌入式應用領域。
9.《Orange S:一個操作系統的實現》
從只有二十行的引導扇區代碼出發,一步一步地向讀者呈現一個操作系統框架的完成過程。
『柒』 2.6了,看linux 內核源代碼情景分析有意義嗎
意義肯定有,只是你如何評定你的時間精力「投入」與「收獲」問題。看基於2.4版的《linux 內核源代碼情景分析》要注意,內存管理部分與2.6完全不同。
『捌』 Linux內核源代碼情景分析適合初學linux的人嗎
如果你有一定的c語言基礎並且對linux的文件系統比較了解的話,可以直接看linux的內核源碼分析
『玖』 LINUX內核源代碼情景分析(上冊)
毫不猶豫的買下了,京東速度果然非常快的,從配貨到送貨也很具體,快遞非常好,很快收到書了。書的包裝非常好,沒有拆開過,非常新,可以說無論自己閱讀家人閱讀,內核源代碼情景分析(上冊)採取類似於英語教學中行之有效的情景會話的教學方法,全面深入地剖析了最新版本核心源代碼,並對核心的獨特優點和需要進一步改進的問題作了精闢的評述。內核源代碼情景分析(上冊)包括預備知識、存儲管理、中斷和系統調用、進程和進程調度、文件系統以及傳統的進程通訊共六章。收藏還是送人都特別有面子的說,特別精美各種十分美好雖然看著書本看著相對簡單,但也不遑多讓,塑封都很完整封面和封底的設計、繪圖都十分好畫讓我覺得十分細膩具有收藏價值。書的封套非常精緻推薦大家購買。打開書本,書裝幀精美,紙張很乾凈,文字排版看起來非常舒服非常的驚喜,讓人看得欲罷不能,每每捧起這本書的時候似乎能夠感覺到作者毫無保留的把作品呈現在我面前。作業深入淺出的寫作手法能讓本人猶如身臨其境一般,好似一杯美式咖啡,看似快餐,其實值得回味無論男女老少,第一印象最重要。從你留給別人的第一印象中,就可以讓別人看出你是什麼樣的人。所以多讀書可以讓人感覺你知書答禮,頗有風度。多讀書,可以讓你多增加一些課外知識。培根先生說過知識就是力量。不錯,多讀書,增長了課外知識,可以讓你感到渾身充滿了一股力量。這種力量可以激勵著你不斷地前進,不斷地成長。從書中,你往往可以發現自己身上的不足之處,使你不斷地改正錯誤,擺正自己前進的方向。所以,書也是我們的良師益友。多讀書,可以讓你變聰明,變得有智慧去戰勝對手。書讓你變得更聰明,你就可以勇敢地面對困難。讓你用自己的方法來解決這個問題。這樣,你又向你自己的人生道路上邁出了一步。多讀書,也能使你的心情便得快樂。讀書也是一種休閑,一種娛樂的方式。讀書可以調節身體的血管流動,使你身心健康。所以在書的海洋里遨遊也是一種無限快樂的事情。用讀書來為自己放鬆心情也是一種十分明智的。讀書能陶冶人的情操,給人知識和智慧。所以,我們應該多讀書,為我們以後的人生道路打下好的、扎實的基礎!讀書養性,讀書可以陶冶自己的性情,使自己溫文爾雅,具有書卷氣讀書破萬卷,下筆如有神,多讀書可以提高寫作能力,寫文章就才思敏捷舊書不厭百回讀,熟讀深思子自知,讀書可以提高理解能力,只要熟讀深思,你就可以知道其中的道理了讀書可以使自己的知識得到積累,君子學以聚之。總之,愛好讀書是好事。讓我們都來讀書吧。其實讀書有很多好處,就等有心人去慢慢發現.最大的好處是可以讓你
『拾』 Linux學習書籍求推薦
Linux學習書籍求推薦
1、《Linux與Unix Shell 編程指南》
C語言基礎
1、《C Primer Plus,5th Edition》【美】Stephen Prata著
2、《The C Programming Language, 2nd Edition》【美】Brian W. Kernighan David M. Rithie(K & R)著
3、《Advanced Programming in the UNIX Environment,2nd Edition》(APUE)
4、《嵌入式Linux應用程序開發詳解》
Linux內核
1、《深入理解Linux內核》(第三版)
2、《Linux內核源代碼情景分析》毛德操 胡希明著
研發方向
1、《UNIX Network Programming》(UNP)
2、《TCP/IP詳解》
3、《Linux內核編程》
4、《Linux設備驅動開發》(LDD)
硬體基礎
1、《ARM體系結構與編程》杜春雷著
2、S3C2410 Datasheet
英語基礎
1、《計算機與通信專業英語》
系統教程
1、《嵌入式系統――體系結構、編程與設計》
2、《嵌入式系統――採用公開源代碼和StrongARM/Xscale處理器》毛德操 胡希明著
3、《Building Embedded Linux Systems》
理論基礎
1、《演算法導論》
2、《數據結構(C語言版)》
3、《計算機組織與體系結構?性能分析》
4、《深入理解計算機系統》【美】Randal E. Bryant David O』Hallaron著
5、《操作系統:精髓與設計原理》
6、《編譯原理》
7、《數據通信與計算機網路》
8、《數據壓縮原理與應用》
入門篇
《LINUX權威指南》書不錯,寫的很全面也比較廣,涉及的不深,做為入門書籍不錯,可以比較全面的了解linux 。另外比較熱門的也可以看看《鳥哥的私房菜》等書,偏管理類的書。如果想做server方向的可以找來看看。
驅動 篇
《LINUX設備驅動程序 》就是網上說的「LDD」,經典之作,必備書籍。國產經典《Linux驅動詳細解》也是一本非常不錯的書,很實用,書中源代碼分析比較多,基於2440的,對linux外圍驅動有很全面的講解
內核篇
浙江大學的《LINUX內核源代碼情景分析》,外國鬼子的《萊昂氏UNIX源代碼分析》還有《深入理解linux內核》都是出名的經典巨作。另外趙 炯的《LINUX內核完全剖析–基於0.12內核》也非常不錯,對內核代碼進行了詳細的注釋,非常有助於對內核的理解和代碼的分析。
shell篇
《LINUX與UNIX Shell編程指南》
應用 編程
不用說了肯定是《unix環境高級編程》被稱為unix編程的聖經。
TCP/IP篇
《TCP/IP詳解》作者W.Richard Stevens也是《unix環境高級編程》的作者,牛人出的書沒有一本不是經典的。但是英年早逝,默哀一下。
c語言
《The C Programming Language》正是作者造出來的c語言,書能垃圾就怪了
《c和指針》和《c缺陷和陷阱》兩本必備。包含了c語言最容易出錯的地方,加深c語言功力的好材料。
關於演算法
《演算法導論》
1 熟悉linux基本環境 >>> 《鳥哥的私訪菜》《unix初級教程》 《linux編程寶典》(市面上無,圖書館有), 等等。
2 熟悉操作系統的基礎知識 >>> 《現代操作系統》 《操作系統概念》
3 熟悉系統編程 >>> 《unix環境高級編程第二版》《unix操作系統設計與實現》
4 內核 按先後順序: 《 linux內核設計與實現》 《linux設備驅動程序》 《深入理解 linux內核》 《linux內核源代碼情景分析》 《深入理解linux虛擬內存系統》
5 其他一些書籍: 《freebsd操作系統設計與實現》 《solaris內核結構》 《unix高級教程:系統技術內幕》 《現代體系結構的unix系統:內核程序員的smp與cache技術》 《保護方式下的80386及其編程》 (後3本市面上沒了,大學圖書館里一般都有》 《Intel64 and IA-32 Arichitectures Software Developer』s Manual》
6 其實內核玩深了,體系和編譯也要學好 《計算機體系結構:量化研究方法》 《編譯原理》(龍書)
Linux編程推薦書籍一覽表
shell 編程
《LINUX與UNIX SHELL編程指南》
BASH寶典:
Advanced Bash Scripting Guide (如果你使用的是 GNU/Debian 系統,可以用 apt-get install abs-guide 安裝該文檔)
BASH Programming – Introction HOW-TO
Bash Man
用戶級編程書籍:
Advanced Programming in the UNIX Environment(中文版《UNIX環境高級編程》第二版) 作者 W.Richard
Stevens/尤晉元等
GNU/Linux編程指南 作者 Kurt Wall
Linux 程序設計權威指南 作者 於明儉、陳向陽、方漢
《The Art of Unix Programming》作者 E.S.R
Computer Systems A Programmer』s Perspective
(中文名)《深入理解計算機系統(修訂版)》
《Unix Systems Programming》(中文版《UNIX系統編程》)作者: (美)KAY
A.ROBBINS, STEVE ROBBINS 譯者:陳涓 趙振平
網路編程:
Unix Network Programming V1 & V2,Unix網路編程卷1、2 作者 W.Richard Stevens
《unix網路編程》
XWindow編程
Definitive Guides to the X WindowSystem 作者 Dan Heller, Paula M. Ferguson
內核源代碼閱讀(結合源代碼)和編程
(入門)
《邊干邊學Linux內核指導》
(高級)
《Linux Kernel Development》
《Linux內核源代碼情景分析》
《深入分析Linux內核源代碼》 陳莉君
《 Understanding Linux Network Internals 》即《 深入理解Linux網路內幕(英文影印版)》Christian Benvenuti
內核模塊編程
《The Linux Kernel Mole Programming Guide》
Linux設備驅動編程
Linux設備驅動程序/Linux Device
Drivers 作者 Alessandro Ruibini
多線程編程
《多線程編程指南》