一種小內(nèi)存微型控制器零碎片的動(dòng)態(tài)內(nèi)存分配方法
【專利摘要】本發(fā)明公開(kāi)了一種小內(nèi)存微型控制器零碎片的動(dòng)態(tài)內(nèi)存分配方法,通過(guò)內(nèi)存初始化、內(nèi)存分配、內(nèi)存釋放三個(gè)步驟,有效地利用了微控制器非常有限的內(nèi)存資源,更大地發(fā)揮了內(nèi)存的利用率,不再產(chǎn)生內(nèi)存碎片,從而更好地保證了嵌入式系統(tǒng)的高穩(wěn)定可靠性,同時(shí),本發(fā)明方法也解決了使用堆棧方式造成溢出錯(cuò)誤導(dǎo)致了系統(tǒng)崩潰的風(fēng)險(xiǎn)。
【專利說(shuō)明】一種小內(nèi)存微型控制器零碎片的動(dòng)態(tài)內(nèi)存分配方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及小內(nèi)存微型控制器內(nèi)存分配的【技術(shù)領(lǐng)域】,尤其是指一種小內(nèi)存微型控制器零碎片的動(dòng)態(tài)內(nèi)存分配方法。
【背景技術(shù)】
[0002]業(yè)內(nèi)習(xí)知,MCU (微控制器)的RAM (內(nèi)存)資源非常有限,例如MSC51 (微控制器的一個(gè)種類)系列只有128字節(jié)(內(nèi)存容量單位),AVR (微控制器的一個(gè)種類)系列最大可到4096字節(jié),為了嵌入式系統(tǒng)能更有效的使用有限的內(nèi)存空間,提高小內(nèi)存的分配及回收率,防止內(nèi)存碎片導(dǎo)致了系統(tǒng)任務(wù)因無(wú)法分配內(nèi)存而使系統(tǒng)崩潰,系統(tǒng)崩潰可能會(huì)造成人身安全、重大經(jīng)濟(jì)損失。目前單片機(jī)的內(nèi)存分配主要有以下兩種:
[0003]1、靜態(tài)分配法:
[0004]將內(nèi)存固定分配給需要使用的任務(wù)。靜態(tài)分配內(nèi)存會(huì)受到任務(wù)多少的影響,任務(wù)少不能充分發(fā)揮MCU的性能,任務(wù)多了內(nèi)存不夠使用,這種方法的優(yōu)點(diǎn)是不產(chǎn)生內(nèi)存碎片,缺點(diǎn)是嚴(yán)重影響了 MCU性能的發(fā)揮,能運(yùn)行的任務(wù)相對(duì)較少,典型的吃得多,做的少。
[0005]2、數(shù)組分配法:
[0006]數(shù)組分配法是使用靜態(tài)分配的方法,分配一個(gè)較大的全局?jǐn)?shù)組變量,當(dāng)某個(gè)任務(wù)需要分配內(nèi)存時(shí),從這個(gè)數(shù)組內(nèi)取出相應(yīng)的內(nèi)存段,并標(biāo)記本內(nèi)存已經(jīng)被分配,當(dāng)本內(nèi)存段未被釋放之前,不能再次被分配,當(dāng)任務(wù)使用完成內(nèi)存需要,執(zhí)行釋放內(nèi)存,本段內(nèi)存清除標(biāo)志狀態(tài),以供下一任務(wù)分配使用。數(shù)組分配法的優(yōu)點(diǎn)是結(jié)構(gòu)簡(jiǎn)單,容易實(shí)現(xiàn);缺點(diǎn)是非常容易產(chǎn)生內(nèi)存碎片,當(dāng)每次分配及釋放的內(nèi)存長(zhǎng)度不一致時(shí),現(xiàn)象更加嚴(yán)重,這樣的系統(tǒng)運(yùn)行的時(shí)間越長(zhǎng),內(nèi)存碎片會(huì)越多,出現(xiàn)系統(tǒng)崩潰的可能越大,也可能造成極少的內(nèi)存分配也會(huì)失敗。
[0007]在實(shí)際應(yīng)用中,上述兩種方法都會(huì)遇到諸多限制。故此,現(xiàn)有技術(shù)中的內(nèi)存分配方法有待于進(jìn)一步改善。
【發(fā)明內(nèi)容】
[0008]本發(fā)明的目的在于克服現(xiàn)有技術(shù)的不足,提供一種高效合理的小內(nèi)存微型控制器零碎片的動(dòng)態(tài)內(nèi)存分配方法,能有效地防止產(chǎn)生內(nèi)存碎片,提高嵌入式系統(tǒng)在工業(yè)控制的
穩(wěn)定可靠性。
[0009]為實(shí)現(xiàn)上述目的,本發(fā)明所提供的技術(shù)方案為:一種小內(nèi)存微型控制器零碎片的動(dòng)態(tài)內(nèi)存分配方法,包括以下步驟:
[0010]1)內(nèi)存初始化
[0011]在內(nèi)存初始化的過(guò)程中,指定內(nèi)存的起始地址和內(nèi)存最大分配長(zhǎng)度,記錄內(nèi)存的起始地址、結(jié)束地址和內(nèi)存長(zhǎng)度,并將內(nèi)存指針pt指向內(nèi)存起始地址,同時(shí)將內(nèi)存指針pt的值等于NULL,完成初始化;
[0012]2)內(nèi)存分配[0013]從內(nèi)存起始地址開(kāi)始,查找內(nèi)存指針pt等于NULL的地方,計(jì)算所需要分配內(nèi)存單元是否小于或等于空白內(nèi)存空間,如果大于,則返回內(nèi)存分配失敗,如果小于或等于,則將內(nèi)存指針pt地址的數(shù)據(jù)內(nèi)容指向下一個(gè)可以動(dòng)態(tài)分配內(nèi)存的內(nèi)存指針ptn, n=l, 2,3...,η的地址,設(shè)當(dāng)前分配成功的內(nèi)存單元為memn,n=l, 2,3...,η,內(nèi)存指針pt地址的數(shù)據(jù)內(nèi)容則需要指向相應(yīng)內(nèi)存指針ptn的地址,而內(nèi)存指針ptn地址的數(shù)據(jù)內(nèi)容則需要等于NULL,以便下一次內(nèi)存分配從此開(kāi)始,返回內(nèi)存分配成功;往后,每次內(nèi)存分配都會(huì)從內(nèi)存指針Pt開(kāi)始,查找到空閑內(nèi)存的起始位置,分配響應(yīng)的內(nèi)存,如果內(nèi)存空間不足,則返回分配內(nèi)存失??;
[0014]3)內(nèi)存釋放
[0015]判斷釋放的內(nèi)存是否是最后一次分配的內(nèi)存,若是,在釋放該內(nèi)存時(shí),則需要直接找到該內(nèi)存的起始地址,通過(guò)內(nèi)存指針pt找到相應(yīng)的內(nèi)存指針ptn, n=l, 2,3...,η ;由于內(nèi)存指針ptn等于NULL,則將內(nèi)存指針ptn的前一個(gè)內(nèi)存指針ptn_l等于NULL,以便下次分配內(nèi)存從此開(kāi)始;若不是,則需要將該內(nèi)存移動(dòng),以實(shí)現(xiàn)零碎片。
[0016]在步驟2)中:
[0017]當(dāng)?shù)谝淮涡枰峙鋬?nèi)存單元meml,即n=l時(shí),找到內(nèi)存指針pt,計(jì)算所需要分配內(nèi)存單元是否小于或等于空白內(nèi)存空間,如果大于,則返回內(nèi)存分配失敗,如果小于或等于,內(nèi)存指針pt地址的數(shù)據(jù)內(nèi)容則需要指向相應(yīng)內(nèi)存指針ptl的地址,ptl地址的數(shù)據(jù)內(nèi)容則需要等于NULL,以便下一次內(nèi)存分配從此開(kāi)始,返回內(nèi)存分配成功;
[0018]當(dāng)?shù)诙涡枰峙鋬?nèi)存單元mem2,即n=2時(shí),找到內(nèi)存指針pt,發(fā)現(xiàn)pt的數(shù)據(jù)等于ptl,則再查找ptl,發(fā)現(xiàn)ptl的數(shù)據(jù)內(nèi)容等于NULL,計(jì)算內(nèi)存單元mem2所需要的內(nèi)存是否小于或等于空白內(nèi)存空間,如果大于,則返回內(nèi)存分配失敗,如果小于或等于,則從ptl作為起始地址,分配內(nèi)存單元mem2的空間,此時(shí),ptl地址的數(shù)據(jù)內(nèi)容等于pt2的地址,pt2地址的數(shù)據(jù)內(nèi)容等于NULL,以便下次內(nèi)存分配從此開(kāi)始,返回內(nèi)存分配成功;
[0019]當(dāng)?shù)谌涡枰峙鋬?nèi)存單元mem3,即n=3時(shí),找到內(nèi)存指針pt,根據(jù)pt的內(nèi)容找到ptl,再根據(jù)ptl的內(nèi)容找到pt2,由于pt2等于NULL,貝U內(nèi)存單元mem3從是pt2開(kāi)始分配,如果內(nèi)存單元mem3所需的內(nèi)存小于或等于空閑剩余內(nèi)存,則從pt2作為起始地址,分配內(nèi)存單元mem3的空間,pt2地址的數(shù)據(jù)內(nèi)容等于pt3的地址,pt3地址的數(shù)據(jù)內(nèi)容等于NULL,以便下次內(nèi)存分配從此開(kāi)始,返回內(nèi)存分配成功;
[0020]以此類推,按照上述方法,每次內(nèi)存分配都會(huì)從內(nèi)存指針pt開(kāi)始,查找到空閑內(nèi)存的起始位置,分配響應(yīng)的內(nèi)存,如果內(nèi)存空間不足,則返回分配內(nèi)存失敗。
[0021]在步驟3)中,當(dāng)需要將內(nèi)存移動(dòng)時(shí),如下:
[0022]將需釋放的內(nèi)存單元memn, n=l, 2,3…,η的起始地址開(kāi)始存放最后一次分配的內(nèi)存單元memn+n,n=l, 2,3...,η的地址內(nèi)容,直到最后一次分配的內(nèi)存單元存放完畢為止,之后新的空閑內(nèi)存指針則為ptn+Ι,將第一次分配的內(nèi)存單元的內(nèi)存指針ptl指向ptn+1, ptn+1等于NULL,下次分配則從ptn+Ι開(kāi)始分配,到達(dá)了空閑內(nèi)存最大化的目的,進(jìn)而實(shí)現(xiàn)了零內(nèi)存碎片的釋放。
[0023]本發(fā)明與現(xiàn)有技術(shù)相比,具有如下優(yōu)點(diǎn)與有益效果:·[0024]1、本發(fā)明通過(guò)內(nèi)存的分配與釋放的算法,實(shí)現(xiàn)零碎片的使用方法,提高了微型單片機(jī)內(nèi)存的使用率,可以提高微型單片機(jī)系統(tǒng)的穩(wěn)定性;[0025]2、本發(fā)明補(bǔ)償了內(nèi)存碎片的缺陷,也解決了使用堆棧方式造成溢出錯(cuò)誤導(dǎo)致了系統(tǒng)崩潰的風(fēng)險(xiǎn)。
【專利附圖】
【附圖說(shuō)明】
[0026]圖1為本發(fā)明內(nèi)存分配示意圖。
[0027]圖2為本發(fā)明第一次需要分配內(nèi)存單元meml時(shí)的示意圖。
[0028]圖3為本發(fā)明第二次需要分配內(nèi)存單元mem2時(shí)的示意圖。
[0029]圖4為本發(fā)明第三次需要分配內(nèi)存單元mem3時(shí)的示意圖。
[0030]圖5為本發(fā)明釋放的內(nèi)存是最后一次分配的內(nèi)存時(shí)的示意圖。
[0031 ]圖6為本發(fā)明將內(nèi)存移動(dòng)的流程圖。
【具體實(shí)施方式】
[0032]下面結(jié)合具體實(shí)施例對(duì)本發(fā)明作進(jìn)一步說(shuō)明。
[0033]本實(shí)施例所述的小內(nèi)存微型控制器零碎片的動(dòng)態(tài)內(nèi)存分配方法,其具體情況如下:
[0034]1)內(nèi)存初始化 mem_init
[0035]在內(nèi)存初始化的過(guò)程中,指定內(nèi)存的起始地址和內(nèi)存最大分配長(zhǎng)度,如圖1所示,記錄內(nèi)存的起始地址、結(jié)束地址和內(nèi)存長(zhǎng)度,并將pt (內(nèi)存指針)指向內(nèi)存起始地址,同時(shí)將Pt的值等于NULL (空閑),完成初始化。
[0036]2)內(nèi)存分配 mem_melloc
[0037]從內(nèi)存起始地址開(kāi)始,查找內(nèi)存指針pt等于NULL的地方,計(jì)算所需要分配內(nèi)存單元是否小于或等于空白內(nèi)存空間,如果大于,則返回內(nèi)存分配失敗,如果小于或等于,則將內(nèi)存指針pt地址的數(shù)據(jù)內(nèi)容指向下一個(gè)可以動(dòng)態(tài)分配內(nèi)存的內(nèi)存指針ptn, n=l, 2,3...,η的地址,設(shè)當(dāng)前分配成功的內(nèi)存單元為memn,n=l, 2,3...,η,內(nèi)存指針pt地址的數(shù)據(jù)內(nèi)容則需要指向相應(yīng)內(nèi)存指針ptn的地址,而內(nèi)存指針ptn地址的數(shù)據(jù)內(nèi)容則需要等于NULL,以便下一次內(nèi)存分配從此開(kāi)始,返回內(nèi)存分配成功。
[0038]當(dāng)?shù)谝淮涡枰峙鋬?nèi)存單元meml,即n=l時(shí),如圖2所示,找到內(nèi)存指針pt,計(jì)算所需要分配內(nèi)存單元是否小于或等于空白內(nèi)存空間,如果大于,則返回內(nèi)存分配失敗,如果小于或等于,內(nèi)存指針Pt地址的數(shù)據(jù)內(nèi)容則需要指向相應(yīng)內(nèi)存指針ptl的地址,ptl地址的數(shù)據(jù)內(nèi)容則需要等于NULL,以便下一次內(nèi)存分配從此開(kāi)始,返回內(nèi)存分配成功。
[0039]當(dāng)?shù)诙涡枰峙鋬?nèi)存單元mem2,即n=2時(shí),如圖3所示,找到內(nèi)存指針pt,發(fā)現(xiàn)pt的數(shù)據(jù)等于ptl,則再查找ptl,發(fā)現(xiàn)ptl的數(shù)據(jù)內(nèi)容等于NULL,計(jì)算內(nèi)存單元mem2所需要的內(nèi)存是否小于或等于空白內(nèi)存空間,如果大于,則返回內(nèi)存分配失敗,如果小于或等于,則從ptl作為起始地址,分配內(nèi)存單元mem2的空間,此時(shí),ptl地址的數(shù)據(jù)內(nèi)容等于pt2的地址,pt2地址的數(shù)據(jù)內(nèi)容等于NULL,以便下次內(nèi)存分配從此開(kāi)始,返回內(nèi)存分配成功。
[0040]當(dāng)?shù)谌涡枰峙鋬?nèi)存單元mem3,即n=3時(shí),如圖4所示,找到內(nèi)存指針pt,根據(jù)pt的內(nèi)容找到ptl,再根據(jù)ptl的內(nèi)容找到pt2,由于pt2等于NULL,則內(nèi)存單元mem3從是pt2開(kāi)始分配,如果內(nèi)存單元mem3所需的內(nèi)存小于或等于空閑剩余內(nèi)存,則從pt2作為起始地址,分配內(nèi)存單元mem3的空間,pt2地址的數(shù)據(jù)內(nèi)容等于pt3的地址,pt3地址的數(shù)據(jù)內(nèi)容等于NULL,以便下次內(nèi)存分配從此開(kāi)始,返回內(nèi)存分配成功。
[0041]以此類推,按照上述方法,每次內(nèi)存分配都會(huì)從內(nèi)存指針pt開(kāi)始,查找到空閑內(nèi)存的起始位置,分配響應(yīng)的內(nèi)存,如果內(nèi)存空間不足,則返回分配內(nèi)存失敗。
[0042]3)內(nèi)存釋放 mem_free
[0043]如果釋放的內(nèi)存是最后一次分配的內(nèi)存,如圖4所示內(nèi)存分布情況中,此時(shí)需要釋放內(nèi)存單元mem3時(shí),貝U直接找到內(nèi)存單元mem3的起始地址,通過(guò)pt找到ptl, ptl找到pt2,pt2找到pt3,由于pt3等于NULL,則將pt2等于NULL,以便下次分配內(nèi)存從此開(kāi)始,如圖5所示。
[0044]如果當(dāng)前需要釋放的內(nèi)存不是最后一次分配的內(nèi)存,此時(shí)則需要將內(nèi)存移動(dòng),實(shí)現(xiàn)零碎片。例如釋放內(nèi)存單元mem2,由于內(nèi)存單元mem2在meml和mem3之間,如果直接釋放,勢(shì)必會(huì)產(chǎn)生mem2這段內(nèi)存碎片,但我們可以通過(guò)如圖6所示的流程方法來(lái)實(shí)現(xiàn)釋放內(nèi)存則不產(chǎn)生內(nèi)存碎片,將內(nèi)存單元mem2的內(nèi)存起始地址開(kāi)始存放內(nèi)存單元mem3的地址內(nèi)容,直到內(nèi)存單元mem3存放完畢為止,之后新的空閑內(nèi)存指針則為pt4,則將第一次分配的內(nèi)存單元的ptl指向pt4,pt4等于NULL,下次分配則從pt4開(kāi)始分配,到達(dá)了空閑內(nèi)存最大化的目的,實(shí)現(xiàn)了零內(nèi)存碎片的釋放。
[0045]由此可見(jiàn),本發(fā)明方法在內(nèi)存的分配和釋放過(guò)程,未產(chǎn)生一個(gè)單元的內(nèi)存碎片,這相比現(xiàn)有技術(shù),本發(fā)明方法有效地利用了微控制器非常有限的內(nèi)存資源,更大地發(fā)揮了內(nèi)存的利用率,不再產(chǎn)生內(nèi)存碎片,從而更好地保證了嵌入式系統(tǒng)的高穩(wěn)定可靠性,同時(shí),本發(fā)明方法也解決了使用堆棧方式造成溢出錯(cuò)誤導(dǎo)致了系統(tǒng)崩潰的風(fēng)險(xiǎn),具有內(nèi)存使用率高、實(shí)用性強(qiáng)等優(yōu)點(diǎn),值得推廣。
[0046]以上所述之實(shí)施例子只為本發(fā)明之較佳實(shí)施例,并非以此限制本發(fā)明的實(shí)施范圍,故凡依本發(fā)明之形狀、原理所作的變化,均應(yīng)涵蓋在本發(fā)明的保護(hù)范圍內(nèi)。
【權(quán)利要求】
1.一種小內(nèi)存微型控制器零碎片的動(dòng)態(tài)內(nèi)存分配方法,其特征在于,包括以下步驟:1)內(nèi)存初始化在內(nèi)存初始化的過(guò)程中,指定內(nèi)存的起始地址和內(nèi)存最大分配長(zhǎng)度,記錄內(nèi)存的起始地址、結(jié)束地址和內(nèi)存長(zhǎng)度,并將內(nèi)存指針pt指向內(nèi)存起始地址,同時(shí)將內(nèi)存指針Pt的值等于NULL,完成初始化;2)內(nèi)存分配從內(nèi)存起始地址開(kāi)始,查找內(nèi)存指針pt等于NULL的地方,計(jì)算所需要分配內(nèi)存單元是否小于或等于空白內(nèi)存空間,如果大于,則返回內(nèi)存分配失敗,如果小于或等于,則將內(nèi)存指針pt地址的數(shù)據(jù)內(nèi)容指向下一個(gè)可以動(dòng)態(tài)分配內(nèi)存的內(nèi)存指針ptn, n=l, 2,3...,η的地址,設(shè)當(dāng)前分配成功的內(nèi)存單元為memn,n=l, 2,3...,η,內(nèi)存指針pt地址的數(shù)據(jù)內(nèi)容則需要指向相應(yīng)內(nèi)存指針ptn的地址,而內(nèi)存指針ptn地址的數(shù)據(jù)內(nèi)容則需要等于NULL,以便下一次內(nèi)存分配從此開(kāi)始,返回內(nèi)存分配成功;往后,每次內(nèi)存分配都會(huì)從內(nèi)存指針Pt開(kāi)始,查找到空閑內(nèi)存的起始位置,分配響應(yīng)的內(nèi)存,如果內(nèi)存空間不足,則返回分配內(nèi)存失??;3)內(nèi)存釋放判斷釋放的內(nèi)存是否是最后一次分配的內(nèi)存,若是,在釋放該內(nèi)存時(shí),則需要直接找到該內(nèi)存的起始地址,通過(guò)內(nèi)存指針pt找到相應(yīng)的內(nèi)存指針ptn, n=l, 2,3...,η ;由于內(nèi)存指針ptn等于NULL,則將內(nèi)存指針ptn的前一個(gè)內(nèi)存指針ptn-Ι等于NULL,以便下次分配內(nèi)存從此開(kāi)始;若不是,則需要將該內(nèi)存移動(dòng),以實(shí)現(xiàn)零碎片。
2.根據(jù)權(quán)利要求1所述的一種小內(nèi)存微型控制器零碎片的動(dòng)態(tài)內(nèi)存分配方法,其特征在于,在步驟2)中 :當(dāng)?shù)谝淮涡枰峙鋬?nèi)存單元meml,即n=l時(shí),找到內(nèi)存指針pt,計(jì)算所需要分配內(nèi)存單元是否小于或等于空白內(nèi)存空間,如果大于,則返回內(nèi)存分配失敗,如果小于或等于,內(nèi)存指針pt地址的數(shù)據(jù)內(nèi)容則需要指向相應(yīng)內(nèi)存指針ptl的地址,ptl地址的數(shù)據(jù)內(nèi)容則需要等于NULL,以便下一次內(nèi)存分配從此開(kāi)始,返回內(nèi)存分配成功;當(dāng)?shù)诙涡枰峙鋬?nèi)存單元mem2,即n=2時(shí),找到內(nèi)存指針pt,發(fā)現(xiàn)pt的數(shù)據(jù)等于ptl,則再查找ptl,發(fā)現(xiàn)ptl的數(shù)據(jù)內(nèi)容等于NULL,計(jì)算內(nèi)存單元mem2所需要的內(nèi)存是否小于或等于空白內(nèi)存空間,如果大于,則返回內(nèi)存分配失敗,如果小于或等于,則從ptl作為起始地址,分配內(nèi)存單元mem2的空間,此時(shí),ptl地址的數(shù)據(jù)內(nèi)容等于pt2的地址,pt2地址的數(shù)據(jù)內(nèi)容等于NULL,以便下次內(nèi)存分配從此開(kāi)始,返回內(nèi)存分配成功;當(dāng)?shù)谌涡枰峙鋬?nèi)存單元mem3,即n=3時(shí),找到內(nèi)存指針pt,根據(jù)pt的內(nèi)容找到ptl,再根據(jù)ptl的內(nèi)容找到pt2,由于pt2等于NULL,則內(nèi)存單元mem3從是pt2開(kāi)始分配,如果內(nèi)存單元mem3所需的內(nèi)存小于或等于空閑剩余內(nèi)存,則從pt2作為起始地址,分配內(nèi)存單元mem3的空間,pt2地址的數(shù)據(jù)內(nèi)容等于pt3的地址,pt3地址的數(shù)據(jù)內(nèi)容等于NULL,以便下次內(nèi)存分配從此開(kāi)始,返回內(nèi)存分配成功;以此類推,按照上述方法,每次內(nèi)存分配都會(huì)從內(nèi)存指針pt開(kāi)始,查找到空閑內(nèi)存的起始位置,分配響應(yīng)的內(nèi)存,如果內(nèi)存空間不足,則返回分配內(nèi)存失敗。
3.根據(jù)權(quán)利要求1所述的一種小內(nèi)存微型控制器零碎片的動(dòng)態(tài)內(nèi)存分配方法,其特征在于,在步驟3)中,當(dāng)需要將內(nèi)存移動(dòng)時(shí),如下:將需釋放的內(nèi)存單元memn, n=l, 2,3...,η的起始地址開(kāi)始存放最后一次分配的內(nèi)存單元memn+n,n=l, 2,3...,n的地址內(nèi)容,直到最后一次分配的內(nèi)存單元存放完畢為止,之后新的空閑內(nèi)存指針則為ptn+Ι,將第一次分配的內(nèi)存單元的內(nèi)存指針ptl指向ptn+1, ptn+1等于NULL,下次分配則從ptn+Ι開(kāi)始分配,到達(dá)了空閑內(nèi)存最大化的目的,進(jìn)而實(shí)現(xiàn)了零內(nèi)存碎片的釋放。`
【文檔編號(hào)】G06F12/02GK103678152SQ201410008273
【公開(kāi)日】2014年3月26日 申請(qǐng)日期:2014年1月8日 優(yōu)先權(quán)日:2014年1月8日
【發(fā)明者】李 瑞, 羅輪 申請(qǐng)人:廣州思泰信息技術(shù)有限公司