[發明專利]一種內存池管理方法及裝置有效
| 申請號: | 201110210425.1 | 申請日: | 2011-07-26 |
| 公開(公告)號: | CN102253897A | 公開(公告)日: | 2011-11-23 |
| 發明(設計)人: | 韓耕 | 申請(專利權)人: | 大唐移動通信設備有限公司 |
| 主分類號: | G06F12/02 | 分類號: | G06F12/02;G06F12/08 |
| 代理公司: | 北京同達信恒知識產權代理有限公司 11291 | 代理人: | 劉松 |
| 地址: | 100083*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 內存 管理 方法 裝置 | ||
技術領域
本發明涉及內存管理技術領域,尤其涉及一種內存池管理方法及裝置。
背景技術
TD-LTE(Time?Division-Long?Term?Evolution,時分長期演進)系統的基站和核心網之間目前均采用全IP化傳輸,即用戶終端UE的上下行業務數據均封裝在一個個IP報文中,在核心網和基站之間傳輸。對于單個小區,僅下行業務數據,速率就高達150MBits/S,遠遠大于3G的業務量,這就對基站處理器的處理能力提出了很高要求,具體原因為:
對于下行方向,基站用于處理基帶數據的板卡(即基帶板)的以太模塊收到這些IP報文后,會在內存池中為用于攜帶該IP報文信息的消息分配內存,之后將消息遞交給高層的PDCP(Packet?Data?Convergence?Protocol,分組數據聚合協議)模塊,高層PDCP模塊處理完消息之后,再釋放內存池中為該消息分配的內存,可見在高速的情況下,單位時間內的IP報文數量比較多,因此對需要處理器頻繁分配和釋放內存,對處理器的要求比較高。
目前的內存池管理方法導致分配和釋放內存的周期比較大,因此增加了處理器的負荷,限制了每個基帶板能夠處理的用戶。目前普通式鏈式內存池管理方法,主要采用如下機制:將空閑塊按照尺寸的不同,分別掛接到了不同的空閑隊列中。對空閑內存塊鏈表的操作需要用互斥鎖保護,以解決在多任務環境下,鏈表的一致性問題。在內存池管理中,引入了對象互斥鎖的概念是為了保證內存資源操作的完整性。在任一時刻,只能有一個任務可以訪問內存池,而其它任務則不能進行內存池的分配和釋放。使用互斥鎖本身是一個很耗時的操作,并且會增加任務間的耦合性。這樣大大增加了分配和釋放內存塊耗時,并且耗時的不確定性大大增加。
舉例來說,在一般業務模型下,IP報文的尺寸平均為500字節,則150MBits/S的速率模型下,每秒鐘需要處理的IP報文個數為150M/(8*500)=37500。則每秒鐘需要在內存池中為37500個消息分配和釋放內存。目前普通鏈式內存池管理方法,分配和釋放一個消息內存塊的時間分別為2000和1000個處理器周期(cycle)。因此對主頻為1G的嵌入式處理器而言,為37500個消息分配和釋放內存的CPU負荷為:
37500*(2000+1000)/1000000000=11.25%。
因此目前的內存池管理方法增加了處理器的負荷,能夠處理的用戶有限,缺乏一種能夠快速分配和釋放內存,增加基站處理器能夠處理的用戶數量的有效的內存池管理方法。
發明內容
本發明提供一種內存池管理方法及裝置,用以解決現有技術中內存池管理算法增加處理器的負荷和能夠處理的用戶數量有限的問題。
本發明提供一種內存池管理方法,包括:
需要在內存池中分配內存時,確定上次被分配的內存塊所在的子池內是否有空閑內存塊,其中內存池被劃分為多個子池,各子池包括數量相等個內存塊;
若有,則將所述子池內的空閑內存塊進行分配;
若無,則通過從上至下查找多級位圖逐級縮小查找范圍,查找一個空閑子池并分配內存塊,其中每級位圖包括多個比特值,最低級位圖的每個比特值指示內存塊的使用情況,上級位圖的每個比特值,對應地指示下級位圖中多個比特值所涉及的內存塊的整體使用情況;
根據所分配的內存塊的位置,對應更新所述多級位圖中的比特值。
本發明還提供一種內存池管理裝置,包括:
子池空閑確定單元,用于需要在內存池中分配內存時,確定上次被分配的內存塊所在的子池內是否有空閑內存塊,其中內存池被劃分為多個子池,各子池包括數量相等個內存塊;
第一分配單元,用于在上次被分配的內存塊所在的子池內有空閑內存塊時,將所述子池內的空閑內存塊進行分配;
第二分配單元,用于在上次被分配的內存塊所在的子池內無空閑內存塊時,通過從上至下查找多級位圖逐級縮小查找范圍,查找一個空閑子池并分配內存塊,其中每級位圖包括多個比特值,最低級位圖的每個比特值指示內存塊的使用情況,上級位圖的每個比特值,對應地指示下級位圖中多個比特值所涉及的內存塊的整體使用情況;
第一位圖更新單元,用于根據所分配的內存塊的位置,對應更新所述多級位圖中的比特值。
利用本發明提供的內存池管理方法及裝置,具有以下有益效果:基于所提出的內存劃分及管理方式,通過多級位圖在內存分配時實現空閑內存的快速定位,如果應用到TD-LTE基站,則可以大大降低TD-LTE基站在多用戶、大數據量場景下處理器的負荷,使得單基帶板卡能夠處理更多的用戶。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于大唐移動通信設備有限公司,未經大唐移動通信設備有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110210425.1/2.html,轉載請聲明來源鉆瓜專利網。





