[發明專利]一種靜態內存管理方法及裝置在審
| 申請號: | 202011602076.3 | 申請日: | 2020-12-30 |
| 公開(公告)號: | CN112650693A | 公開(公告)日: | 2021-04-13 |
| 發明(設計)人: | 張朋 | 申請(專利權)人: | 上海創功通訊技術有限公司 |
| 主分類號: | G06F12/06 | 分類號: | G06F12/06;G06F9/50 |
| 代理公司: | 北京同達信恒知識產權代理有限公司 11291 | 代理人: | 張燕 |
| 地址: | 201203 上海市浦東新區*** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 靜態 內存 管理 方法 裝置 | ||
1.一種靜態內存管理方法,其特征在于,包括:
若待分配內存空間無空閑的目標內存塊,則將候選內存塊作為分配給所述待分配內存空間的內存塊;所述目標內存塊為堆內存的多個內存塊中不小于所述待分配內存空間的最小內存塊;所述候選內存塊為所述多個內存塊的空閑內存塊中不小于所述待分配內存空間的最小內存塊;所述候選內存塊的內存空間大于所述目標內存塊的內存空間;所述多個內存塊的內存空間為靜態空間;
待所述目標內存塊空閑時,將所述候選內存塊中的數據拷貝至所述目標內存塊,并釋放所述候選內存塊。
2.如權利要求1所述的方法,其特征在于,所述候選內存塊為第一候選內存塊或第二候選內存塊;所述第一候選內存塊為所述多個內存塊在第一時段的空閑內存塊中不小于所述待分配內存空間的最小內存塊;所述第二候選內存塊為所述多個內存塊在第二時段的空閑內存塊中不小于所述待分配內存空間的最小內存塊;所述第一候選內存塊的內存空間大于所述第二候選內存塊的內存空間;所述第一時段在所述第二時段之前;所述方法還包括:
在所述第二時段,將所述第一候選內存塊中的數據拷貝至所述第二候選內存塊,并釋放所述第一候選內存塊。
3.如權利要求1所述的方法,其特征在于,所述候選內存塊為第一候選內存塊;所述第一候選內存塊為所述多個內存塊在第一時段的空閑內存塊中不小于所述待分配內存空間的最小內存塊;所述目標內存塊為所述多個內存塊在第三時段的空閑內存塊中不小于所述待分配內存空間的最小內存塊;所述第一時段在所述第三時段之前;
所述待所述目標內存塊空閑時,將所述候選內存塊中的數據拷貝至所述目標內存塊,并釋放所述候選內存塊,包括:
在所述第三時段,將所述第一候選內存塊中的數據拷貝至所述目標內存塊,并釋放所述第一候選內存塊。
4.如權利要求1所述的方法,其特征在于,所述多個內存塊中任一內存塊的存儲狀態信息通過預設數據結構記錄;
所述預設數據結構中包括預設標識;所述預設標識為第一預設值或第二預設值;所述預設標識的初始值為所述第二預設值;所述第一預設值指示所述內存塊中所存儲數據的目標內存塊不為所述內存塊;所述第二預設值指示所述內存塊中所存儲數據的目標內存塊為所述內存塊;
所述待所述目標內存塊空閑時,將所述候選內存塊中的數據拷貝至所述目標內存塊之前,還包括:
確定所述候選內存塊的預設標識為所述第一預設值。
5.如權利要求4所述的方法,其特征在于,所述將候選內存塊作為分配給所述待分配內存空間的內存塊之后,還包括:
將所述候選內存塊的預設標識從所述第二預設值更新為所述第一預設值;
所述釋放所述候選內存塊后,還包括:
將所述候選內存塊的預設標識從所述第一預設值更新為所述第二預設值。
6.如權利要求1所述的方法,其特征在于,所述多個內存塊中任一內存塊的存儲狀態信息通過預設數據結構記錄;所述預設數據結構記錄包括內存指針;所述內存指針指向所述待分配內存空間當前所分配的內存塊;所述將候選內存塊作為分配給所述待分配內存空間的內存塊之后,還包括:
設置所述內存指針指向所述候選內存塊;
所述將所述候選內存塊中的數據拷貝至所述目標內存塊之后,還包括:
設置所述內存指針指向所述目標內存塊。
7.如權利要求1至6任一項所述的方法,其特征在于,還包括:
輸出所述多個內存塊的存儲狀態信息;所述多個內存塊任一內存塊的存儲狀態信息包括:所述內存塊被分配的持續時長;
釋放所述多個內存塊中被分配的持續時長大于預設時長的內存塊;所述預設時長為判斷內存塊異常占用的時長。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于上海創功通訊技術有限公司,未經上海創功通訊技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011602076.3/1.html,轉載請聲明來源鉆瓜專利網。





