一種內(nèi)存分配方法及裝置制造方法
【專利摘要】本發(fā)明提出一種內(nèi)存分配方法及裝置,其中方法包括:記錄每個(gè)內(nèi)存塊組所屬的內(nèi)存模組(RANK);按照最小空閑率優(yōu)先(Min?Free)方式或近期最少使用(LRU)方式排列系統(tǒng)中的RANK;確定需要分配的內(nèi)存大小,針對(duì)排列后的每個(gè)RANK依次執(zhí)行步驟A:A、采用伙伴系統(tǒng)(BUDDY)算法在屬于所述RANK的內(nèi)存塊組中查找可以分配的內(nèi)存塊組,如果存在可以分配的內(nèi)存塊組,則進(jìn)行分配,并記錄分配之后產(chǎn)生的新的內(nèi)存塊組所屬的RANK,結(jié)束當(dāng)前流程;如果不存在可以分配的內(nèi)存塊組,則針對(duì)下一RANK重復(fù)執(zhí)行步驟A,直至內(nèi)存塊組分配成功。本發(fā)明能夠使被分配的內(nèi)存塊組盡可能地屬于較少的RANK,從而便于內(nèi)存系統(tǒng)的功耗控制。
【專利說(shuō)明】—種內(nèi)存分配方法及裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計(jì)算機(jī)內(nèi)存管理【技術(shù)領(lǐng)域】,尤其涉及一種內(nèi)存分配方法及裝置。
【背景技術(shù)】
[0002]伙伴(BUDDY)系統(tǒng)算法,由于其優(yōu)秀的分配效率和反碎片特性,成為當(dāng)前Iinux內(nèi)存管理系統(tǒng)的經(jīng)典算法。它把內(nèi)存單元?jiǎng)澐殖闪硕鄠€(gè)塊組(Page Block),即free_area[(l...max_oder],各個(gè)塊組的大小以頁(yè)面(Page)為單位分別為2的O次冪到2的max_order次冪。例如:假使max_order=10,則各個(gè)塊組的大小分別為:1,2,4,8,…,1024。
[0003]每個(gè)大小相同的塊組,用鏈表鏈接起來(lái)進(jìn)行管理。當(dāng)需要分配內(nèi)存的時(shí)候,系統(tǒng)會(huì)從最接近且不小于所要分配內(nèi)存的那個(gè)塊組中進(jìn)行分配,并將能夠剩余的部分拆分成更小的塊組進(jìn)行管理。如圖1為現(xiàn)有技術(shù)中伙伴系統(tǒng)算法的結(jié)構(gòu)示意圖。
[0004]例如:若需分配的內(nèi)存大小為6個(gè)頁(yè)面,則伙伴系統(tǒng)算法則會(huì)從大小為2的3次冪(大小為8)的塊組中獲取相應(yīng)內(nèi)存。
[0005]當(dāng)系統(tǒng)中的鄰近的塊組中沒(méi)有空閑的頁(yè)面可供進(jìn)行分配的時(shí)候,就會(huì)從更大一級(jí)的塊組中查找,把余下的內(nèi)存劃分成更小的塊組進(jìn)行管理。
[0006]例如:當(dāng)需分配的內(nèi)存大小為6個(gè)頁(yè)面,如果與其最接近的2的3次冪(大小為8)的塊組中沒(méi)有相應(yīng)的頁(yè)面可供分配,而若2的4次冪(大小為16)的塊組中有適合分配的頁(yè)面,則將優(yōu)先從該塊組進(jìn)行分配,并將剩余的頁(yè)面(大小為10)劃分為:8和2兩個(gè)塊組,分別插入2的3次冪,2的I次冪的塊組鏈表中進(jìn)行管理。
[0007]在內(nèi)存系統(tǒng)中經(jīng)常包括多 個(gè)內(nèi)存模組(RANK),系統(tǒng)中的內(nèi)存塊組分別屬于不同的RANK。現(xiàn)有的伙伴系統(tǒng)算法并不考慮這一特點(diǎn),在分配內(nèi)存塊組時(shí)沒(méi)有加以區(qū)分,使得各個(gè)RANK中內(nèi)存塊組在統(tǒng)計(jì)學(xué)上被分配到的概率相等,這種內(nèi)存分配方式不便于內(nèi)存系統(tǒng)的功耗控制。
【發(fā)明內(nèi)容】
[0008]本發(fā)明提供了一種內(nèi)存分配方法,能夠在分配內(nèi)存塊組時(shí),使被分配的內(nèi)存塊組盡可能地集中于較少的RANK,從而便于內(nèi)存系統(tǒng)的功耗控制。
[0009]本發(fā)明還提供了一種內(nèi)存分配裝置,能夠在分配內(nèi)存塊組時(shí),使被分配的內(nèi)存塊組盡可能地集中于較少的RANK,從而便于內(nèi)存系統(tǒng)的功耗控制。
[0010]本發(fā)明的技術(shù)方案是這樣實(shí)現(xiàn)的:
[0011]一種內(nèi)存分配方法,包括:
[0012]記錄每個(gè)內(nèi)存塊組所屬的RANK ;
[0013]按照最小空閑率優(yōu)先(Min Free)方式或近期最少使用(LRU)方式排列系統(tǒng)中的RANK ;
[0014]確定需要分配的內(nèi)存大小,針對(duì)排列后的每個(gè)RANK依次執(zhí)行步驟A:
[0015]A、采用BUDDY算法在屬于所述RANK的內(nèi)存塊組中查找可以分配的內(nèi)存塊組,如果存在可以分配的內(nèi)存塊組,則進(jìn)行分配,并記錄分配之后產(chǎn)生的新的內(nèi)存塊組所屬的RANK,結(jié)束當(dāng)前流程;如果不存在可以分配的內(nèi)存塊組,則針對(duì)下一 RANK重復(fù)執(zhí)行步驟A,直至內(nèi)存塊組分配成功。
[0016]上述方法可以進(jìn)一步包括:
[0017]檢測(cè)各個(gè)RANK所包含的內(nèi)存塊組的分配情況,如果RANK所包括的所有內(nèi)存塊組均為空閑,則將所述RANK的狀態(tài)設(shè)置為節(jié)能模式;否則,將該RANK的狀態(tài)設(shè)置為正常工作模式。
[0018]上述方法中,BUDDY算法為:查找與需要分配的內(nèi)存大小最接近并且不小于需要分配的內(nèi)存大小的內(nèi)存塊組,如果查找到,則采用該內(nèi)存塊組進(jìn)行分配,并將分配后剩余的部分劃分為新的內(nèi)存塊組。
[0019]上述方法中,按照Min free方式排列系統(tǒng)中的RANK可以為:按照利用率由大到小的順序排列RANK。
[0020]上述方法中,按照LRU方式排列系統(tǒng)中的RANK可以為:按照訪問(wèn)時(shí)間由近到遠(yuǎn)的順序排列RANK。
[0021]一種內(nèi)存分配裝置,包括:
[0022]內(nèi)存分配模塊,用于記錄每個(gè)內(nèi)存塊組所屬的RANK ;按照Min Free方式或LRU方式排列系統(tǒng)中的RANK ;確定需要分配的內(nèi)存大小,針對(duì)排列后的每個(gè)RANK依次執(zhí)行步驟A:A、采用伙伴系統(tǒng)BUDDY算法在屬于所述RANK的內(nèi)存塊組中查找可以分配的內(nèi)存塊組,如果存在可以分配的內(nèi)存塊組,則進(jìn)行分配,并記錄分配之后產(chǎn)生的新的內(nèi)存塊組所屬的RANK,結(jié)束當(dāng)前流程;如果不存在可以分配的內(nèi)存塊組,則針對(duì)下一 RANK重復(fù)執(zhí)行步驟A,直至內(nèi)存塊組分配成功。
[0023]上述裝置可以進(jìn)一步包括:
[0024]內(nèi)存使用檢測(cè)模塊,用于檢測(cè)各個(gè)RANK所包含的內(nèi)存塊組的分配情況,并將檢測(cè)結(jié)果通知內(nèi)存功耗調(diào)節(jié)模塊;
[0025]內(nèi)存功耗調(diào)節(jié)模塊,用于根據(jù)所述檢測(cè)結(jié)果,判斷RANK所包括的內(nèi)存塊組是否均為空閑,如果是,則將所述RANK的狀態(tài)設(shè)置為節(jié)能模式;否則,將該RANK的狀態(tài)設(shè)置為正常工作模式。
[0026]上述裝置中,伙伴系統(tǒng)算法為:查找與需要分配的內(nèi)存大小最接近并且不小于需要分配的內(nèi)存大小的內(nèi)存塊組,如果查找到,則采用該內(nèi)存塊組進(jìn)行分配,并將分配后剩余的部分劃分為新的內(nèi)存塊組。
[0027]上述裝置中,按照Min Free方式排列系統(tǒng)中的RANK可以為:按照利用率由大到小的順序排列RANK。
[0028]上述裝置中,按照LRU方式排列系統(tǒng)中的RANK可以為:按照訪問(wèn)時(shí)間由近到遠(yuǎn)的順序排列RANK。
[0029]可見(jiàn),本發(fā)明提出內(nèi)存分配方法和裝置,將系統(tǒng)中的各個(gè)RANK按照一定的順序排列,在分配內(nèi)存塊組時(shí),優(yōu)先分配順序靠前的RANK中的內(nèi)存塊組,從而使被分配的內(nèi)存塊組盡可能地集中于較少的RANK,便于內(nèi)存系統(tǒng)的功耗控制。
【專利附圖】
【附圖說(shuō)明】[0030]圖1為現(xiàn)有技術(shù)中伙伴系統(tǒng)算法的結(jié)構(gòu)示意圖;
[0031]圖2為本發(fā)明提出的內(nèi)存分配算法的結(jié)構(gòu)示意圖;
[0032]圖3為本發(fā)明提出的內(nèi)存分配裝置結(jié)構(gòu)示意圖;
[0033]圖4為采用本發(fā)明分配內(nèi)存的RANK空閑度對(duì)比結(jié)果示意圖。
【具體實(shí)施方式】
[0034]本發(fā)明提出一種內(nèi)存分配方法,使被分配的內(nèi)存塊組盡可能地屬于較少的RANK。本發(fā)明是對(duì)現(xiàn)有的伙伴系統(tǒng)算法的改進(jìn),稱為RANK敏感的伙伴系統(tǒng)算法(RS-BUDDY)。
[0035]如圖2為本發(fā)明提出的內(nèi)存分配算法的結(jié)構(gòu)示意圖。
[0036]本發(fā)明添加了一個(gè)記錄內(nèi)存塊組歸屬的空間,該空間存儲(chǔ)了內(nèi)存塊組所屬RANK信息。
[0037]按照最小空閑率優(yōu)先(Min Free)方式或者近期最少使用(LRU)方式排列系統(tǒng)中的RANK ;
[0038]其中,Min Free方式為:按照RANK利用率從大到小排列,其目的在于促使利用率最大的RANK優(yōu)先分配,從而使更多的RANK處于空閑狀態(tài)。
[0039]LRU方式為:按照最近使用的RANK排列,其目的在于充分挖掘訪存行為的局部性,在一段時(shí)間內(nèi)促使分配相對(duì)集中在固定的RANK內(nèi)。
[0040]按照上述排列的順序優(yōu)先從位置靠前的RANK中分配內(nèi)存塊組。首先查找第一個(gè)RANK中是否存在可以分配的內(nèi)存塊組,如果存在,則采用該內(nèi)存塊組進(jìn)行分配,并將分配剩余的部分劃分為新的內(nèi)存塊組,記錄新的內(nèi)存塊組所屬的RANK;如果不存在,則繼續(xù)查找第二個(gè)RANK,如果仍不存在則繼續(xù)查找第三個(gè)RANK,……,直至內(nèi)存塊組分配成功。
[0041]針對(duì)每一個(gè)RANK,分配內(nèi)存塊組的方式采用伙伴系統(tǒng)算法。
[0042]具體地,本發(fā)明提出的內(nèi)存分配方法可以包括:
[0043]記錄每個(gè)內(nèi)存塊組所屬的RANK ;
[0044]按照Min Free方式或LRU方式排列系統(tǒng)中的RANK ;
[0045]確定需要分配的內(nèi)存大小,針對(duì)排列后的每個(gè)RANK依次執(zhí)行步驟A:
[0046]A、采用伙伴系統(tǒng)算法在屬于所述RANK的內(nèi)存塊組中查找可以分配的內(nèi)存塊組,如果存在可以分配的內(nèi)存塊組,則進(jìn)行分配,并記錄分配之后產(chǎn)生的新的內(nèi)存塊組所屬的RANK,結(jié)束當(dāng)前流程;如果不存在可以分配的內(nèi)存塊組,則針對(duì)下一 RANK重復(fù)執(zhí)行步驟A,直至內(nèi)存塊組分配成功。
[0047]上述方法中,所述伙伴系統(tǒng)算法為:查找與需要分配的內(nèi)存大小最接近并且不小于需要分配的內(nèi)存大小的內(nèi)存塊組,如果查找到,則采用該內(nèi)存塊組進(jìn)行分配,并將分配后剩余的部分劃分為新的內(nèi)存塊組。
[0048]按照Min Free方式排列系統(tǒng)中的RANK為:按照利用率由大到小的順序排列RANK。
[0049]按照LRU方式排列系統(tǒng)中的RANK為:按照訪問(wèn)時(shí)間由近到遠(yuǎn)的順序排列RANK。
[0050]另外,在內(nèi)存塊組被分配成功之后,或者內(nèi)存塊組使用完畢被釋放之后,由于其所屬RANK的使用情況發(fā)生變化,因此需要按照Min Free方式或LRU方式重新排列系統(tǒng)中的RANK ;下次分配內(nèi)存塊組時(shí)按照新的順序進(jìn)行分配。
[0051]通過(guò)上述過(guò)程,可以保證被分配的內(nèi)存塊組集中于相對(duì)較少的RANK中。這樣,可以將未使用的RANK的狀態(tài)設(shè)置為節(jié)能模式,將使用的RANK的狀態(tài)設(shè)置為正常工作模式,從而節(jié)約內(nèi)存功耗。
[0052]具體地,上述方法可以進(jìn)一步包括:
[0053]檢測(cè)各個(gè)RANK所包含的內(nèi)存塊組的分配情況,如果RANK所包括的所有內(nèi)存塊組均為空閑,則將所述RANK的狀態(tài)設(shè)置為節(jié)能模式;否則,將該RANK的狀態(tài)設(shè)置為正常工作模式。
[0054]在具體實(shí)現(xiàn)時(shí),可以在內(nèi)存塊組被分配成功之后、或者內(nèi)存塊組使用完畢被釋放之后,檢測(cè)該內(nèi)存塊組所屬RANK的使用情況,如果該RANK由部分或全部?jī)?nèi)存塊組被分配轉(zhuǎn)變?yōu)槿績(jī)?nèi)存塊組空閑,則將該RANK的狀態(tài)由正常工作模式改變?yōu)楣?jié)能模式;如果該RANK由全部?jī)?nèi)存塊組空閑轉(zhuǎn)變?yōu)椴糠只蛉績(jī)?nèi)存塊組被分配,則將該RANK的狀態(tài)由節(jié)能模式改變?yōu)檎9ぷ髂J健?br>
[0055]本發(fā)明還提出一種內(nèi)存分配裝置,如圖3為該裝置結(jié)構(gòu)示意圖,包括:
[0056]內(nèi)存分配模塊301,用于記錄每個(gè)內(nèi)存塊組所屬的RANK ;按照Min Free方式或LRU方式排列系統(tǒng)中的RANK ;確定需要分配的內(nèi)存大小,針對(duì)排列后的每個(gè)RANK依次執(zhí)行步驟A:A、采用伙伴系統(tǒng)BUDDY算法在屬于所述RANK的內(nèi)存塊組中查找可以分配的內(nèi)存塊組,如果存在可以分配的內(nèi)存塊組,則進(jìn)行分配,并記錄分配之后產(chǎn)生的新的內(nèi)存塊組所屬的RANK,結(jié)束當(dāng)前流程;如果不存在可以分配的內(nèi)存塊組,則針對(duì)下一 RANK重復(fù)執(zhí)行步驟A,直至內(nèi)存塊組分配成功。
[0057]上述裝置可以進(jìn)一步包括:
[0058]內(nèi)存使用檢測(cè)模塊302,用于檢測(cè)各個(gè)RANK所包含的內(nèi)存塊組的分配情況,并將檢測(cè)結(jié)果通知內(nèi)存功耗調(diào)節(jié)模塊303 ;
[0059]內(nèi)存功耗調(diào)節(jié)模塊303,用于根據(jù)所述檢測(cè)結(jié)果,判斷RANK所包括的內(nèi)存塊組是否均為空閑,如果是,則將所述RANK的狀態(tài)設(shè)置為節(jié)能模式;否則,將該RANK的狀態(tài)設(shè)置為正常工作模式。
[0060]上述裝置中,伙伴系統(tǒng)算法為:查找與需要分配的內(nèi)存大小最接近并且不小于需要分配的內(nèi)存大小的內(nèi)存塊組,如果查找到,則采用該內(nèi)存塊組進(jìn)行分配,并將分配后剩余的部分劃分為新的內(nèi)存塊組。
[0061]上述裝置中,按照Min free方式排列系統(tǒng)中的RANK可以為:按照利用率由大到小的順序排列RANK。
[0062]上述裝置中,按照LRU方式排列系統(tǒng)中的RANK可以為:按照訪問(wèn)時(shí)間由近到遠(yuǎn)的順序排列RANK。
[0063]以上即為本發(fā)明提出的內(nèi)存分配的方法及裝置。以下使用多種benchmark本發(fā)明提出的方法進(jìn)行測(cè)試。包括:mibench中的automotive領(lǐng)域的bitcount、qsort ;consumer 令頁(yè)域的 lame>tiffmedian ;office 令頁(yè)域的 rsynth ;telecom 令頁(yè)域的 adpcm>fft ;以及security領(lǐng)域的sha ;與spec2000中的gzip與gcc,共計(jì)10種。
[0064]測(cè)試方法是使用本發(fā)明提出的RS-BUDDY算法運(yùn)行一段程序,在程序運(yùn)行一段時(shí)間后計(jì)算出當(dāng)前系統(tǒng)空閑RANK的數(shù)量,并對(duì)比使用RS-BUDDY算法相對(duì)普通的伙伴系統(tǒng)算法時(shí),空閑內(nèi)存RANK增加的比率。對(duì)實(shí)驗(yàn)數(shù)據(jù)進(jìn)行歸一化后,對(duì)比結(jié)果如圖4所示。
[0065]通過(guò)實(shí)驗(yàn)數(shù)據(jù)表明,RS-BUDDY算法對(duì)于大部分應(yīng)用,能夠有效提升RANK空閑度20%以上,有些應(yīng)用甚至能達(dá)到30%。
[0066]對(duì)于反碎片特性:
[0067]選取當(dāng)前比較通用的衡量碎片的標(biāo)準(zhǔn):
^^, , LareestBlockOfFreeManory
「00681 The average tragmentatton level = 1-----
T o talFr eelvfemor y
[0069]實(shí)驗(yàn)統(tǒng)計(jì)表明,本發(fā)明提出的RS-BUDDY算法相對(duì)現(xiàn)有的BUDDY算法而言,外部碎片相對(duì)變化率僅為0.1%。
[0070]對(duì)于功耗控制效果:
[0071]通過(guò)實(shí)驗(yàn)跟蹤內(nèi)存芯片的功耗表明:在使用本發(fā)明后,在S5PV310處理器平臺(tái),IGDDR內(nèi)存(4個(gè)RANK)的Linux系統(tǒng)進(jìn)行了開(kāi)機(jī)啟動(dòng)后運(yùn)行同樣的測(cè)試程序,經(jīng)測(cè)試發(fā)現(xiàn)系統(tǒng)的功耗節(jié)省可達(dá)18%。
[0072]綜上可見(jiàn),本發(fā)明提出的內(nèi)存分配方法及裝置,將系統(tǒng)中的各個(gè)RANK按照MinFree或LRU的方式排列,在分配內(nèi)存塊組時(shí),優(yōu)先分配順序靠前的RANK中的內(nèi)存塊組,從而使被分配的內(nèi)存塊組盡可能地屬于較少的RANK,便于內(nèi)存系統(tǒng)的功耗控制。當(dāng)RANK所包括的所有內(nèi)存塊組均空閑時(shí),可以將該RANK的狀態(tài)設(shè)置為節(jié)能模式,從而節(jié)約內(nèi)存功耗。
[0073]以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明保護(hù)的范圍之內(nèi)。
【權(quán)利要求】
1.一種內(nèi)存分配方法,其特征在于,所述方法包括: 記錄每個(gè)內(nèi)存塊組所屬的內(nèi)存模組RANK ; 按照最小空閑率優(yōu)先Min Free方式或近期最少使用LRU方式排列系統(tǒng)中的RANK ; 確定需要分配的內(nèi)存大小,針對(duì)排列后的每個(gè)RANK依次執(zhí)行步驟A: A、采用伙伴系統(tǒng)BUDDY算法在屬于所述RANK的內(nèi)存塊組中查找可以分配的內(nèi)存塊組,如果存在可以分配的內(nèi)存塊組,則進(jìn)行分配,并記錄分配之后產(chǎn)生的新的內(nèi)存塊組所屬的RANK,結(jié)束當(dāng)前流程;如果不存在可以分配的內(nèi)存塊組,則針對(duì)下一 RANK重復(fù)執(zhí)行步驟A,直至內(nèi)存塊組分配成功。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法進(jìn)一步包括: 檢測(cè)各個(gè)RANK所包含的內(nèi)存塊組的分配情況,如果RANK所包括的所有內(nèi)存塊組均為空閑,則將所述RANK的狀態(tài)設(shè)置為節(jié)能模式;否則,將該RANK的狀態(tài)設(shè)置為正常工作模式。
3.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,所述伙伴系統(tǒng)算法為:查找與需要分配的內(nèi)存大小最接近并且不小于需要分配的內(nèi)存大小的內(nèi)存塊組,如果查找到,則采用該內(nèi)存塊組進(jìn)行分配,并將分配后剩余的部分劃分為新的內(nèi)存塊組。
4.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,所述按照Minfree方式排列系統(tǒng)中的RANK為:按照利用率由大到小的順序排列RANK。
5.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,所述按照LRU方式排列系統(tǒng)中的RANK為:按照訪問(wèn)時(shí)間由近到遠(yuǎn)的順序排列RANK。
6.一種內(nèi)存分配裝置,其特征在于,所述裝置包括: 內(nèi)存分配模塊,用于記錄每個(gè)內(nèi)存塊組所屬的RANK ;按照最小空閑率優(yōu)先Min Free方式或近期最少使用LRU方式排列系統(tǒng)中的RANK ;確定需要分配的內(nèi)存大小,針對(duì)排列后的每個(gè)RANK依次執(zhí)行步驟A:A、采用伙伴系統(tǒng)BUDDY算法在屬于所述RANK的內(nèi)存塊組中查找可以分配的內(nèi)存塊組,如果存在可以分配的內(nèi)存塊組,則進(jìn)行分配,并記錄分配之后產(chǎn)生的新的內(nèi)存塊組所屬的RANK,結(jié)束當(dāng)前流程;如果不存在可以分配的內(nèi)存塊組,則針對(duì)下一 RANK重復(fù)執(zhí)行步驟A,直至內(nèi)存塊組分配成功。
7.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述裝置進(jìn)一步包括: 內(nèi)存使用檢測(cè)模塊,用于檢測(cè)各個(gè)RANK所包含的內(nèi)存塊組的分配情況,并將檢測(cè)結(jié)果通知內(nèi)存功耗調(diào)節(jié)模塊; 內(nèi)存功耗調(diào)節(jié)模塊,用于根據(jù)所述檢測(cè)結(jié)果,判斷RANK所包括的內(nèi)存塊組是否均為空閑,如果是,則將所述RANK的狀態(tài)設(shè)置為節(jié)能模式;否則,將該RANK的狀態(tài)設(shè)置為正常工作模式。
8.根據(jù)權(quán)利要求6或7所述的裝置,其特征在于,所述伙伴系統(tǒng)算法為:查找與需要分配的內(nèi)存大小最接近并且不小于需要分配的內(nèi)存大小的內(nèi)存塊組,如果查找到,則采用該內(nèi)存塊組進(jìn)行分配,并將分配后剩余的部分劃分為新的內(nèi)存塊組。
9.根據(jù)權(quán)利要求6或7所述的裝置,其特征在于,所述按照MinFree方式排列系統(tǒng)中的RANK為:按照利用率由大到小的順序排列RANK。
10.根據(jù)權(quán)利要求6或7所述的裝置,其特征在于,所述按照LRU方式排列系統(tǒng)中的RANK為:按照訪問(wèn)時(shí)間由近到遠(yuǎn)的順序排列RANK。
【文檔編號(hào)】G06F12/02GK103559137SQ201310292099
【公開(kāi)日】2014年2月5日 申請(qǐng)日期:2013年7月12日 優(yōu)先權(quán)日:2013年7月12日
【發(fā)明者】朱宗衛(wèi), 陳浩, 童碧峰 申請(qǐng)人:三星電子株式會(huì)社, 三星電子(中國(guó))研發(fā)中心, 中國(guó)科學(xué)技術(shù)大學(xué)蘇州研究院