《面向異構(gòu)計(jì)算的終端設(shè)備軟件自動化部署技術(shù)要求》_第1頁
《面向異構(gòu)計(jì)算的終端設(shè)備軟件自動化部署技術(shù)要求》_第2頁
《面向異構(gòu)計(jì)算的終端設(shè)備軟件自動化部署技術(shù)要求》_第3頁
《面向異構(gòu)計(jì)算的終端設(shè)備軟件自動化部署技術(shù)要求》_第4頁
《面向異構(gòu)計(jì)算的終端設(shè)備軟件自動化部署技術(shù)要求》_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

ICS35.240

CCSL70

團(tuán)體標(biāo)準(zhǔn)

T/CESAXXXX-202X

面向異構(gòu)計(jì)算的終端設(shè)備軟件自動化部署

技術(shù)要求

Technicalrequirementsforautomateddeploymentofenddevicesoftware

forheterogeneouscomputing

征求意見稿

在提交反饋意見時(shí),請將您知道的相關(guān)專利連同支持性文件一并附上。

已授權(quán)的專利證明材料為專利證書復(fù)印件或扉頁,已公開但尚未授權(quán)的專利申請

證明材料為專利公開通知書復(fù)印件或扉頁,未公開的專利申請的證明材料為專利申請

號和申請日期。

202X-XX-XX發(fā)布202X-XX-XX實(shí)施

中國電子工業(yè)標(biāo)準(zhǔn)化技術(shù)協(xié)會發(fā)布

T/CESAXXXX-202X

面向異構(gòu)計(jì)算的終端設(shè)備軟件自動化部署技術(shù)要求

1范圍

本文件規(guī)定了面向異構(gòu)計(jì)算的軟件自動化部署技術(shù)要求。包括自動化部署系統(tǒng)要求、部署軟件的編

譯要求、部署軟件的管理要求以及軟件安全驗(yàn)證的功能要求。

本文件適用于異構(gòu)終端設(shè)備數(shù)目較多場景下的軟件自動化部署。

2規(guī)范性引用文件

本文件沒有規(guī)范性引用文件。

3術(shù)語和定義

下列術(shù)語和定義適用于本文件。

3.1

異構(gòu)計(jì)算heterogeneouscomputing

在一個計(jì)算系統(tǒng)中,同時(shí)使用多種不同體系結(jié)構(gòu)或不同類型的處理器、加速器或協(xié)處理器來執(zhí)行計(jì)

算任務(wù)的計(jì)算范式。

3.2

自動化部署automaticdeployment

軟件部署的過程中所有的操作自動化,無需人工手工干預(yù)的一種部署方法。

3.3

軟件編譯softwarecompiling

將可讀的高級程序設(shè)計(jì)語言代碼轉(zhuǎn)換為計(jì)算機(jī)可執(zhí)行的機(jī)器碼的過程。

3.4

交叉編譯crosscompiling

在一種操作系統(tǒng)或體系結(jié)構(gòu)上,使用編譯器生成可在不同操作系統(tǒng)或體系結(jié)構(gòu)上運(yùn)行的目標(biāo)代碼的

過程。

3.5

靜態(tài)鏈接staticlinking

在程序運(yùn)行前,鏈接器通過對象文件中包含的重定位表,完成所有重定位操作,并最終形成一個在

運(yùn)行時(shí)不需要再次進(jìn)行依賴庫的加載和重定位操作的鏈接方法。

3.6

1

T/CESAXXXX-202X

動態(tài)鏈接dynamiclinking

主程序?qū)討B(tài)共享庫或?qū)ο笾蟹柕囊?,是等到可?zhí)行文件裝載時(shí)或運(yùn)行時(shí),由操作系統(tǒng)的裝載

程序加載庫的鏈接方法。

3.7

指令集編譯instructionscompilation

將應(yīng)用運(yùn)行過程中產(chǎn)生的指令轉(zhuǎn)化為異構(gòu)指令集對應(yīng)的可執(zhí)行指令的過程。

3.8

編譯系統(tǒng)compilersystem

對待部署的軟件進(jìn)行編譯打包的計(jì)算機(jī)軟件系統(tǒng)。

