出版時(shí)間:2008-11 出版社:中國(guó)電力出版社 作者:馮偉,王博 編著 頁(yè)數(shù):451
前言
一、嵌入式系統(tǒng)的發(fā)展前景 近年來(lái),隨著計(jì)算機(jī)技術(shù)、通信技術(shù)的飛速發(fā)展,特別是互聯(lián)網(wǎng)的迅速普及和3C(計(jì)算機(jī)、通信、消費(fèi)電子)合一的加速,微型化和專(zhuān)業(yè)化成為發(fā)展的新趨勢(shì),嵌入式產(chǎn)品成為信息產(chǎn)業(yè)的主流。由于Linux系統(tǒng)源碼開(kāi)放、可以定制、易于移植等優(yōu)點(diǎn),它在嵌入式系統(tǒng)中獲得了越來(lái)越廣泛的應(yīng)用。越來(lái)越多的企業(yè)和研發(fā)機(jī)構(gòu)都轉(zhuǎn)向嵌入式Linux的開(kāi)發(fā)和研究上,在新興的嵌入式操作系統(tǒng)領(lǐng)域內(nèi)也獲得了飛速發(fā)展。 二、本書(shū)的寫(xiě)作意義 伴隨著市場(chǎng)對(duì)嵌入式開(kāi)發(fā)人才需求的增大,廣大讀者迫切需要一本快速學(xué)習(xí)的教材。嵌入式linux的開(kāi)發(fā)技術(shù)是一種高起點(diǎn)的技術(shù),需要讀者掌握多種知識(shí),包括各種軟件和硬件方面的知識(shí),軟件方面的知識(shí)主要包括操作系統(tǒng)、內(nèi)核方面的知識(shí),硬件方面包括各種處理器、開(kāi)發(fā)板的性能知識(shí)。市場(chǎng)上現(xiàn)有的關(guān)于嵌入式linux開(kāi)發(fā)的書(shū)籍,大都以知識(shí)為導(dǎo)向,按照知識(shí)點(diǎn)進(jìn)行講解,這樣,讀者缺乏實(shí)踐的機(jī)會(huì),也難以深刻理解知識(shí)點(diǎn)?! ”緯?shū)以案例為線索,通過(guò)一個(gè)個(gè)例子,使讀者在實(shí)踐中理解知識(shí),掌握技巧;把枯燥的知識(shí)學(xué)習(xí)變成有趣的動(dòng)手實(shí)踐。也只有通過(guò)這樣的實(shí)踐,才能真正具有嵌入式Linux開(kāi)發(fā)所需要的實(shí)際動(dòng)手能力?!∪?、本書(shū)主要內(nèi)容 本書(shū)分為5個(gè)部分共15章,主要介紹了嵌入式Linux系統(tǒng)基礎(chǔ)、Linux開(kāi)發(fā)基礎(chǔ),以及LJnux高級(jí)編程、驅(qū)動(dòng)開(kāi)發(fā),以及綜合實(shí)驗(yàn)等知識(shí)?! ∷摹⒈緯?shū)閱讀技巧 閱讀本書(shū)的最好方法,就是按照本書(shū)各個(gè)案例的順序進(jìn)行實(shí)踐,在實(shí)踐中理解知識(shí),發(fā)現(xiàn)問(wèn)題,尋找解決問(wèn)題的方法,從而培養(yǎng)讀者真正的開(kāi)發(fā)能力。由于嵌入式系統(tǒng)的性能和具體的開(kāi)發(fā)板密切相關(guān),書(shū)中的程序,筆者盡量提高了它的通用性,可在大多數(shù)開(kāi)發(fā)板上運(yùn)行。讀者可根據(jù)自己的開(kāi)發(fā)需要,選擇相應(yīng)的開(kāi)發(fā)板進(jìn)行開(kāi)發(fā)?! ∥濉⒅轮x 本書(shū)在編寫(xiě)的過(guò)程中得到了很多人的支持和幫助。首先要感謝我的父母,他們不僅在背后默默支持我,還為本書(shū)的部分章節(jié)提供了很有價(jià)值的建議。同時(shí)要感謝我的同事和同學(xué)伍堅(jiān)、江慶松、宋飛、張茂林等,書(shū)中的不少內(nèi)容正是來(lái)自于他們的寶貴意見(jiàn)和幫助,也得益于與他們的討論和交流。另外,本書(shū)的編寫(xiě)還得到了孫亮、張玉玲、楊幸子、王潑、黃偉、楊冬等的支持和幫助,在此一并表示感謝?! ∮捎跁r(shí)間倉(cāng)促,作者水平所限,書(shū)中不足之處在所難免,敬請(qǐng)讀者批評(píng)指正。也歡迎廣大朋友來(lái)信交流,E-mail:foxandking@hotmail.com。
內(nèi)容概要
本書(shū)以案例的形式系統(tǒng)地講解了嵌入式Linux開(kāi)發(fā)所需要的各種知識(shí)和實(shí)際應(yīng)用。全書(shū)共15章,主要介紹了嵌入式Linux系統(tǒng)基礎(chǔ)、開(kāi)發(fā)基礎(chǔ)、Linux高級(jí)編程、驅(qū)動(dòng)開(kāi)發(fā),以及綜合實(shí)驗(yàn)等部分知識(shí),主要內(nèi)容包括Shell編程,GDB調(diào)試工具,Linux系統(tǒng)內(nèi)核的編譯、進(jìn)程和線程的概念,Socket編程,Linux圖形化界面開(kāi)發(fā)的技巧,Java語(yǔ)言在嵌入式Linux開(kāi)發(fā)中的應(yīng)用,嵌入式Linux數(shù)據(jù)庫(kù),Linux驅(qū)動(dòng)開(kāi)發(fā)基礎(chǔ),字符設(shè)備驅(qū)動(dòng)開(kāi)發(fā)等知識(shí),最后通過(guò)兩個(gè)綜合實(shí)驗(yàn)巧妙地將枯燥的知識(shí)學(xué)習(xí)變成了有趣的動(dòng)手實(shí)踐。 本書(shū)可作為高等院校電子類(lèi)、電氣類(lèi)、控制類(lèi)等專(zhuān)業(yè)高年級(jí)本科生、研究生學(xué)習(xí)嵌入式Linux的教材,也可供廣大嵌入式領(lǐng)域的科研和工程技術(shù)人員參考使用,還可作為相關(guān)培訓(xùn)班的培訓(xùn)教材。
書(shū)籍目錄
前言第1章 嵌入式Linux系統(tǒng)簡(jiǎn)介 1.1 嵌入式系統(tǒng) 1.1.1 概述 1.1.2 嵌入式系統(tǒng)的發(fā)展歷史 1.1.3 嵌入式Linux的特性 1.2 嵌入式Linux操作系統(tǒng)簡(jiǎn)介 1.2.1 Linux系統(tǒng) 1.2.2 從Linux到嵌入式Linux 1.2.3 常用嵌入式Linux系統(tǒng)簡(jiǎn)介 1.3 常見(jiàn)嵌入式處理器簡(jiǎn)介 1.3.1 ARM處理 1.3.2 Motorola公司處理器 1.3.3 IBM Power PC處理器 1.3.4 Intel x86系列處理器 1.3.5 MIPS 1.4 選擇開(kāi)發(fā)平臺(tái) 1.4.1 硬件平臺(tái)的選擇 1.4.2 軟件平臺(tái)的選擇 1.4.3 集成開(kāi)發(fā)環(huán)境考慮的因素 1.4.4 硬件調(diào)試工具的選擇 1.4.5 軟件組件的選擇第2章 Linux編程基礎(chǔ) 2.1 Shell編程 2.2 Makefile寫(xiě)法 2.2.1 為什么要使用makefile 2.2.2 基本makefile結(jié)構(gòu) 2.2.3 編寫(xiě)make規(guī)則 2.2.4 一個(gè)比較有效的makefile 2.2.5 使用autotools建立makefile 2.3 開(kāi)發(fā)工具 2.3.1 Ⅵ工具簡(jiǎn)介 2.3.2 GCC工具 2.3.3 GDB調(diào)試 2.3.4 GDB調(diào)試嵌入式系統(tǒng)第3章 Linux操作系統(tǒng)實(shí)踐 3.1 Linux操作系統(tǒng)分析 3.1.1 Linux源碼文件系統(tǒng)目錄 3.1.2 Linux在x86PC機(jī)上的啟動(dòng)分析 3.2 Linux內(nèi)核分析 3.2.1 Linux進(jìn)程線程調(diào)度 3.2.2 內(nèi)存管理 3.2.3嵌入式Linux實(shí)時(shí)性解決方案 3.3 Linux操作系統(tǒng)的安裝 3.4 內(nèi)核編譯實(shí)踐 3.4.1 編譯步驟 3.4.2 內(nèi)核選項(xiàng)第4章 嵌入式Linux系統(tǒng)交叉編譯環(huán)境的安裝與配置 4.1 交叉編譯環(huán)境的安裝 4.1.1 相關(guān)軟件包的下載 4.1.2 Linux頭文件的安裝 4.1.3 編譯安裝binutils 4.1.4 編譯安裝9cc的C編譯器 4.1.5 編譯安裝9libc 4.2 交叉編譯環(huán)境的配置 4.2.1 Bootloader概述 4.2.2 常見(jiàn)的Linux bootloader的介紹 4.2.3 三星SMDK2410開(kāi)發(fā)板上的bootloader分析 4.2.4 u—Boot在s3c2410上的移植分析第5章 Linux系統(tǒng)的進(jìn)程與線程管理 5.1 進(jìn)程/線程的概念 5.1.1 進(jìn)程的概念 5.1.2 線程的概念 5.1.3 進(jìn)程狀態(tài)及轉(zhuǎn)換 5.2 進(jìn)程的基本操作 5.2.1 進(jìn)程信息獲取函數(shù) 5.2.2 設(shè)置進(jìn)程的屬性 5.2.3 創(chuàng)建進(jìn)程 5.2.4 執(zhí)行進(jìn)程 5.2.5 退出進(jìn)程 5.2.6 跟蹤進(jìn)程 5.3 進(jìn)程通信與同步 ……第6章 Linux驅(qū)動(dòng)開(kāi)發(fā)基礎(chǔ)第7章 嵌入式Linux的網(wǎng)絡(luò)體系結(jié)構(gòu)和網(wǎng)卡驅(qū)動(dòng)第8章 嵌入式Linux中Socket套接口開(kāi)發(fā)第9章 Linux字符設(shè)備驅(qū)動(dòng)程序第10章 嵌入式USB設(shè)備的驅(qū)動(dòng)開(kāi)發(fā)第11章 嵌入式Linux Qt程序的開(kāi)發(fā)第12章 Java與嵌入式開(kāi)發(fā)第13章 嵌入式數(shù)據(jù)庫(kù)的開(kāi)發(fā)第14章 基于ARM9的嵌入式運(yùn)程視頻采集系統(tǒng)的實(shí)現(xiàn)第15章 綜合實(shí)驗(yàn)參考文獻(xiàn)
章節(jié)摘錄
第1章 嵌入式Linux系統(tǒng)簡(jiǎn)介 嵌入式技術(shù)最初應(yīng)用于軍事和工業(yè)控制領(lǐng)域,隨著微電子技術(shù)和軟件技術(shù)的發(fā)展,嵌入式系統(tǒng)在通信、辦公自動(dòng)化和消費(fèi)電子領(lǐng)域也獲得了廣泛應(yīng)用,日益引起了工業(yè)界和學(xué)術(shù)界的重視?! ”菊聦⒔榻B嵌入式開(kāi)發(fā)所需要的軟/硬件基礎(chǔ)知識(shí),首先介紹嵌入式Linux操作系統(tǒng)的特點(diǎn);然后介紹市場(chǎng)上流行的主流嵌入式處理器;最后介紹Linux操作系統(tǒng)下開(kāi)發(fā)所需要的工具,如Shell、常用調(diào)試工具等?! ?.1 嵌入式系統(tǒng) 1.1.1 概述 嵌入式系統(tǒng)(Embedded Systems,ES)是根據(jù)應(yīng)用的要求,將操作系統(tǒng)和功能軟件集成于計(jì)算機(jī)硬件系統(tǒng)中,從而實(shí)現(xiàn)軟件與硬件一體化的計(jì)算機(jī)系統(tǒng)。嵌入式系統(tǒng)出現(xiàn)于20世紀(jì)60年代末期,它最初被用于控制機(jī)電、電話交換機(jī),如今已被廣泛應(yīng)用于工業(yè)制造、過(guò)程控制、通信、儀器、儀表、汽車(chē)、船舶、航空、航天、軍事裝備、消費(fèi)類(lèi)產(chǎn)品等眾多領(lǐng)域。嵌入式系統(tǒng)在數(shù)量上遠(yuǎn)遠(yuǎn)超過(guò)了各種通用計(jì)算機(jī)系統(tǒng):計(jì)算機(jī)系統(tǒng)核心CPU,每年在全球范圍內(nèi)的產(chǎn)量大概在20億個(gè)左右,其中80%以上應(yīng)用于各類(lèi)專(zhuān)用性很強(qiáng)的嵌入式系統(tǒng)中?! ∫话銇?lái)說(shuō),凡是帶有微處理器的專(zhuān)用軟/硬件系統(tǒng)都可以稱(chēng)為嵌入式系統(tǒng)。和通用的計(jì)算平臺(tái)相比,嵌入式系統(tǒng)具有功能單一、體積小、功耗低、可靠性高、剪裁性好、軟/硬件集成度高、計(jì)算能力相對(duì)較低等特點(diǎn)。多年來(lái),嵌入式設(shè)備中沒(méi)有操作系統(tǒng),其主要原因有兩點(diǎn):一是諸如洗衣機(jī)、微波爐、電冰箱這樣的設(shè)備僅需要一道簡(jiǎn)單的控制程序,以管理數(shù)量有限的按鈕和指示燈,沒(méi)有使用操作系統(tǒng)的必要;二是它往往只具有有限的硬件資源,不足以支持一個(gè)操作系統(tǒng)。 然而,隨著硬件的發(fā)展,嵌入式系統(tǒng)變得越來(lái)越復(fù)雜,最初的控制程序中逐步加入了許多功能,而這些功能中有很多可以由操作系統(tǒng)提供。于是,在20世紀(jì)70年代末期出現(xiàn)了嵌入式操作系統(tǒng)(Embedded Operating Systems),它的出現(xiàn)極大地簡(jiǎn)化了應(yīng)用程序的設(shè)計(jì),并可以有效地保障軟件質(zhì)量和縮短開(kāi)發(fā)周期。簡(jiǎn)單的ES一般并不使用操作系統(tǒng),只包含一些控制流程,但是隨著嵌入式操作系統(tǒng)日益復(fù)雜,簡(jiǎn)單的流程控制并不能滿足系統(tǒng)的需求,這時(shí)就必須考慮使用操作系統(tǒng)作為系統(tǒng)軟件。因此,嵌入式操作系統(tǒng)就應(yīng)運(yùn)而生了。
編輯推薦
《嵌入式Linux案例開(kāi)發(fā)指南》以案例介紹為主線,系統(tǒng)地介紹了進(jìn)行嵌入式Linux開(kāi)發(fā)所需要的各種軟硬件知識(shí)和實(shí)際動(dòng)手能力通過(guò)兩個(gè)綜合實(shí)驗(yàn)的講解,巧妙地將枯燥的理論知識(shí)學(xué)習(xí)和動(dòng)手實(shí)踐緊密地結(jié)合起來(lái),具有較強(qiáng)的知識(shí)性和趣味性示例程序具有通用性,可運(yùn)行于多種開(kāi)發(fā)板上適合高等院校電子類(lèi)、電氣類(lèi)、控制類(lèi)等專(zhuān)業(yè)高年級(jí)本科生、研究生以及廣大嵌入式領(lǐng)域的科研和工程技術(shù)人員使用。
圖書(shū)封面
評(píng)論、評(píng)分、閱讀與下載
嵌入式Linux案例開(kāi)發(fā)指南 PDF格式下載
250萬(wàn)本中文圖書(shū)簡(jiǎn)介、評(píng)論、評(píng)分,PDF格式免費(fèi)下載。 第一圖書(shū)網(wǎng) 手機(jī)版