[發明專利]動態庫的內存操作記錄方法、裝置、設備及存儲介質有效
| 申請號: | 202010116208.5 | 申請日: | 2020-02-25 |
| 公開(公告)號: | CN111274155B | 公開(公告)日: | 2021-08-06 |
| 發明(設計)人: | 葉前乾 | 申請(專利權)人: | 騰訊科技(深圳)有限公司 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36 |
| 代理公司: | 北京三高永信知識產權代理有限責任公司 11138 | 代理人: | 祝亞男 |
| 地址: | 518057 廣東省深圳*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 動態 內存 操作 記錄 方法 裝置 設備 存儲 介質 | ||
1.一種動態庫的內存操作記錄方法,其特征在于,所述方法由運行被測應用的計算機設備執行,所述方法包括:
在被測應用運行過程中,響應于對內存操作函數的調用,獲取調用的函數地址,以及本次的內存操作信息;
通過調用地址符號獲取函數,獲得所述函數地址的符號信息;
從所述符號信息中獲取動態庫的標識;
將所述動態庫的標識以及所述內存操作信息寫入內存操作日志。
2.根據權利要求1所述的方法,其特征在于,所述響應于對內存操作函數的調用,獲取調用的函數地址,以及本次的內存操作信息,包括:
通過鉤子函數攔截對所述內存操作函數的調用;
回溯所述內存操作函數的函數調用棧,得到所述函數地址;
執行對所述內存操作函數的調用,得到所述內存操作信息。
3.根據權利要求2所述的方法,其特征在于,所述回溯所述內存操作函數的函數調用棧,得到所述函數地址,包括:
通過展開操作進行堆棧回溯,將回溯得到所述函數調用棧保存為第一數組;
將所述第一數組中的元素提取為所述函數地址。
4.根據權利要求1所述的方法,其特征在于,
所述通過調用地址符號獲取函數,獲得所述函數地址的符號信息,包括:
通過調用所述地址符號獲取函數,將所述函數地址轉化為指定數據結構;
將所述指定數據結構獲取為所述符號信息;
所述從所述符號信息中獲取所述動態庫的標識,包括:
將所述指定數據結構中的目標字段提取為所述動態庫的標識。
5.根據權利要求1所述的方法,其特征在于,所述內存操作信息包括內存大小、目標內存地址以及所述內存操作函數的標識;
所述將所述動態庫的標識以及所述內存操作信息寫入內存操作日志,包括:
將所述內存大小、所述目標內存地址、所述內存操作函數的標識以及所述動態庫的標識存儲為所述內存操作日志中的一條日志數據。
6.根據權利要求1所述的方法,其特征在于,所述將所述動態庫的標識以及所述內存操作信息寫入內存操作日志,包括:
響應于所述動態庫是指定動態庫,將所述動態庫的標識以及所述內存操作信息寫入所述內存操作日志。
7.根據權利要求6所述的方法,其特征在于,所述在被測應用運行過程中,響應于對內存操作函數的調用,獲取調用的函數地址,以及本次的內存操作信息之前,還包括:
展示動態庫設置界面;
響應于在所述動態庫設置界面中的設置操作,設置所述指定動態庫。
8.根據權利要求1所述的方法,其特征在于,所述方法還包括:
響應于所述被測應用運行結束,將所述內存操作日志輸出至目標設備。
9.根據權利要求8所述的方法,其特征在于,所述將所述內存操作日志輸出至目標設備,包括:
通過通用串行總線USB接口將所述內存操作日志輸出至所述目標設備;
或者,
通過所述目標設備對應的互聯網地址,將所述內存操作日志輸出至所述目標設備。
10.根據權利要求9所述的方法,其特征在于,所述通過所述目標設備對應的互聯網地址,將所述內存操作日志輸出至所述目標設備之前,還包括:
展示地址設置界面;
響應于在所述地址設置界面中的設置操作,設置所述目標設備對應的互聯網地址。
11.根據權利要求1至10任一所述的方法,其特征在于,所述內存操作函數包括以下函數中的至少一種:
動態內存分配函數malloc、動態內存分配并做初始化函數calloc、動態內存調整函數realloc、隊列對齊內存分配函數memalign、內存釋放函數free。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于騰訊科技(深圳)有限公司,未經騰訊科技(深圳)有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010116208.5/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種混合動力汽車狀態監視器
- 下一篇:一種袋包裝船機的實時監控系統





