出版時(shí)間:2011-1 出版社:中國(guó)電力出版社 作者:(加)亞荷毛爾 等著,秦云川 改編 頁(yè)數(shù):414 譯者:O'Reilly Taiwan公司
Tag標(biāo)簽:無(wú)
前言
當(dāng)本書第一版的作者——Karim Yaghmour于1997年任職一家硬件制造公司的時(shí)候,曾率先提議在嵌入式系統(tǒng)中使用Linux,他的建議在當(dāng)時(shí)不僅令人感到驚訝,也受到某些質(zhì)疑。現(xiàn)在,大多數(shù)嵌入式系統(tǒng)若不是已經(jīng)在使用Linux,就是正在考慮使用Linux。的確,有不少大公司及政府機(jī)關(guān)在其嵌入式軟件的需求上逐漸依賴Linux。本書第一版頗受歡迎,但自本書第一版發(fā)行以來(lái),Linux內(nèi)核與相應(yīng)的工具取得了不少的進(jìn)展,這使得Linux更具吸引力。其中最主要的是,出現(xiàn)了若干的實(shí)時(shí)擴(kuò)展與配套環(huán)境,這會(huì)在本書第二版最后3章加以探討。此外,由于本書第一版、熱心的開放源碼與自由軟件程序員已經(jīng)簡(jiǎn)化了GNu/Linux套件(此處之所以提到GNu,是因?yàn)橐⒂行У腖inux系統(tǒng),需要用到來(lái)自GNu這個(gè)自由軟件計(jì)劃的工具)的構(gòu)建與安裝程序,因此本書第二版會(huì)介紹許多令人感到驚奇的高級(jí)工具,包括Eclipse以及用于替嵌入式Linux系統(tǒng)“打造構(gòu)建工具”的各種工具。不過(guò),我們?nèi)詴?huì)提供大量的底層信息給那些有需要的人,以協(xié)助您了解它們?cè)诒澈笥玫搅四男┹o助工具。要跟上Linux各部分與相關(guān)工具的爆炸性進(jìn)展,最好的辦法就是由研究嵌入式與實(shí)時(shí)Linux相關(guān)問(wèn)題的專家來(lái)告訴你。因此,本書第二版的作者加入了幾位GNu/Linux社群中關(guān)鍵的參與者,包括了那些進(jìn)行內(nèi)核開發(fā)或建立相關(guān)項(xiàng)目的人士。
內(nèi)容概要
雖然Linux嵌入式系統(tǒng)幾乎無(wú)所不在,從手機(jī)到汽車的ABS系統(tǒng)以及凈水廠都可以發(fā)現(xiàn)它的蹤跡,但是令人驚訝的是,建立、安裝和測(cè)試Linux內(nèi)核以及相關(guān)工具的信息來(lái)源卻少得可憐?!稑?gòu)建嵌入式LINUX系統(tǒng)(第二版)》是一本深入探討如何構(gòu)建這些系統(tǒng)的指南。通過(guò)閱讀本書,你不僅可以獲得基本的概念,還可以學(xué)到如何設(shè)置以及使用40種以上不同的開放源碼和自由軟件套件。 本書的內(nèi)容針對(duì)Linux內(nèi)核的最新版本做過(guò)更新,并且加入之前未介紹過(guò)的程序以便協(xié)助你: ·建立你自己的GNU development toolchain(開發(fā)工具鏈) ·為你的目標(biāo)系統(tǒng)選用、設(shè)定、構(gòu)建以及安裝專屬的內(nèi)核 ·為你的目標(biāo)系統(tǒng)建立完整的根文件系統(tǒng) ·設(shè)置、操作以及使用固態(tài)儲(chǔ)存設(shè)備 ·為你的目標(biāo)系統(tǒng)安裝及設(shè)定bootloader(引導(dǎo)加載程序) ·交叉編譯許多的工具程序與套件 ·可用于嵌入式系統(tǒng)調(diào)試的眾多工具和技術(shù) ·使用uClibc、BusyBox、U-Boot、Openssh、thttpd、tftp、strace以及gdb等套件 ·用Xenomai或RT kernel patch實(shí)現(xiàn)實(shí)時(shí)功能 閱讀本書你將能夠?qū)W到如何構(gòu)建操作系統(tǒng)組件,以及簡(jiǎn)化全面掌控嵌入式系統(tǒng)的艱巨任務(wù)。
作者簡(jiǎn)介
作者:(加拿大)亞荷毛爾 等 譯者:O'Reilly Taiwan公司 改編:云川Karim Yaghmour是Opersys(這家公司為開放源碼和自由軟件在嵌入式系統(tǒng)中的使用提供了專家支持和訓(xùn)練課程)以7LKryptiva(電子郵件安全服務(wù)的供應(yīng)商)的創(chuàng)辦人及總裁。身為開放源碼和自由軟件社群的活躍成員,Karim將Opersys所提供的服務(wù)穩(wěn)固地構(gòu)建在社群所推動(dòng)的知識(shí)共享和技術(shù)質(zhì)量的內(nèi)核價(jià)值上。Karim對(duì)社群的部分貢獻(xiàn)包括:他是Linux Trace Toolkit的維護(hù)者,以及是促使Adeos nanokernel(允許多個(gè)操作系統(tǒng)并存)得以實(shí)現(xiàn)的一系列白皮書(white paper)的作者。Karim天生喜歡探究事物的運(yùn)行原理。小時(shí)候,Karim甚至拆開家中所有的收音機(jī)和卡式磁帶機(jī),以便能夠“修理”它們。同樣地,Karim早就展露自己對(duì)操作系統(tǒng)內(nèi)部及嵌入式系統(tǒng)高度的興趣。他目前擁有Ecole Polytechnique de Montreal(蒙特利爾工程學(xué)院)的B.Eng.(工程學(xué)位)和M-A.Sc.(研究生碩士)學(xué)位。當(dāng)每個(gè)人都在為L(zhǎng)inux開發(fā)程序的時(shí)候,Karim辟蹊徑,撰寫自己的分布式微內(nèi)核,借此深入了解操作系統(tǒng)的設(shè)計(jì)及實(shí)現(xiàn)。不寫程序的時(shí)候,Karim通常會(huì)將自己的熱情投在史學(xué)、哲學(xué)、社會(huì)學(xué)和人文科學(xué)上。此外,他對(duì)Umberto Eco和GeraldMessadi的散文和小說(shuō)情有獨(dú)鐘。Jonathan Masters是一位替Red Hat-Y-作的英國(guó)Linux內(nèi)核工程師,他是實(shí)時(shí)內(nèi)核小組的成員,同時(shí)還參與了各種其他項(xiàng)目。Jon是英國(guó)歷史上首位以13歲的年齡進(jìn)入大學(xué)就讀的人。他的生活與Linux密不可分,不是在使用Linux,就是在從事Linux的工作。他曾在規(guī)模各不相同的各種嵌入式項(xiàng)目中工作過(guò),做過(guò)獨(dú)立承包商、大型科學(xué)研究公司的雇員以及在著名的嵌入式Linux供應(yīng)商待過(guò)。Jon撰寫過(guò)幾本書、許多技術(shù)文章,以及維護(hù)Linux內(nèi)核所使用的module-init.tools套件。Jon住在馬薩諸塞州劍橋市,他喜歡旅游、修改嵌入式設(shè)備、徒步旅行、美國(guó)歷史、難懂的法律用詞,以及任意瘋狂的任何機(jī)會(huì)。Gilad Ben-Yossef是Codefidence有限公司的共同創(chuàng)始人與CTO(首席技術(shù)總監(jiān)),而且自1998年以來(lái),一直在協(xié)助OEM(原始設(shè)備制造商)在商業(yè)產(chǎn)品和服務(wù)中使用自由和開放源碼軟件。他也是Hamakor一個(gè)以色列的非營(yíng)利組織,致力于FOSS(自由和開放源碼軟件)的推廣的共同創(chuàng)始人,以及“August Penguin” (以色列的社群FOSS會(huì)議)的創(chuàng)立委員。
書籍目錄
前言第1章 概述 定義 嵌入式Linux系統(tǒng)的實(shí)際應(yīng)用 設(shè)計(jì)與實(shí)現(xiàn)的方法第2章 基本概念 主機(jī)的類型 主機(jī)/目標(biāo)開發(fā)設(shè)置類型 主機(jī)/目標(biāo)調(diào)試設(shè)置類型 嵌入式Linux系統(tǒng)的一般架構(gòu) 系統(tǒng)啟動(dòng)過(guò)程 引導(dǎo)配置類型 系統(tǒng)的存儲(chǔ)器配置第3章 所支持的硬件 處理器架構(gòu) 總線與接口 I/O 存儲(chǔ)設(shè)備 通用網(wǎng)絡(luò) 工業(yè)級(jí)網(wǎng)絡(luò) 系統(tǒng)監(jiān)控第4章 開發(fā)工具 實(shí)際的項(xiàng)目工作空間 GNU跨平臺(tái)開發(fā)工具鏈 C程序庫(kù)的替代品 Java Pen Python 其他程序語(yǔ)言 Eclipse 終端仿真程序第5章 內(nèi)核方面的考慮 選擇內(nèi)核 設(shè)定內(nèi)核配置 編譯內(nèi)核 安裝內(nèi)核 實(shí)地測(cè)試第6章 根文件系統(tǒng)的內(nèi)容 根文件系統(tǒng)的基本結(jié)構(gòu) 程序庫(kù) 內(nèi)核模塊 內(nèi)核映像 設(shè)備文件 主要的系統(tǒng)應(yīng)用程序 定制應(yīng)用程序 系統(tǒng)初始化第7章 儲(chǔ)存設(shè)備管理 MTD所支持的設(shè)備 磁盤設(shè)備 是否啟用交換功能第8章 根文件系統(tǒng)的設(shè)置 嵌入式設(shè)備的文件系統(tǒng)類型 使用經(jīng)NFS掛載的根文件系統(tǒng)將文件系統(tǒng)映像寫入Flash設(shè)備 放在RAM disk上的磁盤文件系統(tǒng) Rootfs與Initramfs 選擇文件系統(tǒng)的類型與布局 處理軟件升級(jí)的問(wèn)題第9章 設(shè)置bootloader 嵌入式bootloader 網(wǎng)絡(luò)引導(dǎo)的服務(wù)器設(shè)置 使用U-Boot第10章 設(shè)置網(wǎng)絡(luò)服務(wù) 網(wǎng)絡(luò)配置 Busybox 通過(guò)DHCP動(dòng)態(tài)配置 Internet Super-Server 使用SNMP進(jìn)行遠(yuǎn)程管理 使用Telne[進(jìn)行網(wǎng)絡(luò)登錄 使用SSH進(jìn)行安全通信 通過(guò)HTTP提供Web內(nèi)容 資源的提供第11章 調(diào)試工具 Eclipse 以gdb進(jìn)行應(yīng)用程序調(diào)試 追蹤 性能分析 存儲(chǔ)器調(diào)試 關(guān)于硬件工具第12章 實(shí)時(shí)Linux入門 什么是實(shí)時(shí)處理? 你的Linux應(yīng)該支持實(shí)時(shí)嗎? 共同的實(shí)時(shí)內(nèi)核要求 實(shí)時(shí)計(jì)算技術(shù)的典型用戶 Linux通往實(shí)時(shí)之路第13章 Xenomai實(shí)時(shí)系統(tǒng) 將傳統(tǒng)rtos的應(yīng)用程序移植到Linux Xenomai的架構(gòu) Xenomai的運(yùn)行原理 實(shí)時(shí)驅(qū)動(dòng)程序模型 結(jié)語(yǔ)第14章 實(shí)時(shí)補(bǔ)丁 將中斷轉(zhuǎn)換成線程 優(yōu)先權(quán)繼承 以RT Batch設(shè)定內(nèi)核配置 高分辨率定時(shí)計(jì)數(shù)器 latency tracer 結(jié)語(yǔ)
章節(jié)摘錄
插圖:選用發(fā)行套件的時(shí)候,你還會(huì)受到廠商名聲的影響,不過(guò)你必須有明辨是非的能力,言過(guò)其實(shí)的傳言不在少數(shù)。如果你聽到某個(gè)發(fā)行套件的傳言,請(qǐng)花些時(shí)間驗(yàn)證相關(guān)信息的真實(shí)性。如果這是個(gè)商業(yè)發(fā)行套件,你可以跟廠商聯(lián)絡(luò)。對(duì)方可能知道相關(guān)信息的來(lái)源,最重要的是,能夠?qū)餮蕴岢龊侠淼恼f(shuō)明。此驗(yàn)證過(guò)程并非專屬于嵌入式Linux發(fā)行套件。嵌入式Linux發(fā)行套件特有的現(xiàn)象是,當(dāng)商業(yè)發(fā)行套件的廠商對(duì)開放源碼社群做出貢獻(xiàn)時(shí),便會(huì)建立起該商業(yè)發(fā)行套件的名聲。廠商若能夠提供更多開放源碼軟件或資助其開發(fā),表明他與開放源碼社群的關(guān)系,就能夠站在非常有利的位置上,了解到這些開放源碼項(xiàng)目的變遷與開發(fā)會(huì)對(duì)其未來(lái)的產(chǎn)品及最終的客戶造成什么影響??傊@是了解廠商的關(guān)鍵性環(huán)節(jié)和依據(jù),你可以從此處看出廠商對(duì)其所提供的軟件抱持著什么態(tài)度。就開放源碼發(fā)行套件來(lái)說(shuō),已經(jīng)符合這個(gè)標(biāo)準(zhǔn)了,因?yàn)槠浔旧砭褪且粋€(gè)開放源碼的貢獻(xiàn)。商業(yè)發(fā)行套件可能必須提供的另一個(gè)重要工具就是文檔。在今日這個(gè)瞬息萬(wàn)變的年代,能夠包含最新信息且內(nèi)容精確的文檔并不多見。開放源碼項(xiàng)目若提供了文檔,通常都已經(jīng)過(guò)時(shí)。Linus Torvalds的話一點(diǎn)都沒錯(cuò),他說(shuō): “用源碼,路克”(use the source,Luke)(譯注1),意思是說(shuō)倘若需要了解軟件,你就應(yīng)該看它的源碼。但是要達(dá)到精通的程度必須投入相當(dāng)?shù)臅r(shí)間和精神,因此仍須輔以適當(dāng)?shù)奈臋n。因?yàn)殚_放源碼開發(fā)者寧可花時(shí)間寫程序也不愿意浪費(fèi)時(shí)間寫文檔,所以發(fā)行套件廠商必須為其產(chǎn)品提供適當(dāng)?shù)奈募?。?dāng)你在評(píng)估發(fā)行套件的時(shí)候,務(wù)必了解其隨附文檔的類型和程度。盡管開放源碼發(fā)行套件的文檔不算多,但與商業(yè)發(fā)行套件比起來(lái),有些開放源碼發(fā)行套件所提供的文檔算是相當(dāng)優(yōu)質(zhì)的了。
編輯推薦
“《構(gòu)建嵌入式LINUX系統(tǒng)(第2版)》不會(huì)假定你手邊有哪些工具,或是限定你的項(xiàng)目的范圍?!稑?gòu)建嵌入式LINUX系統(tǒng)(第2版)》只會(huì)要你通過(guò)Internet下載必要的套件、瀏覽特定的在線文件,以及與其他開發(fā)者一起分享經(jīng)驗(yàn)。除了提供最大的自由度,以及讓你掌控自己的設(shè)計(jì)之外,這么做最接近帶頭在嵌入式系統(tǒng)中使用Linux的先驅(qū)者們所采取的方式。”——摘錄自“前言”
圖書封面
圖書標(biāo)簽Tags
無(wú)
評(píng)論、評(píng)分、閱讀與下載
構(gòu)建嵌入式LINUX系統(tǒng) PDF格式下載