[發明專利]一種A2L變量地址處理方法和裝置在審
| 申請號: | 201811607811.2 | 申請日: | 2018-12-27 |
| 公開(公告)號: | CN109697279A | 公開(公告)日: | 2019-04-30 |
| 發明(設計)人: | 許曉夢;宋炳雨;劉碩;何曉明;李峰 | 申請(專利權)人: | 濰柴動力股份有限公司 |
| 主分類號: | G06F17/22 | 分類號: | G06F17/22 |
| 代理公司: | 北京集佳知識產權代理有限公司 11227 | 代理人: | 王寶筠 |
| 地址: | 261061 山東省濰坊*** | 國省代碼: | 山東;37 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 目標變量 變量類型 讀取 物理地址 方法和裝置 變量地址 基礎地址 偏移信息 元素地址 讀取效率 操作系統 可讀 更新 轉化 | ||
1.一種A2L變量地址處理方法,其特征在于,包括:
讀取A2L文件和ELF文件,所述A2L文件中具有虛擬地址,所述ELF文件中具有與所述虛擬地址相匹配的物理地址;
將所述ELF文件中的debug_info部分轉化為當前操作系統可讀文件,所述debug_info中包含有調試信息,通過所述調試信息可獲取全局變量的參數信息,所述參數信息包括但不限于變量名、變量地址、變量類型索引和元素偏移;
獲取所述A2L文件所需讀取物理地址的各個目標變量的變量名和變量類型;
依據所述變量類型將所述目標變量劃分為第一變量類型和第二變量類型,所述第一變量類型為可直接由debug_info中讀取物理地址的變量類型,所述第二變量類型為需獲取元素地址偏移的變量類型,所述第一變量類型包括基礎數據類型、枚舉類型、指針類型、共用體類型或基礎數據類型數組,所述第二變量類型包括結構體類型或結構體數組;
由所述debug_info中讀取所述第一變量類型中的所述目標變量所對應的物理地址;
由所述debug_info中讀取所述第二變量類型中的所述目標變量所對應的基礎地址以及元素地址偏移信息,基于所述基礎地址以及元素地址偏移信息計算得到所述目標變量所對應的物理地址;
依據讀取到的物理地址更新所述A2L文件中的目標變量的所對應的地址。
2.根據權利要求1所述的A2L變量地址處理方法,其特征在于,依據所述變量類型將所述目標變量劃分為第一變量類型和第二變量類型,包括:
獲取所述目標變量的變量類型;
判斷所述目標變量的變量類型是否屬于第一類型集合,如果是,將所述目標變量劃分為第一變量類型;如果否,將所述目標變量劃分為第二變量類型。
3.根據權利要求1所述的A2L變量地址處理方法,其特征在于,所述由所述debug_info中讀取所述第二變量類型中的所述目標變量所對應的基礎地址以及元素地址偏移信息,基于所述基礎地址以及元素地址偏移信息計算得到所述目標變量所對應的物理地址,包括:
在所述debug_info中基于索引關鍵字volatile和const對所述目標變量進行索引,直至索引得到的目標變量的類型為基礎類型,判斷所述基礎類型中是否包含元素地址偏移信息,如果包含元素地址偏移信息,基于所述基礎地址以及元素地址偏移信息計算得到所述目標變量所對應的物理地址,如果不包含所述元素偏移信息,則直接讀取所述基礎類型中的變量地址,將所述變量地址作為所述目標變量所對應的物理地址。
4.根據權利要求1所述的A2L變量地址處理方法,其特征在于,所述將所述ELF文件中的debug_info部分轉化為當前操作系統可讀文件,具體包括:
采用Linuxshell軟件將ELF文件中的debug_info部分轉化為Windows下可讀文件。
5.根據權利要求1所述的A2L變量地址處理方法,其特征在于,所述依據讀取到的物理地址更新所述A2L文件中的目標變量的所對應的地址,包括:
依據讀取到的物理地址更新所述A2L文件中的目標變量的所對應的地址,并將所述A2L文件中的目標變量的地址統一配置為包含有變量地址和變量名稱的預設格式。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于濰柴動力股份有限公司,未經濰柴動力股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201811607811.2/1.html,轉載請聲明來源鉆瓜專利網。





