[發明專利]快速定位錯誤源頭的內存管理方法有效
| 申請號: | 201210436150.8 | 申請日: | 2012-11-02 |
| 公開(公告)號: | CN102981919A | 公開(公告)日: | 2013-03-20 |
| 發明(設計)人: | 翁俊峰;張登峰;余杭軍 | 申請(專利權)人: | 福建升騰資訊有限公司 |
| 主分類號: | G06F11/07 | 分類號: | G06F11/07 |
| 代理公司: | 福州市鼓樓區京華專利事務所(普通合伙) 35212 | 代理人: | 宋連梅 |
| 地址: | 350000 福建省福州市倉山區金*** | 國省代碼: | 福建;35 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 快速 定位 錯誤 源頭 內存 管理 方法 | ||
1.快速定位錯誤源頭的內存管理方法,其特征在于:所述內存管理方法適用于基于C語言的嵌入式軟件,首先從內存單元中預分配出部分內存作為靜態內存,其余內存均為用于動態分配的內存;其次,將所述靜態內存劃分為復數個靜態管理塊;
當動態分配新的內存時,執行內存分配登記步驟;當已分配的內存大小發生變化時,執行內存變更步驟;當已分配的內存需要釋放時,執行內存釋放步驟;
所述內存分配登記步驟具體為:
步驟1、查找未使用的靜態管理塊,若找到,執行步驟2,若未找到,輸出錯誤信息并等待開發人員快速分析定位錯誤;
步驟2、動態分配內存,若分配成功,將被分配的內存的首地址和內存大小記錄到所述靜態管理塊,并將該靜態管理塊標記為已使用;若分配不成功,輸出錯誤信息并等待開發人員快速分析定位錯誤;
若需要多次動態分配內存,重復執行步驟1和步驟2;
所述內存變更步驟具體為:
步驟3、根據將要發生變更的內存的首地址從所述靜態內存中搜索出該首地址對應的靜態管理塊;搜索到,執行步驟4,未搜索到,輸出錯誤信息并等待;
步驟4、若變更后的內存大小比原來大,則重新動態分配內存,若分配成功,則將重新分配的內存的新首地址以及內存大小更新至所述靜態管理塊,若分配不成功,輸出錯誤信息并等待開發人員快速分析定位錯誤;
若變更后的內存大小比原來小,則直接把變更后的內存大小直接更新所述靜態管理塊中;
所述內存釋放步驟具體為:
步驟5、根據需要釋放的內存的首地址從所述靜態內存中搜索出該首地址對應的靜態管理塊,釋放該內存,并將該靜態管理塊標記為未使用;若未搜索到,輸出錯誤信息并等待開發人員快速分析定位錯誤。
2.根據權利要求1所述的快速定位錯誤源頭的內存管理方法,其特征在于:所述內存分配登記步驟通過Malloc或Calloc宏調用實現。
3.根據權利要求1所述的快速定位錯誤源頭的內存管理方法,其特征在于:所述內存變更步驟通過Realloc宏調用實現。
4.根據權利要求1所述的快速定位錯誤源頭的內存管理方法,其特征在于:所述內存變更步驟通過Free宏調用實現。
5.快速定位錯誤源頭的內存管理方法,其特征在于:所述內存管理方法適用于基于C++語言的嵌入式軟件,首先,從內存單元中預分配出部分內存作為靜態內存,其余內存均為用于動態分配的內存;其次,將所述靜態內存劃分為復數個靜態管理塊;
當動態分配新的內存時,執行內存分配登記步驟;當已分配的內存大小發生變化時,也必須重新分配新的內存,執行所述內存分配登記步驟;當已分配的內存需要釋放時,執行內存釋放步驟;
所述內存分配登記步驟具體為:
步驟10、查找未使用的靜態管理塊,若找到,執行步驟20,若未找到,輸出錯誤信息并等待開發人員快速分析定位錯誤;
步驟20、動態分配內存,若分配成功,將被分配的內存的首地址和內存大小記錄到所述靜態管理塊,并將該靜態管理塊標記為已使用;若分配不成功,輸出錯誤信息并等待開發人員快速分析定位錯誤;
若需要多次動態分配內存,重復執行步驟10和步驟20;
所述內存釋放步驟具體為:
步驟30、根據需要釋放的內存的首地址從所述靜態內存中搜索出該首地址對應的靜態管理塊,釋放該內存,并將該靜態管理塊標記為未使用,若未搜索出,則輸出錯誤信息并等待開發人員快速分析定位錯誤。
6.根據權利要求5所述的快速定位錯誤源頭的內存管理方法,其特征在于:所述內存分配登記步驟是通過重載C++庫提供的new函數實現。
7.根據權利要求5所述的快速定位錯誤源頭的內存管理方法,其特征在于:所述內存釋放步驟是通過重載C++庫提供的delete函數實現。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于福建升騰資訊有限公司,未經福建升騰資訊有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210436150.8/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種用于針織大圓機的固定裝置
- 下一篇:雙面斜紋布料