3.9

執(zhí)行系統(tǒng)executivesystem

軟件運(yùn)行的包含多種異構(gòu)硬件或異構(gòu)指令集的終端設(shè)備的集合。

3.10

終端設(shè)備enddevice

計(jì)算和存儲能力有限的移動設(shè)備或者物聯(lián)網(wǎng)設(shè)備。

3.11

自動化運(yùn)維管理軟件automatedoperationsmanagementsoftware

一種提供軟件自動化部署功能的軟件工具。

3.12

軟件打包softwarepackaging

將軟件的依賴環(huán)境以及可執(zhí)行程序文件進(jìn)行封裝的方法。

3.13

增量更新incrementalupdate

在軟件的更新過程中,僅對軟件中發(fā)生變化的部分進(jìn)行更新的方法。

3.14

預(yù)處理pre-processing

把多個代碼文件聚合,同時(shí)把宏的縮寫形式轉(zhuǎn)換為源語言的過程。

3.15

詞法分析lexicalanalysis

通過掃描器將源代碼的字符序列分割成一系列的記號的過程。

3.16

語法分析grammaranalysis

通過語法分析器將詞法分析產(chǎn)生的記號轉(zhuǎn)化為語法樹的過程。

2

T/CESAXXXX-202X

3.17

源代碼優(yōu)化sourcecodeoptimization

將整個語法樹轉(zhuǎn)化為中間代碼,編譯器后端將中間代碼轉(zhuǎn)化為目標(biāo)機(jī)器代碼的過程。

3.18

漏洞掃描工具vulnerabilityscanningtools

一種自動檢測遠(yuǎn)程或本地主機(jī)安全缺陷的程序。

3.19

模擬攻擊試驗(yàn)simulatedattacktest

一組特殊的黑盒測試案例。

4縮略語

下列縮略語適用于本文件:

ARM:進(jìn)階精簡指令集機(jī)器(AdvancedRISCMachines)

CPU:中央處理單元(CentralProcessingUnit)

GPU:圖形處理單元(GraphicProcessingUnit)

ID:身份標(biāo)識號(IdentityDocument)

IP:互聯(lián)網(wǎng)協(xié)議(InternetProtocol)

MIPS:無內(nèi)部互鎖流水級的微處理器(Microprocessorwithoutinterlockedpipedstages)

RISC:精簡指令集計(jì)算機(jī)(ReducedInstructionSetComputer)

X86:微處理器執(zhí)行的計(jì)算機(jī)語言指令集(TheX86architecture)

5軟件自動化部署系統(tǒng)架構(gòu)

軟件自動化部署系統(tǒng)架構(gòu)如圖1所示,主要包括編譯設(shè)備、自動化部署工具、執(zhí)行設(shè)備三個部分。

軟件自動化部署的流程如下:首先在編譯設(shè)備中通過指令翻譯軟件將需要部署的軟件編譯為不同指令架

構(gòu)的版本,然后將待部署的軟件及其環(huán)境打包,并通過自動化部署工具根據(jù)需求將軟件部署到終端設(shè)備

中,最后驗(yàn)證軟件是否部署成功及檢查其安全性。

3

T/CESAXXXX-202X

部署軟件

編譯設(shè)備

編譯軟件包編譯軟件包編譯軟件包

自動化部署工具

系統(tǒng)

終端設(shè)備

圖1軟件自動化部署系統(tǒng)架構(gòu)

6軟件自動化部署要求

6.1自動化部署系統(tǒng)要求

6.1.1部署環(huán)境要求

自動化部署主要是面向終端設(shè)備數(shù)目較多的場景,自動化部署環(huán)境應(yīng)符合以下要求:

a)包含指令集異構(gòu)設(shè)備3種及3種以上;

b)支持常見的X86,ARM,MIPS等指令集異構(gòu)設(shè)備的軟件自動化部署;

c)支持編譯系統(tǒng)與執(zhí)行設(shè)備之間的網(wǎng)絡(luò)通信。

6.1.2編譯功能要求

