[發(fā)明專利]一種內(nèi)存管理方法及裝置在審
| 申請(qǐng)?zhí)枺?/td> | 201410579425.2 | 申請(qǐng)日: | 2014-10-24 |
| 公開(公告)號(hào): | CN105589809A | 公開(公告)日: | 2016-05-18 |
| 發(fā)明(設(shè)計(jì))人: | 李燁;李洪剛 | 申請(qǐng)(專利權(quán))人: | 中國(guó)科學(xué)院深圳先進(jìn)技術(shù)研究院 |
| 主分類號(hào): | G06F12/02 | 分類號(hào): | G06F12/02 |
| 代理公司: | 廣州三環(huán)專利代理有限公司 44202 | 代理人: | 郝傳鑫;熊永強(qiáng) |
| 地址: | 518055 廣東省深圳*** | 國(guó)省代碼: | 廣東;44 |
| 權(quán)利要求書: | 查看更多 | 說(shuō)明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 內(nèi)存 管理 方法 裝置 | ||
1.一種內(nèi)存管理方法,其特征在于,包括:
當(dāng)接收到任一節(jié)點(diǎn)程序的申請(qǐng)內(nèi)存請(qǐng)求時(shí),對(duì)所述任一節(jié)點(diǎn)程序分配內(nèi)存 塊,并在內(nèi)存池鏈表中將所述內(nèi)存塊標(biāo)記為占用狀態(tài);
當(dāng)接收到所述任一節(jié)點(diǎn)程序的釋放內(nèi)存請(qǐng)求時(shí),根據(jù)所述釋放內(nèi)存請(qǐng)求將 釋放內(nèi)存塊釋放,且在所述內(nèi)存池鏈表中將所述釋放內(nèi)存塊標(biāo)記為空閑狀態(tài);
當(dāng)所述釋放內(nèi)存塊是第一拆分塊時(shí),且與所述第一拆分塊相對(duì)應(yīng)的第二拆 分塊處于所述空閑狀態(tài),則將所述第一拆分塊與所述第二拆分塊組合為合并內(nèi) 存塊。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述當(dāng)接收到任一節(jié)點(diǎn)程序 的申請(qǐng)內(nèi)存請(qǐng)求之前,還包括:
根據(jù)節(jié)點(diǎn)內(nèi)存空間創(chuàng)建內(nèi)存池,在所述內(nèi)存池中將所述內(nèi)存空間劃分為2k字節(jié)的內(nèi)存塊,其中k為正整數(shù)。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述當(dāng)接收到任一節(jié)點(diǎn)程序 的申請(qǐng)內(nèi)存請(qǐng)求時(shí),對(duì)所述任一節(jié)點(diǎn)程序分配內(nèi)存塊,包括:
當(dāng)接收到任一節(jié)點(diǎn)程序的申請(qǐng)內(nèi)存請(qǐng)求時(shí),解析所述申請(qǐng)內(nèi)存請(qǐng)求,確定 內(nèi)存分配空間為n字節(jié);
根據(jù)所述內(nèi)存分配空間,判斷在所述內(nèi)存池鏈表中是否存在處于空閑狀態(tài) 的n字節(jié)內(nèi)存塊,若是,則對(duì)所述任一節(jié)點(diǎn)程序分配內(nèi)存塊,并在內(nèi)存池鏈表中 將所述內(nèi)存塊標(biāo)記為占用狀態(tài)。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,還包括:
若在所述內(nèi)存池鏈表中不存在處于所述空閑狀態(tài)的n字節(jié)內(nèi)存塊,則判斷在 所述內(nèi)存池鏈表中是否存在處于所述空閑狀態(tài)的m字節(jié)內(nèi)存塊,其中,m>n;
若是,則將所述m字節(jié)內(nèi)存塊平均分開且標(biāo)記為第一拆分塊和第二拆分塊, 并對(duì)所述任一節(jié)點(diǎn)程序分配所述第一拆分塊,且在所述內(nèi)存池鏈表中將所述第 一拆分塊標(biāo)記為所述占用狀態(tài)和所述第二拆分塊標(biāo)記為所述空閑狀態(tài),其中, 所述第一拆分塊和所述第二拆分塊是一一對(duì)應(yīng)的。
若否,則提示內(nèi)存不足,且對(duì)所述任一節(jié)點(diǎn)程序不分配內(nèi)存。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述當(dāng)接收到所述任一節(jié)點(diǎn) 程序的釋放內(nèi)存請(qǐng)求時(shí),根據(jù)所述釋放內(nèi)存請(qǐng)求將釋放內(nèi)存塊釋放,且在所述 內(nèi)存池鏈表中將所述釋放內(nèi)存塊標(biāo)記為空閑狀態(tài),包括:
當(dāng)接收到所述任一節(jié)點(diǎn)程序的釋放內(nèi)存請(qǐng)求時(shí),根據(jù)所述釋放內(nèi)存請(qǐng)求獲 取釋放內(nèi)存地址;
根據(jù)所述釋放內(nèi)存地址,查找與所述釋放內(nèi)存地址相對(duì)應(yīng)的釋放內(nèi)存塊的 首地址;
根據(jù)所述首地址釋放所述釋放內(nèi)存塊,且在所述內(nèi)存池鏈表中將所述釋放 內(nèi)存塊標(biāo)記為所述空閑狀態(tài)。
6.根據(jù)權(quán)利要求1或5所述的方法,其特征在于,在所述內(nèi)存池鏈表中所 述第一拆分塊和所述第二拆分塊的歸屬信息相同;
所述當(dāng)所述釋放內(nèi)存塊是第一拆分塊時(shí),且與所述第一拆分塊相對(duì)應(yīng)的第 二拆分塊處于所述空閑狀態(tài),則將所述第一拆分塊與所述第二拆分塊組合為合 并內(nèi)存塊,包括:
獲取所述釋放內(nèi)存塊的所述歸屬信息;
當(dāng)根據(jù)所述歸屬信息確定所述釋放內(nèi)存塊是拆分塊時(shí),標(biāo)記所述釋放內(nèi)存 塊為所述第一拆分塊。
確定與所述第一拆分塊的歸屬信息相同的內(nèi)存塊,并將所述內(nèi)存塊標(biāo)記為 所述第二拆分塊;
當(dāng)所述第二拆分塊處于空閑狀態(tài)時(shí),將所述第一拆分塊與所述第二拆分塊 組合為合并內(nèi)存塊,并在所述內(nèi)存鏈表中將所述合并內(nèi)存塊標(biāo)記為所述空閑狀 態(tài)。
7.一種內(nèi)存管理裝置,其特征在于,包括:
內(nèi)存分配模塊,用于當(dāng)接收到任一節(jié)點(diǎn)程序的申請(qǐng)內(nèi)存請(qǐng)求時(shí),對(duì)所述任 一節(jié)點(diǎn)程序分配內(nèi)存塊,并在內(nèi)存池鏈表中將所述內(nèi)存塊標(biāo)記為占用狀態(tài);
內(nèi)存釋放模塊,用于當(dāng)接收到所述任一節(jié)點(diǎn)程序的釋放內(nèi)存請(qǐng)求時(shí),根據(jù) 所述釋放內(nèi)存請(qǐng)求將釋放內(nèi)存塊釋放,且在所述內(nèi)存池鏈表中將所述釋放內(nèi)存 塊標(biāo)記為空閑狀態(tài);
內(nèi)存合并模塊,用于當(dāng)所述釋放內(nèi)存塊是第一拆分塊時(shí),且與所述第一拆 分塊相對(duì)應(yīng)的第二拆分塊處于所述空閑狀態(tài),則將所述第一拆分塊與所述第二 拆分塊組合為合并內(nèi)存塊。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于中國(guó)科學(xué)院深圳先進(jìn)技術(shù)研究院,未經(jīng)中國(guó)科學(xué)院深圳先進(jìn)技術(shù)研究院許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410579425.2/1.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。
- 同類專利
- 專利分類
- 一種數(shù)據(jù)庫(kù)讀寫分離的方法和裝置
- 一種手機(jī)動(dòng)漫人物及背景創(chuàng)作方法
- 一種通訊綜合測(cè)試終端的測(cè)試方法
- 一種服裝用人體測(cè)量基準(zhǔn)點(diǎn)的獲取方法
- 系統(tǒng)升級(jí)方法及裝置
- 用于虛擬和接口方法調(diào)用的裝置和方法
- 線程狀態(tài)監(jiān)控方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 一種JAVA智能卡及其虛擬機(jī)組件優(yōu)化方法
- 檢測(cè)程序中方法耗時(shí)的方法、裝置及存儲(chǔ)介質(zhì)
- 函數(shù)的執(zhí)行方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)





