一種內(nèi)存資源的管理方法、裝置及單板的制作方法
【專利摘要】本發(fā)明實(shí)施例公開了一種內(nèi)存資源的管理方法、裝置及單板,該方法包括:判斷狀態(tài)轉(zhuǎn)換周期是否到達(dá);當(dāng)所述狀態(tài)轉(zhuǎn)換周期到達(dá)時,將地址資源中的至少一個第一狀態(tài)地址資源池轉(zhuǎn)換為第二狀態(tài)地址資源池,并將至少一個第二狀態(tài)地址資源池轉(zhuǎn)換為第一狀態(tài)地址資源池,其中,所述地址資源包含內(nèi)存資源的內(nèi)存地址,所述第一狀態(tài)地址資源池用于釋放和分配地址資源,所述第二狀態(tài)地址資源池用于釋放地址資源。本發(fā)明實(shí)施例由于對地址資源按照劃分的地址資源池進(jìn)行分塊管理,以及對地址資源池進(jìn)行整體回收,因此每個周期需要維護(hù)的數(shù)據(jù)量變少,提高了內(nèi)存泄露的恢復(fù)速度,減少了通信設(shè)備的系統(tǒng)功耗,相應(yīng)提升了內(nèi)存管理性能。
【專利說明】一種內(nèi)存資源的管理方法、裝置及單板【技術(shù)領(lǐng)域】[0001]本發(fā)明涉及通信【技術(shù)領(lǐng)域】,特別涉及一種內(nèi)存資源的管理方法、裝置及單板?!颈尘凹夹g(shù)】[0002]內(nèi)存(M e m O r y )是通信設(shè)備中重要的部件之一,通信設(shè)備中所有程序均在內(nèi) 存中運(yùn)行。內(nèi)存也被稱為內(nèi)存儲器,用于暫時存放中央處理器(C e n t r a I Pro cessing Unit,CPU)中的運(yùn)算數(shù)據(jù),以及與硬盤等外部存儲器交換的數(shù) 據(jù)。內(nèi)存管理是指對通信設(shè)備內(nèi)存資源進(jìn)行分配和使用的技術(shù),其最主要的目的是在適當(dāng) 的時候?qū)?nèi)存資源進(jìn)行分配和釋放,內(nèi)存資源的分配和釋放與通信設(shè)備內(nèi)數(shù)據(jù)的寫入和讀 出的速率成正比。在管理內(nèi)存的過程中,如果為所運(yùn)行的某個程序分配的內(nèi)存資源在使用 完畢后未釋放,導(dǎo)致該內(nèi)存資源一直被占據(jù),直到該程序結(jié)束之前都無法分配給其它程序 使用,則稱為發(fā)生了內(nèi)存泄露,內(nèi)存泄露由于消耗了通信設(shè)備大量的系統(tǒng)內(nèi)存資源,因此可 能導(dǎo)致系統(tǒng)性能下降甚至癱瘓。[0003]為了防止內(nèi)存泄露,現(xiàn)有技術(shù)中采用設(shè)置時間戳的方式對內(nèi)存資源進(jìn)行強(qiáng)制回 收。具體來說,由通信設(shè)備內(nèi)的內(nèi)存管理單元(M e m ο r y Manage Uni t ,MMU)維護(hù)一張內(nèi)存管理表,該內(nèi)存管理表中的每個表項(xiàng)包括一個已分配的地址資源 和對應(yīng)的時間戳,當(dāng)某個地址資源被分配給某個報(bào)文時,設(shè)置該地址資源對應(yīng)的時間戳為 當(dāng)前時間,并標(biāo)記該地址資源為已分配;MM U定時遍歷該內(nèi)存管理表,對于標(biāo)注為已分配 的地址資源,MM U可以獲取對應(yīng)的時間戳與當(dāng)前時間進(jìn)行比較,如果二者的時間差超過 預(yù)設(shè)的生存周期,則MMU強(qiáng)制回收該地址資源。[0004]發(fā)明人在對現(xiàn)有技術(shù)的研究過程中發(fā)現(xiàn),現(xiàn)有技術(shù)雖然可以防止內(nèi)存泄露,但是 隨著網(wǎng)絡(luò)帶寬呈爆炸式增長,通信設(shè)備內(nèi)部數(shù)據(jù)的寫入和讀出操作也呈海量增長,MMU 所維護(hù)的內(nèi)存管理表就會變大,而為了強(qiáng)制回收地址資源所要遍歷的數(shù)據(jù)也相應(yīng)增加,由 此導(dǎo)致通信設(shè)備的內(nèi)存泄露恢復(fù)速度變慢,且會增加通信設(shè)備的功耗,導(dǎo)致通信設(shè)備的內(nèi) 存管理性能下降。
【發(fā)明內(nèi)容】
[0005]本發(fā)明實(shí)施例中提供了一種內(nèi)存資源的管理方法、裝置及單板,以解決現(xiàn)有防內(nèi) 存泄露方式會導(dǎo)致通信設(shè)備內(nèi)存管理性能下降的問題。[0006]為了解決上述技術(shù)問題,本發(fā)明實(shí)施例公開了如下技術(shù)方案:[0007]第一方面,提供一種內(nèi)存資源的管理方法,所述方法包括:[0008]判斷狀態(tài)轉(zhuǎn)換周期是否到達(dá);[0009]當(dāng)所述狀態(tài)轉(zhuǎn)換周期到達(dá)時,將地址資源中的至少一個第一狀態(tài)地址資源池轉(zhuǎn)換 為第二狀態(tài)地址資源池,并將至少一個第二狀態(tài)地址資源池轉(zhuǎn)換為第一狀態(tài)地址資源池, 其中,所述地址資源包含內(nèi)存資源的內(nèi)存地址,所述第一狀態(tài)地址資源池用于釋放和分配 地址資源,所述第二狀態(tài)地址資源池用于釋放地址資源。[0010]結(jié)合第一方面,在第一方面的第一種實(shí)現(xiàn)方式中,所述方法還包括:[0011]在所述判斷狀態(tài)轉(zhuǎn)換周期是否到達(dá)之前,將所述地址資源劃分為多個地址資源 池;[0012]為所述多個地址資源池中的地址資源池分別設(shè)置狀態(tài)屬性,所述多個地址資源池 中的地址資源池根據(jù)設(shè)置的狀態(tài)屬性分為第一狀態(tài)地址資源池和第二狀態(tài)地址資源池。[0013]結(jié)合第一方面,或第一方面的第一種實(shí)現(xiàn)方式,在第一方面的第二種實(shí)現(xiàn)方式中, 所述將至少一個第二狀態(tài)地址資源池轉(zhuǎn)換為第一狀態(tài)地址資源池具體包括:[0014]回收至少一個第二狀態(tài)地址資源池的地址資源,并將地址資源被回收的所述至少 一個第二狀態(tài)地址資源池轉(zhuǎn)換為第一狀態(tài)地址資源池。[0015]結(jié)合第一方面,或第一方面的第一種實(shí)現(xiàn)方式,或第一方面的第二種實(shí)現(xiàn)方式,在 第一方面的第三種實(shí)現(xiàn)方式中,所述第二狀態(tài)地址資源池包括:至少一個第三狀態(tài)地址資 源池,和除所述第三狀態(tài)地址資源池的第四狀態(tài)地址資源池;[0016]所述將地址資源中的至少一個第一狀態(tài)地址資源池轉(zhuǎn)換為第二狀態(tài)地址資源池, 并將至少一個第二狀態(tài)地址資源池轉(zhuǎn)換為第一狀態(tài)地址資源池,具體包括:將一個第一狀 態(tài)地址資源池轉(zhuǎn)換為第四狀態(tài)地址資源池,并將一個第三狀態(tài)地址資源池轉(zhuǎn)換為第一狀態(tài) 地址資源池;[0017]所述方法還包括:將一個第四狀態(tài)地址資源池轉(zhuǎn)換為第三狀態(tài)地址資源池。[0018]結(jié)合第一方面,或第一方面的第一種實(shí)現(xiàn)方式,或第一方面的第二種實(shí)現(xiàn)方式,或 第一方面的第三種實(shí)現(xiàn)方式,在第一方面的第四種實(shí)現(xiàn)方式中,所述方法還包括:[0019]當(dāng)接收到報(bào)文時,獲取第一狀態(tài)地址資源池;[0020]從所述第一狀態(tài)地址資源池的空閑內(nèi)存地址中為所述報(bào)文分配內(nèi)存地址;[0021]將所述報(bào)文寫入與所分配的內(nèi)存地址對應(yīng)的內(nèi)存空間中。[0022]結(jié)合第一方面,或第一方面的第一種實(shí)現(xiàn)方式,或第一方面的第二種實(shí)現(xiàn)方式,或 第一方面的第三種實(shí)現(xiàn)方式,或第一方面的第四種實(shí)現(xiàn)方式,在第一方面的第五種實(shí)現(xiàn)方 式中,所述狀態(tài)轉(zhuǎn)換周期為使用一個地址資源池對應(yīng)的內(nèi)存資源需要的平均時間。[0023]第二方面,提供一種內(nèi)存資源的管理裝置,其特征在于,所述裝置包括:[0024]判斷單元,用于判斷狀態(tài)轉(zhuǎn)換周期是否到達(dá);[0025]轉(zhuǎn)換單元,用于當(dāng)所述判斷單元的判斷結(jié)果為狀態(tài)轉(zhuǎn)換周期到達(dá)時,將地址資源 中的至少一個第一狀態(tài)地址資源池轉(zhuǎn)換為第二狀態(tài)地址資源池,并將至少一個第二狀態(tài)地 址資源池轉(zhuǎn)換為第一狀態(tài)地址資源池,其中,所述地址資源包含所述內(nèi)存資源的內(nèi)存地址, 所述第一狀態(tài)地址資源池用于釋放和分配地址資源,所述第二狀態(tài)地址資源池用于釋放地 址資源。[0026]結(jié)合第二方面,在第二方面的第一種實(shí)現(xiàn)方式中,所述裝置還包括:[0027]劃分單元,用于將所述地址資源劃分為多個地址資源池;[0028]設(shè)置單元,用于為所述劃分單元劃分的多個地址資源池中的地址資源池分別設(shè)置 狀態(tài)屬性,所述多個地址資源池中的地址資源池根據(jù)設(shè)置的狀態(tài)屬性分為所述第一狀態(tài)地 址資源池和所述第二狀態(tài)地址資源池。[0029]結(jié)合第二方面,或第二方面的第一種實(shí)現(xiàn)方式,在第二方面的第二種實(shí)現(xiàn)方式中, 所述轉(zhuǎn)換單元包括:[0030]資源回收子單元,用于回收至少一個第二狀態(tài)地址資源池的地址資源;[0031]狀態(tài)轉(zhuǎn)換子單元,用于將地址資源被所述資源回收子單元回收的所述至少一個第 二狀態(tài)地址資源池轉(zhuǎn)換為第一狀態(tài)地址資源池。[0032]結(jié)合第二方面,或第二方面的第一種實(shí)現(xiàn)方式,或第二方面的第二種實(shí)現(xiàn)方式,在 第二方面的第三種實(shí)現(xiàn)方式中,所述第二狀態(tài)地址資源池包括:至少一個第三狀態(tài)地址資 源池,和除所述第三狀態(tài)地址資源池的第四狀態(tài)地址資源池;[0033]所述轉(zhuǎn)換單元,具體用于將一個第一狀態(tài)地址資源池轉(zhuǎn)換為第四狀態(tài)地址資源 池,并將一個第三狀態(tài)地址資源池轉(zhuǎn)換為第一狀態(tài)地址資源池;[0034]所述轉(zhuǎn)換單元,還用于將一個第四狀態(tài)地址資源池轉(zhuǎn)換為第三狀態(tài)地址資源池。[0035]結(jié)合第二方面,或第二方面的第一種實(shí)現(xiàn)方式,或第二方面的第二種實(shí)現(xiàn)方式,或 第二方面的第三種實(shí)現(xiàn)方式,在第二方面的第四種實(shí)現(xiàn)方式中,所述裝置還包括:[0036]獲取單元,用于當(dāng)接收到報(bào)文時,獲取第一狀態(tài)地址資源池;[0037]分配單元,用于從所述獲取單元獲取的第一狀態(tài)地址資源池的空閑內(nèi)存地址中為 所述報(bào)文分配內(nèi)存地址;[0038]寫入單元,用于將所述報(bào)文寫入與所述分配單元分配的內(nèi)存地址對應(yīng)的內(nèi)存空間 中。[0039]第三方面,提供一種單板,所述單板包括:存儲器和與所述存儲器連接的可編程電 路器件,其中,[0040]所述存儲器,用于提供內(nèi)存資源,所述內(nèi)存資源的內(nèi)存地址組成地址資源;[0041]所述可編程電路器件,用于判斷狀態(tài)轉(zhuǎn)換周期是否到達(dá),當(dāng)所述狀態(tài)轉(zhuǎn)換周期到 達(dá)時,將地址資源中的至少一個第一狀態(tài)地址資源池轉(zhuǎn)換為第二狀態(tài)地址資源池,并將至 少一個第二狀態(tài)地址資源池轉(zhuǎn)換為第一狀態(tài)地址資源池,其中,所述地址資源包含內(nèi)存資 源的內(nèi)存地址,所述第一狀態(tài)地址資源池用于釋放和分配地址資源,所述第二狀態(tài)地址資 源池用于釋放地址資源。[0042]結(jié)合第三方面,在第三方面的第一種實(shí)現(xiàn)方式中,所述可編程電路器件,還用于將 所述地址資源劃分為多個地址資源池,為所述多個地址資源池中的地址資源池分別設(shè)置狀 態(tài)屬性,所述多個地址資源池中的地址資源池根據(jù)設(shè)置的狀態(tài)屬性分為第一狀態(tài)地址資源 池和第二狀態(tài)地址資源池。[0043]結(jié)合第三方面,或第三方面的第一種實(shí)現(xiàn)方式,在第三方面的第二種實(shí)現(xiàn)方式中, 所述可編程電路器件,具體用于回收至少一個第二狀態(tài)地址資源池的地址資源,并將地址 資源被回收的所述至少一個第二狀態(tài)地址資源池轉(zhuǎn)換為第一狀態(tài)地址資源池。[0044]結(jié)合第三方面,或第三方面的第一種實(shí)現(xiàn)方式,或第三方面的第二種實(shí)現(xiàn)方式,在 第三方面的第三種實(shí)現(xiàn)方式中,所述第二狀態(tài)地址資源池包括:至少一個第三狀態(tài)地址資 源池,和除所述第三狀態(tài)地址資源池的第四狀態(tài)地址資源池;[0045]所述可編程電路器件,具體用于將一個第一狀態(tài)地址資源池轉(zhuǎn)換為第四狀態(tài)地址 資源池,并將一個第三狀態(tài)地址資源池轉(zhuǎn)換為第一狀態(tài)地址資源池;[0046]所述可編程電路器件,還用于將一個第四狀態(tài)地址資源池轉(zhuǎn)換為第三狀態(tài)地址資 源池。[0047]結(jié)合第三方面,或第三方面的第一種實(shí)現(xiàn)方式,或第三方面的第二種實(shí)現(xiàn)方式,或第三方面的第三種實(shí)現(xiàn)方式,在第三方面的第四種實(shí)現(xiàn)方式中,所述單板還包括:分別與所 述存儲器和可編程電路器件連接的處理器,[0048]所述可編程電路器件,還用于當(dāng)接收到報(bào)文時,獲取第一狀態(tài)地址資源池,從所述 第一狀態(tài)地址資源池的空閑內(nèi)存地址中為所述報(bào)文分配內(nèi)存地址,并將所述報(bào)文寫入所述 存儲器上與所分配的內(nèi)存地址對應(yīng)的內(nèi)存空間中;[0049]所述處理器,用于從所述內(nèi)存空間中讀取所述報(bào)文。[0050]本發(fā)明實(shí)施例中,判斷狀態(tài)轉(zhuǎn)換周期是否到達(dá),當(dāng)狀態(tài)轉(zhuǎn)換周期到達(dá)時,將地址資 源中的至少一個第一狀態(tài)地址資源池轉(zhuǎn)換為第二狀態(tài)地址資源池,并將至少一個第二狀態(tài) 地址資源池轉(zhuǎn)換為第一狀態(tài)地址資源池,第一狀態(tài)地址資源池用于釋放和分配地址資源, 第二狀態(tài)地址資源池用于釋放地址資源。應(yīng)用本發(fā)明實(shí)施例,與現(xiàn)有按照周期對每個地址 資源進(jìn)行遍歷來決定是否強(qiáng)制回收相比,由于對地址資源按照劃分的地址資源池進(jìn)行分塊 管理,將地址資源分為至少一個第一狀態(tài)地址資源池和至少一個第二狀態(tài)地址資源池,并 在狀態(tài)轉(zhuǎn)換周期達(dá)到時,以地址資源池為單位,僅需對至少一個第二狀態(tài)地質(zhì)資源池進(jìn)行 整體回收,以將至少一個第二狀態(tài)地址資源池轉(zhuǎn)換為可用于分配地址資源的第一狀態(tài)地址 資源池,因此每個周期需要維護(hù)的地址資源數(shù)量變少,由此提高了內(nèi)存泄露的恢復(fù)速度,減 少了通信設(shè)備的系統(tǒng)功耗,相應(yīng)提升了內(nèi)存管理性能?!緦@綀D】
【附圖說明】[0051]為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實(shí)施例或現(xiàn) 有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,對于本領(lǐng)域普通技術(shù)人員而 言,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。[0052]圖1為本發(fā)明內(nèi)存資源的管理方法的一個實(shí)施例流程圖;[0053]圖2為本發(fā)明內(nèi)存資源的管理方法的另一個實(shí)施例流程圖;[0054]圖3為本發(fā)明內(nèi)存資源的管理裝置的一個實(shí)施例框圖;[0055]圖4為本發(fā)明內(nèi)存資源的管理裝置的另一個實(shí)施例框圖;[0056]圖5為本發(fā)明內(nèi)存資源的管理裝置的另一個實(shí)施例框圖;[0057]圖6為本發(fā)明單板的實(shí)施例框圖;[0058]圖7 A為應(yīng)用本發(fā)明實(shí)施例的一個單板架構(gòu)示意圖;[0059]圖7 B為圖7 A所示單板進(jìn)行內(nèi)存資源管理時地址資源池的狀態(tài)轉(zhuǎn)換示意圖。 【具體實(shí)施方式】[0060]為了使本【技術(shù)領(lǐng)域】的人員更好地理解本發(fā)明實(shí)施例中的技術(shù)方案,并使本發(fā)明實(shí) 施例的上述目的、特征和優(yōu)點(diǎn)能夠更加明顯易懂,下面結(jié)合附圖對本發(fā)明實(shí)施例中技術(shù)方 案作進(jìn)一步詳細(xì)的說明。[0061]參見圖1,為本發(fā)明內(nèi)存資源的管理方法的一個實(shí)施例流程圖:[0062]步驟101:判斷狀態(tài)轉(zhuǎn)換周期是否到達(dá)。[0063]內(nèi)存資源管理是指對內(nèi)存資源進(jìn)行分配和使用的技術(shù),其最主要的目的是在適當(dāng) 的時候?qū)?nèi)存資源進(jìn)行分配和釋放。內(nèi)存資源通常由若干內(nèi)存空間組成,每個內(nèi)存空間對 應(yīng)一個內(nèi)存地址,所有內(nèi)存地址組成地址資源,對內(nèi)存資源的管理可以等同于對地址資源的管理,通過內(nèi)存地址可以找到對應(yīng)的內(nèi)存空間,從而通過內(nèi)存空間進(jìn)行報(bào)文讀寫操作。[0064]本實(shí)施例中,可以將地址資源劃分為多個地址資源池,并為地址資源池設(shè)置狀態(tài), 包括第一狀態(tài)地址資源池和第二狀態(tài)地址資源池。其中,第一狀態(tài)地址資源池用于釋放和 分配地址資源,第二狀態(tài)地址資源池用于釋放地址資源,即第一狀態(tài)地址資源池中的內(nèi)存 地址可以分配和釋放,而第二狀態(tài)地址資源池中的內(nèi)存地址僅能夠釋放,但不能分配。[0065]為了對地址資源實(shí)現(xiàn)分塊管理,本實(shí)施例中設(shè)置了狀態(tài)轉(zhuǎn)換周期,狀態(tài)轉(zhuǎn)換周期 為使用一個地址資源池對應(yīng)的內(nèi)存資源需要的平均時間,以此保證每個狀態(tài)轉(zhuǎn)換周期內(nèi), 至少一個地址資源池對應(yīng)的內(nèi)存資源可以提供給整個操作系統(tǒng)使用,從而可以在每個狀態(tài) 轉(zhuǎn)換周期內(nèi),通過將該至少一個地址資源池作為第一狀態(tài)地址資源池,用于釋放和分配地 址資源即可。[0066]步驟102:當(dāng)狀態(tài)轉(zhuǎn)換周期到達(dá)時,將地址資源中的至少一個第一狀態(tài)地址資源 池轉(zhuǎn)換為第二狀態(tài)地址資源池,并將至少一個第二狀態(tài)地址資源池轉(zhuǎn)換為第一狀態(tài)地址資 源池。[0067]本實(shí)施例中,根據(jù)狀態(tài)轉(zhuǎn)換周期的判斷結(jié)果,在每個狀態(tài)轉(zhuǎn)換周期到達(dá)時,可以按 照地址資源池的劃分順序,將第一狀態(tài)地址資源池中排在最前的至少一個第一狀態(tài)地址資 源池,即將處于第一狀態(tài)時間最長的至少一個第一狀態(tài)地址資源池轉(zhuǎn)換為第二狀態(tài)地址資 源池,以及將第二狀態(tài)地址資源池中排在最前的至少一個第二狀態(tài)地址資源池,即將處于 第二狀態(tài)時間最長的至少一個第二狀態(tài)地址資源池的地址資源進(jìn)行回收,并將該至少一個 第二狀態(tài)地址資源池轉(zhuǎn)換為第一狀態(tài)地址資源池。其中,在每個狀態(tài)轉(zhuǎn)換周期內(nèi),第一狀態(tài) 地址資源池的數(shù)量和第二狀態(tài)地址資源池的數(shù)量可以保持不變,以此經(jīng)過若干狀態(tài)轉(zhuǎn)換周 期,每個地址資源池都可以轉(zhuǎn)換為第一狀態(tài)地址資源池,從而使其地址資源被強(qiáng)制回收。進(jìn) 一步,第二狀態(tài)地址資源池的數(shù)量與狀態(tài)轉(zhuǎn)換周期相乘獲得的時間不小于系統(tǒng)預(yù)設(shè)的內(nèi)存 地址的強(qiáng)制回收時間。[0068]由上述實(shí)施例可見,該實(shí)施例由于對地址資源按照劃分的地址資源池進(jìn)行分塊管 理,將地址資源分為至少一個第一狀態(tài)地址資源池和至少一個第二狀態(tài)地址資源池,并在 狀態(tài)轉(zhuǎn)換周期達(dá)到時,以地址資源池為單位,僅需對至少一個第二狀態(tài)地質(zhì)資源池進(jìn)行整 體回收,以將至少一個第二狀態(tài)地址資源池轉(zhuǎn)換為可用于分配地址資源的第一狀態(tài)地址資 源池,因此每個周期需要維護(hù)的地址資源數(shù)量變少,由此提高了內(nèi)存泄露的恢復(fù)速度,減少 了通信設(shè)備的系統(tǒng)功耗,相應(yīng)提升了內(nèi)存管理性能。[0069]參見圖2,為本發(fā)明內(nèi)存資源的管理方法的另一個實(shí)施例流程圖:[0070]步驟201:將地址資源劃分為多個地址資源池。[0071]內(nèi)存資源管理是指對內(nèi)存資源進(jìn)行分配和使用的技術(shù),其最主要的目的是在適當(dāng) 的時候?qū)?nèi)存資源進(jìn)行分配和釋放。內(nèi)存資源通常由若干內(nèi)存空間組成,每個內(nèi)存空間對 應(yīng)一個內(nèi)存地址,所有內(nèi)存地址組成地址資源,對內(nèi)存資源的管理可以等同于對地址資源 的管理,通過內(nèi)存地址可以找到對應(yīng)的內(nèi)存空間,從而通過內(nèi)存空間進(jìn)行報(bào)文讀寫操作。[0072]通常地址資源包含的內(nèi)存地址是連續(xù)的,本實(shí)施例中在將地址資源劃分為多個地 址資源池時,可以按照內(nèi)存地址的順序劃分地址資源池。例如,假設(shè)共有O至N * S — I個 內(nèi)存地址,N和S均為自然數(shù),則可以將每S個內(nèi)存地址劃分為一個地址資源池,相應(yīng)可以 劃分出N個地址資源池,即第一個地址資源池中包含的內(nèi)存地址為內(nèi)存地址O至內(nèi)存地址S-1,第二個地址資源池中包含的內(nèi)存地址為內(nèi)存地址S至內(nèi)存地址2 S — 1,以此類推, 第N個地址資源池中包含的內(nèi)存地址為內(nèi)存地址(N — I) * S至內(nèi)存地址N* S-10[0073]步驟202:為多個地址資源池中的地址資源池分別設(shè)置狀態(tài)屬性,然后分別執(zhí)行 步驟203和步驟206。[0074]本步驟中,可以將劃分的多個地址資源池中的地址資源池設(shè)置為第一狀態(tài)地址資 源池和第二狀態(tài)地址資源池,其中,第一狀態(tài)地址資源池用于釋放和分配地址資源,第二狀 態(tài)地址資源池用于釋放地址資源,即第一狀態(tài)地址資源池中的內(nèi)存地址可以分配和釋放, 而第二狀態(tài)地址資源池中的內(nèi)存地址僅能夠釋放,但不能分配。優(yōu)選的,第二狀態(tài)地址資源 池可以進(jìn)一步包括至少一個第三狀態(tài)地址資源池,和除第三狀態(tài)地址資源池的第四狀態(tài)地 址資源池。[0075]步驟203:判斷狀態(tài)轉(zhuǎn)換周期是否到達(dá),若是,則執(zhí)行步驟204;否則,返回步驟 203。[0076]為了對地址資源實(shí)現(xiàn)分塊管理,本實(shí)施例中設(shè)置了狀態(tài)轉(zhuǎn)換周期,狀態(tài)轉(zhuǎn)換周期 為使用一個地址資源池對應(yīng)的內(nèi)存資源需要的平均時間,以此保證每個狀態(tài)轉(zhuǎn)換周期內(nèi), 至少一個地址資源池對應(yīng)的內(nèi)存資源可以提供給整個系統(tǒng)使用,從而可以在每個狀態(tài)轉(zhuǎn)換 周期內(nèi),通過將該至少一個地址資源池作為第一狀態(tài)地址資源池,用于釋放和分配地址資 源即可。[0077]結(jié)合步驟202中地址資源池的狀態(tài)設(shè)置,可以將第三狀態(tài)地址資源池作為每個狀 態(tài)轉(zhuǎn)換周期系統(tǒng)強(qiáng)制回收的地址資源池,該第三狀態(tài)地址資源池的個數(shù)優(yōu)選為一個。本實(shí) 施例中,假設(shè)初始時,將N個地址資源池中的地址資源池O至地址資源池η — I設(shè)置為第四 狀態(tài)地址資源池,將地址資源池η至地址資源池N — 2設(shè)置為第一狀態(tài)地址資源池,將地 址資源池N—I設(shè)置為第三狀態(tài)地址資源池。[0078]步驟204:將一個第一狀態(tài)地址資源池轉(zhuǎn)換為第四狀態(tài)地址資源池,將一個第四 狀態(tài)地址資源池轉(zhuǎn)換為第三狀態(tài)地址資源池。[0079]步驟205:回收一個第三狀態(tài)地址資源池,并將該一個第三狀態(tài)地址資源池轉(zhuǎn)換 為第一狀態(tài)地址資源池,返回步驟203。[0080]當(dāng)每個狀態(tài)轉(zhuǎn)換周期到達(dá)時,可以按照地址資源池的劃分順序,將排在最前的一 個第一狀態(tài)地址資源池,即處于第一狀態(tài)時間最長的第一狀態(tài)地址資源池轉(zhuǎn)換為第四狀態(tài) 地址資源池,將排在最前的一個第四狀態(tài)地址資源池,即處于第四狀態(tài)時間最長的第四狀 態(tài)地址資源池轉(zhuǎn)換為第三狀態(tài)地址資源池,以及排在最前的一個第三狀態(tài)地址資源池,即 處于第三狀態(tài)時間最長的第三狀態(tài)地址資源池的地址資源進(jìn)行回收,并將該第三狀態(tài)地址 資源池轉(zhuǎn)換為第一狀態(tài)地址資源池。本實(shí)施例中,在每個狀態(tài)轉(zhuǎn)換周期內(nèi),第一狀態(tài)地址資 源池的數(shù)量、第三狀態(tài)地址資源池的數(shù)量以及第四狀態(tài)地址資源池的數(shù)量可以保持不變, 以此經(jīng)過若干狀態(tài)轉(zhuǎn)換周期,每個地址資源池都可以轉(zhuǎn)換為第一狀態(tài)地址資源池,從而使 其地址資源被強(qiáng)制回收。[0081]按照步驟203中的地址資源池的初始狀態(tài)設(shè)置,當(dāng)?shù)谝粋€狀態(tài)轉(zhuǎn)換周期到達(dá)時, 可以將地址資源池O從第四狀態(tài)地址資源池轉(zhuǎn)換為第三狀態(tài)地址資源池,將地址資源池η 從第一狀態(tài)地址資源池轉(zhuǎn)換為第四狀態(tài)地址資源池,以及將地址資源池N — I從第三狀態(tài) 地址資源池轉(zhuǎn)換為第一狀態(tài)地址資源池,并強(qiáng)制回收地址資源池N — I的所有地址資源,以便在下一個狀態(tài)轉(zhuǎn)換周期,該地址資源池N — I的地址資源可以進(jìn)行分配。[0082]步驟206:判斷是否接收到報(bào)文,若是,則執(zhí)行步驟207 ;否則,返回步驟206。[0083]步驟207:獲取第一狀態(tài)地址資源池,并從第一狀態(tài)地址資源池的空閑內(nèi)存地址 中為該報(bào)文分配內(nèi)存地址。[0084]由于地址資源池中僅有第一狀態(tài)地址資源池可以分配地址資源,因此當(dāng)接收到報(bào) 文時,可以獲取第一狀態(tài)地址資源池。本實(shí)施例中,可以為第一狀態(tài)地址資源池的起始地址 資源池設(shè)置標(biāo)記,在每個狀態(tài)轉(zhuǎn)換周期,根據(jù)第一狀態(tài)地址資源池的起始位置的變化,將標(biāo) 記順序移動即可,當(dāng)接收到報(bào)文時,可以根據(jù)該標(biāo)記定位到第一狀態(tài)地址資源池的起始位 置,從而獲得第一狀態(tài)地址資源池,并從中獲得一個空閑的內(nèi)存地址分配給報(bào)文即可。[0085]步驟208:將報(bào)文寫入與所分配的內(nèi)存地址對應(yīng)的內(nèi)存空間中,返回步驟206。[0086]由于每個內(nèi)存地址對應(yīng)內(nèi)存資源中的一個內(nèi)存空間,因此當(dāng)分配了一個空閑的內(nèi) 存地址后,可以按照該內(nèi)存地址將報(bào)文寫入對應(yīng)的內(nèi)存空間。[0087]由上述實(shí)施例可見,該實(shí)施例由于對地址資源按照劃分的地址資源池進(jìn)行分塊管 理,將地址資源分為至少一個第一狀態(tài)地址資源池和至少一個第二狀態(tài)地址資源池,并在 狀態(tài)轉(zhuǎn)換周期達(dá)到時,以地址資源池為單位,僅需對至少一個第二狀態(tài)地質(zhì)資源池進(jìn)行整 體回收,以將至少一個第二狀態(tài)地址資源池轉(zhuǎn)換為可用于分配地址資源的第一狀態(tài)地址資 源池,因此每個周期需要維護(hù)的地址資源數(shù)量變少,由此提高了內(nèi)存泄露的恢復(fù)速度,減少 了通信設(shè)備的系統(tǒng)功耗,相應(yīng)提升了內(nèi)存管理性能。[0088]與本發(fā)明內(nèi)存資源的管理方法的實(shí)施例相對應(yīng),本發(fā)明還提供了內(nèi)存資源的管理 裝置及單板的實(shí)施例。[0089]參見圖3,為本發(fā)明內(nèi)存資源的管理裝置的一個實(shí)施例框圖:[0090]該裝置包括:判斷單元310和轉(zhuǎn)換單元320。[0091]其中,判斷單元310,用于判斷狀態(tài)轉(zhuǎn)換周期是否到達(dá);[0092]轉(zhuǎn)換單元320,用于當(dāng)判斷單元310的判斷結(jié)果為狀態(tài)轉(zhuǎn)換周期到達(dá)時,將地址資 源中的至少一個第一狀態(tài)地址資源池轉(zhuǎn)換為第二狀態(tài)地址資源池,并將至少一個第二狀態(tài) 地址資源池轉(zhuǎn)換為第一狀態(tài)地址資源池,其中,地址資源包含內(nèi)存資源的內(nèi)存地址,第一狀 態(tài)地址資源池用于釋放和分配地址資源,第二狀態(tài)地址資源池用于釋放地址資源。[0093]其中,轉(zhuǎn)換單元320可以包括(圖3中未示出):[0094]資源回收子單元,用于回收至少一個第二狀態(tài)地址資源池的地址資源;[0095]狀態(tài)轉(zhuǎn)換子單元,用于將地址資源被資源回收子單元回收的至少一個第二狀態(tài)地 址資源池轉(zhuǎn)換為第一狀態(tài)地址資源池。[0096]參見圖4,為本發(fā)明內(nèi)存資源的管理裝置的另一個實(shí)施例框圖:[0097]該裝置包括:劃分單元410、設(shè)置單元420、判斷單元430和轉(zhuǎn)換單元440。[0098]其中,劃分單元410,用于將地址資源劃分為多個地址資源池;[0099]設(shè)置單元420,用于為劃分單元410劃分的多個地址資源池中的地址資源池分別 設(shè)置狀態(tài)屬性,該多個地址資源池中的地址資源池根據(jù)設(shè)置的狀態(tài)屬性分為第一狀態(tài)地址 資源池和第二狀態(tài)地址資源池,其中,地址資源包含內(nèi)存資源的內(nèi)存地址,第二狀態(tài)地址 資源池包括至少一個第三狀態(tài)地址資源池,和除第三狀態(tài)地址資源池的第四狀態(tài)地址資源 池,第一狀態(tài)地址資源池用于釋放和分配地址資源,第二狀態(tài)地址資源池用于釋放地址資源;[0100]判斷單元430,用于判斷狀態(tài)轉(zhuǎn)換周期是否到達(dá);[0101]轉(zhuǎn)換單元440,用于當(dāng)判斷單元430的判斷結(jié)果為狀態(tài)轉(zhuǎn)換周期到達(dá)時,將一個第 一狀態(tài)地址資源池轉(zhuǎn)換為第四狀態(tài)地址資源池,將一個第三狀態(tài)地址資源池轉(zhuǎn)換為第一狀 態(tài)地址資源池,并將一個第四狀態(tài)地址資源池轉(zhuǎn)換為第三狀態(tài)地址資源池。[0102]其中,轉(zhuǎn)換單元440可以包括(圖4中未示出):[0103]資源回收子單元,用于回收一個第三狀態(tài)地址資源池的地址資源;[0104]狀態(tài)轉(zhuǎn)換子單元,用于將地址資源被資源回收子單元回收的一個第三狀態(tài)地址資 源池轉(zhuǎn)換為第一狀態(tài)地址資源池。[0105]參見圖5,為本發(fā)明內(nèi)存資源的管理裝置的另一個實(shí)施例框圖:[0106]該裝置包括:判斷單元510、轉(zhuǎn)換單元520、獲取單元530、分配單元540和寫入單 元 550。[0107]其中,判斷單元510,用于判斷狀態(tài)轉(zhuǎn)換周期是否到達(dá);[0108]轉(zhuǎn)換單元520,用于當(dāng)判斷單元510的判斷結(jié)果為狀態(tài)轉(zhuǎn)換周期到達(dá)時,將地址資 源中的至少一個第一狀態(tài)地址資源池轉(zhuǎn)換為第二狀態(tài)地址資源池,并將至少一個第二狀態(tài) 地址資源池轉(zhuǎn)換為第一狀態(tài)地址資源池,其中,地址資源包含內(nèi)存資源的內(nèi)存地址,第一狀 態(tài)地址資源池用于釋放和分配地址資源,第二狀態(tài)地址資源池用于釋放地址資源;[0109]獲取單元530,用于當(dāng)接收到報(bào)文時,獲取第一狀態(tài)地址資源池;[0110]分配單元540,用于從獲取單元530獲取的第一狀態(tài)地址資源池的空閑內(nèi)存地址 中為報(bào)文分配內(nèi)存地址;[0111]寫入單元550,用于將報(bào)文寫入與分配單元540分配的內(nèi)存地址對應(yīng)的內(nèi)存空間中。[0112]其中,轉(zhuǎn)換單元520可以包括(圖5中未示出):[0113]資源回收子單元,用于回收至少一個第二狀態(tài)地址資源池的地址資源;[0114]狀態(tài)轉(zhuǎn)換子單元,用于將地址資源被資源回收子單元回收的至少一個第二狀態(tài)地 址資源池轉(zhuǎn)換為第一狀態(tài)地址資源池。[0115]參見圖6,為本發(fā)明單板的實(shí)施例框圖:[0116]該單板包括:存儲器610和與存儲器610連接的可編程電路器件620。[0117]其中,存儲器610,用于提供內(nèi)存資源,內(nèi)存資源的內(nèi)存地址組成地址資源;[0118]可編程電路器件620,用于判斷狀態(tài)轉(zhuǎn)換周期是否到達(dá),當(dāng)狀態(tài)轉(zhuǎn)換周期到達(dá)時, 將地址資源中的至少一個第一狀態(tài)地址資源池轉(zhuǎn)換為第二狀態(tài)地址資源池,并將至少一個 第二狀態(tài)地址資源池轉(zhuǎn)換為第一狀態(tài)地址資源池,其中,地址資源包含內(nèi)存資源的內(nèi)存地 址,第一狀態(tài)地址資源池用于釋放和分配地址資源,第二狀態(tài)地址資源池用于釋放地址資 源。[0119]在一個可選的實(shí)現(xiàn)方式中:[0120]可編程電路器件620,還可以用于將地址資源劃分為多個地址資源池,為多個地址 資源池中的地址資源池分別設(shè)置狀態(tài)屬性,該多個地址資源池中的地址資源池根據(jù)設(shè)置的 狀態(tài)屬性分為第一狀態(tài)地址資源池和第二狀態(tài)地址資源池。[0121]在另一個可選的實(shí)現(xiàn)方式中:[0122]可編程電路器件620,可以具體用于回收至少一個第二狀態(tài)地址資源池的地址資 源,并將地址資源被回收的該至少一個第二狀態(tài)地址資源池轉(zhuǎn)換為第一狀態(tài)地址資源池。[0123]在另一個可選的實(shí)現(xiàn)方式中:[0124]第二狀態(tài)地址資源池可以進(jìn)一步包括:至少一個第三狀態(tài)地址資源池,和除第三 狀態(tài)地址資源池的第四狀態(tài)地址資源池;[0125]可編程電路器件620,可以具體用于將一個第一狀態(tài)地址資源池轉(zhuǎn)換為第四狀態(tài) 地址資源池,并將一個第三狀態(tài)地址資源池轉(zhuǎn)換為第一狀態(tài)地址資源池;可編程電路器件 620,還可以用于將一個第四狀態(tài)地址資源池轉(zhuǎn)換為第三狀態(tài)地址資源池。[0126]在另一個可選的實(shí)現(xiàn)方式中:[0127]該單板還可以包括(圖6中未示出):分別與存儲器610和可編程電路器件620連 接的處理器;[0128]可編程電路器件620,還可以用于當(dāng)接收到報(bào)文時,獲取第一狀態(tài)地址資源池,從 第一狀態(tài)地址資源池的空閑內(nèi)存地址中為該報(bào)文分配內(nèi)存地址,并將該報(bào)文寫入存儲器 610上與所分配的內(nèi)存地址對應(yīng)的內(nèi)存空間中;[0129]處理器,用于從內(nèi)存空間中讀取該報(bào)文。[0130]上述實(shí)施例中,可編程電路器件620可以具體為現(xiàn)場可編程門陣列(F i e I d P r ο g r a mm able Gate Array,FPG A)芯片;存儲器610可以具體為雙 倍速率同步動態(tài)隨機(jī)存儲器(D ouble Data Rate, DDR)等,對此本發(fā)明實(shí) 施例不進(jìn)行限制。[0131]參見圖7 A,為應(yīng)用本發(fā)明實(shí)施例的一個單板架構(gòu)示意圖;[0132]圖7 A示出的單板包括:相互連接的C P U、D D R和F P G A芯片。[0133]其中,D D R中內(nèi)存資源的內(nèi)存地址被劃分為N個地址資源池,記為地址資源池 O至地址資源池N — 1,N為大于2的自然數(shù),可以根據(jù)系統(tǒng)所需要的平均內(nèi)存資源確定一 個地址資源池對應(yīng)的內(nèi)存資源的大小,然后根據(jù)系統(tǒng)總的內(nèi)存資源和每個地址資源池對應(yīng) 的內(nèi)存資源確定地址資源池的個數(shù)N ;每個地址資源池由S個內(nèi)存地址組成,S為自然數(shù), N個地址資源池共有N * S個內(nèi)存地址,每個內(nèi)存地址可以對應(yīng)D D R中的一個內(nèi)存空間 (固定大小的內(nèi)存塊),如圖7 A中內(nèi)存空間分別記為內(nèi)存空間O至內(nèi)存空間N * S — I。[0134]參見圖7 B,為圖7 A所示單板進(jìn)行內(nèi)存資源管理時地址資源池的狀態(tài)轉(zhuǎn)換示意 圖,初始狀態(tài),將N個地址資源池中的地址資源池O至第地址資源池η — I設(shè)置為黃狀態(tài), 將第地址資源池η至地址資源池N — 2設(shè)置為綠狀態(tài),將地址資源池N — I設(shè)置為紅狀態(tài)。 其中,紅狀態(tài)地址資源池中的地址資源可以釋放,但不用于分配;黃狀態(tài)地址資源池中的地 址資源可以釋放,但不用于分配;綠狀態(tài)地址資源池中的地址資源可以釋放,也可以分配。[0135]其中,F(xiàn) P G A芯片包括MMU模塊、上送模塊和安全模塊。MMU模塊可以按 照預(yù)設(shè)的狀態(tài)轉(zhuǎn)換周期T O對D DR中各個地址資源池的狀態(tài)進(jìn)行管理,其中,T O可以根 據(jù)系統(tǒng)所需要的最大內(nèi)存資源R e q_ma x進(jìn)行設(shè)置,即將系統(tǒng)使用每個地址資源池對 應(yīng)的內(nèi)存資源需要的平均時間設(shè)置為T O ;在每個T O到達(dá)時,可以將第一個黃狀態(tài)地址資 源池切換為紅狀態(tài)地址資源池;將第一個綠狀態(tài)地址資源池切換為黃狀態(tài)地址資源池;強(qiáng) 制回收紅狀態(tài)地址資源池的所有地址資源,并將紅狀態(tài)地址資源池切換為綠狀態(tài)地址資源 池。結(jié)合圖7 B,當(dāng)?shù)谝粋€T O周期到達(dá)時,基于初始狀態(tài)的設(shè)置,將地址資源池O從黃狀態(tài)切換為紅狀態(tài),將地址資源池η從綠狀態(tài)切換為黃狀態(tài),將地址資源池N — I從紅狀態(tài) 切換為綠狀態(tài)。[0136]當(dāng)F P G A芯片接收到報(bào)文后,由安全模塊對報(bào)文進(jìn)行安全檢測和過濾,將合法 的報(bào)文發(fā)送到上送模塊,上送模塊向M M U模塊申請空閑的內(nèi)存地址,M M U模塊根據(jù)地 址資源池的狀態(tài),從綠狀態(tài)地址資源池中分配一個空閑的內(nèi)存地址,將該內(nèi)存地址從綠狀 態(tài)地址資源池中刪除,并將該內(nèi)存地址發(fā)送給上送模塊,上送模塊將報(bào)文寫入到D D R上 該內(nèi)存地址對應(yīng)的內(nèi)存空間中;C P U可以從該內(nèi)存空間中讀取報(bào)文,并且在讀取完畢后, 由M M U模塊對該內(nèi)存空間的內(nèi)存地址進(jìn)行回收。[0137]本發(fā)明實(shí)施例中,無論地址資源池為何種狀態(tài),每個地址資源池中已經(jīng)分配的內(nèi) 存地址都可以按照現(xiàn)有內(nèi)存管理方式進(jìn)行釋放,在釋放某個內(nèi)存地址時,將該內(nèi)存地址重 新寫入其所屬的地址資源池。[0138]以上述具有N個地址資源池,且狀態(tài)轉(zhuǎn)換周期為T O的系統(tǒng)來說,對于每一個地 址資源池,每隔(N — I)個T O周期就能夠轉(zhuǎn)變?yōu)榧t狀態(tài)地址資源池,從而被強(qiáng)制回收一 次,因此當(dāng)系統(tǒng)存在內(nèi)存泄露時,可以周期性實(shí)現(xiàn)系統(tǒng)自愈。[0139]由上述實(shí)施例可見,判斷狀態(tài)轉(zhuǎn)換周期是否到達(dá),當(dāng)狀態(tài)轉(zhuǎn)換周期到達(dá)時,將地址 資源中的至少一個第一狀態(tài)地址資源池轉(zhuǎn)換為第二狀態(tài)地址資源池,并將至少一個第二狀 態(tài)地址資源池轉(zhuǎn)換為第一狀態(tài)地址資源池,第一狀態(tài)地址資源池用于釋放和分配地址資 源,第二狀態(tài)地址資源池用于釋放地址資源。應(yīng)用本發(fā)明實(shí)施例,與現(xiàn)有按照周期對每個地 址資源進(jìn)行遍歷來決定是否強(qiáng)制回收相比,由于對地址資源按照劃分的地址資源池進(jìn)行分 塊管理,將地址資源分為至少一個第一狀態(tài)地址資源池和至少一個第二狀態(tài)地址資源池, 并在狀態(tài)轉(zhuǎn)換周期達(dá)到時,以地址資源池為單位,僅需對至少一個第二狀態(tài)地質(zhì)資源池進(jìn) 行整體回收,以將至少一個第二狀態(tài)地址資源池轉(zhuǎn)換為可用于分配地址資源的第一狀態(tài)地 址資源池,因此每個周期需要維護(hù)的地址資源數(shù)量變少,由此提高了內(nèi)存泄露的恢復(fù)速度, 減少了通信設(shè)備的系統(tǒng)功耗,相應(yīng)提升了內(nèi)存管理性能。[0140]本領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明實(shí)施例中的技術(shù)可借助軟件加必需 的通用硬件平臺的方式來實(shí)現(xiàn)?;谶@樣的理解,本發(fā)明實(shí)施例中的技術(shù)方案本質(zhì)上或者 說對現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品可以存 儲在存儲介質(zhì)中,如ROM / R AM、磁碟、光盤等,包括若干指令用以使得一臺計(jì)算機(jī)設(shè) 備(可以是個人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個實(shí)施例或者實(shí)施例的某 些部分的方法。[0141]本說明書中的各個實(shí)施例均采用遞進(jìn)的方式描述,各個實(shí)施例之間相同相似的部 分互相參見即可,每個實(shí)施例重點(diǎn)說明的都是與其他實(shí)施例的不同之處。尤其,對于系統(tǒng)實(shí) 施例而言,由于其基本相似于方法實(shí)施例,所以描述的比較簡單,相關(guān)之處參見方法實(shí)施例 的部分說明即可。[0142]以上的本發(fā)明實(shí)施方式,并不構(gòu)成對本發(fā)明保護(hù)范圍的限定。任何在本發(fā)明的精 神和原則之內(nèi)所作的修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【權(quán)利要求】
1.一種內(nèi)存資源的管理方法,其特征在于,所述方法包括: 判斷狀態(tài)轉(zhuǎn)換周期是否到達(dá); 當(dāng)所述狀態(tài)轉(zhuǎn)換周期到達(dá)時,將地址資源中的至少一個第一狀態(tài)地址資源池轉(zhuǎn)換為第二狀態(tài)地址資源池,并將至少一個第二狀態(tài)地址資源池轉(zhuǎn)換為第一狀態(tài)地址資源池,其中, 所述地址資源包含內(nèi)存資源的內(nèi)存地址,所述第一狀態(tài)地址資源池用于釋放和分配地址資源,所述第二狀態(tài)地址資源池用于釋放地址資源。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括:在所述判斷狀態(tài)轉(zhuǎn)換周期是否到達(dá)之前,將所述地址資源劃分為多個地址資源池;為所述多個地址資源池中的地址資源池分別設(shè)置狀態(tài)屬性,所述多個地址資源池中的地址資源池根據(jù)設(shè)置的狀態(tài)屬性分為第一狀態(tài)地址資源池和第二狀態(tài)地址資源池。
3.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,所述將至少一個第二狀態(tài)地址資源池轉(zhuǎn)換為第一狀態(tài)地址資源池具體包括:回收至少一個第二狀態(tài)地址資源池的地址資源,并將地址資源被回收的所述至少一個第二狀態(tài)地址資源池轉(zhuǎn)換為第一狀態(tài)地址資源池。
4.根據(jù)權(quán)利要求1至3任意一項(xiàng)所述的方法,其特征在于,所述第二狀態(tài)地址資源池包括:至少一個第三狀態(tài)地址資源池,和除所述第三狀態(tài)地址資源池的第四狀態(tài)地址資源池; 所述將地址資源中的至少一個第一狀態(tài)地址資源池轉(zhuǎn)換為第二狀態(tài)地址資源池,并將至少一個第二狀態(tài)地址資源池轉(zhuǎn)換為第一狀態(tài)地址資源池,具體包括:將一個第一狀態(tài)地址資源池轉(zhuǎn)換為第四狀態(tài)地址資源池,并將一個第三狀態(tài)地址資源池轉(zhuǎn)換為第一狀態(tài)地址資源池;所述方法還包括:將一個第四狀態(tài)地址資源池轉(zhuǎn)換為第三狀態(tài)地址資源池。
5.根據(jù)權(quán)利要求1至4任意一項(xiàng)所述的方法,其特征在于,所述方法還包括:當(dāng)接收到報(bào)文時,獲取第一狀態(tài)地址資源池;從所述第一狀態(tài)地址資源池的空閑內(nèi)存地址中為所述報(bào)文分配內(nèi)存地址;將所述報(bào)文寫入與所分配的內(nèi)存地址對應(yīng)的內(nèi)存空間中。
6.根據(jù)權(quán)利要求1至5任意一項(xiàng)所述的方法,其特征在于,所述狀態(tài)轉(zhuǎn)換周期為使用一個地址資源池對應(yīng)的內(nèi)存資源需要的平均時間。
7.—種內(nèi)存資源的管理裝置,其特征在于,所述裝置包括:判斷單元,用于判斷狀態(tài)轉(zhuǎn)換周期是否到達(dá);轉(zhuǎn)換單元,用于當(dāng)所述判斷單元的判斷結(jié)果為狀態(tài)轉(zhuǎn)換周期到達(dá)時,將地址資源中的至少一個第一狀態(tài)地址資源池轉(zhuǎn)換為第二狀態(tài)地址資源池,并將至少一個第二狀態(tài)地址資源池轉(zhuǎn)換為第一狀態(tài)地址資源池,其中,所述地址資源包含所述內(nèi)存資源的內(nèi)存地址,所述第一狀態(tài)地址資源池用于釋放和分配地址資源,所述第二狀態(tài)地址資源池用于釋放地址資源。
8.根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述裝置還包括:劃分單元,用于將所述地址資源劃分為多個地址資源池;設(shè)置單元,用于為所述劃分單元劃分的多個地址資源池中的地址資源池分別設(shè)置狀態(tài)屬性,所述多個地址資源池中的地址資源池根據(jù)設(shè)置的狀態(tài)屬性分為所述第一狀態(tài)地址資源池和所述第二狀態(tài)地址資源池。
9.根據(jù)權(quán)利要求7或8所述的裝置,其特征在于,所述轉(zhuǎn)換單元包括:資源回收子單元,用于回收至少一個第二狀態(tài)地址資源池的地址資源;狀態(tài)轉(zhuǎn)換子單元,用于將地址資源被所述資源回收子單元回收的所述至少一個第二狀態(tài)地址資源池轉(zhuǎn)換為第一狀態(tài)地址資源池。
10.根據(jù)權(quán)利要求7至9任意一項(xiàng)所述的裝置,其特征在于,所述第二狀態(tài)地址資源池包括:至少一個第三狀態(tài)地址資源池,和除所述第三狀態(tài)地址資源池的第四狀態(tài)地址資源池;所述轉(zhuǎn)換單元,具體用于將一個第一狀態(tài)地址資源池轉(zhuǎn)換為第四狀態(tài)地址資源池,并將一個第三狀態(tài)地址資源池轉(zhuǎn)換為第一狀態(tài)地址資源池; 所述轉(zhuǎn)換單元,還用于將一個第四狀態(tài)地址資源池轉(zhuǎn)換為第三狀態(tài)地址資源池。
11.根據(jù)權(quán)利要求7至10任意一項(xiàng)所述的裝置,其特征在于,所述裝置還包括:獲取單元,用于當(dāng)接收到報(bào)文時,獲取第一狀態(tài)地址資源池;分配單元,用于從所述獲取單元獲取的第一狀態(tài)地址資源池的空閑內(nèi)存地址中為所述報(bào)文分配內(nèi)存地址;寫入單元,用于將所述報(bào)文寫入與所述分配單元分配的內(nèi)存地址對應(yīng)的內(nèi)存空間中。
【文檔編號】H04L29/12GK103607480SQ201310567404
【公開日】2014年2月26日 申請日期:2013年11月14日 優(yōu)先權(quán)日:2013年11月14日
【發(fā)明者】陳清付, 劉濤, 林弦 申請人:華為技術(shù)有限公司