編譯功能是自動化部署系統(tǒng)應(yīng)包含的重要功能組成部分,應(yīng)符合以下要求:

a)包含指令集編譯軟件或指令編譯工具;

b)支持指令集轉(zhuǎn)化功能,即將異構(gòu)設(shè)備的指令編譯為目標(biāo)設(shè)備的指令;

c)支持多種不同指令集的編譯;

d)做到指令集編譯過程用戶無感知;

e)支持將編譯好的軟件及相關(guān)依賴打包;

f)支持將編譯打包好的軟件部署到執(zhí)行系統(tǒng);

g)提供足夠的內(nèi)存或磁盤空間以支持軟件編譯過程。

6.1.3部署功能要求

軟件自動化部署流程如附錄A所示,自動化部署功能應(yīng)符合以下要求:

4

T/CESAXXXX-202X

a)支持運(yùn)行自動化運(yùn)維管理軟件,通過自動化運(yùn)維管理軟件實(shí)現(xiàn)部署過程的自動化;

b)支持自動化運(yùn)維管理軟件自動在編譯系統(tǒng)下載所述待部署的軟件,將待部署的軟件自動部署至

執(zhí)行設(shè)備;

c)支持在將執(zhí)行設(shè)備納入系統(tǒng)管理時(shí),系統(tǒng)自動獲知該設(shè)備的CPU及其他硬件架構(gòu),并自動為該節(jié)

點(diǎn)打上對應(yīng)的標(biāo)簽;

d)支持在編譯系統(tǒng)中接收指定執(zhí)行設(shè)備的配置信息文件;

e)配置信息應(yīng)包括下列所有信息:執(zhí)行設(shè)備的IP地址或ID、操作系統(tǒng)版本信息、安裝路徑。

f)在將軟件部署至執(zhí)行設(shè)備中時(shí),從編譯系統(tǒng)中下載該軟件的軟件包;

g)支持在軟件倉庫的軟件包中記載該軟件支持的CPU及其他硬件架構(gòu)等元數(shù)據(jù)信息;

h)支持根據(jù)軟件支持的CPU架構(gòu)和每個設(shè)備的CPU架構(gòu)標(biāo)簽,篩選出應(yīng)用的同構(gòu)設(shè)備;

i)實(shí)現(xiàn)當(dāng)存在處于可調(diào)度狀態(tài)的同構(gòu)設(shè)備時(shí),優(yōu)先將軟件部署在同構(gòu)設(shè)備上;

j)實(shí)現(xiàn)當(dāng)所有同構(gòu)節(jié)點(diǎn)均處于不可調(diào)度狀態(tài)時(shí),將應(yīng)用部署在異構(gòu)節(jié)點(diǎn)中,使應(yīng)用在異構(gòu)節(jié)點(diǎn)中

運(yùn)行。

k)借助動態(tài)編譯工具實(shí)現(xiàn)應(yīng)用在異構(gòu)節(jié)點(diǎn)中的正常運(yùn)行。

6.1.4執(zhí)行功能要求

執(zhí)行功能是自動化部署系統(tǒng)應(yīng)包含的重要功能組成部分,應(yīng)符合以下要求:

a)支持檢測應(yīng)用支持的CPU架構(gòu)與部署所述應(yīng)用的節(jié)點(diǎn)的CPU架構(gòu)是否相同;

b)支持運(yùn)行待部署的軟件,應(yīng)包含軟件運(yùn)行所需的硬件,如GPU等;

c)支持編譯打包好的軟件的自動化部署;

d)支持軟件部署結(jié)果驗(yàn)證功能,驗(yàn)證軟件是否部署成功;

e)支持軟件部署安全性驗(yàn)證功能,驗(yàn)證軟件在部署過程中是否被攻擊;

f)支持軟件版本的自動檢測,如果軟件的版本不是最新版本,則對軟件進(jìn)行自動更新;

g)支持軟件的自動更新;

h)支持自動化更新工具的運(yùn)行;

i)支持通過網(wǎng)關(guān)實(shí)現(xiàn)異構(gòu)設(shè)備之間的通信;

j)實(shí)現(xiàn)部署過程用戶無感知。

