[發(fā)明專利]一種嵌入式處理器的存儲空間模擬方法有效
| 申請?zhí)枺?/td> | 201110433239.4 | 申請日: | 2011-12-20 |
| 公開(公告)號: | CN102541623A | 公開(公告)日: | 2012-07-04 |
| 發(fā)明(設(shè)計(jì))人: | 喬磊;吳軍;吳一帆;楊樺;彭飛;劉鴻瑾 | 申請(專利權(quán))人: | 北京控制工程研究所 |
| 主分類號: | G06F9/455 | 分類號: | G06F9/455 |
| 代理公司: | 中國航天科技專利中心 11009 | 代理人: | 安麗 |
| 地址: | 100190*** | 國省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 嵌入式 處理器 存儲空間 模擬 方法 | ||
1.一種嵌入式處理器的存儲空間模擬方法,其特征在于步驟如下:
(1)在內(nèi)存中開辟存儲空間,之后將開辟出的存儲空間劃分為多個存儲頁,每個存儲頁的大小為預(yù)設(shè)的固定值;
(2)在內(nèi)存中構(gòu)建一個頁表的數(shù)據(jù)結(jié)構(gòu),所述頁表的數(shù)據(jù)結(jié)構(gòu)是一個多級鏈表,每一級鏈表中包含一個頁表頭和多個頁表項(xiàng),頁表項(xiàng)與步驟(1)中劃分出來的存儲頁一一對應(yīng),每個頁表項(xiàng)包含兩部分,一部分為其所對應(yīng)的存儲頁的標(biāo)簽信息,另一部分為指向下一個頁表項(xiàng)的指針;
(3)在基于步驟(1)和步驟(2)所構(gòu)建的結(jié)構(gòu)上,進(jìn)行內(nèi)存訪問。
2.根據(jù)權(quán)利要求1所述的一種嵌入式處理器的存儲空間模擬方法,其特征在于:所述內(nèi)存訪問包括讀操作,具體通過如下步驟進(jìn)行:
(2.1)將所述嵌入式處理器待訪問的地址所在的存儲頁映射到對應(yīng)的頁表頭,之后判斷該頁表頭是否為空,若所述頁表頭為空,則表示沒有與該頁表頭匹配的頁表項(xiàng),從而無法建立存儲頁和頁表頭之間的對應(yīng)關(guān)系,返回0作為讀操作的結(jié)果;若不為空,則進(jìn)入步驟(2.2);
(2.2)根據(jù)頁表頭獲取該頁表頭所在的鏈表的第一個頁表項(xiàng),之后判斷所述第一個頁表項(xiàng)是否與待訪問地址所在的存儲頁一致,若一致,則表示所述待訪問地址所在的存儲頁之前被訪問過,即從頁表頭到存儲頁之間的對應(yīng)關(guān)系已經(jīng)建立,則直接獲取待訪問地址所在存儲頁中的數(shù)據(jù)作為讀操作的結(jié)果;
若不一致,則進(jìn)入步驟(2.3);
(2.3)根據(jù)當(dāng)前頁表項(xiàng)中的指向下一個頁表項(xiàng)的指針,獲得下一個頁表項(xiàng),之后判斷該頁表項(xiàng)是否為空,若所述頁表項(xiàng)為空,則表示沒有與該頁表項(xiàng)匹配的存儲頁,從而無法建立存儲頁和頁表項(xiàng)之間的對應(yīng)關(guān)系,返回0作為讀操作的結(jié)果;若不為空,則進(jìn)入步驟(2.4);
(2.4)判斷所述當(dāng)前頁表項(xiàng)是否與待訪問地址所在的存儲頁一致,若一致,則表示所述待訪問地址所在的存儲頁之前被訪問過,即從當(dāng)前頁表項(xiàng)到存儲頁之間的對應(yīng)關(guān)系已經(jīng)建立,則直接獲取待訪問地址所在存儲頁中的數(shù)據(jù)作為讀操作的結(jié)果;若不一致,則返回步驟(2.3)。
3.根據(jù)權(quán)利要求1所述的一種嵌入式處理器的存儲空間模擬方法,其特征在于:所述內(nèi)存訪問包括寫操作,具體通過如下步驟進(jìn)行:
(3.1)將所述嵌入式處理器待訪問的地址所在的存儲頁映射到對應(yīng)的頁表頭,之后判斷該頁表頭是否為空,若所述頁表頭為空,則表示沒有與該頁表頭匹配的頁表項(xiàng),未建立存儲頁和頁表頭之間的對應(yīng)關(guān)系,之后在內(nèi)存中申請新的空間作為存儲頁,并且在該頁表頭所在的鏈表中增加相應(yīng)的頁表項(xiàng),使得所述該頁表頭、增加的頁表項(xiàng)和新申請的存儲頁形成映射關(guān)系,之后將寫操作待寫入的數(shù)據(jù)存入所述新申請的存儲頁中;
若不為空,則進(jìn)入步驟(3.2);
(3.2)根據(jù)頁表頭獲取該頁表頭所在的鏈表的第一個頁表項(xiàng),之后判斷所述第一個頁表項(xiàng)是否與待訪問地址所在的存儲頁一致,若一致,則表示所述待訪問地址所在的存儲頁之前被訪問過,即從頁表頭到存儲頁之間的對應(yīng)關(guān)系已經(jīng)建立,則直接將寫操作待寫入的數(shù)據(jù)寫入待訪問地址所在存儲頁中;
若不一致,則進(jìn)入步驟(3.3);
(3.3)根據(jù)當(dāng)前頁表項(xiàng)中的指向下一個頁表項(xiàng)的指針,獲得下一個頁表項(xiàng),之后判斷該頁表項(xiàng)是否為空,若所述頁表項(xiàng)為空,則表示沒有與該頁表項(xiàng)匹配的存儲頁,未建立存儲頁和頁表項(xiàng)之間的對應(yīng)關(guān)系,之后在內(nèi)存中申請新的空間作為存儲頁,并且在鏈表中增加相應(yīng)的頁表項(xiàng),使得增加的頁表項(xiàng)和新申請的存儲頁形成映射關(guān)系,之后將寫操作待寫入的數(shù)據(jù)存入所述新申請的存儲頁中;若不為空,則進(jìn)入步驟(3.4);
(3.4)判斷所述當(dāng)前頁表項(xiàng)是否與待訪問地址所在的存儲頁一致,若一致,則表示所述待訪問地址所在的存儲頁之前被訪問過,即從當(dāng)前頁表項(xiàng)到存儲頁之間的對應(yīng)關(guān)系已經(jīng)建立,則直接將寫操作待寫入的數(shù)據(jù)寫入待訪問地址所在存儲頁中;若不一致,則返回步驟(3.3)。
4.根據(jù)權(quán)利要求1所述的一種嵌入式處理器的存儲空間模擬方法,其特征在于:所述頁表項(xiàng)為空是指該頁表項(xiàng)中的標(biāo)簽信息和指向下一個頁表項(xiàng)的指針均為空。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于北京控制工程研究所,未經(jīng)北京控制工程研究所許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110433239.4/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





