欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

基于執(zhí)行路徑全過程的系統(tǒng)窗口期滑動測試方法

文檔序號:6383738閱讀:313來源:國知局
專利名稱:基于執(zhí)行路徑全過程的系統(tǒng)窗口期滑動測試方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種基于執(zhí)行路徑全過程的系統(tǒng)窗口期滑動測試方法,屬于操作系統(tǒng)開發(fā)與測試方法領(lǐng)域。
背景技術(shù)
對嵌入式實時操作系統(tǒng)(ERTOS)開發(fā)和測試技術(shù)的研究主要集中在實時性能參數(shù)的測試上,通常包括上下文切換時間(task switching time)、搶占時間(preemptiontime)、中斷延遲時間(interrupt latency time)等。對于系統(tǒng)設(shè)計正確性測試,實際測試時劃分為功能性測試,其測試用例設(shè)計通常是針對每一項測試要求設(shè)計單獨(dú)的測試用例?,F(xiàn)有技術(shù)存在的主要問題I.針對系統(tǒng)功能測試,其測試粒度過大,不能很好的測試系統(tǒng)的正確性,很多問題需要在實際使用過程中才能發(fā)現(xiàn)。2.逐項測試的方法不能驗證系統(tǒng)的整體工作情況。

發(fā)明內(nèi)容
為了解決上述問題,本發(fā)明提供了一種全新的嵌入式實時操作系統(tǒng)測試方法,它通過對硬件時鐘定時器的配置,在測試用例設(shè)計時利用設(shè)計的邏輯,來驗證操作系統(tǒng)在特定接口的任務(wù)切換、上下文保存等整個執(zhí)行路徑中,異步中斷在不同階段到來時并執(zhí)行相關(guān)耦合性的其他接口,以此來形成各種交錯路徑組合,測試和驗證操作系統(tǒng)能否正確執(zhí)行,根據(jù)不同的設(shè)置情況,相鄰兩次中斷到來的時間間隔可以精確到一個CPU周期。為實現(xiàn)上述目的,本發(fā)明采用的技術(shù)方案如下一種基于執(zhí)行路徑全過程的系統(tǒng)窗口期滑動測試方法,包括以下步驟I)設(shè)置時鐘相關(guān)寄存器預(yù)分頻計數(shù)器,預(yù)置數(shù)寄存器,計數(shù)器控制寄存器;2)注冊時鐘中斷服務(wù)程序,使能時鐘中斷;3)設(shè)置時鐘中斷發(fā)生的步進(jìn)值,初始值為I ;4)獲取時鐘計數(shù)器當(dāng)前計數(shù)值;5)若計數(shù)值大于步進(jìn)值,則轉(zhuǎn)到步驟4),否則繼續(xù)以下步驟;6)獲取另一時鐘計數(shù)器的值,將其作為被測試接口的計時開始值;7)調(diào)用被測試接口;8)獲取步驟6)中的時鐘計數(shù)器值,將其作為被測試接口的計時結(jié)束值;9)計時結(jié)束值減去計時開始值,計算被測試接口的耗時;10)增加步進(jìn)值,若該步進(jìn)值小于時鐘計數(shù)器的初始設(shè)置值,則轉(zhuǎn)到步驟4),否則終止。本發(fā)明的有益效果是在實際使用中,根據(jù)不同硬件平臺特性,包括晶振頻率、預(yù)分頻計數(shù)器、預(yù)置數(shù)寄存器、計數(shù)器控制寄存器的不同設(shè)置,可以控制相鄰兩次時鐘中斷產(chǎn)生的時間間隔,在最優(yōu)情況下可以保證兩次中斷的間隔為一個CPU周期。由于引入類似高度可控的中斷源,可以打破被測試接口的任意執(zhí)行路徑,所以只要將其有限的耦合性相關(guān)接口路徑引入到重入路徑中,就可以列舉出所有的執(zhí)行路徑組合,以此用形式化驗證的思想解決操作系統(tǒng)內(nèi)核多重入、多路徑的形式化驗證難題,可以有效提升操作系統(tǒng)內(nèi)核開發(fā)和測試的覆蓋性難題。