6.2部署軟件的編譯要求

6.2.1軟件編譯流程

在部署軟件時(shí),需要將其二進(jìn)制代碼編譯為硬件設(shè)備所能執(zhí)行的指令。面向異構(gòu)計(jì)算設(shè)備,在部署

軟件之前,需要在編譯系統(tǒng)中將軟件編譯為不同指令集架構(gòu)的版本。軟件編譯流程如附錄B所示,編譯

流程如下:

a)將源程序預(yù)處理為相應(yīng)的文本文件;

b)將文本文件編譯為匯編程序文本文件;

c)將匯編程序文本文件匯編為可重定位目標(biāo)程序;

d)將可重定位目標(biāo)程序鏈接為可執(zhí)行目標(biāo)程序。

6.2.2軟件編譯要求

軟件編譯需要將高級程序設(shè)計(jì)語言書寫的源程序編譯成硬件設(shè)備可執(zhí)行的機(jī)器語言,應(yīng)符合以下要

求:

a)支持軟件編譯和異構(gòu)指令集編譯兩種功能;

5

T/CESAXXXX-202X

b)支持將軟件的源代碼編譯為能夠在執(zhí)行設(shè)備中直接運(yùn)行的指令;

c)支持源程序的預(yù)處理;

d)支持處理完的文本文件的詞法分析、語法分析、語義分析和優(yōu)化,并形成一個新的匯編語言程

序文本文件;

e)支持實(shí)現(xiàn)詞法分析的掃描器;

f)支持實(shí)現(xiàn)語法分析的語法分析器;

g)支持實(shí)現(xiàn)源代碼優(yōu)化的源代碼優(yōu)化器;

h)支持通過匯編器將匯編語言程序文本文件翻譯成機(jī)器語言指令,把這些指令打包成可重定位目

標(biāo)程序的格式,并將結(jié)果保存在目標(biāo)二進(jìn)制文件中;

i)支持軟件的靜態(tài)鏈接和動態(tài)鏈接;

j)輸出鏈接后的軟件的可執(zhí)行二進(jìn)制文件。

6.2.3指令集編譯要求

指令集編譯是指當(dāng)軟件部署在指令集異構(gòu)的設(shè)備上時(shí),將其二進(jìn)制代碼編譯為異構(gòu)設(shè)備所能執(zhí)行的

指令的過程,應(yīng)符合以下要求:

a)建立不同架構(gòu)CPU對應(yīng)的指令集中各個二進(jìn)制指令之間的映射關(guān)系;

b)在接收到應(yīng)用運(yùn)行過程中產(chǎn)生的指令后,通過查詢映射關(guān)系,實(shí)現(xiàn)對二進(jìn)制指令的轉(zhuǎn)化;

c)支持使用虛擬操作系統(tǒng)模擬器,虛擬操作系統(tǒng)模擬器可以模擬待部署設(shè)備的CPU等底層硬件;

d)支持將軟件運(yùn)行過程中產(chǎn)生的指令轉(zhuǎn)換為虛擬的同構(gòu)CPU對應(yīng)的指令集中的二進(jìn)制指令;

e)支持由虛擬的同構(gòu)CPU執(zhí)行二進(jìn)制指令,虛擬操作系統(tǒng)模擬器在模擬同構(gòu)節(jié)點(diǎn)的底層硬件時(shí)也

在不斷產(chǎn)生指令;

f)支持將虛擬操作系統(tǒng)模擬器的指令轉(zhuǎn)換為真實(shí)的異構(gòu)CPU對應(yīng)的指令集中的二進(jìn)制指令;

g)輸出編譯后的軟件的可執(zhí)行二進(jìn)制文件。

6.3部署軟件的管理要求

6.3.1軟件打包要求

在軟件部署前,需要在編譯系統(tǒng)中將要部署的軟件進(jìn)行打包,應(yīng)符合以下要求:

a)將軟件的運(yùn)行環(huán)境以及應(yīng)用程序進(jìn)行打包;

b)先編寫用來構(gòu)建軟件包的文本文件,文本文件應(yīng)包含逐條構(gòu)建軟件包所需的指令和說明;

