【技術(shù)實現(xiàn)步驟摘要】
本專利技術(shù)涉及信息
,特別涉及一種不同版本二進(jìn)制數(shù)據(jù)兼容的方法及數(shù)據(jù)版本轉(zhuǎn)換系統(tǒng)。
技術(shù)介紹
通信設(shè)備在實際使用中,經(jīng)常需要涉及版本升級,而版本升級后,可能會引起配置數(shù)據(jù)和板間、設(shè)備之間通信數(shù)據(jù)格式的變化。如果通信數(shù)據(jù)和配置數(shù)據(jù)采用文本方式編碼,那么版本的升級帶來的數(shù)據(jù)格式變化是能夠自動兼容的,但是采用文本方式的配置存在一個問題是配置信息非常大時,需要把這些配置解析成程序理解的二進(jìn)制方式一定的時間,往往會導(dǎo)致重啟時間比較長,因此該方法存在缺陷。后續(xù)我們就采用了更為先進(jìn)的存儲配置方式,直接存在二進(jìn)制配置,把相應(yīng)的數(shù) 據(jù)使用結(jié)構(gòu)體方式存儲到文件中,重啟時,還是按照原來的結(jié)構(gòu)體進(jìn)行讀取。但是采用二進(jìn)制方式的配置數(shù)據(jù)和通信數(shù)據(jù),那么就不存在編解碼了,處理比較簡單。重啟時,直接讀取數(shù)據(jù)存儲到結(jié)構(gòu)體中即可恢復(fù)配置,而主控板只需要把該數(shù)據(jù)結(jié)構(gòu)體同步給備板、接口板就可以支持板間數(shù)據(jù)通信。但是,采用二進(jìn)制數(shù)據(jù)最大的問題時,當(dāng)版本升級時,老配置數(shù)據(jù)同新版本的程序的數(shù)據(jù)格式兼容問題,在版本升級中,老版本設(shè)備或者板卡同新版本的設(shè)備或者板卡通信數(shù)據(jù)格式兼容問題,因此,如果在架構(gòu)體中新增加數(shù)據(jù)或者刪除數(shù)據(jù)、或者修改某個數(shù)據(jù)的長度,都會導(dǎo)致新老版本數(shù)據(jù)的不兼容。因此,如何克服上述問題成為業(yè)內(nèi)關(guān)注的問題。
技術(shù)實現(xiàn)思路
本專利技術(shù)實施例提供了一種不同版本二進(jìn)制數(shù)據(jù)兼容的方法,能夠使不同版本數(shù)據(jù)兼容。一種不同版本二進(jìn)制數(shù)據(jù)兼容的方法,該方法包括根據(jù)不同版本的二進(jìn)制數(shù)據(jù)結(jié)構(gòu)體定義第一版本結(jié)構(gòu)體描述表和第二版本結(jié)構(gòu)體描述表,所述第一版本結(jié)構(gòu)體描述表和第二版本結(jié)構(gòu)體描述表都至少包括每個成員的標(biāo)識和二 ...
【技術(shù)保護(hù)點】
一種不同版本二進(jìn)制數(shù)據(jù)兼容的方法,該方法包括:根據(jù)不同版本的二進(jìn)制數(shù)據(jù)結(jié)構(gòu)體定義第一版本結(jié)構(gòu)體描述表和第二版本結(jié)構(gòu)體描述表,所述第一版本結(jié)構(gòu)體描述表和第二版本結(jié)構(gòu)體描述表都至少包括每個成員的標(biāo)識和二進(jìn)制數(shù)據(jù)長度;對第一版本結(jié)構(gòu)體描述表和第二版本結(jié)構(gòu)體描述表進(jìn)行分析,得到兩者之間的轉(zhuǎn)換矩陣;根據(jù)所述轉(zhuǎn)換矩陣,將按照第一版本結(jié)構(gòu)體存儲的二進(jìn)制數(shù)據(jù),轉(zhuǎn)換為按照第二版本結(jié)構(gòu)體存儲的二進(jìn)制數(shù)據(jù)。
【技術(shù)特征摘要】
1.一種不同版本二進(jìn)制數(shù)據(jù)兼容的方法,該方法包括 根據(jù)不同版本的二進(jìn)制數(shù)據(jù)結(jié)構(gòu)體定義第一版本結(jié)構(gòu)體描述表和第二版本結(jié)構(gòu)體描述表,所述第一版本結(jié)構(gòu)體描述表和第二版本結(jié)構(gòu)體描述表都至少包括每個成員的標(biāo)識和二進(jìn)制數(shù)據(jù)長度; 對第一版本結(jié)構(gòu)體描述表和第二版本結(jié)構(gòu)體描述表進(jìn)行分析,得到兩者之間的轉(zhuǎn)換矩陣; 根據(jù)所述轉(zhuǎn)換矩陣,將按照第一版本結(jié)構(gòu)體存儲的二進(jìn)制數(shù)據(jù),轉(zhuǎn)換為按照第二版本結(jié)構(gòu)體存儲的二進(jìn)制數(shù)據(jù)。2.如權(quán)利要求I所述的方法,其特征在于, 所述對第一版本結(jié)構(gòu)體描述表和第二版本結(jié)構(gòu)體描述表進(jìn)行分析,得到兩者之間的轉(zhuǎn)換矩陣的方法包括 根據(jù)第二版本結(jié)構(gòu)體描述表中成員的個數(shù)確定轉(zhuǎn)換矩陣的行數(shù),行元素包括該行對應(yīng)的成員在第一版本結(jié)構(gòu)體中的偏移位置、在第二版本結(jié)構(gòu)體中的偏移位置和需要復(fù)制的該成員的二進(jìn)制數(shù)據(jù)長度。3.如權(quán)利要求2所述的方法,其特征在于,對于其中一個成員對應(yīng)的行元素,將第二版本結(jié)構(gòu)體描述表中該成員之前的成員的二進(jìn)制數(shù)據(jù)長度累加,作為該成員在第二版本結(jié)構(gòu)體中的偏移位置。4.如權(quán)利要求3所述的方法,其特征在于,確定該成員是否存在于第一版本結(jié)構(gòu)體描述表中,如果是,則將第一版本結(jié)構(gòu)體描述表中該成員之前的所有成員的二進(jìn)制數(shù)據(jù)長度累...
【專利技術(shù)屬性】
技術(shù)研發(fā)人員:宋海賓,
申請(專利權(quán))人:杭州華三通信技術(shù)有限公司,
類型:發(fā)明
國別省市:
還沒有人留言評論。發(fā)表了對其他瀏覽者有用的留言會獲得科技券。