出版時(shí)間:2011-7 出版社:電子工業(yè)出版社 作者:應(yīng)忍冬
內(nèi)容概要
這本《嵌入式系統(tǒng)原理及開(kāi)發(fā)——基于ATOM處理器及Linux實(shí)現(xiàn)》由應(yīng)忍冬、蔣樂(lè)天、徐國(guó)治編著,主要介紹嵌入式系統(tǒng)軟硬件架構(gòu)技術(shù)及嵌入式系統(tǒng)優(yōu)化技術(shù)。內(nèi)容涵蓋了嵌入式系統(tǒng)從底層到上層的軟硬件設(shè)計(jì)技術(shù),在硬件方面分別介紹了嵌入式系統(tǒng)底層設(shè)備接口、處理器子系統(tǒng),以及總線結(jié)構(gòu)。并以Intel的ATOM處理器為例,介紹了高性能嵌入式系統(tǒng)的架構(gòu)設(shè)計(jì)特點(diǎn);在軟件方面分別介紹了嵌入式系統(tǒng)編程模式、軟件優(yōu)化技術(shù)、嵌入式操作系統(tǒng)原理、驅(qū)動(dòng)程序原理,以及基于MeeGo的用戶界面編程技術(shù)。
《嵌入式系統(tǒng)原理及開(kāi)發(fā)——基于ATOM處理器及Linux實(shí)現(xiàn)》面向電子信息及計(jì)算機(jī)專(zhuān)業(yè)本科生嵌入式系統(tǒng)課程教學(xué),也可供于嵌入式領(lǐng)域技術(shù)人員參考。
書(shū)籍目錄
第1章 嵌入式系統(tǒng)概述
1.1 嵌入式系統(tǒng)的定義
1.2 嵌入式系統(tǒng)的發(fā)展歷史
1.3 嵌入式系統(tǒng)的特征
第2章 嵌入式系統(tǒng)架構(gòu)及硬件組成
2.1 嵌入式硬件組成
2.2 嵌入式處理器
2.3 Intel嵌入式處理器
2.4 內(nèi)存子系統(tǒng)
2.4.1 存儲(chǔ)單元基本結(jié)構(gòu)和分類(lèi)
2.4.2 存儲(chǔ)器的外部接口
2.5 IO外圍設(shè)備設(shè)備接口
2.5.1 RS232接口
2.5.2 觸摸屏接口
2.5.3 顯示設(shè)備接口
2.5.4 串行總線及通信接口
2.5.5 存儲(chǔ)接口
2.5.6 SATA接口硬盤(pán)
2.5.7 CF卡
2.6 總線接口
2.6.1 靜態(tài)存儲(chǔ)器總線
2.6.2 PCI04/ISA總線
2.6.3 PCI/PCI04+總線
2.6.4 PCIe總線
第3章 嵌入式軟件構(gòu)成與開(kāi)發(fā)方法概述
3.1 嵌入式系統(tǒng)軟件特性
3.2 軟件開(kāi)發(fā)到運(yùn)行的流程
3.3 軟件編譯
3.4 軟件啟動(dòng)
3.5 嵌入式軟件運(yùn)行模式
3.6 軟件庫(kù)
3.7 程序固化
3.8 軟件調(diào)試
3.9 軟件開(kāi)發(fā)工具
3.9.1 GNU交叉編譯器的生成
3.9.2 Intel的軟件開(kāi)發(fā)工具
3.10 嵌入式系統(tǒng)編程模式
3.10.1 多任務(wù)程序的實(shí)現(xiàn)
3.10.2 嵌入式操作系統(tǒng)
3.11 嵌入式系統(tǒng)的軟件可靠性
3.11.1 檢查點(diǎn)技術(shù)
3.11.2 雙進(jìn)程技術(shù)
3.11.3 N-版本軟件技術(shù)
3.11.4 前向糾錯(cuò)技術(shù)(Forward error recovery)
3.12 嵌入式系統(tǒng)的設(shè)計(jì)方法
第4章 嵌入式軟件開(kāi)發(fā)工具及軟件
優(yōu)化
4.1 Intel C++編譯器
4.2 代碼優(yōu)化方法學(xué)及具體技術(shù)
4.2.1 代碼優(yōu)化方法學(xué)
4.2.2 基于編譯選項(xiàng)的靜態(tài)優(yōu)化技術(shù)
4.2.3 基于源代碼結(jié)構(gòu)改進(jìn)的優(yōu)化技術(shù)
4.2.4 基于運(yùn)行分析的運(yùn)行時(shí)刻代碼優(yōu)化技術(shù)
4.2.5 基于運(yùn)行庫(kù)和編譯器庫(kù)的程序優(yōu)化
4.3 基于TBB的并行軟件優(yōu)化開(kāi)發(fā)
第5章 系統(tǒng)啟動(dòng)
5.1 引言
5.2 BIOS概述
5.2.1 BIOS的發(fā)展
5.2.2 BIOS的功能
5.3 基于傳統(tǒng)BIOS的系統(tǒng)啟動(dòng)
5.4 UEFI及系統(tǒng)啟動(dòng)
5.4.1 傳統(tǒng)BIOS的缺陷
5.4.2 傳統(tǒng)BIOS到UEF、I/EFI的轉(zhuǎn)變
5.4.3 UEFI/EFIBIOS的基本架構(gòu)
5.4.4 基于UEFI的系統(tǒng)啟動(dòng)
5.5 BootLoader實(shí)例分析
5.5.1 Grub
5.5.2 eLilo
5.5.3 Uboot
第6章 嵌入式Linux操作系統(tǒng)
6.1 嵌入式Linux簡(jiǎn)介
6.2 嵌入式Linux內(nèi)核配置
6.3 嵌入式Linux裁剪
6.4 設(shè)備驅(qū)動(dòng)
6.4.1 設(shè)備驅(qū)動(dòng)的作用
6.4.2 設(shè)備驅(qū)動(dòng)程序分類(lèi)
6.4.3 字符型設(shè)備驅(qū)動(dòng)程序的基本構(gòu)成
6.4.4 字符型設(shè)備驅(qū)動(dòng)程序的高級(jí)功能構(gòu)成
第7章 嵌入式系統(tǒng)低功耗技術(shù)
7.1 嵌入式系統(tǒng)的低功耗設(shè)計(jì)
7.2 系統(tǒng)節(jié)電原理
7.3 動(dòng)態(tài)電源管理(DPM)
7.4 ACPI(高級(jí)配置與電源接口)
7.5 其他省電技巧
7.6 一些相關(guān)工具
第8章 嵌入式LinUX快速啟動(dòng)技術(shù)
8.1 系統(tǒng)的啟動(dòng)過(guò)程
8.2 BootGraph和Bootchart
8.3 系統(tǒng)的快速啟動(dòng)技術(shù)
第9章 嵌入系統(tǒng)的用戶界面技術(shù)
9.1 界面及用戶交互程序調(diào)試技術(shù)
9.2 基于Clutter的嵌入式圖形界面技術(shù)
9.2.1 Clutter編程模型
9.2.2 Clutter場(chǎng)景
9.2.3 演員的屬性和靜態(tài)動(dòng)作
9.2.4 動(dòng)態(tài)效果
9.2.5 事件處理
9.2.6 Clut:ter的編程環(huán)境
9.3 基于MeeGo的圖形界面技術(shù)
9.3.1 概述
9.3.2 MeeGo軟件開(kāi)發(fā)模式
9.3.3 應(yīng)用程序編程技術(shù)
9.4 中間層軟件編程技術(shù)
9.4.1 D-BUS
9.4.2 底層系統(tǒng)層軟件編程技術(shù)
參考文獻(xiàn)
章節(jié)摘錄
版權(quán)頁(yè): 插圖: 4.2.1代碼優(yōu)化方法學(xué) 1.程序優(yōu)化問(wèn)題的分類(lèi) 程序優(yōu)化首先需要明確目標(biāo),這依賴于程序運(yùn)行的硬件環(huán)境,圖4.5給出了兩類(lèi)的嵌入式處理器運(yùn)行硬件環(huán)境。 圖(a)對(duì)應(yīng)的嵌入式系統(tǒng)的程序運(yùn)行主要依賴于大容量RAM(通常是SDRAM),而板上ROM僅存放CPU啟動(dòng)初期運(yùn)行所需的少量代碼,ROM內(nèi)代碼的主要功能是從外置存儲(chǔ)器把主程序代碼和數(shù)據(jù)搬運(yùn)到RAM,一旦搬運(yùn)結(jié)束,就讓CPU轉(zhuǎn)跳到RAM地址執(zhí)行主程序。對(duì)于x86架構(gòu)的嵌入式處理器而言,ROM代碼就是BIOS,而外置存儲(chǔ)器一般是硬盤(pán)或者固態(tài)硬盤(pán)(SSD,利用FlashROM芯片搭建)。這類(lèi)系統(tǒng)的例子包括多媒體機(jī)頂盒、視頻游戲機(jī)等。它們的程序優(yōu)化一般集中在兩個(gè)方面——運(yùn)行時(shí)間最短、代碼尺寸最小。 圖(b)對(duì)應(yīng)的嵌入式處理器內(nèi)置有ROM和RAM,分別存放指令和可變數(shù)據(jù),這一類(lèi)系統(tǒng)一般用于控制領(lǐng)域,通常對(duì)CPU主頻、內(nèi)存、功耗有嚴(yán)格限制,需要優(yōu)化的目標(biāo)更多。這類(lèi)系統(tǒng)的例子包括測(cè)量?jī)x表、手持POS機(jī)等。它們的優(yōu)化目標(biāo)一般包括——運(yùn)行時(shí)刻使用的RAM最小、在限定時(shí)間內(nèi)完成任務(wù)消耗的總電能最小、以及在給定的響應(yīng)時(shí)間內(nèi)完成任務(wù)等。 針對(duì)這兩類(lèi)硬件環(huán)境,優(yōu)化的總體目標(biāo)不同,處理方法也各有側(cè)重點(diǎn)。 優(yōu)化工作需要考慮的第二個(gè)問(wèn)題是明確優(yōu)化的大致方向策略。大多數(shù)優(yōu)化工作和速度有關(guān),我們可以通過(guò)程序功能大致確定運(yùn)行程序時(shí)主要的時(shí)間消耗在哪里。通??梢苑殖扇N情況: (1)計(jì)算為主的代碼 比如科學(xué)計(jì)算、信號(hào)處理等程序,數(shù)據(jù)計(jì)算占據(jù)了主導(dǎo)地位。對(duì)于這一類(lèi)程序的優(yōu)化側(cè)重于應(yīng)用程序級(jí)和處理器微架構(gòu)級(jí)。通過(guò)數(shù)據(jù)計(jì)算的簡(jiǎn)化(如一些運(yùn)算通過(guò)查表得到)運(yùn)算的并行化(如使用SIMD指令),以及和Cache相關(guān)的數(shù)據(jù)訪問(wèn)優(yōu)化獲得性能的提升。 (2)IO為主的代碼 這一類(lèi)代碼運(yùn)行過(guò)程中有大量的時(shí)間消耗在外部IO設(shè)備的等待過(guò)程中,比如數(shù)據(jù)庫(kù)操作和網(wǎng)絡(luò)通信操作,為了提升性能,需要從系統(tǒng)級(jí)和應(yīng)用程序級(jí)進(jìn)行優(yōu)化,可以使用的優(yōu)化手段包括利用輸入輸出緩沖減少零碎的數(shù)據(jù)通信,使用更緊湊的數(shù)據(jù)結(jié)構(gòu)和協(xié)議降低通信數(shù)據(jù)量等?,F(xiàn)實(shí)中也存在著大量介于上面兩者之間的程序,比如網(wǎng)絡(luò)視頻壓縮傳輸程序等,這類(lèi)程序的優(yōu)化需要從各個(gè)層面進(jìn)行。 (3)解決優(yōu)化問(wèn)題的不同層面 程序性能取決于多個(gè)方面,包括:代碼結(jié)構(gòu)、算法、編譯器,以及處理器架構(gòu)。面對(duì)程序的性能問(wèn)題如何開(kāi)展優(yōu)化??jī)?yōu)化工作從三個(gè)層面進(jìn)行——系統(tǒng)級(jí)、應(yīng)用程序級(jí)和處理器微架構(gòu)級(jí)。針對(duì)三個(gè)層次優(yōu)化的順序和可能的性能提升如圖4.6所示。 這三個(gè)不同層次的簡(jiǎn)介、優(yōu)化對(duì)應(yīng)的優(yōu)化目標(biāo)、對(duì)象如表4.3所示。 2.軟件優(yōu)化技術(shù)的分類(lèi) 從優(yōu)化技術(shù)所采取的手段來(lái)看,軟件優(yōu)化技術(shù)分為以下幾類(lèi): (1)基于編譯選項(xiàng)的靜態(tài)優(yōu)化技術(shù) 該技術(shù)基于編譯和鏈接工具提供的命令行選項(xiàng),選擇可執(zhí)行代碼的生成方式,適應(yīng)程序和處理器硬件的特點(diǎn),實(shí)現(xiàn)程序運(yùn)行效率和性能的優(yōu)化。 (2)基于源代碼結(jié)構(gòu)改進(jìn)的優(yōu)化技術(shù) 這一技術(shù)通過(guò)程序員對(duì)代碼的主動(dòng)思考,分析可能存在的性能瓶頸進(jìn)行優(yōu)化。由于能夠從較高層次識(shí)別軟件性能和效率的缺陷,通常能夠獲得的性能提升也較多。但這一技術(shù)要求程序要有豐富的優(yōu)化經(jīng)驗(yàn)和編程實(shí)踐。 (3)基于軟件動(dòng)態(tài)運(yùn)行分析的“反饋式”優(yōu)化技術(shù) 這一模式的優(yōu)化技術(shù)考慮到代碼優(yōu)化的策略依賴于程序動(dòng)態(tài)運(yùn)行情況。比如對(duì)視頻解碼程序,需要通過(guò)尋找運(yùn)行時(shí)間最長(zhǎng)、運(yùn)行次數(shù)最頻繁的函數(shù)來(lái)進(jìn)行有針對(duì)性的優(yōu)化。而這些運(yùn)行時(shí)刻的數(shù)據(jù)只有通過(guò)程序的試運(yùn)行才能夠發(fā)現(xiàn)。因此選用的優(yōu)化流程通常是:“預(yù)編譯—試運(yùn)行,性能評(píng)估—重編譯并進(jìn)行優(yōu)化”,利用預(yù)編譯的代碼試運(yùn)行結(jié)果反饋給編譯器,調(diào)整編譯過(guò)程中代碼生成方式,實(shí)現(xiàn)代碼優(yōu)化。根據(jù)程序性能的改進(jìn)量和優(yōu)化程度的要求,往往會(huì)通過(guò)迭代循環(huán)的形式進(jìn)行優(yōu)化。
編輯推薦
《普通高等教育"十一五"國(guó)家級(jí)規(guī)劃教材?電子信息科學(xué)與工程類(lèi)專(zhuān)業(yè)規(guī)劃教材:嵌入式系統(tǒng)原理及開(kāi)發(fā):基于ATOM處理器及Linux實(shí)現(xiàn)》由應(yīng)忍冬、蔣樂(lè)天、徐國(guó)治編著,《普通高等教育"十一五"國(guó)家級(jí)規(guī)劃教材?電子信息科學(xué)與工程類(lèi)專(zhuān)業(yè)規(guī)劃教材:嵌入式系統(tǒng)原理及開(kāi)發(fā):基于ATOM處理器及Linux實(shí)現(xiàn)》在讀者對(duì)象包括計(jì)算機(jī)和電類(lèi)專(zhuān)業(yè)學(xué)生,其中嵌入式系統(tǒng)硬件基本架構(gòu)和常用接口技術(shù)、軟件編程模式和優(yōu)化技術(shù)能夠用于一個(gè)學(xué)期的本科教學(xué),而更高層次的高性能硬件接口設(shè)備、處理器架構(gòu)以及嵌入式Linux優(yōu)化技術(shù)、Meego架構(gòu)及編程技術(shù)等作為基本內(nèi)容的補(bǔ)充可以用于研究生課程的教學(xué)。
圖書(shū)封面
評(píng)論、評(píng)分、閱讀與下載
嵌入式系統(tǒng)原理及開(kāi)發(fā) PDF格式下載
250萬(wàn)本中文圖書(shū)簡(jiǎn)介、評(píng)論、評(píng)分,PDF格式免費(fèi)下載。 第一圖書(shū)網(wǎng) 手機(jī)版