[發明專利]執行快速的MMU模擬的方法和裝置、以及全系統模擬器有效
| 申請號: | 200710005260.8 | 申請日: | 2007-02-12 |
| 公開(公告)號: | CN101246452A | 公開(公告)日: | 2008-08-20 |
| 發明(設計)人: | 王華勇;王鯤;楊誠 | 申請(專利權)人: | 國際商業機器公司 |
| 主分類號: | G06F12/10 | 分類號: | G06F12/10;G06F9/445;G06F9/45 |
| 代理公司: | 中國國際貿易促進委員會專利商標事務所 | 代理人: | 陳煒 |
| 地址: | 美國*** | 國省代碼: | 美國;US |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 執行 快速 mmu 模擬 方法 裝置 以及 全系統 模擬器 | ||
1.?一種在計算機系統中對計算機程序執行快速的存儲器管理單元模擬的方法,其中,在計算機系統中分配有一個預定大小的地址注射空間,而且在所述地址注射空間中存儲虛擬頁號和相應的物理頁號,所述方法包括以下步驟:
對于所述計算機程序的一個代碼段中的加載/存儲指令,獲得所述加載/存儲指令的虛擬地址;
計算該虛擬地址的虛擬頁號和頁內偏移;
將所計算的虛擬頁號與所述地址注射空間中所存儲的虛擬頁號進行比較;
如果兩個虛擬頁號相同,則根據所述地址注射空間中所存儲的物理頁號,獲得相應的物理地址;
如果兩個虛擬頁號不相同,則執行地址轉換旁路緩沖器搜索、即TLB搜索,以獲得相應的物理地址;以及
從所獲得的相應物理地址中讀取數據,或者向其中寫入數據。
2.?根據權利要求1所述的方法,在所述從所獲得的相應物理地址中讀取數據、或者向其中寫入數據的步驟之前,進一步包括步驟:
判斷所述加載/存儲指令是否為所述代碼段內的第一條加載/存儲指令,
其中,如果所述加載/存儲指令是所述代碼段內的第一條加載/存儲指令,并且所述計算的虛擬頁號與所述存儲的虛擬頁號不相同,則所述方法在所述執行TLB搜索以獲得相應的物理地址的步驟之后,進一步包括步驟:
將所計算的虛擬頁號和所獲得的相應物理地址的物理頁號存儲到所述地址注射空間中。
3.?根據權利要求1所述的方法,其中,所述根據所述地址注射空間中所存儲的物理頁號獲得相應的物理地址的步驟,進一步包括步驟:
根據所述地址注射空間中所存儲的物理頁號和所計算的頁內偏移,計算所述加載/存儲指令的物理地址,作為所述相應的物理地址。
4.?根據權利要求1所述的方法,其中,所述執行TLB搜索以獲得相應的物理地址的步驟,進一步包括步驟:
逐行地搜索TLB,以查找包含所計算的虛擬地址的行,以便返回該行中所包含的物理地址,作為所述相應的物理地址。
5.?根據權利要求1至4中任何一項權利要求所述的方法,其中,所述地址注射空間被分配在所述代碼段的末尾,并且所述地址注射空間中存儲的虛擬頁號和物理頁號在所述代碼段的第一次地址翻譯時被初始化為無效的值。
6.?根據權利要求1至4中任何一項權利要求所述的方法,其中,在存取地址注射空間期間禁止執行任何中斷。
7.?根據權利要求1至4中任何一項權利要求所述的方法,其中,在計算機系統支持多進程程序的情況下,在每次進行進程上下文切換時,清除相應地址注射空間。
8.?根據權利要求1至4中任何一項權利要求所述的方法,其中,所述計算機程序包括一個或多個代碼段,其中每一個代碼段均具有良好的數據局部性,并且所述方法可適用于其中的每一個代碼段。
9.?根據權利要求8所述的方法,其中,分配有多個地址注射空間,每個地址注射空間為8個字節長,所存儲的虛擬頁號和物理頁號分別為32位長。
10.?根據權利要求8所述的方法,其中,分配有多個地址注射空間,每個地址注射空間為5個字節長,所存儲的虛擬頁號和物理頁號分別為20位長。
11.?一種用于在計算機系統中對計算機程序代碼執行快速的存儲器管理單元模擬的裝置,包括:
代碼翻譯器,用于將目標機程序代碼翻譯為宿主機程序代碼,并且分配預定大小的地址注射空間;
執行單元,用于執行翻譯后的宿主機程序代碼;
翻譯后代碼緩存,用于存儲由上述代碼翻譯器所翻譯的宿主機程序代碼;以及
翻譯緩存管理單元,用于對所述翻譯后代碼緩存和地址注射空間進行管理,
其中,所述地址注射空間用于存儲虛擬頁號和相應的物理頁號,
代碼翻譯器在執行程序代碼翻譯時,對于所述目標機程序代碼的一個代碼段中的加載/存儲指令,將該加載/存儲指令的虛擬地址的虛擬頁號與所述地址注射空間中所存儲的虛擬頁號進行比較,如果兩個虛擬頁號相同,則根據所述地址注射空間中所存儲的物理頁號,獲得相應的物理地址,否則,由執行單元執行地址轉換旁路緩沖器搜索、即TLB搜索,以獲得相應的物理地址。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于國際商業機器公司,未經國際商業機器公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/200710005260.8/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:基于進程監控對計算機文件進行加解密的方法
- 下一篇:噴水式推進船





