[發明專利]一種內存分配的方法、系統有效
| 申請號: | 201710967200.8 | 申請日: | 2017-10-17 |
| 公開(公告)號: | CN107844372B | 公開(公告)日: | 2021-09-07 |
| 發明(設計)人: | 李紹良;黃衍博;黃春豪 | 申請(專利權)人: | 廣東睿江云計算股份有限公司 |
| 主分類號: | G06F9/50 | 分類號: | G06F9/50 |
| 代理公司: | 佛山市禾才知識產權代理有限公司 44379 | 代理人: | 梁永健 |
| 地址: | 528000 廣東省佛山市禪城區*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 內存 分配 方法 系統 | ||
一種內存分配的方法、系統,包括適配器、二叉樹和二維數組,包括適配器分配內存的過程:步驟A:適配器獲取程序所申請的內存值,然后適配器從二叉樹的根節點向下開始遍歷,在節點中尋找可分配的所述內存塊;步驟B:在節點中找到與內存值相同大小的可分配的內存塊,以2的冪次方的形式分配給內存值;步驟C:在節點中找到大于內存值的可分配的內存塊,以2的冪次方的形式分配給內存值;步驟D:遍歷二維數組,統計未分配節點上的內存塊,合并內存塊,以2的冪次方的形式分配給內存值。本發明的一種內存分配的方法、系統,實現在內存分配中,提高內存復用率、減少內存碎片、避免浪費內存目的。
技術領域
本發明涉及計算機內存分配領域,尤其涉及一種內存分配的方法、系統。
背景技術
內存的分配在操作適配器中占有重要的地位,是操作適配器的核心。任何程序的執行,都必須在操作適配器中獲得內存空間。內存是計算機中的重要資源,對于他們的資源分配和訪問方式都直接影響到整個適配器的性能和效率。如何有效的管理、合理的分配內存資源,對于提升適配器性能,尤其是內存的使用效率和進程的運行速度顯得尤為重要。
現有技術中常見的幾種內存分配有以下4種,分別是首次適應算法、可變大小分配、連續內存分配和離散分配內存;首次適應算法即當申請內存時,適配器總是返回一個固定大小的內存空間,固定尺寸最明顯的缺點就是不靈活。如果定長空間過小,則容易引起溢出,如果定長過大,又會造成內存的浪費;可變大小分配即適配器處理不同尺寸的分配請求,并分配合適大小的內存空間;連續內存分配主要優點是簡介,額外開銷也比較低,但是也會分配不同程度的內部碎片或者外部碎片;離散內存分配最大的有點就是有效避免了內存碎片的產生,提高內存資源利用率。但在程序運行過程中,若程序被分配在過多的不連續區域上,就要多次的地址校驗,這就會降低了運行效率。
以上的幾種內存分配算法都會存在大量的內存碎片,產生內存的浪費,內存分配沒有達到理想效果,不連續的內存塊無法進行合并。
發明內容
本發明的目的在于提出一種內存分配的方法、系統,以在內存分配中,實現提高內存復用率、減少內存碎片、避免浪費內存目的。
為達此目的,本發明采用以下技術方案:
一種內存分配的方法,包括適配器、二叉樹和二維數組,所述二叉樹的節點標記內存塊的使用狀態,所述二叉樹分為x層,所述二叉樹的根節點位于所述二叉樹的第一層;所述二叉樹的第y層上的每一個所述節點都存儲有2^(x-y)大小的所述內存塊,y大于零且小于等于x;所述二維數組存儲有未分配節點的信息;
包括所述適配器分配內存的過程:
步驟A:所述適配器獲取程序所申請的內存值,然后所述適配器從所述二叉樹的根節點向下開始遍歷,在所述節點中尋找可分配的所述內存塊;
步驟B:在所述節點中尋找與所述內存值相同大小的可分配的所述內存塊,若找到,則將找到的所述內存塊分配給所述內存值,將該所述節點標記為已分配狀態,并返回內存地址;
若找不到,則尋找比所述內存值大的可分配的所述內存塊,將尋找到所述內存塊分配給所述內存值,并將該所述節點標記為已分配狀態,然后返回內存地址;
步驟C:最后將比所述內存值大的所述內存塊分配后還剩下的所述內存塊存儲到所述未分配節點中,并將所述未分配節點在所述二叉樹中的信息存儲到所述二維數組中;
步驟D:若找不到與所述內存值相同或者比所述內存值大的可分配的所述內存塊,則遍歷所述二維數組,將所述未分配節點找出來,統計所有所述未分配節點上的所述內存塊,若統計的所述內存塊比所述內存值大,則將所述未分配節點上的所述內存塊進行合并,然后再分配給所述內存值,并將合并的所述未分配節點標記為已分配狀態,返回內存地址;
若統計的所述內存塊比所述內存值小,則返回內存不足,請求分配失敗的信息。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于廣東睿江云計算股份有限公司,未經廣東睿江云計算股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710967200.8/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:車輛用座椅滑動裝置
- 下一篇:具有額外鎖定構件的座椅調整器