c)包含應(yīng)用所需要的運(yùn)行環(huán)境,如操作系統(tǒng)文件和文件系統(tǒng)對象;

d)包含應(yīng)用程序的程序文件,即軟件編譯輸出的可執(zhí)行文件;

e)啟動文本文件生成軟件包,軟件包應(yīng)包含程序文件、依賴環(huán)境、系統(tǒng)文件,進(jìn)而執(zhí)行軟件部署。

6.3.2軟件更新要求

軟件更新的流程是首先在當(dāng)軟件發(fā)布新版本時(shí),在編譯系統(tǒng)中將需要更新的軟件編譯為不同指令架

構(gòu)的版本。然后在執(zhí)行系統(tǒng)中自動檢測軟件的版本是否需要更新,若需更新,在編譯系統(tǒng)中編譯軟件的

增量更新包,并將待更新的軟件的增量更新包部署至目標(biāo)設(shè)備,將增量更新包與原來的軟件包進(jìn)行融合。

最后驗(yàn)證軟件是否更新成功及檢查其安全性。軟件更新流程如附錄C所示,軟件更新應(yīng)符合以下要求:

a)在編譯系統(tǒng)中將需要更新的軟件編譯為不同指令架構(gòu)的版本;

b)在部署終端通過自動化運(yùn)維管理軟件自動檢測軟件的版本是否需要更新;

c)基于自動化運(yùn)維管理軟件中的定時(shí)任務(wù)模塊來設(shè)置定時(shí)任務(wù)來定時(shí)檢查待部署軟件的版本號;

d)支持執(zhí)行設(shè)備實(shí)現(xiàn)流式加載模式;

6

T/CESAXXXX-202X

e)包括軟件包管理的功能;

f)在檢測到軟件需要更新時(shí)在編譯系統(tǒng)中以數(shù)據(jù)流形式將軟件的增量更新包部署至目標(biāo)設(shè)備;

g)在執(zhí)行設(shè)備中將增量更新包與原來的軟件包進(jìn)行融合,實(shí)現(xiàn)軟件的更新。

6.4軟件安全驗(yàn)證的功能要求

為確保軟件跨設(shè)備成功安裝或更新以及部署過程中軟件的安全性,在部署結(jié)束后應(yīng)對軟件的安全性

進(jìn)行驗(yàn)證。安全驗(yàn)證應(yīng)符合以下要求:

a)幫助自動化部署系統(tǒng)分析系統(tǒng)當(dāng)前的安全運(yùn)行狀況,發(fā)現(xiàn)存在的安全性問題;

b)提供安全性改進(jìn)方法,降低系統(tǒng)的安全性風(fēng)險(xiǎn);

c)提供特定的漏洞掃描工具進(jìn)行漏洞掃描;

d)測試權(quán)限管理、用戶管理、加密、認(rèn)證等安全功能模塊,驗(yàn)證上述功能是否有效;

e)通過模擬攻擊來驗(yàn)證軟件的安全防護(hù)能力。

7

T/CESAXXXX-202X

附錄A(資料性)

軟件自動化部署流程

軟件自動化部署流程如圖A.1所示。

開始

在編譯系統(tǒng)中通過指令翻譯軟件將需要部署的軟件編譯為

不同指令架構(gòu)的版本

在編譯系統(tǒng)中將要部署的軟件及其環(huán)境打包

根據(jù)需求將軟件部署到集群中的異構(gòu)設(shè)備

驗(yàn)證軟件是否部署成功及檢查其安全性

結(jié)束

圖A.1軟件自動化部署流程圖

8

T/CESAXXXX-202X

附錄B(資料性)

軟件編譯流程

在軟件部署之前需要先將軟件的源代碼編譯為終端設(shè)備可執(zhí)行的指令,軟件編譯流程如圖B.1所示:

開始

源程序

預(yù)處理

預(yù)處理完的文本文件

編譯

匯編程序文本文件

匯編

可重定位目標(biāo)程序

鏈接

可執(zhí)行目標(biāo)程序

結(jié)束

圖B.1軟件編譯流程圖

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論