《嵌入式計算機系統(tǒng)設(shè)計》主要針對計算機專業(yè)學生學習和提高嵌入式系統(tǒng)設(shè)計水平而撰寫。書中討論的嵌入式計算機系統(tǒng)包含一個完整有交互能力的操作系統(tǒng),對于操作系統(tǒng)與應(yīng)用程序一體化的方式則不做討論。
《嵌入式計算機系統(tǒng)設(shè)計》針對嵌入式計算機系統(tǒng)設(shè)計的特點,首先對其軟硬件開發(fā)模型進行整體描述,然后自底向上地講解嵌入式計算機系統(tǒng)的體系結(jié)構(gòu)、初始化和啟動模型、開發(fā)環(huán)境、操作系統(tǒng)內(nèi)核、文件系統(tǒng)、驅(qū)動程序及可視化開發(fā)模型,每個部分都配有實例,實例采用主流的嵌入式Linux和ARM9處理器進行說明;第9章特別介紹了個人移動設(shè)備計算機系統(tǒng),并以安卓平臺進行講解;第10章給出了幾個嵌入式計算機系統(tǒng)應(yīng)用案例,包括一個稅控機開發(fā)平臺、一個智能家居領(lǐng)域的照明系統(tǒng)和一個針對水資源管理的物聯(lián)網(wǎng)系統(tǒng)。
與介紹應(yīng)用技術(shù)為主的一般嵌入式系統(tǒng)圖書不同,《嵌入式計算機系統(tǒng)設(shè)計》更加注重嵌入式計算機系統(tǒng)方面的模型抽象,適合作為計算機及相關(guān)專業(yè)的工程技術(shù)人員、研究生、本科生學習和應(yīng)用嵌入式計算機系統(tǒng)的參考書。
作為一個20世紀90年代初畢業(yè)的計算機專業(yè)的學生:在畢業(yè)以后,因為工作性質(zhì)的原因,我除了從事基于PC的計算機應(yīng)用系統(tǒng)開發(fā),也完成了相當多的基于單片機、工控機甚至PLC等這樣底層應(yīng)用系統(tǒng)的構(gòu)建,因此,嵌入式系統(tǒng)這個名詞對我來說一直就不陌生,但2003年之前,我卻一直認為嵌入式系統(tǒng)與我、與計算機專業(yè)沒有什么關(guān)系。
2003年,一個韓國公司找到我所在學校的科研團隊,要開發(fā)一個智能家居方面的產(chǎn)品,用于照明。的控制和管理,我的團隊接受了這個任務(wù)。這個產(chǎn)品開發(fā)最終使用了cos操作系統(tǒng)和一個三星的ARM7處理器,并開啟了我個人的嵌入式系統(tǒng)研發(fā)生涯。從這時開始,我眼中的嵌入式系統(tǒng)才真正與計算機專業(yè)聯(lián)系起來,并逐步成為我科研和教學的中心。2008年,我開始了嵌入式系統(tǒng)的教學,直到2015年春天,我已經(jīng)為8屆不同的本科生和研究生講授過嵌入式系統(tǒng)課程。
在從事嵌入式系統(tǒng)教學的生涯中,我一直遵循著以應(yīng)用為核心的原則,例如,在嵌入式系統(tǒng)硬件平臺的講解中有具體的電路設(shè)計,在嵌入式操作系統(tǒng)的講解中有具體的環(huán)境使用,在基于嵌入式GUI的講解中有QT應(yīng)用程序的設(shè)計等。采用這種從應(yīng)用角度傳授嵌入式系統(tǒng)基礎(chǔ)知識的方式.目的是使學生踏人社會時能盡快適應(yīng)嵌入式應(yīng)用系統(tǒng)的研發(fā)需求。而通過學生畢業(yè)后的實際工作經(jīng)歷,也表明了這種教學有不錯的效果。但隨著一批批學生畢業(yè)踏人工作崗位,對嵌入式系統(tǒng)更高層次的一些需求出現(xiàn)了,他們開始思索,在嫻熟地應(yīng)用嵌入式系統(tǒng)基本技術(shù)的同時,如何能夠高屋建瓴,更好地把握嵌入式系統(tǒng)設(shè)計的脈絡(luò),從戰(zhàn)略性的角度應(yīng)對嵌入式系統(tǒng)開發(fā)中遇到的各種問題呢?這迫使我不得不思索,如何對嵌入式系統(tǒng)的各個方面進行總結(jié)和抽象,為嵌入式系統(tǒng)開發(fā)提供更全面、有深度和高度的理論支持。
本書正是基于上述思考的一些成果,與一般介紹應(yīng)用技術(shù)為主的嵌入式系統(tǒng)書籍不同,我希望使用一些國內(nèi)外其他著述未見使用的方法,從新的角度詮釋嵌入式系統(tǒng),從新的高度對嵌入式系統(tǒng)的開發(fā)進行抽象。例如,嵌入式系統(tǒng)開發(fā)模式的理論模型描述,嵌入式計算機系統(tǒng)硬件構(gòu)架抽象、驅(qū)動程序開發(fā)模型及可視化開發(fā)等模型描述等。
本書主要針對計算機專業(yè)學生進一步學習嵌入式系統(tǒng)的需求,就像本書的書名《嵌入式計算機系統(tǒng)設(shè)計》一樣,我們將更加強調(diào)嵌入式系統(tǒng)的計算機屬性,本書討論的嵌入式計算機系統(tǒng),必須包含一個完整有交互能力的操作系統(tǒng),對于操作系統(tǒng)與應(yīng)用程序一體化的方式則不做討論。在嵌入式系統(tǒng)方向,這能使計算機專業(yè)的教學內(nèi)容從非計算機專業(yè)中更加鮮明地獨立出來。
為了追蹤嵌入式系統(tǒng)方向的最新發(fā)展,本書將個人移動設(shè)備(PMD)也納入主要討論范疇。PMD作為一種軟硬件相對通用的專用計算機系統(tǒng),應(yīng)用廣泛,又與傳統(tǒng)PC有著很大區(qū)別,未來必然會在高等教育教學中占有一席之地,本書在這方面做了初步探索。嵌入式計算機系統(tǒng)應(yīng)用的另一個熱點是將物品接入互聯(lián)網(wǎng),與互聯(lián)網(wǎng)融合形成物聯(lián)網(wǎng)(Internet of Things,IOT),本書也進行了一些有針對性的分析和討論。
本書對嵌入式計算機系統(tǒng)進行了抽象總結(jié),但并不意味著不需要應(yīng)用實例的講解,相反,應(yīng)用實例會更加重要,而與此同時,為了和本書內(nèi)容更好地結(jié)合,應(yīng)用實例的講解在理論與實際的結(jié)合方法上,增加了更多的闡述。本書的應(yīng)用實例跟蹤了傳統(tǒng)的和業(yè)界最熱門的方向。傳統(tǒng)的嵌入式計算機系統(tǒng)實例是一個稅控機開發(fā)平臺的全套設(shè)計,熱點應(yīng)用則給出了一個智能家居領(lǐng)域的照明系統(tǒng)和一個針對水資源管理的物聯(lián)網(wǎng)系統(tǒng)設(shè)計。
全書共分10章,第1章首先講述了嵌入式計算機系統(tǒng)基礎(chǔ),然后從第2-8章以自底向上的順序介紹了嵌入式計算機系統(tǒng)的全貌,其中第2章講述了嵌入式計算機系統(tǒng)體系結(jié)構(gòu),第3章講述了嵌入式計算機的初始化與啟動,第4章講述了嵌入式操作系統(tǒng)開發(fā)環(huán)境,第5章講述了嵌入式操作系統(tǒng)移植,第6章講述了嵌入式文件系統(tǒng),第7章講述了嵌入式設(shè)備驅(qū)動程序開發(fā)模型,第8章講述了嵌入式可視化開發(fā)模型,第9章則是一個獨立的內(nèi)容,對個人移動設(shè)備計算機系統(tǒng)給出了單獨的講述,第10章則給出了幾個嵌入式計算機系統(tǒng)的設(shè)計案例:為減少對應(yīng)用部分細節(jié)的描述,一些說明性的內(nèi)容收集在附錄中。
本書由呂為工和張策撰寫,參加撰寫的還有柏軍、李劍雄和石代鋒。
由于作者水平所限,疏漏之處在所難免,懇請讀者批評指正。
第1章 嵌入式計算機系統(tǒng)基礎(chǔ)
1.1 嵌入式計算機系統(tǒng)概述
1.2 嵌入式操作系統(tǒng)
1.3 嵌入式處理器
1.4 嵌入式計算機系統(tǒng)開發(fā)模型
1.5 嵌入式計算機系統(tǒng)的應(yīng)用熱點
第2章 嵌入式計算機系統(tǒng)體系結(jié)構(gòu)
2.1 嵌入式計算機系統(tǒng)體系結(jié)構(gòu)概述
2.2 嵌入式計算機系統(tǒng)總線
2.3 基于S3C2410處理器的嵌入式計算機系統(tǒng)體系結(jié)構(gòu)
第3章 嵌入式操作系統(tǒng)的初始化與啟動
3.1 嵌入式操作系統(tǒng)的初始化模式
3.2 BootLoader
3.3 BootLoader的設(shè)計
3.4 幾種BootLoader介紹
第4章 嵌入式操作系統(tǒng)開發(fā)環(huán)境
4.1 嵌入式操作系統(tǒng)開發(fā)環(huán)境概述
4.2 GNU編譯工具鏈
4.3 嵌入式Linux運行環(huán)境
4.4 嵌入式Linux開發(fā)環(huán)境的實際創(chuàng)建
第5章 嵌入式操作系統(tǒng)移植
5.1 硬件平臺對移植的影響
5.2 Linux操作系統(tǒng)內(nèi)核結(jié)構(gòu)
5.3 Linux移植概述
5.4 Linux內(nèi)核向S3C2410的移植
5.5 Linux內(nèi)核的配置和編譯
第6章 嵌入式文件系統(tǒng)
6.1 文件系統(tǒng)概述
6.2 Linux文件系統(tǒng)概述
6.3 嵌入式文件系統(tǒng)
6.4 Linux根文件系統(tǒng)
第7章 嵌入式設(shè)備驅(qū)動程序開發(fā)模型
7.1 Linux設(shè)備驅(qū)動程序模型
7.2 設(shè)備的分層模型
7.3 驅(qū)動程序框架生成工具
第8章 嵌入式可視化開發(fā)模型
8.1 嵌入式GUI
8.2 QT/E
8.3 -個通用的輕量級的嵌入式GUI設(shè)計
8.4 嵌入式可視化開發(fā)模型
第9章 個人移動設(shè)備計算機系統(tǒng)
9.1 PMD計算機系統(tǒng)硬件組成
9.2 安卓操作系統(tǒng)
第10章 嵌入式計算機系統(tǒng)設(shè)計案例
10.1 稅控機開發(fā)平臺
10.2 智能照明控制系統(tǒng)
10.3 一個水資源監(jiān)測的物聯(lián)網(wǎng)系統(tǒng)設(shè)計
附錄 S3C2410寄存器
參考文獻
名詞索引