999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

軟件定義衛星公共服務平臺的設計與實現

2018-06-29 06:19:52任勃1張明昆1劉建平1吳濤1胡科飛1西安衛星測控中心宇航動力學國家重點實驗室
衛星與網絡 2018年5期
關鍵詞:定義作業信息

+ 任勃1,張明昆1,劉建平1,2,吳濤1,胡科飛1 (1. 西安衛星測控中心) (2. 宇航動力學國家重點實驗室)

隨著智能終端的大規模普及,計算和存儲服務從客戶端轉向云端,計算機軟件正在以數字比特的形式改寫現實世界中的方方面面,軟件定義蓬勃發展[1]。2017年9月,中國科學院軟件研究所聯合國內三十余家單位發起成立軟件定義衛星技術聯盟,提出了以天基超算平臺和星載操作環境為核心的軟件衛星開放式系統[2-3]。聯盟計劃搭建以天智系列衛星為基礎的平臺化軟件解決方案,設立航天應用軟件商店,形成軟件定義衛星開放生態,稱之為“Sputnix”。

建立航天應用商店時,不同的應用軟件需要和衛星進行不同的信息交互,涉及到各種星載硬件和鏈路協議,一定程度上造成了衛星服務和軟件接口的重復開發,數據交互比較復雜,對星上鏈路和軟件安全造成威脅[4]。在星載操作環境中部署一個強大的公用平臺可以為星上航天應用軟件提供完善豐富的系統配置和基礎服務支持,符合釋放平臺能力和生產力的技術趨勢[5]。公共平臺使衛星應用軟件開發者可以專注于軟件功能和用戶體驗,而與衛星硬件傳感器產生的在軌數據的交互全部由公用平臺來完成。洪錫軍等提出的軟件通用運行平臺主要關注應用軟件的可移植性[6],廖明宏等提出的小衛星軟件公用平臺側重于基于功能的程序語言類庫的建設[7],本文針對軟件定義衛星提出在系統上建立一個公共軟件服務平臺,包括硬件計算設施、系統軟件倉庫、計算作業算法庫、信息交互接口四大模塊。硬件計算設施由天基超算平臺、磁盤陣列數據存儲器等組成,衛星硬件傳感器與公共軟件平臺的接口暫不考慮;系統軟件倉庫主要為星上軟件提供各類基礎性軟件包安裝源,類似于Ubuntu系統軟件更新中心;計算作業算法庫為應用軟件提供多樣化、具有一定普適性的在軌計算算法;交互接口則負責所有應用軟件與軟件定義衛星系統的信息交換。模塊化的設計符合軟件定義衛星的重組、重配和重構理念,同時也提升了整個系統的安全性。

1 公共服務平臺整體架構

1.1 公共服務平臺結構設計

公共軟件服務平臺外部主要與衛星的各個硬件傳感器、航天軟件商店應用軟件相聯系。平臺的目標是使星載操作環境與航天應用軟件適當解耦,做到“緊貼和、弱隔離”。“緊貼和”的前提是提供應用軟件依賴軟件包的最大支持集合,以及完整、豐富、安全的系統配置,使星載操作環境能夠滿足個性化應用軟件對系統環境的要求;在系統環境未能滿足應用軟件需求時,可從系統軟件倉庫下載安裝可選軟件包,或搜索衛星作業算法庫中的算法列表進行調用和引用,并通過接口和數據控制使應用軟件與星載操作環境相對分離,實現“弱隔離”,避免應用軟件對衛星核心系統運行產生干擾。公共服務平臺架構如圖1所示。

所有星載應用軟件的運行均基于星載公共軟件服務平臺,新增上注的衛星應用軟件通過向公共平臺注冊后再進入發布運行階段。應用程序管理,衛星數據調度,系統狀態記錄,衛星配置管理等衛星在軌公共業務由公共軟件服務平臺的信息交互接口模塊統一處理,公共平臺按照一定的規則和時間間隔向全系統廣播系統狀態和配置信息。公共服務平臺上的應用軟件作為一個獨立的Linux系統后臺進程運行,公共平臺負責所有應用軟件傳輸數據的分發調度。

