一種動(dòng)態(tài)內(nèi)存分配方法
基本信息
申請?zhí)?/td> | CN202110734591.5 | 申請日 | - |
公開(公告)號 | CN113419858A | 公開(公告)日 | 2021-09-21 |
申請公布號 | CN113419858A | 申請公布日 | 2021-09-21 |
分類號 | G06F9/50(2006.01)I | 分類 | 計(jì)算;推算;計(jì)數(shù); |
發(fā)明人 | 葉德焰;任賦;林雅;許學(xué)澤 | 申請(專利權(quán))人 | 明見(廈門)技術(shù)有限公司 |
代理機(jī)構(gòu) | 廈門市精誠新創(chuàng)知識產(chǎn)權(quán)代理有限公司 | 代理人 | 蔡金塔 |
地址 | 361000福建省廈門市思明區(qū)禾祥西路487、489號三樓之六十 | ||
法律狀態(tài) | - |
摘要
摘要 | 本發(fā)明涉及一種動(dòng)態(tài)內(nèi)存分配方法,其可包括以下步驟:定義節(jié)點(diǎn)頭信息,節(jié)點(diǎn)頭信息包括節(jié)點(diǎn)的已使用長度ulen和next指針;內(nèi)存初始化,將內(nèi)存池初始化成僅有開始節(jié)點(diǎn)和末尾節(jié)點(diǎn)的單向鏈表結(jié)構(gòu);內(nèi)存分配,從開始節(jié)點(diǎn)開始查找剩余的空間長度大于申請內(nèi)存的長度的節(jié)點(diǎn),找到后判斷該節(jié)點(diǎn)的ulen是否等于0,若是,則將該節(jié)點(diǎn)的ulen的值改為申請內(nèi)存的長度,否則在該節(jié)點(diǎn)后創(chuàng)建一個(gè)新節(jié)點(diǎn),并將該節(jié)點(diǎn)的next指針指向新節(jié)點(diǎn);內(nèi)存釋放,當(dāng)釋放內(nèi)存時(shí),若釋放的是開始節(jié)點(diǎn),則只要將開始節(jié)點(diǎn)的ulen賦值為0即可,否則只需要將的前一節(jié)點(diǎn)的next指針指到下一節(jié)點(diǎn)即可。本發(fā)明無需進(jìn)行復(fù)雜運(yùn)算,僅需對參數(shù)ulen和next指針進(jìn)行操作,執(zhí)行代碼簡單,效率高。 |
