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

基于嵌入式軟件的自動化框架結構研究

2023-05-29 09:23:50李亞偉萬海濤
電子技術與軟件工程 2023年7期
關鍵詞:嵌入式

李亞偉 萬海濤

(北京賽迪軟件測評工程技術中心有限公司 北京市 100048)

目前大部分軟件開發環境都缺乏整合性的軟件測試工具的輔助,或測試工具僅局限于程序中的特定部分,無法有較完整的測試管理提供一套軟件測試的整合環境,嵌入式系統通常比一般桌面型電腦的軟硬件的資源限制多,因此,在測試嵌入式軟件時,測試者需花費更多的心力來測試及改進嵌入式軟件的質量[1]。此外,傳統的單元測試工具主要針對單一平臺,并且使用人工輸入或自動產生的方法產生測試用例及測試數據;但是自動產生測試用例的方法仍然需要加強,因為大多數的單元測試(unit test)工具都只會自動產生測試用例的程序框架,或只能支持原生的數據類型,使得測試工程師需要手動在產生的程序框架內編寫測試代碼及輸入測試數據,人工產生測試用例[2]。然而,測試工作往往需要重復多次的測試動作,造成工作量的負擔,且以手動輸入測試數據進行測試既沒有效率,對被測軟件本身也是一種變更,容易出錯,也很難提升測試的覆蓋率[3]。在測試執行性能部分,測試工程師很難得知軟件在嵌入式平臺上實際執行的狀況,所以執行性能測試也較為困難。為了降低嵌入式平臺執行測試負荷及減少測試工程師的負擔,本研究建構了一個支持交叉測試的自動化測試工具,其主要區分為功能性測試,包含單元測試、覆蓋率測試,和并行程序的性能測試。

1 測試軟件框架

1.1 系統整體框架

宿主機和目標機的測試框架是面向嵌入式系統設計的一種測試方法。在這個框架下,宿主機(Host)和目標機(Target)之間通過串行通信(Serial Communication)進行交互,利用開發板的JTAG(Joint Test Action Group)接口進行實時調試。該測試框架由以下幾部分組成:

(1)聯機調試:使用JTAG 接口將宿主機和目標機連接起來,進行聯機調試。此時,目標機運行實際代碼,而宿主機則控制測試過程并收集測試結果。

(2)異常處理:當測試過程中出現異常時,需要及時排查,找到問題所在,分析原因并進行修復。

(3)結果分析:分析測試結果,得出測試結論,并對測試程序進行優化和改進。

宿主機和目標機的測試框架具有高效、準確、可重復性強等特點,在嵌入式系統的開發和測試中得到廣泛運用。

宿主機本文使用X86 平臺,目標機為ARM11 MPCore平臺。宿主機中本文使用的開源庫包含了GCOV、Cppunit、Jfreechart、Pin tool、TBB。

1.2 系統核心算法

TBB pipeline 可以讓使用者去決定并行化的程度,此為pipeline token 數,對于選擇一個正確的pipeline token 數需要經驗的累積,若所設定的token 數太小則會限制并行的程度,而token 數太大則會耗費不必要的資源[4]。一般若要找出最佳的pipeline token 數量,測試工程師需要多次手動修改pipeline token 的參數,對此我們提出自動建議一個合適的pipeline token 數量,節省使用者花費額外的時間在測試 pipeline 并行化的效率,并能更精準的提升并行程序的性能[5]。

測試工程師需先選取包含TBB pipeline 函數源代碼,本研究將自動測試程序片段來獲取性能信息,如圖1 所示,包含了TBB 所提供的timer 來獲取pipeline 程序執行時間及取代原程序pipeline 執行的參數(ppline.run(int))使其能代入自動產生的管道令牌號測試用例(pipeline token number test case),最后再借由宿主機-目標機機制來實現自動化測試。當程序執行完,在宿主機會顯示出執行時間的分布圖及CPU 每個核心的使用率,最后我們將會自動分析所收集的測試數據,提供測試工程師一個建議并行化門檻值范圍,使pipeline 并行程序達到較好的性能[6]。

圖1:測試代碼至TBB 并行程序

經過我們多次的分析,我們發現測量token 數量對于程序執行時間的分布大都如圖2 所示,因此我們以五個token 數為單位,計算其平均值,并找出一個建議的token 數范圍,測量的token 數為1~10,我們取token 數1~5 執行時間的平均值為17.6 毫秒,token 數2~6 執行時間的平均值為12.4 毫秒,以此類推,當我們發現下一次的平均值大于目前的平均值(Token No. 4~8 的執行時間為12.4 毫秒大于Token No. 3~7 的執行時間為11.8 毫秒),我們所建議的token 數為3~7。

圖2:TBB 性能測量時間分布范例

2 測試軟件驗證

本實驗將以TBB pipeline 實現圖像處理程序,并使用4 個CPU core 執行,預處理的圖像大小為128*128 像素,共執行10 種不同的圖像處理主要工作為以不同的算法達到圖像的邊緣化(gradient、laplacian、Prewitt)、去噪音(smooth、median)、去除圖像不連續的接點(erosion/dilation)、細線化(thinning)、旋轉(rotation)及二值化(threshold);在pipeline 中需循序處理的包含讀取圖像、輸出圖像,可并行處理的為gradient、laplacian、Prewitt、thinning、smooth、median、erosion、dilation、rotation、threshold,測量的stage 數量為1~12,在此我們去比較1~12 stage 的執行時間,并測量出一個建議的pipeline token 數[7]。

圖3、表1 為1-12 個stage 分別輸入1-12 個token數的執行時間,由此可以看出,當使用1 個stage 時效率最差,其次為使用2 個stage,且當 stage 的數量大于3 時,程序所執行的時間都是差不多的。