1.2 公共服務平臺在軌計算作業算法庫

公共軟件服務平臺的四大組成模塊中,系統軟件倉庫主要解決應用軟件依賴的下載與部署,對各種Linux系統引用軟件包進行版本控制,建立系統軟件安全規范。計算作業算法庫的主要目標是存儲各類常用并具有一定系統普適性和標準接口的算法,結合天基超算平臺的算力支持,為應用軟件提供一個基礎業務環境,使應用軟件開發者不再需要關注衛星硬件傳感器數據的產生和輸出,同時輔助實現衛星功能拓展。衛星在軌運行期間,需要計算軌道、姿態、能源等基本要素,這些內容屬于傳統意義上衛星的基礎計算作業。同時,基于強大的天基超算平臺,衛星還可以進行多樣化的復雜運算和智能推理,稱之為智能計算作業。智能計算作業基于蒙特卡洛模擬方法、無監督學習等數據處理和機器學習算法,其應用領域包括基于深度學習的對地觀測圖片在軌識別、太空VR/AR應用效果渲染等。

在基礎作業算法庫部署精密定軌工具。精密定軌是保證衛星正常在軌運行的基本條件,一個完整的定軌流程包括GNSS(Global Navigation Satellite System,全球導航衛星系統)定位數據接收、數據解包與坐標轉換、迭代計算定軌三個步驟。相應的,基礎作業算法庫提供位置數據解包、坐標轉換、定軌算法引用列表等基礎服務包,為衛星在軌長期管理提供基本信息,也可以供地球參數解算等基礎科學研究類型的航天應用軟件調用。

圖1 公共軟件服務平臺框架

在智能作業算法庫中部署C++庫Tensor RT。Tensor RT是英偉達(NVIDIA)公司發布的高性能深度學習推理引擎[8],在對地觀測圖像處理、空間操作、航天器碰撞預警等領域具有廣泛的應用前景。航天應用軟件首先利用天基超算平臺中的GPU對海量數據進行神經網絡模型訓練,經過網絡前向和后向傳播,生成模型文件;再調用推理引擎使用訓練好的模型對新數據進行預測,并進行前向傳播。當星上航天應用軟件使用基于Caあe(伯克利大學人工智能研究團隊提出的一種深度學習框架)和TensorFlow(谷歌公司推出的機器學習框架)等深度學習框架時,推理引擎能夠直接加載開發人員在地面訓練好的模型文件,并根據天基超算平臺GPU陣列的參數對模型進行優化,遙控上注改進的模型文件就可以持續發揮Tensor RT的巨大潛力。

公共平臺的作業算法庫中的算法模塊提供動態鏈接庫可以供應用軟件直接引用,也提供標準的應用程序接口,具體以算法函數的封裝演進版本等級而定。針對沒有動態鏈接庫的情況,初步設計了如圖2的接口,其中算法實例是指一次算法服務的實例化,服務單元負責算法服務實例的創建、配置和刪除,代理服務器負責創建請求、從通信服務中接收數據單元等,底層采用TCP/IP協議連接。作業算法庫的引入使航天領域各類算法能夠在軌驗證、比較和標定,同時極大的拓展了衛星系統的功能,實現軟件定義衛星智能化、需求動態重構的目標。

2 公共服務平臺接口設計

2.1 基于共享內存的高速率數據傳輸處理

衛星硬件傳感器產生的高碼率數據(大于1Mbps)通過公共軟件平臺發送給應用軟件,如果接收同一類工程數據的應用軟件都對數據進行緩存,或存入存儲器再讀出,則會極大的占用系統硬件資源,數據時延也會對實時類應用產生很大負面影響[9]。因此本文設計“數據類型相同,緩沖內存共享”的數據交互方式,使公共平臺和應用軟件的數據交互在共享內存中完成。共享內存區是最快的Linux進程間通信形式,一旦這樣的內存映射到共享它的進程的地址空間,這些進程間的數據傳遞不再涉及到Linux內核。共享內存允許兩個或多個進程共享一個給定的存儲區域,數據不需要在多個進程之間進行復制。考慮部分應用軟件對高碼率數據傳輸的需求,在星載操作環境下設計公共平臺與應用軟件共享內存的數據交互方式。

