商品描述
本書專註於嵌入式工業軟件開放架構——基於 FACE 架構的應用和實踐。首先,探討了軟件工程與軟件架構的發展歷程,介紹了軟件工程的誕生背景、軟件架構的定義和作用,以及軟件架構的分類與描述方法。其次,聚焦嵌入式工業軟件的可移植性及其解決方案,討論了緊耦合問題和包依賴問題,並提出了關註點分離的解決方案;介紹了不同嵌入式工業系統的軟件架構,展示了嵌入式工業軟件架構設計的普遍原則和趨勢。接著,專註於航空電子系統 FACE 架構,全面描述了其需求及設計原理,探討了基於 FACE 架構的數字地圖管理器案例。同時,詳細介紹了航空電子系統的數據架構原理及相關案例。然後,介紹了開放架構下的軟件嵌入式系統建模方法、模型與代碼的映射關系,以及開放架構模型的代碼生成技術,包括系統代碼生成、ARINC653 系統代碼自動生成方法和數據模型代碼生成方法的研究。最後,介紹了航空電子系統 FACE 架構建模平臺的研製原理,包括設計方案、工具功能設計、數據模型的解析、開發框架和實現原理,以及組件代碼生成方法的研究與飛機作戰輔助系統案例分析。本書旨在幫助讀者深入理解軟件架構在嵌入式工業軟件領域的應用,特別是航空電子系統的 FACE 架構及其相關技術,對於從事相關領域研究和開發的專業人士具有重要的參考價值。
目錄大綱
目 錄
第 1 章 軟件工程與軟件架構·················································································1
1.1 引言 ······················································································································.1 
1.1.1 軟件工程的誕生背景························································································.1 
1.1.2 軟件架構的定義······························································································.1 
1.1.3 軟件架構的作用······························································································.2 
1.2 軟件工程與軟件架構的發展 ························································································.2 
1.3 軟件架構的分類與描述方法 ························································································.3 
1.3.1 軟件架構的分類······························································································.3 
1.3.2 不同類型軟件架構的結合應用············································································10 
1.3.3 軟件架構的描述方法························································································11 
第 2 章 嵌入式工業軟件可移植面臨的問題及解決方案·············································.13
2.1 嵌入式工業軟件可移植面臨的問題 ···············································································13 
2.1.1 緊耦合問題····································································································13 
2.1.2 包依賴問題····································································································15 
2.2 關註點分離解決方案 ·································································································16 
第 3 章 嵌入式工業系統的軟件架構·····································································.19
3.1 航空電子系統軟件架構 ······························································································19 
3.2 機器人操作系統軟件架構 ···························································································20 
3.3 分佈式控制系統軟件架構 ···························································································20 
3.4 汽車開放系統的軟件架構 ···························································································21 
3.5 嵌入式工業軟件架構設計的普遍原則和趨勢 ···································································23 
第 4 章 航空電子系統 FACE 架構 ·······································································.24
4.1 FACE 架構概覽········································································································24 
4.2 OSS·······················································································································25 
4.2.1 總體需求·······································································································25 
4.2.2 操作系統分區·································································································27 
4.2.3 分區間通信····································································································27 
4.2.4 分區內通信····································································································31 
4.2.5 本地內存分配·································································································34 
4.2.6 共享內存·······································································································35 
4.3 IOSS······················································································································36 
4.3.1 IOSS 的定義···································································································37 
4.3.2 關鍵特性·······································································································38 
4.3.3 I/O 服務接口 ··································································································39 
4.3.4 可配置性·······································································································40 
4.3.5 可變性··········································································································41 
4.4 PSSS ·····················································································································48 
4.4.1 配置服務·······································································································48 
4.4.2 系統級健康監控······························································································55 
4.5 TSS ·······················································································································59 
4.5.1 TSS 的概念····································································································59 
4.5.2 TSS 的功能····································································································59 
4.5.3 消息數據結構·································································································61 
4.5.4 傳輸服務 API ·································································································62 
4.5.5 可移植 FACE UoP 內的傳輸 API ·········································································63 
4.5.6 傳輸服務支持的通信方式和類型·········································································63 
4.5.7 傳輸服務配置·································································································64 
4.5.8 傳輸服務的實現方式························································································65 
4.5.9 TSS 通信代碼調用結構與實現············································································67 
4.6 PCS ·······················································································································68 
4.6.1 UoP 概述·······································································································69 
4.6.2 UoP 分解·······································································································70 
4.6.3 PSSS UoP ······································································································72 
4.6.4 UoP 打包·······································································································73 
4.7 基於 FACE 架構的數字地圖管理器案例分析···································································74 
4.7.1 運行視圖·······································································································74 
4.7.2 功能視圖·······································································································74 
4.7.3 物理視圖·······································································································75 
4.7.4 前提假設·······································································································76 
4.7.5 架構環境·······································································································76 
第 5 章 航空電子系統數據架構···········································································.83
5.1 數據模型語言 ··········································································································84 
5.1.1 數據模型·······································································································84 
5.1.2 UoP 模型·······································································································85 
5.1.3 集成模型·······································································································86 
5.1.4 可追溯性模型·································································································86 
5.2 共享數據模型 ··········································································································87 
第 6 章 開放架構下軟件嵌入式系統建模方法·························································.88
6.1 系統建模方法概述 ····································································································88 
6.2 系統功能的組件化方法 ······························································································89 
6.2.1 系統功能分析·································································································89 
6.2.2 系統功能組件化······························································································89 
6.3 面向組件的埠和消息類型的數據建模 ·········································································91 
嵌入式工業軟件開放架構技術與實踐——基於 FACE 架構 ·VI·
6.3.1 CDM ············································································································92 
6.3.2 LDM ············································································································93 
6.3.3 PDM ············································································································93 
6.3.4 UoP 模型·······································································································93 
6.4 組件與外部設備通信的 I/O 服務···················································································94 
6.4.1 I/O 配置文件建模方法 ······················································································94 
6.4.2 I/O 配置文件實例分析 ······················································································95 
6.5 組件間的傳輸服務 ····································································································96 
6.6 ARINC 653 系統分區的自動化配置方法研究···································································98 
6.6.1 ARINC 653 系統資源配置建模及系統資源配置的定義 ·············································98 
6.6.2 資源配置文件的自動化解析及驗證···································································.102 
6.6.3 分區間調度模型及分區內任務調度模型可調度性判定···········································.104 
6.7 飛機作戰輔助系統案例建模方法 ···············································································.114 
6.7.1 功能組件化·································································································.115 
6.7.2 操作系統選型及操作系統分區·········································································.117 
6.7.3 數據建模····································································································.117 
第 7 章 開放架構下模型與代碼的映射關系研究·····················································.122
7.1 目標代碼結構定義 ·································································································.122 
7.1.1 系統代碼設計······························································································.122 
7.1.2 數據模型代碼設計························································································.123 
7.1.3 組件代碼設計······························································································.123 
7.2 FACE 模型與代碼的映射規則···················································································.124 
7.2.1 PDM 到 IDL 的映射 ······················································································.124 
7.2.2 IDL 到程序語言(C++)的映射·······································································.125 
7.2.3 系統模型與系統代碼的映射關系······································································.127 
7.2.4 數據模型與數據類型代碼的映射關系································································.128 
7.2.5 UoP 與組件代碼的映射關系············································································.129 
7.2.6 ARINC 653 系統配置模型與代碼的映射規則 ······················································.129 
第 8 章 開放架構下模型的代碼生成技術······························································.132
8.1 模型到代碼自動生成方法概述 ··················································································.132 
8.2 系統代碼生成模板設計 ···························································································.132 
8.3 ARINC 653 系統代碼自動生成方法研究······································································.134 
8.3.1 ARINC 653 系統模塊配置文件生成模板設計 ······················································.134 
8.3.2 分區初始化代碼生成模板設計·········································································.135 
8.3.3 自動化編譯模板文件設計···············································································.135 
8.4 數據模型代碼生成方法研究 ·····················································································.135 
8.4.1 數據模型代碼生成方法概述············································································.135 
8.4.2 不同數據類型的 String Template 模板設計··························································.136 
8.4.3 生成數據類型代碼························································································.140 
第 9 章 FACE 架構建模平臺研製 ·······································································.142
9.1 FACE 建模平臺設計方案·························································································.142 
9.1.1 工具總體架構設計························································································.142 
9.1.2 FACE 模型組成元素的類圖設計 ······································································.142 
9.1.3 模型文件設計······························································································.145 
9.2 FACE 建模平臺的開發····························································································.146 
9.2.1 工具功能設計······························································································.147 
9.2.2 數據模型的解析···························································································.156 
9.2.3 工具開發框架······························································································.157 
9.3 組件代碼生成方法研究 ···························································································.158 
9.3.1 組件 String Template 模板設計·········································································.158 
9.3.2 解析組件模型文件和生成組件代碼···································································.160 
9.4 飛機作戰輔助系統案例分析 ·····················································································.160 
參考文獻 ········································································································.162

 
     
     
     
     
     
    
 
    
 
     
     
    