嵌入式軟件高級開發技術(研究生) 版權信息
- ISBN:9787560655741
- 條形碼:9787560655741 ; 978-7-5606-5574-1
- 裝幀:平裝-膠訂
- 冊數:暫無
- 重量:暫無
- 所屬分類:>>
嵌入式軟件高級開發技術(研究生) 本書特色
結合多年嵌入式軟件開發與教學經驗,本書首先系統介紹嵌入式操作系統的概念、體系結構及其發展趨勢,并重點介紹主流的嵌入式Linux操作系統的移植及相關設備驅動程序開發技術。其次,在介紹UML基本概念基礎上,介紹了嵌入式系統快速面向對象過程模型(ROPES),并結合案例闡述相關嵌入式軟件分析設計技術。*后,結合MISRAC:2004規則,闡述嵌入式軟件測試相關模型與技術。隨著移動互聯技術發展嵌入式軟件日益復雜,嵌入式軟件需要通過系統需求模型、動態與靜態模型相互補充才能系統全面地建模。因此書中全面介紹了ROPES中的需求分析、結構分析、行為分析等分析技術,并系統介紹嵌入式軟件構架設計、機制設計及詳細設計等關鍵設計技術。力圖結合嵌入式軟件的特點,將軟件工程領域成熟的分析設計方法引入到嵌入式軟件的分析設計中。
本書可作為嵌入式軟件開發相關專業的研究生及高年級大學生教材。同時,也可作為有志于從事嵌入式軟件開發的專業技術人員的參考書。
嵌入式軟件高級開發技術(研究生) 內容簡介
本書在編寫時,結合編者多年嵌入式軟件開發與教學經驗,首先系統介紹嵌入式操作系統的概念、體系結構及其發展趨勢,并重點介紹主流的嵌入式Linux操作系統的移植及相關設備驅動程序開發技術;其次,在介紹UML基本概念的基礎上,介紹了嵌入式系統快速面向對象過程模型,并結合案例闡述相關嵌入式軟件分析設計技術;*后,結合MISRAC:2004規則,闡述了嵌入式軟件測試相關模型與技術。本書力圖結合嵌入式軟件的特點,將軟件工程領域成熟的分析設計方法引入到嵌入式軟件的分析設計中。
本書可作為嵌入式軟件開發相關專業的研究生及高年級本科生教材。同時,也可作為有志于從事嵌入式軟件開發的專業技術人員的參考書。
嵌入式軟件高級開發技術(研究生) 目錄
第1章 嵌入式軟件開發導論 1
1.1 概述 1
1.1.1 定義 1
1.1.2 發展歷史 2
1.1.3 應用領域 3
1.1.4 特點 5
1.2 嵌入式系統的組成 5
1.2.1 嵌入式處理器 6
1.2.2 嵌入式外圍設備 7
1.2.3 嵌入式操作系統 7
1.2.4 嵌入式應用軟件 8
1.3 嵌入式軟件的開發流程 9
1.3.1 需求分析階段 9
1.3.2 設計階段 10
1.3.3 生成代碼階段 12
1.3.4 固化階段 14
1.3.5 嵌入式軟件開發的特點 15
1.4 嵌入式系統開發的硬件資源 16
1.4.1 在線仿真器 16
1.4.2 邏輯分析儀 17
1.4.3 ROM仿真器 17
1.4.4 源程序模擬器 17
1.4.5 示波器 17
1.5 嵌入式系統開發的軟件資源 18
1.5.1 語言編譯工具 18
1.5.2 交叉調試器 19
1.5.3 實時多任務操作系統 19
1.5.4 集成開發環境 19
1.5.5 板級支持包 19
1.6 嵌入式軟件的可移植性和
?可重用性 21
1.7 小結 22
課后習題 22
參考文獻 22
第2章 嵌入式操作系統 23
2.1 嵌入式操作系統基礎 23
2.1.1 嵌入式操作系統概念 23
2.1.2 嵌入式操作系統設計原則 24
2.1.3 嵌入式操作系統發展及趨勢 25
2.2 嵌入式操作系統的體系結構 27
2.2.1 單模塊結構 27
2.2.2 層次結構 27
2.2.3 微內核結構 28
2.2.4 層次與微內核相結合的結構 29
2.3 嵌入式操作系統的分類 30
2.4 常見嵌入式實時操作系統 31
2.4.1 VxWorks 31
2.4.2 pSOS 32
2.4.3 QNX 32
2.4.4 Delta OS 33
2.4.5 μC/OS-II 33
2.5 嵌入式Linux操作系統 34
2.5.1 嵌入式Linux操作系統的特點 34
2.5.2 嵌入式Linux的引導程序 35
2.5.3 Linux內核 36
2.5.4 嵌入式Linux文件系統 39
2.6 Windows CE 40
2.6.1 Windows CE簡介 41
2.6.2 Windows CE 的體系結構 42
2.7 小結 45
課后習題 45
參考文獻 45
第3章 UML建模技術 46
3.1 OO基礎 46
3.1.1 OO基本概念 46
3.1.2 OO的特征 48
3.1.3 OO的要素 48
3.2 UML語義 50
3.2.1 UML元模型理論 50
3.2.2 UML的組織結構 51
3.2.3 UML建模概念 51
3.2.4 UML的構造事物 53
3.2.5 UML中的關系 53
3.3 UML圖形表示 54
3.3.1 UML靜態結構圖 56
3.3.2 Use Case圖 59
3.3.3 UML交互圖 60
3.3.4 UML狀態圖 61
3.3.5 UML活動圖 63
3.3.6 UML實現圖 64
3.4 基于UML的軟件建模 65
3.4.1 UML建模過程 65
3.4.2 UML建模過程的特點 66
3.4.3 UML建模實例 68
3.5 小結 72
課后習題 72
參考文獻 73
第4章 面向對象的嵌入式軟件
開發過程 74
4.1 OO開發過程中的基本概念 74
4.1.1 模式 74
4.1.2 復用 75
4.1.3 構架 75
4.1.4 框架 75
4.1.5 模型 75
4.2 OO軟件開發原則 76
4.2.1 迭代式開發 76
4.2.2 模型驅動 77
4.2.3 MDA的開發模式 77
4.3 用例驅動、以框架為核心的迭代
增量開發過程 79
4.3.1 用例驅動 80
4.3.2 以框架為核心 82
4.3.3 迭代和增量式過程 82
4.4 統一軟件開發過程 83
4.4.1 先啟階段 84
4.4.2 精化階段 85
4.4.3 構建階段 85
4.4.4 產品化階段 85
4.4.5 迭代開發與控制管理 86
4.5 嵌入式系統快速面向對象
?開發過程 86
4.5.1 ROPES中的主要活動 87
4.5.2 ROPES過程中的階段工件 89
4.5.3 嵌入式軟件框架 92
4.6 小結 93
課后習題 93
參考文獻 94
第5章 面向對象的嵌入式軟件
需求分析 95
5.1 基本概念 95
5.1.1 需求分析目標及內容 95
5.1.2 用例模型 97
5.1.3 用例的補充描述 101
5.2 嵌入式系統需求分析 103
5.2.1 確定系統邊界 103
5.2.2 尋找參與者 104
5.2.3 尋找用例 104
5.2.4 尋找初始和終止事件 105
5.2.5 準備普通場景 105
5.2.6 增加變化和異常場景 106
5.2.7 尋找外部事件 106
5.2.8 畫順序圖 106
5.2.9 組織參與者和用例 107
5.3 嵌入式系統結構分析 107
5.3.1 領域分析與問題陳述 107
5.3.2 發現對象 107
5.3.3 標識關聯 110
5.3.4 標識對象屬性 111
5.3.5 建立系統的類模型 112
5.4 嵌入式系統行為分析 116
5.4.1 對象行為 116
5.4.2 狀態行為 117
5.4.3 建立狀態模型 120
5.4.4 建立交互模型 122
5.4.5 增加類的主要操作 124
5.5 小結 125
課后習題 126
參考文獻 126
第6章 面向對象的嵌入式系統
軟件設計 127
6.1 軟件構架設計 127
6.1.1 系統分解 127
6.1.2 軟件體系結構 129
6.1.3 并發性 134
6.1.4 選擇持續數據管理基礎設施 135
6.1.5 選擇完整性控制策略 135
6.1.6 選擇全局控制流機制 136
6.1.7 邊界條件處理 136
6.1.8 人機界面設計 136
6.2 嵌入式系統機制設計 137
6.2.1 設計模式 137
6.2.2 Adapter設計模式 139
6.2.3 匹配合適的模式 143
6.2.4 確定問題內部的并發性 145
6.2.5 選擇軟件控制策略 145
6.2.6 處理邊界條件 146
6.2.7 權衡開發策略的優先級 147
6.2.8 填補從高層需求到低層
服務間的空白 147
6.2.9 用操作實現用例 147
6.2.10 將操作分配給類 148
6.2.11 設計優化 149
6.2.12 組織類 150
6.3 嵌入式系統詳細設計 151
6.3.1 數據結構 151
6.3.2 關聯的實現 152
6.3.3 對象接口 154
6.3.4 操作及其可見性 155
6.3.5 用于實現操作的算法 155
6.4 小結 155
課后習題 156
參考文獻 156
第7章 Linux系統嵌入式軟件開發 157
7.1 驅動程序開發 157
7.1.1 驅動程序結構 157
7.1.2 驅動程序分類 158
7.1.3 驅動程序加載方式 161
7.1.4 字符設備驅動程序實例 163
7.2 Linux應用軟件開發 165
7.2.1 嵌入式視頻服務器 165
7.2.2 嵌入式Linux的GUI 167
7.2.3 Qt/Embedded簡介 169
7.2.4 Qt/Embedded的開發環境 170
7.2.5 Qt/Embedded常用類 172
7.3 代碼優化 174
7.3.1 代碼優化分類 174
7.3.2 源代碼優化 175
7.3.3 中間代碼優化 177
7.3.4 目標代碼優化 178
7.4 小結 178
課后習題 178
參考文獻 178
第8章 Android嵌入式軟件開發 179
8.1 Android開發基礎 179
8.1.1 Android操作系統特性 179
8.1.2 Android系統架構 180
8.1.3 Android開發環境搭建 182
8.2 Android驅動程序開發 186
8.2.1 Android Things 186
8.2.2 LED燈條驅動程序開發 186
8.3 Android應用開發 189
8.3.1 Android開發模式 189
8.3.2 Android數據庫開發 191
8.3.3 Android開發實例 193
8.4 小結 199
課后習題 199
參考文獻 199
第9章 嵌入式軟件測試 200
9.1 MISRA C語言編程規范 200
9.2 嵌入式軟件靜態測試 211
9.2.1 代碼分析 211
9.2.2 錯誤分析 211
9.2.3 代碼檢查 212
9.3 嵌入式軟件動態測試 213
9.3.1 白盒測試 213
9.3.2 黑盒測試 214
9.3.3 灰盒測試 214
9.4 嵌入式軟件測試過程 215
9.4.1 過程模型 215
9.4.2 單元測試 218
9.4.3 集成測試 219
9.4.4 確認測試 219
9.4.5 系統測試 220
9.5 嵌入式軟件測試工具 221
9.5.1 純軟件測試工具 221
9.5.2 純硬件測試工具 221
9.5.3 軟硬件結合的測試工具 222
9.5.4 主流嵌入式軟件測試
工具比較 222
9.6 小結 224
課后習題 224
參考文獻 224
展開全部
嵌入式軟件高級開發技術(研究生) 作者簡介
北京市物聯網軟件與系統工程技術中心核心成員,榮獲省部級科學技術獎二等獎2項。獲國家留學基金委“青年骨干教師”項目資助,2010年1月至2011年2月于佐治亞理工學院做訪問學者,在Gregory D. Abowd 教授指導下從事普適計算在健康護理應用理領域研究,并參與美國國家自然科學基金重大項目“Computing Techniques for Measuring and Analyzing Child Behavior”研究。承擔/參與國家和北京市科研項目10項,主持企業橫向課題逾10項。在在國內外核心期刊、國際會議上發表論文逾30篇,EI/SCI檢索論文逾20篇。出版專著1部,合作出版著作2部。申報國家發明專利10余項,獲批專利8項。當前主要研究領域:物聯網、嵌入式系統、智能人機交互。