[发明专利]硬件化的进程内存管理核的方法无效
申请号: | 200810062346.9 | 申请日: | 2008-05-09 |
公开(公告)号: | CN101315602A | 公开(公告)日: | 2008-12-03 |
发明(设计)人: | 陈天洲;张楠;谢斌;严力科;章铁飞;项凌翔;王罡;陈剑;冯德贵;陈度 | 申请(专利权)人: | 浙江大学 |
主分类号: | G06F9/44 | 分类号: | G06F9/44;G06F9/46 |
代理公司: | 杭州中成专利事务所有限公司 | 代理人: | 唐银益 |
地址: | 310027浙*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明涉及硬件化的操作系统设计,旨在提供一种硬件化的进程内存管理核的方法。该方法包括以下步骤:(1)进程页表的创建;(2)进程虚拟地址到硬件地址的映射;(3)进程虚拟地址到硬件地址的取消映射;(4)进程页表的切换;(5)进程页表的删除;(6)进程虚拟地址到物理地址的转换。本发明所述的硬件化的进程内存管理核的方法,提出了操作系统软件功能硬件化的思想。主要方法是将内存管理中进程页表创建,删除,切换,虚拟地址映射,反映射以及虚拟地址到物理地址的转换的功能交付给硬件来完成,降低了调度时进程切换时的开销,提高了进程切换时效率。本发明的思想还可以利用在操作系统的其他部件中。 | ||
搜索关键词: | 硬件 进程 内存 管理 方法 | ||
【主权项】:
1、硬件化的进程内存管理核的方法,其特征在于,包括以下步骤:(1)进程页表的创建:读入要创建页表的进程的进程号PID,在进程号与页表基地址转换表中找到进程号所对应的表项,并将进程页表的基地址,即PID*1024写入该表项中;(2)进程虚拟地址到硬件地址的映射:根据输入的进程号PID,计算出该进程的页表基地址,利用输入的虚拟地址的高10位作为索引,找到页表中该虚拟地址对应的项,检查表项中的合法位是否置位,如果已经置位则操作失败,将用于指示操作是否成功的寄存器suc赋值为0,表示操作失败;否则将物理地址的高10位填入该表项中并将表项中的合法位置位,该合法位标识了该虚拟页已经被映射使用;(3)进程虚拟地址到硬件地址的取消映射:根据输入的进程号PID,计算出该进程的页表基地址,利用输入的虚拟地址的高10位作为索引,找到页表中该虚拟地址对应的项,将表项中的合法位清除,表示该虚拟页已经被释放;(4)进程页表的切换:首先将切换前运行的进程PID存储到用来记录上一个运行进程PID号寄存器last_pid中,然后将输入的进程PID号赋给标志当前运行进程PID的寄存器curr_pid;(5)进程页表的删除:读入要创建页表的进程的进程号PID,在进程号与页表基地址转换表中找到进程号所对应的表项,并将该表项清空,表明该进程的页表映射已经完全失效,同时要将实际页表中所有项的合法位清空;(6)进程虚拟地址到物理地址的转换:将输入虚拟地址的前10位作为索引,首先在TLB中进行查找,如果查找到则直接返回物理地址;否则以curr_pid计算出当前进程页表的基地址,在该页表中选择出对应的表项;然后检查该表项的合法位,如果该位为零则表明无此虚拟地址,程序访问错误,置suc为0;否则将表项中存储的物理地址高10位读出到PA寄存器中和TLB的对应项中;TLB的替换策略采用先进先出的替换策略。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江大学,未经浙江大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/200810062346.9/,转载请声明来源钻瓜专利网。