實(shí)時(shí)系統(tǒng)軟件執(zhí)行時(shí)間性能測(cè)試工具(ARTs)論證報(bào)告


01
設(shè)備名稱
實(shí)時(shí)系統(tǒng)軟件執(zhí)行時(shí)間性能測(cè)試工具(ARTs)
ARTs:High Accuracy Real Time Test And Analysis System For Embedded Software
02
該設(shè)備承擔(dān)的任務(wù)
在嵌入式軟件開發(fā)、測(cè)試領(lǐng)域,迫切需要一種工具,從單元、集成、系統(tǒng)、現(xiàn)場(chǎng)等各個(gè)階段,在用戶開發(fā)的真實(shí)的CPU目標(biāo)板上進(jìn)行嵌入式軟件的實(shí)時(shí)在線測(cè)試和分析,保證系統(tǒng)的性能和可靠性。
實(shí)時(shí)系統(tǒng)軟件執(zhí)行時(shí)間性能測(cè)試工具ARTs,從目標(biāo)板總線或者通訊接口或者內(nèi)存獲取信號(hào),實(shí)現(xiàn)真實(shí)目標(biāo)機(jī)在環(huán)系統(tǒng)級(jí)測(cè)試,對(duì)實(shí)時(shí)在線采集到的數(shù)據(jù)進(jìn)行分析,得到被測(cè)軟件的白盒測(cè)試結(jié)果,包括性能分析、測(cè)試覆蓋分析(語(yǔ)句覆蓋和分支覆蓋)、動(dòng)態(tài)內(nèi)存分配分析、代碼跟蹤、變量跟蹤、支持匯編語(yǔ)言、動(dòng)態(tài)實(shí)時(shí)調(diào)用分析、最差執(zhí)行時(shí)間分析和報(bào)告自動(dòng)生成功能。