圖2 作業算法庫與應用軟件接口

在搭建數據交互流程時,采用模塊化的設計方式,將涉及共享內存的操作封裝為一個MemoryHighWay類,該類實例化后以命名和空間大小為標記開辟共享內存,定義一個環形數據緩沖區并將緩沖區寫入共享內存進行維護。每個需要高速數據傳輸服務的應用軟件調用MemoryHighWay類,在該應用軟件與數據緩沖區之間形成管道,多個應用軟件以緩沖區為中心形成多個管道,MemoryHighWay類可以對管道上的數據進行操作,在必要情況下可以對數據幀的時序進行檢查。在操作管道數據時,啟用多線程,利用線程互斥保護數據安全,在每次操作流程中加入計數信號對數據進行同步,示意圖如圖3。在星載操作環境下,應用軟件的交互對象既可以是其他一個或多個應用軟件,也可以是公共軟件服務平臺。

測試環境采用中標麒麟國產化Linux操作系統,使用C++語言和Qt平臺開發高碼率數據發生器軟件,以及兩個基于共享內存方案的應用軟件接收處理數據。經過地面測試,在4M帶寬下傳輸1.13Mbps的數據時,應用軟件收到的數據沒有逆序;軟件能夠正確處理數據丟失等異常情況;在數據發生器進行主備機切換時,測試軟件能夠正確完成新數據幀序列的重新捕獲接收。

2.2 基于消息中間件的信息交互機制

公共平臺和應用軟件之間的信息交互主要有應用軟件管理、衛星數據調度,系統狀態記錄,衛星配置管理等信息交換業務。為了便于衛星內部統一信息交換格式,解決系統表示層的互操作問題,參考測控數據表示[10],定義一種稱為SDF(Satellite Data Format,衛星數據格式)的協議作為統一的數據交換格式,各類數據按照約定的編碼表由信源新宿、數據類型等封裝成SDF數據包,假設衛星硬件傳感器產生的數據在到達公共平臺時已經轉換為SDF格式。SDF格式可以與標準XML文件格式相互轉換,適應主流應用軟件配置文件格式的傳輸。

圖3 共享內存方式數據交互

采用消息中間件完成公共平臺和應用軟件之間的信息交互,C++消息服務(C++ Messaging Service,CMS)定義了消息中間件的接口規范,可以提供與各廠商無關的消息訪問與收發服務。公共平臺與應用軟件通過CMS接口實現數據交互,包括文本信息、可序列化對象信息、鍵值對屬性集合、字節流和原始值流信息等均可以在虛擬信道中傳輸。在應用軟件與公共平臺之間數據傳輸速率較低的情況下,該方式可以代替共享內存實現數據交互。基于CMS規范的消息中間件,屏蔽了底層操作系統、通信協議和數據格式的差異,使公共平臺與應用軟件在數據層面解耦,同時實現了公共平臺的管理功能和倉儲功能。兩者之間的交互內容主要包含以下幾個方面:

(1)應用軟件向公共平臺發送注冊信息,建立信息管道;

(2)公共平臺向所有應用軟件發送心跳信號;

(3)公共平臺向應用軟件發送啟動和關閉信號;

(4)應用軟件按照SDF中數據類型和應用軟件標識向公共平臺發送數據請求;

(5)公共平臺按照數據請求列表向應用軟件發送數據;

(6)應用軟件向公共平臺發送停發數據申請;

(7)應用軟件關閉前向發送公共平臺發送下線信號;

(8)公共平臺向所有應用軟件發送公共配置更新。

其中第(5)項是指,發送速率大于1Mbps時使用2.1節的共享內存方式,低于1Mbps時使用消息中間件管道。

