[發明專利]內存碎片管理系統及方法有效
| 申請號: | 201710119705.9 | 申請日: | 2017-03-02 |
| 公開(公告)號: | CN108536609B | 公開(公告)日: | 2022-02-22 |
| 發明(設計)人: | 何三波 | 申請(專利權)人: | 邁普通信技術股份有限公司 |
| 主分類號: | G06F12/02 | 分類號: | G06F12/02 |
| 代理公司: | 成都虹橋專利事務所(普通合伙) 51124 | 代理人: | 吳中偉 |
| 地址: | 610041 四川省*** | 國省代碼: | 四川;51 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 內存 碎片 管理 系統 方法 | ||
本發明涉及計算機內存管理技術,其公開了一種內存碎片管理系統及方法,將離散內存碎片整理成連續內存碎片,進行形成大塊空閑內存,便于提高內存資源的利用率。該方法包括步驟:a.在進行內存分配時,在所分配內存中指定用戶內存回收處理回調函數;b.在內存管理任務啟動時,檢測所分配的內存塊中是否存在孤立塊,并判斷所述孤立塊是否需要被釋放,若需要被釋放,則調用該孤立塊對應的用戶內存回收處理回調函數;c.在用戶內存回收處理回調函數被調用后,重新分配一塊內存保存孤立塊中的數據,并將對孤立塊內存的引用修改為對所述新分配的內存的引用,然后釋放孤立塊。本發明適用于內存管理。
技術領域
本發明涉及計算機內存管理技術,具體涉及一種內存碎片管理系統及方法。
背景技術
內存是計算機系統中的重要組成部分,實現數據的存儲功能:存放原始數據、中間數據和運算結果等,也是高速執行單元與外部低速存儲部件之間的緩存單元。
內存管理則是計算機軟件系統中的一項很重要的基礎功能,比較好的內存管理可以使計算機系統中內存得到最高效的利用,內存碎片盡量的少。
計算機工作一段時間后一般會出現內存碎片(多塊小塊空閑內存),如果出現大量的內存碎片,可能使得某些軟件功能模塊無法運行。如圖1,在空閑內存塊Fi和Fj之間被孤立塊Am隔離,形成兩塊離散的碎片,則這樣的離散內存碎片無法被整理成更大的空閑內存塊,造成計算機內存資源的浪費。
發明內容
本發明所要解決的技術問題是:提出一種內存碎片管理系統及方法,將離散內存碎片整理成連續內存碎片,進而形成大塊空閑內存,便于提高內存資源的利用率。
一方面,本發明實施例提供一種內存碎片管理系統,包括:
管理模塊,用于生成內存管理任務;以及,為用戶模塊提供內存分配接口函數,在所述內存分配接口函數中增加一個參數-用戶內存回收處理回調函數;
檢測模塊,用于在內存管理任務啟動時,檢測用戶模塊所分配的內存塊中是否存在孤立塊,并判斷所述孤立塊是否需要被釋放,若需要被釋放,則通知管理模塊調用該孤立塊對應的用戶內存回收處理回調函數;
用戶模塊,用于在進行內存分配時,在所分配內存中指定用戶內存回收處理回調函數;以及,在用戶內存回收處理回調函數被調用后,重新分配一塊內存保存孤立塊中的數據,并將對孤立塊內存的引用修改為對所述新分配的內存的引用,然后釋放孤立塊。
作為進一步優化,所述用戶模塊還用于在進行內存分配時,判斷分配的內存小于一定閾值且內存中的數據在系統運行過程中可以搬移時,才在所分配內存中指定用戶內存回收處理函數。
作為進一步優化,所述在所分配內存中指定用戶內存回收處理函數的方法為:
在所分配內存的管理頭部新開辟一個字段用于保存用戶內存回收處理函數。
作為進一步優化,所述檢測模塊檢測用戶模塊所分配的內存塊中是否存在孤立塊,并判斷所述孤立塊是否需要被釋放的方法為:
若檢測到某個已分配的內存塊隔離了前后兩個空閑內存塊,則判定該已分配的內存塊為孤立塊,若孤立塊所隔離的前后兩個空閑內存塊的大小之和為孤立塊大小的n倍以上,則判定該孤立塊需要被釋放。
作為進一步優化,所述用戶模塊還用于,在重新分配內存時,緊鄰著已分配的大塊內存后分配一塊新的內存保存孤立塊中的數據。
再一方面,本發明實施例提供了一種內存碎片管理方法,其包括以下步驟:
a.在進行內存分配時,在所分配內存中指定用戶內存回收處理回調函數;
b.在內存管理任務啟動時,檢測所分配的內存塊中是否存在孤立塊,并判斷所述孤立塊是否需要被釋放,若需要被釋放,則調用該孤立塊對應的用戶內存回收處理回調函數;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于邁普通信技術股份有限公司,未經邁普通信技術股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710119705.9/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:頁面版本測試方法及裝置
- 下一篇:管理裝置、信息處理裝置以及管理方法





