[發明專利]與調度性能直接相關的內存管理核的硬件化的方法無效
| 申請號: | 200910097644.6 | 申請日: | 2009-04-13 |
| 公開(公告)號: | CN101539869A | 公開(公告)日: | 2009-09-23 |
| 發明(設計)人: | 陳天洲;繆良華;張楠;陳劍;汪達舟 | 申請(專利權)人: | 浙江大學 |
| 主分類號: | G06F9/48 | 分類號: | G06F9/48 |
| 代理公司: | 杭州求是專利事務所有限公司 | 代理人: | 林懷禹 |
| 地址: | 310027浙*** | 國省代碼: | 浙江;33 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 調度 性能 直接 相關 內存 管理 硬件 方法 | ||
1、一種與調度性能直接相關的內存管理核的硬件化的方法,其特征在于,包括以下步驟:
(1)進程頁表的創建:
輸入:PID;
輸出:suc寄存器,操作成功返回1,失敗返回0;
讀入要創建頁表的進程的PID,在PID與頁表基地址轉換表中找到PID所對應的表項,并將進程頁表的基地址,即PID*1024寫入該表項中,采用一級頁表映射,每個頁表的大小為4K?Bytes,因此該頁表映射最多達8M?Bytes的內存空間;
(2)進程虛擬地址到物理地址的映射:
輸入:PID,要映射的虛擬地址,要映射的物理地址;
輸出:suc寄存器,操作成功返回1,失敗返回0;
根據輸入的PID,計算出該進程的頁表基地址,利用輸入的虛擬地址的高10位作為索引,找到頁表中該虛擬地址對應的項,檢查表項中的合法位是否置位,如果已經置位則操作失敗,將suc賦值為0;否則將物理地址的高10位填入該表項中并將表項中的合法位置位;該合法位標識了該虛擬頁已經被映射使用;
(3)進程虛擬地址到物理地址的取消映射:
輸入:PID,要取消映射的虛擬地址;
輸出:suc寄存器,操作成功返回1,失敗返回0;
根據輸入的PID,計算出該進程的頁表基地址,利用輸入的虛擬地址的高10位作為索引,找到頁表中該虛擬地址對應的項,將表項中的合法位置0,表示該虛擬頁已經被釋放;
(4)進程頁表的切換:
輸入:即將運行PID;
輸出:suc寄存器,操作成功返回1,失敗返回0;
首先將切換前正在運行的進程PID存儲到用來記錄上一個運行進程PID號寄存器last_pid中,然后將輸入的進程PID號賦給標志當前運行進程PID的寄存器curr_pid;由于在進行虛擬地址到物理地址的轉換時,頁表的選擇是根據curr_pid來進行計算,因此修改了curr_pid的值實現進程頁表切換;
(5)進程頁表的刪除:
輸入:PID;
輸出:無;
讀入要創建頁表的進程的PID,在進程號與頁表基地址轉換表中找到進程號所對應的表項,并將該表項清空,表明該進程的頁表映射已經完全失效,同時要將實際頁表中所有項的合法位清空,實現進程頁表的刪除;
(6)進程虛擬地址到物理地址的轉換:
輸入:虛擬地址VA;
輸出:物理地址PA,suc寄存器,操作成功返回1,失敗返回0;
將輸入虛擬地址的前10位作為索引,首先在TLB中進行查找,如果查找到則直接返回物理地址;否則以curr_pid計算出當前進程頁表的基地址,在該頁表中選擇出對應的表項;然后檢查該表項的合法位,如果該位為零則表明無此虛擬地址,程序訪問錯誤,置suc為0;否則將表項中存儲的物理地址高10位讀出到PA寄存器中和TLB的對應項中;TLB的替換采用先進先出的替換方法。
2、根據權利要求1所述的一種與調度性能直接相關的內存管理核的硬件化的方法,其特征在于:所述的進程頁表創建,刪除,切換,虛擬地址映射,反映射以及虛擬地址到物理地址的轉換均由硬件來完成。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于浙江大學,未經浙江大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/200910097644.6/1.html,轉載請聲明來源鉆瓜專利網。