單個航天應用軟件在運行過程中與公共平臺的數據交互如圖4,假設同時運行多個應用軟件,在普通硬件水平的計算機環境下,使用ActiveMQ在中標麒麟Linux操作系統上對設計的交互機制進行了測試。由飛行圈次序號、信息類別碼、數據類型、信息源(應用軟件進程號)、注冊和反注冊標識、數據索取條件、注冊信息哈希碼等七項組成信息交互基類,基于C++的Boost庫的序列化模塊實現信息交互中基類的序列化和反序列化。該基類可以在應用軟件向公共平臺注冊、應用軟件向公共平臺發送數據申請兩種情況下通用,區別僅在于注冊時信息交互類中的數據類型為注冊類型,數據申請時數據類型為應用軟件業務數據類型。每個交互信息的哈希碼作為唯一鍵值索引動態存儲在公共平臺注冊列表和數據列表中,單個應用軟件第一次注冊時加入注冊列表,第一次反注冊時從注冊列表中刪除;某個應用軟件第一次申請某一種數據類型時加入數據列表,所有應用軟件最后一次撤銷該數據類型時從數據列表中刪除。從測試情況來看,在通常的衛星下行遙測數據傳輸速率下,數據的注冊和申請沒有丟失現象,數據的申請和索取沒有延遲,并且能夠實時接收到,數據解包正常,ActiveMQ服務運行穩定,對硬件資源的消耗占用不明顯。

圖4 航天商店應用軟件數據交換流程

3 結束語

針對軟件定義衛星開放系統建設中航天應用軟件商店發展思路和面臨的具體問題,設計了一種軟件定義衛星公共服務平臺,設置衛星作業算法庫實現應用軟件引用和衛星功能擴展,提出了應用軟件和公共平臺的數據交互方法和信息交互機制,中標麒麟Linux系統環境下的仿真數據測試表明本文的設計符合高速率數據的傳輸,實現了應用軟件和公共平臺之間規范的信息交換。有效屏蔽了軟件定義衛星硬件層面的交互,使軟硬件解耦。下一步將在地面使用TensorFlow建立神經網絡深度學習模型,重點研究在編隊衛星伴飛、空間操作任務中,通過圖像處理識別衛星物理邊緣、相對距離和速度,調用智能作業算法庫Tensor RT進行航天器碰撞預警分析,使軟件定義衛星公共服務平臺在天智系列衛星中得到在軌測試和應用。

[1]葉毓睿,雷迎春,李炫輝,等. 軟件定義存儲:原理、實踐與生態[M]. 北京:機械工業出版社,2016:1-3.YE Y R,LEI Y C,LI X H,et al. Software defined storage:principle, practice and ecosystem[M]. Beijing:China Machine Press,,2016:1-3(in Chinese).

[2]軟件定義衛星項目組. 軟件定義衛星-商業航天發展的助推器[J].衛星與網絡,2017,9:36-38.

[3]趙軍鎖,吳鳳鴿,劉光明. 軟件定義衛星技術發展與展望[J]. 衛星與網絡,2017,12:23-29.

[4]王麗沖,姚秀娟,閆毅. 一種基于OpenFlow的軟件定義衛星網絡架構設計方案[J]. 電子設計工程,2016,24(17):85-89.WANG L C,YAO X J,YAN,Y. A SDSN architecture design based on OpenFlow[J]. Electronic Design Engineering,2016,24(17):85-89.

[5]顏凱,張軍. 軟件定義服務架構研究[J]. 信息技術與標準化,2016,8:28-32.

YAN K,ZHANG J. Research of the framework of software defined service[J]. Information Technology & Standardization,2016,8:28-32.

[6]廖明宏,吳翔虎,程光明. 小衛星軟件公用平臺設計[J]. 計算機工程與設計,2001,22(6):28-33.LIAO M H,WU X H,CHENG G M. Common software platform design for small satellite[J]. Computer Engineering and Design,2001,22(6):28-33.

[7]洪錫軍,張激. 嵌入式應用軟件通用運行平臺研究[J]. 計算機工程,2004,30(24):67-69.HONG X J,ZHANG J. Research on common running platform for embedded applications[J]. Computer Engineering,2004,30(24): 67-69.

