[發明專利]一種程序符號表的獲取方法及系統在審
| 申請號: | 201610022149.9 | 申請日: | 2016-01-14 |
| 公開(公告)號: | CN105677439A | 公開(公告)日: | 2016-06-15 |
| 發明(設計)人: | 李鵬 | 申請(專利權)人: | 漢柏科技有限公司 |
| 主分類號: | G06F9/45 | 分類號: | G06F9/45 |
| 代理公司: | 北京路浩知識產權代理有限公司 11002 | 代理人: | 李相雨 |
| 地址: | 300384 天津市西青區*** | 國省代碼: | 天津;12 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 程序 符號 獲取 方法 系統 | ||
技術領域
本發明涉及計算機領域,尤其涉及一種程序符號表獲取方法及系 統。
背景技術
在計算機科學中,符號表是一種用于語言翻譯器(例如編譯器和 解釋器)中的數據結構。在符號表中,程序源代碼中的每個標識符都 和它的聲明或使用信息綁定在一起,比如其數據類型、作用域以及內 存地址。符號表在編譯程序工作的過程中需要不斷收集、記錄和使用 源程序中一些語法符號的類型和特征等相關信息。這些信息一般以表 格形式存儲于系統中。如常數表、變量名表、數組名表、過程名表、 標號表等等,統稱為符號表。對于符號表組織、構造和管理方法的好 壞會直接影響編譯系統的運行效率。
符號表是程序在編譯時產生的調試信息,通常情況下程序運行是 用不到符號表的,因此程序在編譯后經常會將所有調試信息去掉,這 樣能有效減少程序大小,或者干脆在編譯過程中不產生符號表。但是 在某些情況下,比如做異常分析時可能需要符號表,以便能夠快速的 根據函數地址找到函數名。
現有技術中管理符號表的方法有兩種,一種是保留符號表信息, 一種是將符號表信息導出到特定文件中再刪除符號表信息。在程序編 譯后,保留符號表信息,會導致程序占用較大的空間,優點是可以隨 時查看符號表。在程序編譯后,將符號表信息導出到特定文件中,然 后將符號表從程序中刪除,程序不會占用較大空間,但是獲取符號表 需要人工搜索文件,使用起來不方便。
發明內容
本發明所要解決的技術問題是:現有的程序符號表的獲取方法導 致程序占用較大空間、獲取效率低的問題。
為解決上述技術問題,本發明一方面提出了一種程序符號表的 獲取方法,該方法包括:
提取程序調試信息中的符號表信息,將所述符號表信息保存在符 號表源文件中;
編譯所述符號表源文件,生成符號表動態鏈接庫;
運行程序并加載所述符號表動態鏈接庫,獲取程序符號表。
可選地,在所述提取程序調試信息中的符號表信息之前,還包括:
構造符號表源文件;
相應地,將所述符號表信息保存在符號表源文件中,包括:
將所述符號表信息保存在特定文件中,將所述特定文件中的符號 表信息追加寫入至符號表源文件中;
其中,保存在特定文件中的符號表信息包括符號地址、符號名稱 和符號類型。
可選地,在將所述符號表信息保存在符號表源文件中之前,還包 括:
從特定文件中提取所述符號表信息中的符號地址和符號名稱;
相應地,保存在符號表源文件中的符號表信息為符號地址和符號 名稱。
可選地,所述運行程序并加載所述符號表動態鏈接庫,獲取程序 符號表包括:
運行程序,通過dlopen函數加載符號表動態鏈接庫;
通過dlsym函數獲取程序符號表。
可選地,在所述提取程序調試信息中的符號表信息之前,還包括:
在編譯程序時為CFLAGS添加-g選項,自動生成包括符號表信息 的調試信息。
本發明另一方面提出了一種程序符號表的獲取系統,該系統包 括:
符號表信息保存單元,用于提取程序調試信息中的符號表信息, 將所述符號表信息保存在符號表源文件中;
動態鏈接庫生成單元,用于編譯所述符號表源文件,生成符號表 動態鏈接庫;
程序符號表獲取單元,用于運行程序并加載所述符號表動態鏈接 庫,獲取程序符號表。
可選地,該系統還包括:符號表源文件構造單元;
所述符號表源文件構造單元,用于構造符號表源文件;
相應地,所述符號表信息保存單元,用于將所述符號表信息保存 在特定文件中,將所述特定文件中的符號表信息追加寫入至符號表源 文件中;
其中,保存在特定文件中的符號表信息包括符號地址、符號名稱 和符號類型。
可選地,該系統還包括符號表信息過濾單元;
所述符號表信息過濾單元,用于從特定文件中提取所述符號表信 息中的符號地址和符號名稱;
相應地,保存在符號表源文件中的符號表信息為符號地址和符號 名稱。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于漢柏科技有限公司,未經漢柏科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201610022149.9/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:帶鎖定可自動回縮的捆綁帶裝置
- 下一篇:加厚吸水性樹脂醫用夾板





