[發(fā)明專利]一種內(nèi)存資源監(jiān)控方法及裝置有效
| 申請?zhí)枺?/td> | 201910522150.1 | 申請日: | 2019-06-17 |
| 公開(公告)號: | CN112100017B | 公開(公告)日: | 2023-07-21 |
| 發(fā)明(設計)人: | 楊津 | 申請(專利權(quán))人: | 騰訊科技(深圳)有限公司 |
| 主分類號: | G06F11/30 | 分類號: | G06F11/30;G06F9/50 |
| 代理公司: | 深圳市深佳知識產(chǎn)權(quán)代理事務所(普通合伙) 44285 | 代理人: | 王仲凱 |
| 地址: | 518000 廣東省深圳*** | 國省代碼: | 廣東;44 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 內(nèi)存 資源 監(jiān)控 方法 裝置 | ||
1.一種內(nèi)存資源監(jiān)控方法,其特征在于,包括:
確定為應用對應的進程分配的虛擬內(nèi)存池;
若所述應用中的第一功能被啟動,確定所述進程包含的與所述第一功能對應的目標線程;
基于預設回調(diào)函數(shù)獲得第一內(nèi)存分配函數(shù)針對所述目標線程在所述虛擬內(nèi)存池資源中分配的第一虛擬內(nèi)存資源;
基于所述預設回調(diào)函數(shù)獲得第一內(nèi)存釋放函數(shù)針對所述目標線程釋放的第二虛擬內(nèi)存資源;
監(jiān)控所述第一虛擬內(nèi)存資源與所述第二虛擬內(nèi)存資源的差值,所述差值為所述目標線程在所述虛擬內(nèi)存池占用的虛擬內(nèi)存資源;
其中,所述預設回調(diào)函數(shù)通過第一鉤子函數(shù)掛鉤第一內(nèi)存分配函數(shù);所述預設回調(diào)函數(shù)通過第二鉤子函數(shù)掛鉤第一內(nèi)存釋放函數(shù);若所述預設回調(diào)函數(shù)中的預設參數(shù)的值包括第一內(nèi)存分配函數(shù)中的標記位參數(shù),所述預設回調(diào)函數(shù)記錄針對所述目標線程在所述虛擬內(nèi)存池資源中分配的第一虛擬內(nèi)存資源的地址和大??;若所述預設回調(diào)函數(shù)中的預設參數(shù)的值包括第一內(nèi)存釋放函數(shù)中的標記位參數(shù),所述預設回調(diào)函數(shù)移除針對所述目標線程占用虛擬內(nèi)存資源的記錄。
2.根據(jù)權(quán)利要求1所述內(nèi)存資源監(jiān)控方法,其特征在于,所述若所述應用中的第一功能被啟動,確定所述進程包含的與所述第一功能對應的目標線程,包括:
獲取在所述第一功能被啟動時,創(chuàng)建的第一線程;
將所述第一線程確定為所述第一功能對應的所述目標線程。
3.根據(jù)權(quán)利要求1所述內(nèi)存資源監(jiān)控方法,其特征在于,還包括:
獲取所述應用中被啟動的至少一個功能;
將所述至少一個功能中屬于預設的監(jiān)控功能名單的功能,確定為所述第一功能。
4.根據(jù)權(quán)利要求3所述內(nèi)存資源監(jiān)控方法,其特征在于,還包括以下至少一種:
針對所述至少一個功能中任一功能,若該功能對應的線程占用的虛擬內(nèi)存資源在設定時間內(nèi)增大第一閾值,確定所述監(jiān)控功能名單包括該功能對應的名稱;
針對所述至少一個功能中任一功能,若該功能對應的線程占用的虛擬內(nèi)存資源的最大值大于第二閾值,確定所述監(jiān)控功能名單包括該功能對應的名稱。
5.根據(jù)權(quán)利要求1所述內(nèi)存資源監(jiān)控方法,其特征在于,包括以下至少一種:
所述第一鉤子函數(shù)包括所述第一內(nèi)存分配函數(shù)中的第一指針;
所述第二鉤子函數(shù)包括所述第一內(nèi)存釋放函數(shù)中的第二指針;
所述第一鉤子函數(shù)與所述第二鉤子函數(shù)相同,所述第一內(nèi)存分配函數(shù)包含的第一指針與所述第一內(nèi)存釋放函數(shù)包含的第二指針相同。
6.根據(jù)權(quán)利要求1所述內(nèi)存資源監(jiān)控方法,其特征在于,預設回調(diào)函數(shù)通過第三鉤子函數(shù)掛鉤第二內(nèi)存分配函數(shù);
所述確定為應用對應的進程分配的虛擬內(nèi)存池包括:
若所述應用被啟動,創(chuàng)建與所述應用對應的所述進程;
基于所述預設回調(diào)函數(shù)獲得所述第二內(nèi)存分配函數(shù)針對所述進程分配的所述虛擬內(nèi)存池。
7.根據(jù)權(quán)利要求6所述內(nèi)存資源監(jiān)控方法,其特征在于,預設回調(diào)函數(shù)通過第二鉤子函數(shù)掛鉤第一內(nèi)存釋放函數(shù);所述預設回調(diào)函數(shù)通過第四鉤子函數(shù)掛鉤第二內(nèi)存釋放函數(shù);還包括:
若所述第一功能對應的所述目標線程被釋放,基于所述預設回調(diào)函數(shù)監(jiān)控所述第一內(nèi)存釋放函數(shù)是否釋放所述目標線程占用的虛擬內(nèi)存資源;
若所述應用對應的進程被釋放,基于所述預設回調(diào)函數(shù)監(jiān)控所述第二內(nèi)存釋放函數(shù)是否釋放所述進程占用的虛擬內(nèi)存池。
8.根據(jù)權(quán)利要求7所述內(nèi)存資源監(jiān)控方法,其特征在于,包括以下至少一種:
所述第三鉤子函數(shù)包括所述第二內(nèi)存分配函數(shù)中的第三指針;
所述第四鉤子函數(shù)包括所述第二內(nèi)存釋放函數(shù)中的第四指針;
所述第三鉤子函數(shù)與所述第四鉤子函數(shù)相同,且,所述第二內(nèi)存分配函數(shù)包含的第三指針與所述第二內(nèi)存釋放函數(shù)包含的第四指針相同。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于騰訊科技(深圳)有限公司,未經(jīng)騰訊科技(深圳)有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910522150.1/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