[8]SHASHANK PRASANNA, PRETHVI KASHINKUNTI,FAUSTO MILLETARI. Tensor RT 3: faster tensor flow inference and volta support[EB/OL].NVIDIA DEVELOPER: NVIDIA Developer Blog,2017(2017-12-04)[2018-02-27]. https://devblogs.nvidia.com/tensorrt-3-faster-tensorflow-inference/.

[9]威廉姆斯著,周全,梁娟娟,宋真真,許敏等譯,C++并發編程實戰[M]. 北京:人民郵電出版社,2015:3-4.Anthony Williams. C++ Concurrency In Action[M]. Manning Publications,2012:4-5.

[10]李英女,鄭國雄. 測控數據的軟件定義方法[J]. 飛行器測控學報,2001,20(2):72-76.

猜你喜歡
定義作業信息
快來寫作業
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
作業
故事大王(2016年7期)2016-09-22 17:30:08
成功的定義
山東青年(2016年1期)2016-02-28 14:25:25
展會信息
中外會展(2014年4期)2014-11-27 07:46:46
修辭學的重大定義
當代修辭學(2014年3期)2014-01-21 02:30:44
我想要自由
山的定義
公務員文萃(2013年5期)2013-03-11 16:08:37
三十六計第七計:無中生有
教你正確用(十七)
海外英語(2006年11期)2006-11-30 05:16:56
主站蜘蛛池模板: 国内丰满少妇猛烈精品播| a级高清毛片| 欧美激情首页| 亚洲无卡视频| 亚洲人成影院午夜网站| 久久综合婷婷| 亚洲福利一区二区三区| 久久99精品久久久久久不卡| 精品久久国产综合精麻豆| 伊人久久大线影院首页| 99久久精品国产综合婷婷| 久久精品人人做人人爽电影蜜月| 亚洲综合色区在线播放2019 | 欧美影院久久| 成人亚洲天堂| 亚洲第一成网站| 精品人妻系列无码专区久久| 无码福利日韩神码福利片| 国产白浆视频| 亚洲精品无码AⅤ片青青在线观看| 99视频有精品视频免费观看| 亚洲美女AV免费一区| 日韩免费毛片视频| 亚洲国产清纯| 日韩精品成人网页视频在线| 亚洲人视频在线观看| 欧美一级色视频| h视频在线播放| 九月婷婷亚洲综合在线| 在线国产91| 在线观看视频一区二区| 国产亚洲精久久久久久无码AV| 福利在线一区| 精品国产网| 欧美区一区| 丝袜无码一区二区三区| 美女无遮挡拍拍拍免费视频| 美女被操91视频| 国产人人乐人人爱| 亚洲另类国产欧美一区二区| 国产福利小视频在线播放观看| 免费一级无码在线网站 | 日韩在线观看网站| 丝袜美女被出水视频一区| 色欲色欲久久综合网| 午夜无码一区二区三区在线app| 青青草原国产精品啪啪视频| 亚洲一区二区黄色| 五月综合色婷婷| 免费在线色| 午夜丁香婷婷| 欧美色视频网站| 蜜臀AV在线播放| 久久精品女人天堂aaa| 亚洲热线99精品视频| 在线高清亚洲精品二区| 亚洲成aⅴ人片在线影院八| av尤物免费在线观看| 又大又硬又爽免费视频| 欧美19综合中文字幕| 久草视频精品| 高清无码不卡视频| 久久国产拍爱| 国产精品无码AV片在线观看播放| 国产精品太粉嫩高中在线观看| 色婷婷天天综合在线| 欧美影院久久| 国产一级毛片在线| 日韩欧美一区在线观看| 伊人天堂网| 亚洲人成高清| 视频在线观看一区二区| 国产成人1024精品下载| 亚洲国产成人在线| 成人日韩欧美| 国产剧情一区二区| 一级一级特黄女人精品毛片| 久久成人国产精品免费软件| 亚洲中文字幕精品| 青青草一区二区免费精品| 国产女人爽到高潮的免费视频 | 日本国产在线|