ARTs采用優(yōu)化高效的賦值語(yǔ)句插樁方式對(duì)源代碼進(jìn)行插樁,優(yōu)化分支插樁點(diǎn),使得代碼膨脹率最小,對(duì)系統(tǒng)時(shí)間性能影響很小,做到最大的系統(tǒng)無(wú)關(guān)性。對(duì)嵌入式軟件系統(tǒng)的性能測(cè)試最準(zhǔn)確。
ARTs利用硬件輔助、實(shí)時(shí)、在線從目標(biāo)板接口獲取數(shù)據(jù),為跟蹤嵌入式應(yīng)用程序,分析軟件性能、內(nèi)存泄漏及測(cè)試軟件的覆蓋率等提供了一個(gè)實(shí)時(shí)在線的高效率解決方案。
ARTs利用硬件的實(shí)時(shí)性,所以其性能分析進(jìn)度達(dá)到na秒級(jí)別,實(shí)現(xiàn)高精度的數(shù)據(jù)分析能力。
ARTs利用最新的時(shí)間分析法,通過(guò)動(dòng)態(tài)實(shí)時(shí)獲取分析數(shù)據(jù),根據(jù)嵌入式本身的特性,在各種環(huán)境狀況下,特別是在系統(tǒng)中斷發(fā)生時(shí)刻不確定的情況下,要統(tǒng)計(jì)最差執(zhí)行時(shí)間,只用靜態(tài)分析是得不到最差執(zhí)行時(shí)間的,只有動(dòng)態(tài)的方法才是最有效、最準(zhǔn)確的分析方法。
03
新增必要性
目前本單位里對(duì)實(shí)時(shí)系統(tǒng)軟件執(zhí)行時(shí)間性能測(cè)試工具(ARTs)需求和現(xiàn)狀分析,它的采購(gòu),不僅提高本單位里測(cè)試條件的改善,也是測(cè)試水平提高一個(gè)新的臺(tái)階。
ARTs首先對(duì)源代碼進(jìn)行插樁預(yù)處理,插入標(biāo)記符號(hào),代表源代碼語(yǔ)句及類型信息;然后在原有的開發(fā)環(huán)境中編譯插樁后的代碼,并下載到目標(biāo)板中運(yùn)行,通過(guò)加載不同的激勵(lì)信號(hào),目標(biāo)代碼會(huì)執(zhí)行不同的分支。在程序執(zhí)行的過(guò)程中,插入的標(biāo)記符號(hào)會(huì)通過(guò)CPU的總線或者通訊接口或者內(nèi)存輸出;通過(guò)硬件輔助實(shí)時(shí)在線采集總線數(shù)據(jù),交由本模塊進(jìn)行數(shù)據(jù)分析和記錄,結(jié)合生成的文件數(shù)據(jù)庫(kù)分析結(jié)果和插樁數(shù)據(jù)信息,就可以得到軟件的運(yùn)行信息,對(duì)應(yīng)到源代碼文件和各個(gè)分支點(diǎn),統(tǒng)計(jì)代碼覆蓋率信息,函數(shù)執(zhí)行時(shí)間,最差執(zhí)行時(shí)間,動(dòng)態(tài)內(nèi)存分配釋放數(shù)據(jù),動(dòng)態(tài)實(shí)時(shí)調(diào)用分析,匯編代碼打點(diǎn)分析。
3.1 主要功能
ü??高度自動(dòng)化模式
ü??自動(dòng)化打點(diǎn)
ü??性能分析
ü??測(cè)試覆蓋分析
ü??內(nèi)存分析
ü??代碼跟蹤
ü??變量跟蹤
ü??支持匯編語(yǔ)言
ü??動(dòng)態(tài)實(shí)時(shí)調(diào)用分析
ü??T_WCET最差執(zhí)行時(shí)間
ü??F_WCET最差執(zhí)行時(shí)間
ü??總線數(shù)據(jù)采集
ü??通訊接口數(shù)據(jù)采集
ü??內(nèi)存方式數(shù)據(jù)采集
ü??支持多種CPU和開發(fā)環(huán)境
ü??測(cè)試報(bào)告
3.2技術(shù)指標(biāo)
ü??代碼行數(shù)支持100000行;
ü??同時(shí)對(duì)多達(dá)6000個(gè)函數(shù);
ü??同時(shí)對(duì)多達(dá)6000個(gè)文件;
ü??變量最大記錄值個(gè)數(shù)100000;
ü??支持C/C++語(yǔ)言;
ü??TRACE跟蹤記錄容量大于1萬(wàn)條源程序;
ü??時(shí)間誤差不大于10nS;
04
現(xiàn)有技術(shù)條件分析
目前我單位缺少獨(dú)立的嵌入式軟件性能實(shí)時(shí)測(cè)試工具,對(duì)于嵌入式軟件測(cè)試的手段主要以手工的方式為主,工作量比較大,只能完成基本的功能測(cè)試,一些失效測(cè)試、強(qiáng)度測(cè)試等安全性方面的測(cè)試無(wú)法實(shí)現(xiàn),無(wú)法對(duì)嵌入式軟件進(jìn)行相對(duì)全面的測(cè)試,測(cè)試工作成效不甚理想,也不利于發(fā)現(xiàn)被測(cè)試嵌入式軟件存在的問(wèn)題,尤其是對(duì)于高安全性、高可靠性等要求較高的嵌入式軟件,未發(fā)現(xiàn)的軟件問(wèn)題可能會(huì)存在很大的隱患。
在嵌入式軟件開發(fā)、測(cè)試領(lǐng)域,迫切需要一種工具,尤其是在沒(méi)有被測(cè)CPU目標(biāo)板或者外部設(shè)備I/O環(huán)境時(shí),對(duì)系統(tǒng)設(shè)計(jì)和實(shí)現(xiàn),進(jìn)行原理驗(yàn)證、功能測(cè)試和故障隔離分析,保證軟件系統(tǒng)的正確性和可靠性。

在本單位高安全、高可靠性的科研項(xiàng)目中,特需一種通用化平臺(tái),用于科研單位的項(xiàng)目前期驗(yàn)證、項(xiàng)目開發(fā)、項(xiàng)目后期的軟件測(cè)試和維護(hù)。
在測(cè)試階段,為了全面提供測(cè)試方法和手段,特別是第三方測(cè)試單位,更加需要一個(gè)對(duì)多種CPU都能兼容的測(cè)試平臺(tái),在現(xiàn)有的測(cè)試激勵(lì)注入的情況下,采集所需要的測(cè)試數(shù)據(jù),對(duì)數(shù)據(jù)進(jìn)行分析,得到白盒統(tǒng)計(jì)結(jié)果,系統(tǒng)性能結(jié)果,最差執(zhí)行時(shí)間結(jié)果,并自動(dòng)化產(chǎn)生測(cè)試報(bào)告。
在測(cè)試過(guò)程中,所里缺少?gòu)挠布?shí)時(shí)、在線從目標(biāo)板總線獲取數(shù)據(jù),為跟蹤嵌入式應(yīng)用程序,分析軟件性能、最差執(zhí)行時(shí)間、內(nèi)存泄漏及測(cè)試軟件的覆蓋率等提供了一個(gè)實(shí)時(shí)在線的高效率測(cè)試平臺(tái)。