表1:TBB pipeline 1~12 stage 執行時間

圖3:TBB pipeline 1 ~12 stage 性能測量

由于本實驗其中包含圖像的輸入及輸出,因此只使用1 個stage 及2 個stage 執行pipeline,為循序執行,導致執行的時間較慢,如圖3,而其它stage 數執行的時間的差距不大,表2 為本實驗針對 stage1 至stage12所建議的token 數。

表2:TBB pipeline 1~12 stage 建議的token 數

本文的實驗結果說明了我們所開發的系統是可運作的,而且由于自動及半自動的產生測試數據,自動的產生測試用例及測試驅動的機制,且測試都以可視化界面表現測試結果,能方便并減輕使用者的負擔。實驗說明了在程序執行時可動態監控CPU 使用率,使得測試工程師容易得知軟件在嵌入式板上執行的性能,更容易去改進軟件性能,最后實驗為測試 TBB 并行化的效率,讓測試工程師得知一個建議的token 數,使得測試工程師不需花額外時間測試TBB pipeline 并行化的效率。

3 總結

本研究建構了一個支持嵌入式軟件開發的自動化測試環境系統,此系統能根據分析源代碼后的信息,能夠產生測試用例、測試驅動及支持自動產生元類型,結構類型和對象類型的測試數據,但對于C/C++模板(template)類型、指標類型尚未完全支持。本系統能提供單元測試、覆蓋測試及并行程序(TBB)性能測量及監控,測試結果也能以可視化圖形顯示。此外,我們在ARM11 的多核平臺上做實際的測試,在實驗中,我們針對C/C++數據結構范例程序進行測試,測試結果呈現我們所發展的系統是可運作的;實驗為TBB pipeline 并行效率自動化測試,可使測試工程師不需花額外的時間手動輸入測試數據來測試TBB pipeline 效率,利用我們所開發出來的系統,來減少測試的負擔并增加測試的效率。

猜你喜歡
嵌入式
Focal&Naim同框發布1000系列嵌入式揚聲器及全新Uniti Atmos流媒體一體機
TS系列紅外傳感器在嵌入式控制系統中的應用
電子制作(2019年7期)2019-04-25 13:17:14
基于嵌入式Linux內核的自恢復設計
嵌入式系統通信技術的應用
電子制作(2018年18期)2018-11-14 01:48:16
嵌入式PLC的設計與研究
電子制作(2018年16期)2018-09-26 03:27:18
搭建基于Qt的嵌入式開發平臺
基于嵌入式系統Windows CE的應用程序開發
嵌入式單片機在電機控制系統中的應用探討
電子制作(2017年8期)2017-06-05 09:36:15
嵌入式軟PLC在電鍍生產流程控制系統中的應用
電鍍與環保(2016年3期)2017-01-20 08:15:32
Altera加入嵌入式視覺聯盟
主站蜘蛛池模板: 久久美女精品| 午夜视频在线观看免费网站| 国产午夜人做人免费视频中文| 亚洲swag精品自拍一区| 亚洲AV无码乱码在线观看代蜜桃 | 亚洲激情99| 青青草原国产一区二区| 日韩一区精品视频一区二区| 欧美a在线视频| 99国产精品国产| 亚洲精品国产自在现线最新| 国产一区二区三区夜色 | 午夜国产小视频| 成人综合在线观看| 亚洲人成在线精品| 一本无码在线观看| 欧美成一级| 国产高清精品在线91| 性视频久久| a欧美在线| 97超爽成人免费视频在线播放| 韩日无码在线不卡| 亚洲第一色网站| 亚洲天堂网2014| 在线播放91| 免费在线看黄网址| 免费Aⅴ片在线观看蜜芽Tⅴ| 亚洲综合片| 国产福利一区在线| 日韩天堂视频| 免费可以看的无遮挡av无码| 欧美日韩专区| 色综合网址| 国产精品亚洲一区二区三区z| 色哟哟精品无码网站在线播放视频| 国产精选自拍| 欧美成人精品在线| 国产丝袜91| 国内精品视频| 日本a级免费| 国产精品夜夜嗨视频免费视频| 免费人欧美成又黄又爽的视频| 在线观看的黄网| 一级毛片免费播放视频| 久久精品中文字幕免费| 久久免费精品琪琪| 国产91全国探花系列在线播放| 欧美视频在线播放观看免费福利资源| 国产亚洲日韩av在线| 欧美精品成人一区二区视频一| 精品亚洲国产成人AV| 美女扒开下面流白浆在线试听 | 黄色网站不卡无码| 少妇精品久久久一区二区三区| 老司机久久精品视频| 日本五区在线不卡精品| 美女一区二区在线观看| 欧美有码在线观看| 国产成人精品无码一区二| h视频在线观看网站| 亚洲va欧美va国产综合下载| 免费女人18毛片a级毛片视频| 成人午夜天| 亚洲AⅤ无码国产精品| 国产喷水视频| 中国国产高清免费AV片| 六月婷婷激情综合| 国产欧美一区二区三区视频在线观看| 欧美中文字幕在线播放| 亚洲Va中文字幕久久一区 | 国产精品自在线拍国产电影 | 日本午夜三级| 成人夜夜嗨| 极品尤物av美乳在线观看| 日韩欧美中文字幕在线精品| 99热这里只有精品免费国产| 亚瑟天堂久久一区二区影院| 在线欧美日韩| 久久午夜夜伦鲁鲁片不卡| 亚洲国产日韩一区| 欧美精品xx| 91久久国产综合精品女同我|