DevOps提出至今已逾十年,作為熱門概念,DevOps近年來頻頻出現(xiàn)于各大技術(shù)社區(qū)和媒體文章中,備受行業(yè)大咖追捧。作為新一代持續(xù)集成/持續(xù)開發(fā)(CI/CD)的方法論,DevOps正被快速引入嵌入式軟件開發(fā)領(lǐng)域中。
為什么嵌入式軟件開發(fā)對DevOps的接受度越來越高?其根本原因就在于,目前暫時沒有比DevOps更能顯著降低成本、提升效率的方法了。
谷歌的DevOps研究和評估(DevOps Research and Assessment,DORA)團隊于9月29日發(fā)布了《2022年DevOps促進狀態(tài)報告》,從吞吐量(代碼變更的準(zhǔn)備時間和部署頻率的綜合)、穩(wěn)定性(恢復(fù)服務(wù)的時間和變更失敗率的綜合)和運營業(yè)績(可靠性)三個維度對受訪者進行了聚類分析,結(jié)果顯示,未使用DevOps的受訪者很少能在半年內(nèi)將軟件投入生產(chǎn),即便成功投產(chǎn),也有16%-30%的失敗率。
失敗意味著什么?根據(jù)IT軟件質(zhì)量聯(lián)盟(Consortium for IT Software Quality,CISQ)的調(diào)查顯示,2020年全美劣質(zhì)軟件成本消耗高達2.1萬億美元,每個失敗項目造成了約5000萬美元的經(jīng)濟損失。
嵌入式軟件開發(fā)&DevOps
對于嵌入式軟件開發(fā)來說,應(yīng)用DevOps并非易事。與傳統(tǒng)軟件領(lǐng)域的DevOps不同的是,嵌入式軟件開發(fā)的DevOps嚴(yán)重依賴硬件,軟硬件存在緊耦合的情況。隨著嵌入式系統(tǒng)復(fù)雜程度的直線飆升,硬件成為了掣肘嵌入式軟件開發(fā)領(lǐng)域DevOps實施的瓶頸,不僅增加了部署的成本與實踐,還有降低開發(fā)質(zhì)量的可能。對硬件進行模擬仿真成為了最佳解決方案。
天目全數(shù)字實時仿真軟件SkyEye,是基于可視化建模的硬件行為級仿真平臺,支持用戶通過拖拽的方式對硬件進行行為級別的仿真和建模,可模擬復(fù)雜嵌入式系統(tǒng)硬件。

基于SkyEye搭建的嵌入式系統(tǒng)虛擬化運行環(huán)境,工程師可不受物理硬件限制,隨時訪問目標(biāo)系統(tǒng),快速搭建虛擬硬件模型并提前進行開發(fā)、測試和驗證工作,實現(xiàn)高效率、高質(zhì)量的軟件交付。
基于SkyEye的DevOps痛點及應(yīng)對方法
研發(fā)周期瓶頸
選擇對硬件進行仿真模擬是盡快完成開發(fā)、縮短研發(fā)周期的有效方法,但工業(yè)軟件需要選擇滿足苛刻設(shè)計要求的最佳仿真平臺。SkyEye可進行硬件行為級仿真,是為工業(yè)軟件量身定制的仿真平臺。
仿真的準(zhǔn)確與快速
仿真的準(zhǔn)確性與速度似魚與熊掌,往往不可兼得,對于航空、航天、軌交等安全關(guān)鍵領(lǐng)域而言,準(zhǔn)確性通常更為重要。基于DevOps搭建的流水線,仿真程度越是準(zhǔn)確,開發(fā)團隊對代碼的信心就越高,軟件發(fā)布的準(zhǔn)備也會更為完備。
如需開發(fā)基于特定SoC芯片的嵌入式軟件,在無法獲得芯片實物的情況下,就可以考慮應(yīng)用SkyEye。SkyEye支持主流的嵌入式硬件平臺,可運行國內(nèi)外主流的操作系統(tǒng),對國產(chǎn)生態(tài)的支持尤為出色。通過利用基于LLVM的動態(tài)二進制翻譯技術(shù),SkyEye可使虛擬處理器在典型的桌面計算機上運行速度達到2000MIPS以上。
準(zhǔn)確性與速度可通過SkyEye實現(xiàn)兼顧。
無限次的無損測試
基于SkyEye搭建的嵌入式系統(tǒng)虛擬化運行環(huán)境,工程師可不受物理硬件限制,在不損壞實驗室、不破壞實際設(shè)備的情況下對虛擬設(shè)備進行反復(fù)的壓力測試、真空測試等——涉及安全關(guān)鍵的嵌入式硬件往往伴隨著高昂的硬件制作成本。
開發(fā)團隊可應(yīng)用SkyEye隨時訪問目標(biāo)系統(tǒng),并基于此進行無窮無盡的場景組合測試,從而加快產(chǎn)品測試速度,更大幅降低DevOps應(yīng)用成本。
與第三方語言或者模型集成
仿真平臺如無法與第三方語言或模型集成,DevOps實際的可行性就要大打折扣。SkyEye目前已實現(xiàn)與SystemC集成進行時序仿真,可與MATLAB/Simulink集成進行多領(lǐng)域協(xié)同仿真,DevOps實施的便捷性得到了有效保障。

對嵌入式軟件開發(fā)領(lǐng)域而言,使用SkyEye對硬件進行高精度的仿真模擬,能夠有效規(guī)避應(yīng)用DevOps時原有硬件問題帶來的風(fēng)險,大大提高開發(fā)效率、降低開發(fā)成本。