[發明專利]目標軟件在指定硬件環境中最差時間的計算方法有效
| 申請號: | 201110386640.7 | 申請日: | 2011-11-29 |
| 公開(公告)號: | CN102520984A | 公開(公告)日: | 2012-06-27 |
| 發明(設計)人: | 張智慧;高銘;王沿海;杜喬瑞;石桂連 | 申請(專利權)人: | 北京廣利核系統工程有限公司;中國廣東核電集團有限公司 |
| 主分類號: | G06F9/445 | 分類號: | G06F9/445 |
| 代理公司: | 北京元中知識產權代理有限責任公司 11223 | 代理人: | 王明霞 |
| 地址: | 100094 北*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 目標 軟件 指定 硬件 環境 最差 時間 計算方法 | ||
技術領域
本發明涉及一種程序運行時間統計方法,具體涉及一種利用虛擬機來運行目標程序從而確定最差運行時間的方法。
背景技術
在現代工業控制系統中,由于對系統及時性的要求越來越高,程序在實際應用前應該明確其最差的運行時間從而判斷在執行過程中是否超時。目前對程序最差運行時間的分析方法主要是采用靜態分析和動態分析的方式:靜態分析方式的工具如Ait通過對可執行程序的靜態分析,結合處理器的特性對目標文件的最差運行時間進行計算,并規劃出分支程序可能存在的最短路徑,其工作過程如圖1所示:首先在軟件中將可執行目標文件進行反匯編,再輸入目標文件所使用的硬件環境,如:CPU型號、外部總線類型等參數,然后用戶輸入EntryPoint,再計算分支程序在各個函數中所消耗的時間。此方法能夠給出分支程序的最差運行時間,以及最差運行時間所在的函數和最差運行時間的分析方法,及模型設計的原因,不需要用戶編寫插裝代碼以及購置測試平臺,但是此方法不能給出分支程序最差運行時間的發生條件,也沒有考慮存儲器和外部總線配置方式改變對于最終分析結果所帶來的影響。
動態分析的工具如Rapitime是通過實測程序各個分支的運行時間,從而得到軟件的最長運行時間。其工作流程如圖1所示,首先在軟件中打開要分析的目標文件源代碼,對源代碼的分支語句進行插裝,然后在目標設備中執行目標代碼,計算相信兩個插裝點消耗的時間,遍歷所有分支后對記錄結果進行分析,從而得到目標文件的最差運行時間。此方法可以得到比較精確的分支程序運行時間,最終結果顯示較為直觀,能夠貼合設備實際情況,對于不同的設備,只要適當調正一下測試設備的硬件和插裝代碼即可完成運行時間的測量,但是此方法無法給出測量結果“最差”的理論依據,且需要用戶手動的編寫插裝代碼,對于較大工程量的程序來說,存在極大的漏編或錯編的可能性,從而因為人因故障引入精度的錯誤,此外測試環境較為復雜,對于工控環境來說,用戶需要額外的預算來組件測試平臺,成本較高,并且要求用戶必須持有該目標軟件的源代碼,在某些商業環境中,該方案并不能滿足用戶的需要。
發明內容
為解決現有技術在對目標軟件進行最差時間分析時,考慮面過窄使得最終結果精確度差的問題,本發明提供一種利用虛擬軟件對目標軟件的運行硬件環境進行虛擬,并計算目標軟件的所有分支程序從而得到精確的最差運行時間的技術方案,具體方案如下:目標軟件在指定硬件環境中最差時間的計算方法,包括:
步驟1、讀取目標文件并對目標文件進行解析及反匯編;其特征在于,還包括如下步驟:
步驟2、模擬目標軟件使用的虛擬硬件環境,包括:
步驟21、模擬CPU及其工作流程;
步驟22、模擬內存及其工作流程;
步驟3、在虛擬硬件環境中執行匯編后的目標文件,其中:
步驟31、記錄每一條指令的當前位置,當該指令為分支指令時,則記錄該指令的當前位置、跳轉目標位置及跳轉的判斷條件;
步驟32、運行每一條指令在各種情況下所耗費的時間并記錄;
步驟4、把每一個程序分支的運行時間橫向比較后,計算并輸出目標文件中最差運行時間的程序路徑。
為保證測試過程的精確:所述步驟21中模擬CPU及其工作流程包括:
1)、對CPU的型號及其工作頻率的模擬;
2)、對CPU在指令執行中的流水線過程模擬,此由以下四個方面組成:
(1)、CPU對指令的預讀和分支預測算法的模擬;
(2)、CPU指令發射結構的模擬;
(3)、CPU執行指令的過程及執行時間的模擬;
(4)、CPU接到指令回饋信息的過程模擬;
累加此四個過程所花費的時鐘周期數,即得到CPU流水線處理該指令所花費的時間。為確定測試過程的精確:所述步驟22中模擬內存及其工作流程包括:
1)、內存的容量和工作頻率的模擬;
2)、內存的訪存寬度模擬;
3)、內存的行/列訪問延時模擬;
4)、內存的刷新延時模擬;
5)、內存的充電延時模擬。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京廣利核系統工程有限公司;中國廣東核電集團有限公司,未經北京廣利核系統工程有限公司;中國廣東核電集團有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110386640.7/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:抗氧化劑的制造方法
- 下一篇:攻絲機的管材夾緊裝置





