出版時間:2010-7 出版社:人民郵電出版社 作者:任橋偉 頁數(shù):350
Tag標簽:無
前言
至此落筆之際,恰至Linux問世18周年,18年的成長,如夢似幻,風雨頗多,感慨頗多。猶自憶起多年以前一位前輩訓導時的箴言:今天的必然正是由之前一系列的偶然所決定的。過去的某年某月,我偶然初識Linux就身陷其中,至今仍找不到出去的路。那么,當你偶然地拿起這本書,偶然地看到這段話,你是否會問自己:這樣的偶然又會導致什么樣的必然?如果你依然決定繼續(xù)這次的偶然之旅,那么首先請認識一個人和一只企鵝。這個人自然就是Linux Torvalds,我們稱他為Linux或李納斯,正是這位來自芬蘭的天才,在1991年1月2日,攥著在圣誕節(jié)和生日得到的錢,偶然地做出了一個重大的財政決定,分期3年買一臺價格為3500美元的相貌平平的計算機,從而Linux開始了。企鵝則是Linux的標志,很多人可能不知道Linux,但是卻可能知道這只企鵝,這是一個奇怪的現(xiàn)象,就像很多人知道微軟,卻不知道比爾蓋茨。不管怎么說,是Linux塑造了這只企鵝,并讓它有一副爽透了的樣子,就像剛剛吞下一扎啤酒。除此之外,這只企鵝還要很特別,其他的企鵝都是黑嘴巴黑腳蹼,但它卻是黃嘴巴黃腳蹼。在繼續(xù)閱讀之前,我還想問一個問題:你在強迫自己學習內核嗎?我很希望你能回答不是,但希望與現(xiàn)實往往都有段不小的距離,因為很多時候,我會發(fā)現(xiàn)身邊的人是因為覺得內核很高深而強迫自己喜歡的。強迫自己去喜歡一個人是多么痛苦的事情?;蛟S,針對這個問題,最讓人愉悅的回答是“說實話,我學習的熱情從來都沒有低落過”。正如Linux在自己的自傳《Just for Fun》中希望的那樣。本書的組織形式本書將Linux內核的學習分為4個層次:全面了解,掌握基本功;興趣導向,選擇重點深度鉆研;融入社區(qū),參與開發(fā)做貢獻;堅持,堅持,再堅持??偨Y起來,就是“全面了解抓基本,興趣導向深鉆研;融入社區(qū)做貢獻,堅持堅持再堅持?!保ㄈ绻闶且粋€修真小說愛好者,可以將其與煉氣、筑基、結丹和元嬰等層次相對應)。第一層次修煉的內容包括了前3章,目的是希望你能夠對Linux以及內核有個全面的認識和了解,掌握分析Linux內核源代碼的分析方法。第l章主要介紹了Linux的18年成長史,或許你會樂意陪我一起緬懷這過去的18年。第2章介紹內核的配置和編譯過程,和任何大型軟件源碼的學習一樣,學會編譯和配置是第一步。
內容概要
本書重點介紹Linux內核工作原理以及學習方法。將Linux內核的修煉之道總結為四個層次:“全面了解抓基本,興趣導向深鉆研,融入社區(qū)做貢獻,堅持堅持再堅持”。第一層次目的是對Linux以及內核有個全面的認識和了解,掌握Linux內核源代碼的分析方法。第二個層次討論了內核中系統(tǒng)初始化、系統(tǒng)調用、中斷處理、進程管理及調度、內存管理、文件系統(tǒng)以及設備驅動等主要部分,目的是希望讀者以興趣為導向,尋找一個子系統(tǒng)或模塊,對其代碼深入鉆研和分析。第三個層次介紹了內核開發(fā)與調試的一些基本信息,目的是希望讀者能夠融入到內核的開發(fā)社區(qū),做出自己的貢獻。第四個層次濃縮為兩個字——堅持。 本書語言通俗易懂,內容覆蓋了內核的學習方法到內核設計與實現(xiàn)等各方面內容,能夠帶領讀者快速走入Linux內核的世界,適合對Linux內核學習茫然的初學者,也適合各類希望深入理解Linux內核的讀者。
作者簡介
任橋偉,華清遠見資深講師,6年嵌入式系統(tǒng)軟硬件開發(fā)經驗,資深研發(fā)工程師、項目經理、CSDN專家。熟悉嵌入式系統(tǒng)軟硬件設計的全過程,多年來始終專注于嵌入式Linux內核研究和設備驅動的開發(fā),精通嵌入式Linux操作系統(tǒng),尤其擅長Linux系統(tǒng)內核及設備驅動開發(fā)。作為資深PM,曾指導完成多個大型嵌入式項目的軟硬件設計,涉及通信、網絡、控制等領域。著有《Linux內核修煉之道》、《Linux那些事》等備受網友關注的專業(yè)圖書,目前致力于嵌入式Linux內核技術的普及推廣和人才培養(yǎng)。
書籍目錄
第1章 初識Linux 1.1 Linux史記 1.1.1 Linux誕生記 1.1.2 泰坦尼克的狂潮 1.1.3 提前發(fā)生的革命 1.1.4 和平、愛情和Linux 1.1.5 Ubuntu 4.10 1.1.6 Richard Stallman的征婚啟事 1.1.7 一封公開信 1.1.8 首款Android手機 1.1.9 Linux信用卡 1.2 內核的版本 1.3 獲取內核源碼 1.4 Linux發(fā)行版 1.4.1 軟件包管理器 1.4.2 流行的發(fā)行版 1.4.3 選擇Linux發(fā)行版 第2章 配置與編譯內核 2.1 配置內核 2.1.1 幾種配置方式 2.1.2 .config文件 2.1.3 配置選項詳解 2.2 編譯內核 2.2.1 準備工作 2.2.2 如何為內核打補丁 2.2.3 編譯步驟 2.2.4 文檔的編譯 2.2.5 編譯小技巧 2.3 自由軟件的編譯與安裝 2.3.1 發(fā)布時的組織結構 2.3.2 配置 2.3.3 編譯 2.3.4 安裝 第3章 瀏覽內核源代碼 3.1 內核學習的技術基礎 3.2 內核體系結構 3.3 內核源碼目錄結構 3.4 瀏覽代碼的工具 3.4.1 Source Insight 3.4.2 Vim+Cscope 3.4.3 LXR 3.5 內核代碼的特點 3.5.1 GCC擴展 3.5.2 內嵌匯編 3.6 內核中的鏈表 3.7 Kconfig和Makefile 3.7.1 Kconfig結構 3.7.2 利用Kconfig和Makefile尋找目標代碼 3.8 代碼分析示例 3.8.1 分析README 3.8.2 分析Kconfig和Makefile 3.8.3 尋找初始化函數(shù) 第4章 系統(tǒng)初始化 4.1 引導過程 4.2 內核初始化 4.2.1 start_kernel函數(shù) 4.2.2 reset_init函數(shù) 4.2.3 kernel_init函數(shù) 4.2.4 init_post函數(shù) 4.3 init進程 4.4 內核選項解析 4.4.1 內核選項 4.4.2 注冊內核選項 4.4.3 兩次解析 4.5 子系統(tǒng)的初始化 4.5.1 do_initcalls()函數(shù) 4.5.2 .initcall.init節(jié) 4.5.3 分析示例 第5章 系統(tǒng)調用 5.1 系統(tǒng)調用概述 5.1.1 系統(tǒng)調用、POSIX、C庫、系統(tǒng)命令和內核函數(shù) 5.1.2 系統(tǒng)調用表 5.1.3 系統(tǒng)調用號 5.1.4 系統(tǒng)調用服務例程 5.1.5 如何使用系統(tǒng)調用 5.1.6 為什么需要系統(tǒng)調用 5.2 系統(tǒng)調用執(zhí)行過程 5.3 系統(tǒng)調用示例 5.3.1 sys_dup 5.3.2 sys_reboot 5.4 系統(tǒng)調用的實現(xiàn) 5.4.1 如何實現(xiàn)一個新的系統(tǒng)調用 5.4.2 什么時候需要添加新的系統(tǒng)調用 第6章 中斷與中斷處理 第7章 進程管理 第8章 調度 第9章 內存管理 第10章 文件系統(tǒng) 第11章 設備驅動 第12章 內核開發(fā)基礎 第13章 調試
章節(jié)摘錄
插圖:
媒體關注與評論
博主內功扎實、文筆幽默,國內具備這兩個條件的作者不多,難得!期待《Linux內核修煉之道》早日發(fā)行?! W友hust_tulip仁者見仁,智者見智,看問題的角度不同,當然認同點也不盡相同,總的來說仁兄的文章我很認同,不過最讓我共鳴的還是“看懂內核中自Kconfig和Makefile文件是重中之重”。 ——網友yunsongice期待博主的書早日出版,感覺嵌入式Linux的工作很好找,希望大家一起努力,深入學習L1nux內核?! 狢SDN網友時光如逝,07年看到Fudan_abc兄的文章,深深地被吸引住了,文筆與技術都是如此精彩,如今吾也由學生變成工程師,再次看到fudan_abc兄的文章,再次感嘆時光如梭! ——網友EndAI我對閣下的敬仰猶如滔滔江水連綿不絕,一發(fā)而不可收。小弟我做了兩年多的Linux/C應用級編程,卻始終徘徊在Linux內核之外,不是不感興趣,而是實在太難。屢戰(zhàn)屢敗,屢敗屢戰(zhàn),始終入不了門,希望閣下的《Linux內核修煉之道》能帶領我進入Linux內核的大門?! 狢SDN網友寫得很嚴謹,又不失幽默,真的,挺好的,繼續(xù)關注 ——網友qianniu2meiyi能找到這種無私而有用的資料不簡單吶,極少發(fā)評論的我也不得不感概一下,以表支持?! 狢SDN網友Fudan_abc兄乃是我國不能缺的才人!請教下Fudan_abc兄,你是如何進入Linux內核源碼的世界7具體點說就是你是怎樣入門的7你的文章寫得實在太好了,我不否定ULK是神書,但我更認可你寫的文章!Fudan_abc兄的新書我一定在第一時間買! ——網友trlkgrelgk太精辟了,設備模型這塊我看了很長時間也沒搞明白,看君的文章,如醍醐灌頁,讓我豁然開朗?! W友shxflg
編輯推薦
《Linux內核修煉之道》是一本揭秘Linux內核學習方法的圖書。內核修煉秘籍大揭秘,每天萬余人爭相閱讀。十余位Linux內核專家聯(lián)合推薦Chris DiBona (谷歌開源程序經理開源軟件大師)吳雄昂 (ARM中國區(qū)總經理)欒躍 (谷歌開發(fā)技術推廣部中國市場主管經理)郭淳學 (中國軟件行業(yè)協(xié)會嵌入式系統(tǒng)分會副理事長兼秘書長)何小慶 (北京麥克泰軟件技術有限公司董事長)馬忠梅 (北京理工大學副教授)史應生 (紅帽專家服務團隊資深咨詢顧問,RHCA、RHCSS中國第一人)陳莉君 (西安郵電學院教授)向農 (電子工程世界總編)陳渝 (清華大學副教授)伍朋 9(Linux Kernel Developer)李澤帆 (富士通南大軟件技術有限公司)
圖書封面
圖書標簽Tags
無
評論、評分、閱讀與下載