[發明專利]程序流監控方法在審
| 申請號: | 201410088136.2 | 申請日: | 2014-03-11 |
| 公開(公告)號: | CN103869804A | 公開(公告)日: | 2014-06-18 |
| 發明(設計)人: | 陳濤;夏芹;鄧長禎 | 申請(專利權)人: | 中國汽車工程研究院股份有限公司 |
| 主分類號: | G05B23/02 | 分類號: | G05B23/02 |
| 代理公司: | 重慶市前沿專利事務所(普通合伙) 50211 | 代理人: | 郭云 |
| 地址: | 400039 重慶*** | 國省代碼: | 重慶;85 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 程序 監控 方法 | ||
技術領域
本發明涉及程序流監控方法,具體涉及一種針對運行周期內被反復調用的,且順序執行的程序模塊,對其運行的順序和時間進行監控的方法。
背景技術
模塊化編程的基本思想首先出現在高級語言編程應用中,但這種思想也適用于車載控制器程序的開發。程序的模塊劃分一般采用自上向下,逐步分解的方法進行。車載控制器程序一般可分為參數設置部分、數據采集部分、數據處理部分、報警處理部分、控制部分、執行輸出部分。
控制器中應用程序模塊按照一定的順序,在一定的時間范圍內依次被調用,才能保證程序安全,可靠的運行。如果應用程序模塊不能按照一定的順序被依次執行,或者某些程序根本沒有被執行,有可能導致數據錯誤,數據損壞甚至其他軟件模塊的失效,可能對系統安全造成災難性的破壞。
由于程序模塊內部出現錯誤,系統故障或者內存地址錯誤,程序可能出現以下的問題:系統沒有按照設計的順序執行相應的程序模塊;在一個程序周期內,部分程序模塊沒有被執行,或者某些函數模塊執行次數多于一次。
目前,一種針對車用控制器程序流的監控方法是:在每個周期循環之前,產生一個隨機數,每個子程序內增加一個子程序識別碼;利用MD5算法將隨機數和子程序識別碼進行計算,如果任何一個子程序未按預期執行,MD5算法計算的結果將與預期值不同,從而發現錯誤。
此種方法相對比較復雜,算法過程中任何一個環節小的錯誤,都可能導致整個結果的錯誤,并且只能當一個程序流執行完,才能得出執行是否錯誤的結果。
發明內容
為了克服上述現有技術中存在的缺陷,本發明的目的是提供一種流程監控方法,該方法簡單易行,且異或運算相比傳統的加減乘除運算更簡單,可降低邏輯運算出錯的概率,同時該程序流監控算法可以查詢程序流中調用錯誤的地方和次數。
為了實現本發明的上述目的,本發明提供了一種程序流監控方法,包括如下步驟:
S1,將程續流按照執行先后順序劃分為n個子程序模塊A1,A2,A3,…An,所述n為正整數;
S2,為程序流中的每個子程序模塊A1,A2,A3,…An設定一個標志位,并且不同的子程序模塊對應不同的標志位,標志位之間互不相同;
S3,令i=1,令錯誤標志位CtrlFlowCk_Error=0;
S4,當控制器運行的程序從一個子程序模塊Ai跳變到下一個子程序模塊Ai+1時,所述i=1,2,...,n-1,監控器首先將子程序模塊Ai+1的標志位與前一個執行的程序模塊Ai的標志位進行異或邏輯運算,得出的一個結果C,再將C與前一個程序模塊Ai的標志位進行再一次的異或計算,得到一個新的結果D;
S5,監控器將結果D與程序模塊Ai+1的標志位進行比較,如果相同,則認為執行正確,反之,則執行錯誤,將錯誤標志位CtrlFlowCk_Error的數值加1,i=i+1,若i<n,則返回步驟S4,否則執行步驟S6;
S6,監控器計算執行的錯誤個數,如果大于閾值,則控制器執行緊急故障處理程序。
本發明簡單易行,且異或運算相比傳統的加減乘除運算更簡單,可降低邏輯運算出錯的概率,同時該程序流監控算法可以查詢程序流中調用錯誤的地方和次數。
在本發明的一種優選實施方式中,所述標志位為二進制標志數,所述標志位的位數覆蓋所有子程序模塊的數量。從而檢測結果更準確。
在本發明的另一種優選實施方式中,所述標志位為8位二進制數值。
在本發明的一種優選實施方式中,所述步驟S4為:
定義全局變量CtrlFlowCk_V,令子程序模塊Ai的標志位為CtrlFlowCk_Si,當子程序模塊Ai執行完后,設全局變量CtrlFlow_V為CtrlFlowCk_Si,當程序模塊從Ai到Ai+1跳變時,計算
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國汽車工程研究院股份有限公司,未經中國汽車工程研究院股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410088136.2/2.html,轉載請聲明來源鉆瓜專利網。





