[發(fā)明專利]與調度性能直接相關的內存管理核的硬件化的方法無效
| 申請?zhí)枺?/td> | 200910097644.6 | 申請日: | 2009-04-13 |
| 公開(公告)號: | CN101539869A | 公開(公告)日: | 2009-09-23 |
| 發(fā)明(設計)人: | 陳天洲;繆良華;張楠;陳劍;汪達舟 | 申請(專利權)人: | 浙江大學 |
| 主分類號: | G06F9/48 | 分類號: | G06F9/48 |
| 代理公司: | 杭州求是專利事務所有限公司 | 代理人: | 林懷禹 |
| 地址: | 310027浙*** | 國省代碼: | 浙江;33 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 調度 性能 直接 相關 內存 管理 硬件 方法 | ||
技術領域
本發(fā)明涉及硬件化的操作系統(tǒng),尤其是涉及一種硬件化的進程內存管理核。
背景技術
隨著計算機應用在人們生活中普及,依靠計算機進行自動化的管理,控制,計算和服務處理變得越來越重要。特別在金融,工業(yè),控制等領域,除了需要保證計算機可靠與安全,對處理速度,響應時間高效性的需求也顯得非常重要。
同時由于互聯(lián)網的飛速發(fā)展,大型服務器和某些專門用于實時任務處理的機器需要服務的響應和請求的處理有非常高的速度。但是,軟件的使用限制了速度的進一步提升。作為軟件管理者的操作系統(tǒng)也實際上成為了速度提升的瓶頸。因此出現(xiàn)了許多針對原有操作系統(tǒng)的改進版本,Linux2.4版本里時鐘的最小粒度為10毫秒,而Linux2.6將時鐘粒度降低到1毫秒,但這還遠達不到實時系統(tǒng)的要求。RTLinux通過將任務分解成實時部分和非實時部分,在原有操作系統(tǒng)核的基礎上進一步獨立出實時核來專門處理和分發(fā)實時任務,提高了響應速度,幾乎可以達到了十幾個微秒級的調度粒度。但是,一味地提高時鐘粒度會使調度的開銷增大,也就是說當時鐘粒度小到某個極限時,系統(tǒng)的性能不會因為時鐘頻率的增加而提高了。
另外,軟件技術的改進受到的硬件的制約,如果能夠通過硬件的改進來進行加速,效果會更好。比如,在Intel公司每次對處理器的改進上,都會加入一些新的指令針對特定的應用程序進行加速,比如在SSE4指令集中過提供了一條新的計算CRC(Cyclic?Redundancy?Check)指令,因此數(shù)據(jù)的集成檢查可以更加迅速的完成。而且,軟件存在與內存中,容易被惡意的代碼進行篡改,盡管安全防護技術層出不窮,但相比于實現(xiàn)同樣功能的硬件單元,安全性就顯得不足。
發(fā)明內容
為了克服背景技術中的不足,本發(fā)明的目的在于提供一種與調度性能直接相關的內存管理核的硬件化的方法。
本發(fā)明是通過以下技術方案實現(xiàn)的,包括以下步驟:
(1)進程頁表的創(chuàng)建:
輸入:PID;
輸出:suc寄存器,操作成功返回1,失敗返回0;
讀入要創(chuàng)建頁表的進程的PID,在PID與頁表基地址轉換表中找到PID所對應的表項,并將進程頁表的基地址,即PID*1024寫入該表項中,采用一級頁表映射,每個頁表的大小為4K?Bytes,因此該頁表映射最多達8M?Bytes的內存空間;
(2)進程虛擬地址到物理地址的映射:
輸入:PID,要映射的虛擬地址,要映射的物理地址;
輸出:suc寄存器,操作成功返回1,失敗返回0;
根據(jù)輸入的PID,計算出該進程的頁表基地址,利用輸入的虛擬地址的高10位作為索引,找到頁表中該虛擬地址對應的項,檢查表項中的合法位是否置位,如果已經置位則操作失敗,將suc賦值為0;否則將物理地址的高10位填入該表項中并將表項中的合法位置位;該合法位標識了該虛擬頁已經被映射使用;
(3)進程虛擬地址到物理地址的取消映射:
輸入:PID,要取消映射的虛擬地址;
輸出:suc寄存器,操作成功返回1,失敗返回0;
根據(jù)輸入的PID,計算出該進程的頁表基地址,利用輸入的虛擬地址的高10位作為索引,找到頁表中該虛擬地址對應的項,將表項中的合法位置0,表示該虛擬頁已經被釋放;
(4)進程頁表的切換:
輸入:即將運行PID;
輸出:suc寄存器,操作成功返回1,失敗返回0;
首先將切換前正在運行的進程PID存儲到用來記錄上一個運行進程PID號寄存器last_pid中,然后將輸入的進程PID號賦給標志當前運行進程PID的寄存器curr_pid;由于在進行虛擬地址到物理地址的轉換時,頁表的選擇是根據(jù)curr_pid來進行計算,因此修改了curr_pid的值實現(xiàn)進程頁表切換;
(5)進程頁表的刪除:
輸入:PID;
輸出:無;
讀入要創(chuàng)建頁表的進程的PID,在進程號與頁表基地址轉換表中找到進程號所對應的表項,并將該表項清空,表明該進程的頁表映射已經完全失效,同時要將實際頁表中所有項的合法位清空,實現(xiàn)進程頁表的刪除;
(6)進程虛擬地址到物理地址的轉換:
輸入:虛擬地址VA;
輸出:物理地址PA,suc寄存器,操作成功返回1,失敗返回0;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于浙江大學,未經浙江大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業(yè)授權和技術合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/200910097644.6/2.html,轉載請聲明來源鉆瓜專利網。





