[發明專利]內存回收的方法及相關設備在審
| 申請號: | 202310272997.5 | 申請日: | 2023-03-16 |
| 公開(公告)號: | CN116431332A | 公開(公告)日: | 2023-07-14 |
| 發明(設計)人: | 郝信;龐訓磊;徐宇;鄧剛;王榮巍 | 申請(專利權)人: | 阿里云計算有限公司 |
| 主分類號: | G06F9/50 | 分類號: | G06F9/50;G06F12/02 |
| 代理公司: | 北京天同知創知識產權代理事務所(普通合伙) 16046 | 代理人: | 趙囡囡 |
| 地址: | 310024 浙江省*** | 國省代碼: | 浙江;33 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 內存 回收 方法 相關 設備 | ||
1.一種內存回收的方法,包括:
從操作系統的內核具有的一個或多個控制組群中,確定需要執行代碼段鎖定操作的目標控制組群,所述控制組群為所述內核提供的用于管理進程組所使用的物理資源的機制,其中,所述進程組為一個或多個進程的集合,所述代碼段鎖定操作為對所述進程下屬于代碼段的虛擬內存進行鎖定的操作;
判斷所述目標控制組群中,所述進程下的所述虛擬內存是否屬于所述代碼段,若是,則對所述虛擬內存執行所述代碼段鎖定操作。
2.根據權利要求1所述的方法,所述方法還包括:
獲取所述目標控制組群下,所述進程的身份標識;
基于所述身份標識,將所述進程記錄于預先創建的鏈表中;
則,判斷所述目標控制組群中,所述進程下的所述虛擬內存是否屬于所述代碼段的步驟包括:
遍歷所述鏈表中記錄的各所述進程下的所述虛擬內存,并判斷所述虛擬內存的內存屬性是否屬于所述代碼段,若是,則對所述虛擬內存執行所述代碼段鎖定操作。
3.根據權利要求1或2所述的方法,判斷所述目標控制組群中,所述進程下的所述虛擬內存是否屬于所述代碼段的步驟還包括:
確定所述虛擬內存的結構體,所述結構體設置有標志位,所述標志位標識有所述虛擬內存的操作權限;
根據所述標志位標識的所述操作權限,判斷所述標識位對應的所述虛擬內存的內存屬性是否屬于所述代碼段。
4.根據權利要求1所述的方法,其特征在于,從操作系統的內核具有的一個或多個控制組群中,確定需要執行代碼段鎖定操作的目標控制組群之后,所述方法還包括:
獲取預先設定的代碼段鎖定閾值;
計算已被鎖定的屬于所述代碼段的所述虛擬內存的內存量;
判斷所述內存量是否超過所述代碼段鎖定閾值,若否,則判斷所述目標控制組群中,所述進程下的所述虛擬內存是否屬于所述代碼段。
5.根據權利要求4所述的方法,所述方法還包括:
若判斷出所述內存量超過所述代碼段鎖定閾值,則終止所述代碼段鎖定操作。
6.根據權利要求2所述的方法,其特征在于,從操作系統的內核具有的一個或多個控制組群中,確定需要執行代碼段鎖定操作的目標控制組群之前,所述方法還包括:
將一個或多個所述控制組群下的所述進程的身份標識,均存入紅黑樹;
則,基于所述身份標識,將所述進程記錄于預先創建的鏈表中之前,所述方法還包括:
通過所述紅黑樹,判斷所述鏈表中是否已存在所述身份標識對應的進程,若否,則基于所述身份標識,將所述進程記錄于所述鏈表中。
7.一種內存回收的裝置,所述裝置用于實現權利要求1至6任一所述的內存回收的方法。
8.一種計算機設備,包括存儲器、處理器及存儲在存儲器上并可在處理器上運行的計算機程序,其特征在于,所述處理器執行所述計算機程序時實現權利要求1至6任一所述的方法步驟。
9.一種計算機可讀存儲介質,其特征在于,所述計算機可讀存儲介質存儲有計算機程序,所述計算機程序被處理器執行時實現權利要求1至6任一所述的方法步驟。
10.一種計算機程序產品,其特征在于,所述計算機程序產品包括計算機程序,所述計算機程序被處理器執行時實現權利要求1至6任一所述的方法步驟。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于阿里云計算有限公司,未經阿里云計算有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202310272997.5/1.html,轉載請聲明來源鉆瓜專利網。





