[发明专利]存储器保护方法及所用装置无效
| 申请号: | 99100621.6 | 申请日: | 1999-02-09 |
| 公开(公告)号: | CN1227367A | 公开(公告)日: | 1999-09-01 |
| 发明(设计)人: | 猪瀨伸一 | 申请(专利权)人: | 日本电气株式会社 |
| 主分类号: | G06F12/14 | 分类号: | G06F12/14;G06F12/16 |
| 代理公司: | 中科专利代理有限责任公司 | 代理人: | 朱进桂 |
| 地址: | 日本国*** | 国省代码: | 暂无信息 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 存储器 保护 方法 所用 装置 | ||
本发明涉及计算机系统的存储器管理单元中使用的存储器保护方法及所用装置,具体地说,涉及一种存储器保护方法及所用装置,其是通过在计算机系统的程序计数器中保留信息的使用和在存储器地址的值中所包含的存储器保护信息,根据一预定的规则通过在存储器空间安排各单个的处理过程以实现存储器保护。
多数内置CPU和单片微处理器没有MMU(存储器管理单元)。当用其开发一大规模应用程序时,由于大量的程序模块(如操作系统、驱动程序和程序库)相互协同地操作,有时需要大量的时间用于确定问题产生的原因。尤其是在由于指针设定错误、堆栈溢出等类似情况造成的程序超时运行的情况下,因为所有的任务(包括操作系统和驱动程序)是在同一存储空间中操作的,所以不能简单的确定超时运行的原因。考虑到这种情况,对每一处理过程需要提供最小需要的存储器保护功能。
根据应用于常规计算机系统的一存储器保护方法,为了实现存储器保护功能,采用了一状态寄存器用于识别执行状态下指令的特许级别和存取目标存储器的特许级别,而且存储器保护信息被存储在各存储段。然而,这导致硬件尺寸增大(见日本专利申请56-93163,59-177667,61-94156和2-230442)。
本发明的目的是提供一种存储器保护方法和装置,其通过在存储器中设计各单一处理过程的一布局以致于对每一处理过程实现存储器保护功能,仅附加少量的硬件资源即可实现存储器保护。
根据本发明的一个方面,在此提供了包括如下步骤的一种存储器保护方法:把存储器保护字段之一分配到各个程序计数器的预定区和存储空间的预定区中;将存储器保护字段的值相互进行比较,以便确定在执行指令期间是否允许或禁止存储器存取。
根据本发明的另一方面,在此提供了包括如下步骤的一存储器保护方法:把程序计数器的最高有效位(MSB)至第X位和存储器空间的最高有效位到第X位用于存储器保护字段,从而提供2X个特许级别;在执行的指令包括存储器存取时,将程序计数器的特许级别和将被存取的地址的特许级别相互比较;当程序计数器的特许级别低于将被存取的地址的特许级别时禁止存储器的存取。
在此情况下,最好是只有在执行指令期间出现需要获得存储器存取时,对分配给存储器空间的存储器保护字段作一基准,且分配给存储器空间的存储器保护字段在其它情况下用于一常规地址的字段。
根据本发明的另一方面,提供了一种存储器保护装置,其包括:一执行级别比较器,其用于从程序计数器取出最高有效位至第X位和从存储器空间取出最高有效位至第X位,并将从程序计数器取出的第X位的值A与从存储器空间取出的第X位的值B比较;以及输出装置,其用于基于比较的结果,输出显示在执行指令期间是否允许或禁止存储器存取的一信号。
在上述存储器保护装置中,当执行级别比较器确定值A等于值B时,输出装置输出存储器存取允许信号;当执行级别比较器确定值A大于值B时,输出装置输出存储器存取允许信号;以及当执行级别比较器确定值A小于值B时,输出装置输出用于禁止存储器存取的异常产生信号。
在本发明中,在每个存在程序计数器和地址空间的第X位存储特许级别。这使存储器保护功能在不增加大尺寸硬件资源的情况下能够得以实现。
图1是显示本发明的地址空间和存储器保护字段之间关系的示意图;
图2是显示本发明的地址空间和特许级别之间关系的示意图;
图3是本发明的实施例的存储器保护装置的示意图;
图4是本发明的实施例的存储器保护装置的流程图;
图5是本发明的实施例的操作示意图。
下面将参照附图详细描述本发明的一实施例。在本发明中,用作存储器保护标识符的数字被分配给指令和数据条目。是否允许或禁止一存储器的存取是根据前面所述的数字是否满足“大于”或“小于”的关系来确定的。分配给指令和数据条目的后面将称为“特许级别”。
通常,在计算机系统中使用的程序计数器保留执行指令的顶端地址。当执行指令包括存储器存取时,它们包含涉及直接存储的存取目标(即直接地址)或非直接存储的存取目标(即相对地址)的地址信息。
按照本发明,存储器保护信息(特许级别)是从计算机系统的程序计数器以及从涉及存取目标存储器的地址信息中取出的,且取出的信息用于确定是否进行存储器保护。下面说明特许级别取出方法,如图1所示,存储器保护字段分配给从程序计数器的最高有效位至第X位延伸的一区域。程序计数器的存储器保护字段确定指令的特许级别。特许级别数取决于分配给存储器保护字段的位数。具体地说,如果X位被分配给存储器保护字段,那么有2X个特许级别。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于日本电气株式会社,未经日本电气株式会社许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/99100621.6/2.html,转载请声明来源钻瓜专利网。