圖I為系統(tǒng)調(diào)用時段說明圖;圖2為測試用例工作流程圖。
具體實施例方式本發(fā)明提供了一種基于執(zhí)行路徑全過程的系統(tǒng)窗口期滑動測試方法。一種基于執(zhí)行路徑全過程的系統(tǒng)窗口期滑動測試方法,包括以下步驟 I)設(shè)置時鐘相關(guān)寄存器預(yù)分頻計數(shù)器,預(yù)置數(shù)寄存器,計數(shù)器控制寄存器;2)注冊時鐘中斷服務(wù)程序,使能時鐘中斷;3)設(shè)置時鐘中斷發(fā)生的步進(jìn)值,初始值為I ;4)獲取時鐘計數(shù)器當(dāng)前計數(shù)值;5)若計數(shù)值大于步進(jìn)值,則轉(zhuǎn)到步驟4),否則繼續(xù)以下步驟;6)獲取另一時鐘計數(shù)器的值,將其作為被測試接口的計時開始值;7)調(diào)用被測試接口;8)獲取步驟6)中的時鐘計數(shù)器值,將其作為被測試接口的計時結(jié)束值;9)計時結(jié)束值減去計時開始值,計算被測試接口的耗時;10)增加步進(jìn)值,若該步進(jìn)值小于時鐘計數(shù)器的初始設(shè)置值,則轉(zhuǎn)到步驟4),否則終止。系統(tǒng)調(diào)用過程與中斷對應(yīng)時間關(guān)系共分為兩種系統(tǒng)調(diào)用過程中不被時鐘中斷打斷;系統(tǒng)調(diào)用過程中被時鐘中斷打斷;在系統(tǒng)調(diào)用過程中執(zhí)行以下步驟I)記錄每次系統(tǒng)調(diào)用從開始到返回所花費(fèi)的時間;2)創(chuàng)建高優(yōu)先級任務(wù)Tl和低優(yōu)先級任務(wù)T2,Tl用來調(diào)用測試用例,T2負(fù)責(zé)設(shè)置全局標(biāo)志,可以被Tl用來判別切換是否成功;3)在Tl中調(diào)用測試用例,打印系統(tǒng)調(diào)用時間;4)重復(fù)步驟3)直到兩種系統(tǒng)調(diào)用過程與中斷對應(yīng)時間關(guān)系全部出現(xiàn)。本發(fā)明屬于操作系統(tǒng)功能和性能測試中采用的一種高精度測試方法,主要用于測試系統(tǒng)調(diào)用過程中,異步時鐘中斷到來時系統(tǒng)的響應(yīng)情況。其工作原理是通過配置計數(shù)器控制寄存器及相關(guān)寄存器,調(diào)整時鐘中斷發(fā)生的時機(jī),使中斷連同其服務(wù)程序在被測接口整個執(zhí)行路徑中發(fā)生,從而觀察在不同時間點(diǎn)中斷發(fā)生時的各種路徑交錯組合是否能使操作系統(tǒng)正常工作及其各項性能指標(biāo)所產(chǎn)生的變化等。在實際使用中,根據(jù)不同硬件平臺特性,包括晶振頻率、預(yù)分頻計數(shù)器、預(yù)置數(shù)寄存器、計數(shù)器控制寄存器的不同設(shè)置,可以控制相鄰兩次時鐘中斷產(chǎn)生的時間間隔,在最優(yōu)情況下可以保證兩次中斷的間隔為一個CPU周期。由于引入類似高度可控的中斷源,可以任意打破被測試接口的任意執(zhí)行路徑,所以只要將其有限的耦合性相關(guān)接口路徑引入到重入路徑中,就可以列舉出所有的執(zhí)行路徑組合,以此用形式化驗證的思想解決操作系統(tǒng)內(nèi)核多重入、多路徑的形式化驗證難題,可以有效提升操作系統(tǒng)內(nèi)核開發(fā)和測試的覆蓋性難題。下面詳細(xì)說明。本發(fā)明方法包括以下步驟I)設(shè)置兩個時鐘相關(guān)寄存器預(yù)分頻計數(shù)器,預(yù)置數(shù)寄存器,計數(shù)器控制寄存器,以初始化時鐘相關(guān)寄存器,此處假設(shè)時鐘計數(shù)器是按照從大到小計數(shù)的,其中一個作為系統(tǒng)時鐘,一個作為計數(shù)時鐘,計數(shù)時鐘的時鐘周期要大于系統(tǒng)時鐘周期,且以大于被測接口執(zhí)行時間為宜,避免在測試被測接口時計數(shù)時鐘發(fā)生中斷,而造成一定的計時誤差; 2)注冊時鐘中斷服務(wù)程序,使能時鐘中斷,以開啟時鐘,并在時鐘中斷到來時,調(diào)用中斷服務(wù)程序進(jìn)行計時處理;3)設(shè)置一步進(jìn)值,其初始值為1,該步進(jìn)值用于控制系統(tǒng)時鐘窗口期;4)獲取系統(tǒng)時鐘計數(shù)器當(dāng)前的計數(shù)值;5)若計數(shù)值大于步進(jìn)值,則轉(zhuǎn)到步驟4),此步驟5)的意圖是排除掉窗口期以外的值;6)獲取計數(shù)時鐘的值,該值用于被測試接口的計時開始值;7)調(diào)用被測試接口;8)獲取計數(shù)時鐘值,該值用于被測試接口的計時結(jié)束值;9)取計時開始值減去計時結(jié)束值,用作被測試接口的耗時,由于計數(shù)時鐘計數(shù)器是從大到小計數(shù)的,故計時開始值大于計時結(jié)束值;10)增加步進(jìn)值,若小于I)中設(shè)置的系統(tǒng)時鐘計數(shù)器的初始值,則繼續(xù)擴(kuò)大窗口期,轉(zhuǎn)到4),否則說明已經(jīng)到達(dá)最大的時鐘窗口期,終止。系統(tǒng)調(diào)用過程與中斷對應(yīng)時間關(guān)系共分為兩種,如圖I所示I.系統(tǒng)調(diào)用過程中不被時鐘中斷打斷;2.系統(tǒng)調(diào)用過程中被時鐘中斷打斷。測試流程如下所示此處假設(shè)目標(biāo)板有兩個時鐘定時器timerl和timer2,并且timer2為系統(tǒng)時鐘中斷觸發(fā)寄存器,具體步驟如下I)設(shè)置timerl為計數(shù)器,記錄每次系統(tǒng)調(diào)用從開始到返同所花費(fèi)的時間;2)創(chuàng)建任務(wù) Tl(high priority)和 T2(low priority),Tl 用來調(diào)用測試用例,T2負(fù)責(zé)設(shè)置全局標(biāo)志,可以被Tl用來判別切換是否成功;3)在TI中調(diào)用測試用例,打印系統(tǒng)調(diào)用時間;4)重復(fù)步驟3)直到圖I中兩種情況全部出現(xiàn)。測試用例如圖2所示I)獲取系統(tǒng)時鐘定時器timer2的值,如果值大于步進(jìn)值scale,則轉(zhuǎn)到I),否則轉(zhuǎn)到2);2)獲取定時器timerl的值,用于被測試接口計時開始值;3)調(diào)用被測試接口 tsk_delay ;
4)再次獲取定時器timerl的值,用于被測試接口計時結(jié)束值;5)計算被測試接口時間值time,打印該值;6)步進(jìn)值scale增加delta, delta為相鄰兩次系統(tǒng)調(diào)用時刻的間隔;7)如果步進(jìn)值scale大于系統(tǒng)時鐘定時器間隔則終止;否則轉(zhuǎn)到I)。實現(xiàn)范例代碼用C語言實現(xiàn),硬件平臺為SPARC V8,操作系統(tǒng)為SZ0S。系統(tǒng)時鐘配置部分與具體硬件平臺有關(guān),以下代碼為珠海歐比特公司的S698-MIL芯片最小系統(tǒng)開發(fā)板所使用的配置
權(quán)利要求
1.一種基于執(zhí)行路徑全過程的系統(tǒng)窗口期滑動測試方法,其特征在于包括以下步驟 1)設(shè)置時鐘相關(guān)寄存器預(yù)分頻計數(shù)器,預(yù)置數(shù)寄存器,計數(shù)器控制寄存器; 2)注冊時鐘中斷服務(wù)程序,使能時鐘中斷; 3)設(shè)置時鐘中斷發(fā)生的步進(jìn)值,初始值為I; 4)獲取時鐘計數(shù)器當(dāng)前計數(shù)值; 5)若計數(shù)值大于步進(jìn)值,則轉(zhuǎn)到步驟4),否則繼續(xù)以下步驟; 6)獲取另一時鐘計數(shù)器的值,將其作為被測試接口的計時開始值; 7)調(diào)用被測試接口; 8)獲取步驟6)中的時鐘計數(shù)器值,將其作為被測試接口的計時結(jié)束值; 9)計時結(jié)束值減去計時開始值,計算被測試接口的耗時; 10)增加步進(jìn)值,若該步進(jìn)值小于時鐘計數(shù)器的初始設(shè)置值,則轉(zhuǎn)到步驟4),否則終止。
2.如權(quán)利要求I所述的基于執(zhí)行路徑全過程的系統(tǒng)窗口期滑動測試方法,其特征在于 系統(tǒng)調(diào)用過程與中斷對應(yīng)時間關(guān)系共分為兩種 系統(tǒng)調(diào)用過程中不被時鐘中斷打斷; 系統(tǒng)調(diào)用過程中被時鐘中斷打斷; 在系統(tǒng)調(diào)用過程中執(zhí)行以下步驟 1)記錄每次系統(tǒng)調(diào)用從開始到返同所花費(fèi)的時間; 2)創(chuàng)建高優(yōu)先級任務(wù)Tl和低優(yōu)先級任務(wù)T2,Tl用來調(diào)用測試用例,T2負(fù)責(zé)設(shè)置全局標(biāo)志,可以被Tl用來判別切換是否成功; 3)在Tl中調(diào)用測試用例,打印系統(tǒng)調(diào)用時間; 4)重復(fù)步驟3)直到兩種系統(tǒng)調(diào)用過程與中斷對應(yīng)時間關(guān)系全部出現(xiàn)。
全文摘要
本發(fā)明涉及基于執(zhí)行路徑全過程的系統(tǒng)窗口期滑動測試方法,包括步驟1)設(shè)置時鐘相關(guān)寄存器;2)注冊時鐘中斷服務(wù)程序,使能時鐘中斷;3)設(shè)置時鐘中斷發(fā)生的步進(jìn)值;4)獲取時鐘計數(shù)器當(dāng)前計數(shù)值;5)若計數(shù)值大于步進(jìn)值,則轉(zhuǎn)到步驟4);6)獲取另一時鐘計數(shù)器的值,作為被測試接口的計時開始值;7)調(diào)用被測試接口;8)獲取步驟6)中的時鐘計數(shù)器值作為被測試接口的計時結(jié)束值;9)計時結(jié)束值減去計時開始值,計算被測試接口的耗時;10)增加步進(jìn)值,若該步進(jìn)值小于時鐘計數(shù)器的初始設(shè)置值,則轉(zhuǎn)到步驟4),否則終止。本發(fā)明用形式化驗證的思想解決操作系統(tǒng)內(nèi)核多重入、多路徑的形式化驗證難題,可以有效提升操作系統(tǒng)內(nèi)核開發(fā)和測試的覆蓋性難題。
文檔編號G06F11/36GK102968376SQ20121052991
公開日2013年3月13日 申請日期2012年12月10日 優(yōu)先權(quán)日2012年12月10日
發(fā)明者闞宏偉, 程勝, 李紅兵, 周志軍, 孫磊, 魏明, 黃察夫, 呂紫旭, 靳仕慧, 卓保特, 劉貴, 吳常明, 張春艷, 陶戈丹 申請人:北京神舟航天軟件技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
高陵县| 庆城县| 淮安市| 五家渠市| 五常市| 吉水县| 石嘴山市| 金沙县| 河津市| 宝清县| 华宁县| 华宁县| 涪陵区| 夹江县| 云梦县| 介休市| 长泰县| 瑞安市| 清水河县| 中卫市| 五寨县| 建始县| 图木舒克市| 大埔县| 辽宁省| 乌兰浩特市| 大邑县| 长兴县| 莱州市| 体育| 富蕴县| 维西| 通化县| 镇坪县| 汽车| 稷山县| 香港 | 普定县| 庆城县| 浙江省| 彰化县|