[發(fā)明專利]一種內(nèi)存檢測工具的實現(xiàn)方法有效
| 申請?zhí)枺?/td> | 201910745666.2 | 申請日: | 2019-08-13 |
| 公開(公告)號: | CN110489291B | 公開(公告)日: | 2021-09-07 |
| 發(fā)明(設(shè)計)人: | 曾濤;潘建新 | 申請(專利權(quán))人: | 晶晨半導(dǎo)體(上海)股份有限公司 |
| 主分類號: | G06F11/22 | 分類號: | G06F11/22 |
| 代理公司: | 上海申新律師事務(wù)所 31272 | 代理人: | 俞滌炯 |
| 地址: | 201203 上海市浦東新區(qū)中國*** | 國省代碼: | 上海;31 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 內(nèi)存 檢測工具 實現(xiàn) 方法 | ||
1.一種內(nèi)存檢測工具的實現(xiàn)方法,其特征在于,提供一內(nèi)核檢測工具,應(yīng)用于32位ARM處理器中,所述處理器提供用戶區(qū)間和系統(tǒng)區(qū)間,所述系統(tǒng)區(qū)間被劃分為多個區(qū)域,所述區(qū)域包括動態(tài)內(nèi)存區(qū)域、模塊區(qū)域、內(nèi)核區(qū)域和固定映射區(qū)域;
所述內(nèi)核區(qū)域設(shè)置有內(nèi)核代碼區(qū)域,所述內(nèi)核代碼區(qū)域的尾地址與所述模塊區(qū)域的首地址之間的地址空間小于32MB;
于所述用戶區(qū)間中劃分連續(xù)的地址空間為內(nèi)核檢測區(qū)域,所述內(nèi)核檢測區(qū)域設(shè)置在用戶區(qū)間和所述系統(tǒng)區(qū)間的交界處;
將所述內(nèi)核檢測區(qū)域設(shè)置為所述系統(tǒng)區(qū)間的映射區(qū)域,所述內(nèi)核檢測工具根據(jù)系統(tǒng)當(dāng)前運行的程序代碼中的檢測標志檢測所述內(nèi)核檢測區(qū)域中對應(yīng)當(dāng)前所述程序代碼所在的內(nèi)存地址的位置來判斷當(dāng)前的內(nèi)存訪問是否合法。
2.如權(quán)利要求1所述的內(nèi)存檢測工具的實現(xiàn)方法,其特征在于,所述用戶區(qū)間、所述動態(tài)內(nèi)存區(qū)域、所述模塊區(qū)域、所述內(nèi)核區(qū)域和所述固定映射區(qū)域依次相鄰設(shè)置。
3.如權(quán)利要求1所述的內(nèi)存檢測工具的實現(xiàn)方法,其特征在于,所述用戶區(qū)間還包括用戶區(qū)域,所述用戶區(qū)域的地址空間為2944MB;
所述內(nèi)核檢測區(qū)域的地址空間為128MB;
所述動態(tài)內(nèi)存區(qū)域的地址空間為240MB;
所述模塊區(qū)域的地址空間為16MB;
所述內(nèi)核區(qū)域的地址空間為760MB;
所述固定映射區(qū)域的地址空間為3MB。
4.如權(quán)利要求1所述的內(nèi)存檢測工具的實現(xiàn)方法,其特征在于,所述內(nèi)核檢測區(qū)域的地址空間為所述用戶區(qū)間的地址空間的1/24。
5.如權(quán)利要求1所述的內(nèi)存檢測工具的實現(xiàn)方法,其特征在于,在所述系統(tǒng)啟動內(nèi)核前,在系統(tǒng)頁表存放路徑中建立二級頁表,所述內(nèi)核檢測工具根據(jù)所述二級頁表對所述內(nèi)核檢測區(qū)域進行第一次初始化,使得所述內(nèi)核檢測工具的檢測結(jié)果均為合法。
6.如權(quán)利要求5所述的內(nèi)存檢測工具的實現(xiàn)方法,其特征在于,在所述系統(tǒng)啟動內(nèi)核的過程中,所述內(nèi)核檢測工具對所述內(nèi)核檢測區(qū)域進行第二次初始化,所述內(nèi)核檢測工具判斷當(dāng)前的內(nèi)存訪問是否合法。
7.如權(quán)利要求6所述的內(nèi)存檢測工具的實現(xiàn)方法,其特征在于,進行所述第二次初始化具體包括以下步驟:
步驟A1,將所述系統(tǒng)頁表存放路徑中的所述二級頁表復(fù)制到臨時頁表存放路徑中;
步驟A2,將指向所述系統(tǒng)頁表存放路徑的寄存器的指向所述臨時頁表存放路徑;
步驟A3,修改所述系統(tǒng)頁表存放路徑中的所述二級頁表。
8.如權(quán)利要求7所述的內(nèi)存檢測工具的實現(xiàn)方法,其特征在于,所述步驟A3具體包括以下步驟:
步驟A31,清除所述系統(tǒng)頁表存放路徑中的所述二級頁表的數(shù)據(jù);
步驟A32,在所述內(nèi)核區(qū)域和所述固定映射區(qū)域中根據(jù)第一公式分配對應(yīng)的預(yù)留內(nèi)存,隨后在清除數(shù)據(jù)后的所述二級頁表中根據(jù)第二公式將所述預(yù)留內(nèi)存映射到所述內(nèi)核檢測區(qū)域中;
步驟A33,于所述內(nèi)核檢測區(qū)域中對未進行分配的所述動態(tài)內(nèi)存區(qū)域和所述模塊區(qū)域根據(jù)第二公式建立對應(yīng)的映射區(qū)域;
步驟A34,在所述系統(tǒng)頁表存放路徑中建立二級頁表,以根據(jù)所述二級頁表對所述動態(tài)內(nèi)存區(qū)域和所述模塊區(qū)域?qū)?yīng)的映射區(qū)域進行初始化,使得所述內(nèi)核檢測工具對當(dāng)前所述程序代碼所在的所述動態(tài)內(nèi)存區(qū)域和所述模塊區(qū)域的內(nèi)存地址的內(nèi)存訪問均為合法;
步驟A35,將指向所述臨時頁表存放路徑的寄存器的指回所述系統(tǒng)頁表存放路徑;
步驟A36,刷新高速緩沖區(qū)和轉(zhuǎn)換檢測緩沖區(qū);
步驟A37,移除所述內(nèi)核區(qū)域和所述固定映射區(qū)域中分配的所述預(yù)留內(nèi)存。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于晶晨半導(dǎo)體(上海)股份有限公司,未經(jīng)晶晨半導(dǎo)體(上海)股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910745666.2/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 互動業(yè)務(wù)終端、實現(xiàn)系統(tǒng)及實現(xiàn)方法
- 街景地圖的實現(xiàn)方法和實現(xiàn)系統(tǒng)
- 游戲?qū)崿F(xiàn)系統(tǒng)和游戲?qū)崿F(xiàn)方法
- 圖像實現(xiàn)裝置及其圖像實現(xiàn)方法
- 增強現(xiàn)實的實現(xiàn)方法以及實現(xiàn)裝置
- 軟件架構(gòu)的實現(xiàn)方法和實現(xiàn)平臺
- 數(shù)值預(yù)報的實現(xiàn)方法及實現(xiàn)系統(tǒng)
- 空調(diào)及其冬眠控制模式實現(xiàn)方法和實現(xiàn)裝置以及實現(xiàn)系統(tǒng)
- 空調(diào)及其睡眠控制模式實現(xiàn)方法和實現(xiàn)裝置以及實現(xiàn)系統(tǒng)
- 輸入設(shè)備實現(xiàn)方法及其實現(xiàn)裝置





