專利名稱:解析方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計算機技術(shù)領(lǐng)域,尤其涉及一種解析方法和裝置。
背景技術(shù):
當(dāng)產(chǎn)品檢驗系統(tǒng)需要對數(shù)據(jù)包進行組包和拆包時,就必須要在運行模塊中編寫C代碼來實現(xiàn),這不管是對測試人員還是客戶來說都是比較頭疼的問題。當(dāng)產(chǎn)品檢驗系統(tǒng)需要對總線上的數(shù)據(jù)進行組包和拆包時,需要通過運行模塊實現(xiàn),實現(xiàn)過程非常的復(fù)雜,需要編寫大量C代碼,編譯,然后將編譯好的0”文件上傳系統(tǒng),每次需求發(fā)生一點變化,都需要重新運行實現(xiàn)一遍,大大降低了系統(tǒng)的可用性,增加了用戶的使用復(fù)雜度。
發(fā)明內(nèi)容
本發(fā)明提供了一種解析方法,解決了代碼定義運行過程復(fù)雜度高的問題。一種解析方法,包括從預(yù)置的規(guī)則庫中選擇多個規(guī)則,構(gòu)造數(shù)據(jù)處理的策略規(guī)則;根據(jù)所述策略規(guī)則從協(xié)議總線上定位待處理的數(shù)據(jù)部分;在定位完成后,根據(jù)所述策略規(guī)則對定位獲得的數(shù)據(jù)進行解析處理。優(yōu)選的,所述規(guī)則庫包括定位規(guī)則部分和處理規(guī)則部分,所述定位規(guī)則部分包括多個定位規(guī)則,所述處理規(guī)則部分包括多個處理規(guī)則,所述從預(yù)置的規(guī)則庫中選擇多個規(guī)貝U,構(gòu)造數(shù)據(jù)處理的策略規(guī)則具體為從預(yù)置的規(guī)則庫中選擇一個或多個定位規(guī)則和一個或多個處理規(guī)則,組成策略規(guī)貝U,不同策略規(guī)則包含的處理規(guī)則不同。優(yōu)選的,所述根據(jù)所述策略規(guī)則從協(xié)議總線上定位待處理的數(shù)據(jù)部分包括在所述協(xié)議總線上存在數(shù)據(jù)傳輸時,根據(jù)所述定位規(guī)則對該協(xié)議總線上存在的數(shù)據(jù)進行匹配;將匹配失敗的數(shù)據(jù)正常緩存,將匹配成功的數(shù)據(jù)作為待處理數(shù)據(jù)。優(yōu)選的,上述解析方法還包括構(gòu)造一規(guī)則庫,所述規(guī)則庫包括定位規(guī)則部分和處理規(guī)則部分,所述定位規(guī)則部分包括多個定位規(guī)則,所述處理規(guī)則部分包括多個處理規(guī)則。優(yōu)選的,上述解析方法還包括維護所述規(guī)則庫,包括向所述規(guī)則庫添加定位規(guī)則或處理規(guī)則、刪除定位規(guī)則或處理規(guī)則和修改定位規(guī)則或處理規(guī)則。優(yōu)選的,上述解析方法還包括保存所述策略規(guī)則。優(yōu)選的,上述解析方法還包括調(diào)用已保存的策略規(guī)則,根據(jù)所述策略完成待處理數(shù)據(jù)部分的定位和解析處理。
本發(fā)明還提供了一種解析裝置,包括策略構(gòu)造模塊,用于從預(yù)置的規(guī)則庫中選擇多個規(guī)則,構(gòu)造數(shù)據(jù)處理的策略規(guī)則;定位模塊,用于根據(jù)所述策略規(guī)則從協(xié)議總線上定位待處理的數(shù)據(jù)部分;解析模塊,用于在定位完成后,根據(jù)所述策略規(guī)則對定位獲得的數(shù)據(jù)進行解析處理。優(yōu)選的,上述解析裝置還包括策略管理模塊,用于保存所述策略規(guī)則。本發(fā)明提供了一種解析方法和裝置,從預(yù)置的規(guī)則庫中選擇多個規(guī)則,構(gòu)造數(shù)據(jù)處理的策略規(guī)則,根據(jù)所述策略規(guī)則從協(xié)議總線上定位待處理的數(shù)據(jù)部分,在定位完成后,根據(jù)所述策略規(guī)則對定位獲得的數(shù)據(jù)進行解析處理,將在數(shù)據(jù)解析處理流程拆分為多個規(guī)則并存儲至規(guī)則庫中,在需要使用時,可根據(jù)需要直接選擇相應(yīng)的規(guī)則構(gòu)造數(shù)據(jù)解析處理流程,解決了代碼定義運行過程復(fù)雜度高的問題。
圖I為本發(fā)明的實施例一提供的一種解析方法的流程圖;圖2為本發(fā)明的實施例一中策略規(guī)則組合模式的示意圖;圖3為本發(fā)明的實施例一中策略規(guī)則組合模式的示意圖;圖4為本發(fā)明的實施例一中策略規(guī)則組合模式的示意圖;圖5為策略的編輯應(yīng)用的示意圖;圖6為接口數(shù)據(jù)處理的系統(tǒng)結(jié)構(gòu)示意圖;圖7為本發(fā)明的實施例二中策略組合方式一的示意圖;圖8為本發(fā)明的實施例二中策略組合方式二的示意圖;圖9為本發(fā)明的實施例二中策略組合方式三的示意圖;圖10為數(shù)據(jù)解析流程示意圖;圖11為本發(fā)明的實施例三提供的一種解析裝置的結(jié)構(gòu)示意圖。
具體實施例方式當(dāng)產(chǎn)品檢驗系統(tǒng)需要對總線上的數(shù)據(jù)進行組包和拆包時,需要通過運行模塊實現(xiàn),實現(xiàn)過程非常的復(fù)雜,需要編寫大量C代碼,編譯,然后將編譯好的0”文件上傳系統(tǒng),每次需求發(fā)生一點變化,都需要重新運行實現(xiàn)一遍,大大降低了系統(tǒng)的可用性,增加了用戶的使用復(fù)雜度。為了解決上述問題,本發(fā)明的實施例提出了一種解析方法和裝置,即把對于需要組包和拆包的過程編寫成一個描述文件(策略規(guī)則),由嵌入式系統(tǒng)解析描述文件,并根據(jù)解析的規(guī)則對接收的數(shù)據(jù)進行處理。下文中將結(jié)合附圖對本發(fā)明的實施例進行詳細說明。需要說明的是,在不沖突的情況下,本申請中的實施例及實施例中的特征可以相互任意組合。首先結(jié)合附圖,對本發(fā)明的實施例一進行說明。本發(fā)明實施例提供了一種解析方法,實現(xiàn)在通信總線上對數(shù)據(jù)的組包和拆包,通過靈活、便捷、通用的界面配置操作實現(xiàn)不同協(xié)議總線上數(shù)據(jù)的處理,避免在運行模塊編寫C代碼帶來的不便和錯誤風(fēng)險。使用本發(fā)明實施例提供的解析方法對數(shù)據(jù)進行解析處理的流程如圖I所示,包括步驟101、構(gòu)造一規(guī)則庫,所述規(guī)則庫包括定位規(guī)則部分和處理規(guī)則部分;具體的,所述定位規(guī)則部分包括多個定位規(guī)則,所述處理規(guī)則部分包括多個處理規(guī)則。定位規(guī)則,用于定位協(xié)議總線上需要處理的數(shù)據(jù)部分,根據(jù)用戶定義的協(xié)議定位規(guī)則,在總線上與數(shù)據(jù)流匹配,匹配成功即定位完成,定位完成后接著是對數(shù)據(jù)的處理,處·理完成后,從數(shù)據(jù)流中被處理完成的位置開始繼續(xù)匹配后續(xù)數(shù)據(jù)。在匹配過程中首先要關(guān)心定位的觸發(fā)條件,定位的觸發(fā)條件有數(shù)據(jù)觸發(fā)和空閑時間觸發(fā)兩種,數(shù)據(jù)觸發(fā)是根據(jù)定位規(guī)則中定義的具體數(shù)據(jù)匹配,時間觸發(fā)則不判斷數(shù)據(jù)的內(nèi)容,而是按固定時間循環(huán)處理數(shù)據(jù)流。當(dāng)定位的觸發(fā)條件是數(shù)據(jù)觸發(fā)時,需要確定數(shù)據(jù)的長度、內(nèi)容、數(shù)據(jù)模式、數(shù)據(jù)類型和數(shù)據(jù)字節(jié)序。數(shù)據(jù)的長度是指定位規(guī)則占數(shù)據(jù)流中數(shù)據(jù)的個數(shù);數(shù)據(jù)內(nèi)容即數(shù)據(jù)本身,指定規(guī)則中不同序列號對應(yīng)的數(shù)據(jù),例如定位規(guī)則是5個整型數(shù)據(jù),定位的數(shù)據(jù)內(nèi)容可以設(shè)計成如表I所示的形式表I
權(quán)利要求
1.一種解析方法,其特征在于,包括 從預(yù)置的規(guī)則庫中選擇多個規(guī)則,構(gòu)造數(shù)據(jù)處理的策略規(guī)則; 根據(jù)所述策略規(guī)則從協(xié)議總線上定位待處理的數(shù)據(jù)部分; 在定位完成后,根據(jù)所述策略規(guī)則對定位獲得的數(shù)據(jù)進行解析處理。
2.根據(jù)權(quán)利要求I所述的解析方法,其特征在于,所述規(guī)則庫包括定位規(guī)則部分和處理規(guī)則部分,所述定位規(guī)則部分包括多個定位規(guī)則,所述處理規(guī)則部分包括多個處理規(guī)則,所述從預(yù)置的規(guī)則庫中選擇多個規(guī)則,構(gòu)造數(shù)據(jù)處理的策略規(guī)則具體為 從預(yù)置的規(guī)則庫中選擇一個或多個定位規(guī)則和一個或多個處理規(guī)則,組成策略規(guī)則,不同策略規(guī)則包含的處理規(guī)則不同。
3.根據(jù)權(quán)利要求2所述的解析方法,其特征在于,所述根據(jù)所述策略規(guī)則從協(xié)議總線上定位待處理的數(shù)據(jù)部分包括 在所述協(xié)議總線上存在數(shù)據(jù)傳輸時,根據(jù)所述定位規(guī)則對該協(xié)議總線上存在的數(shù)據(jù)進行匹配; 將匹配失敗的數(shù)據(jù)正常緩存,將匹配成功的數(shù)據(jù)作為待處理數(shù)據(jù)。
4.根據(jù)權(quán)利要求I或2所述的解析方法,其特征在于,該方法還包括 構(gòu)造一規(guī)則庫,所述規(guī)則庫包括定位規(guī)則部分和處理規(guī)則部分,所述定位規(guī)則部分包括多個定位規(guī)則,所述處理規(guī)則部分包括多個處理規(guī)則。
5.根據(jù)權(quán)利要求4所述的解析方法,其特征在于,該方法還包括 維護所述規(guī)則庫,包括向所述規(guī)則庫添加定位規(guī)則或處理規(guī)則、刪除定位規(guī)則或處理規(guī)則和修改定位規(guī)則或處理規(guī)則。
6.根據(jù)權(quán)利要求2所述的解析方法,其特征在于,該方法還包括 保存所述策略規(guī)則。
7.根據(jù)權(quán)利要求6所述的解析方法,其特征在于,該方法還包括 調(diào)用已保存的策略規(guī)則,根據(jù)所述策略完成待處理數(shù)據(jù)部分的定位和解析處理。
8.一種解析裝置,其特征在于,包括 策略構(gòu)造模塊,用于從預(yù)置的規(guī)則庫中選擇多個規(guī)則,構(gòu)造數(shù)據(jù)處理的策略規(guī)則; 定位模塊,用于根據(jù)所述策略規(guī)則從協(xié)議總線上定位待處理的數(shù)據(jù)部分; 解析模塊,用于在定位完成后,根據(jù)所述策略規(guī)則對定位獲得的數(shù)據(jù)進行解析處理。
9.根據(jù)權(quán)利要求8所述的解析裝置,其特征在于,該裝置還包括 策略管理模塊,用于保存所述策略規(guī)則。
全文摘要
本發(fā)明提供了一種解析方法和裝置。涉及計算機技術(shù)領(lǐng)域;解決了代碼定義運行過程復(fù)雜度高的問題。該方法包括從預(yù)置的規(guī)則庫中選擇多個規(guī)則,構(gòu)造數(shù)據(jù)處理的策略規(guī)則;根據(jù)所述策略規(guī)則從協(xié)議總線上定位待處理的數(shù)據(jù)部分;在定位完成后,根據(jù)所述策略規(guī)則對定位獲得的數(shù)據(jù)進行解析處理。本發(fā)明提供的技術(shù)方案適用于產(chǎn)品檢驗流程,實現(xiàn)了可用性更強的靈活的數(shù)據(jù)解析。
文檔編號G06F9/45GK102981882SQ201110261030
公開日2013年3月20日 申請日期2011年9月5日 優(yōu)先權(quán)日2011年9月5日
發(fā)明者彭時濤 申請人:北京旋極信息技術(shù)股份有限公司