CN102096642A - 信息处理装置及存储器保护方法 - Google Patents

信息处理装置及存储器保护方法 Download PDF

Info

Publication number
CN102096642A
CN102096642A CN2010105920276A CN201010592027A CN102096642A CN 102096642 A CN102096642 A CN 102096642A CN 2010105920276 A CN2010105920276 A CN 2010105920276A CN 201010592027 A CN201010592027 A CN 201010592027A CN 102096642 A CN102096642 A CN 102096642A
Authority
CN
China
Prior art keywords
protection zone
protection
directly
visit
memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2010105920276A
Other languages
English (en)
Other versions
CN102096642B (zh
Inventor
小林秀典
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Publication of CN102096642A publication Critical patent/CN102096642A/zh
Application granted granted Critical
Publication of CN102096642B publication Critical patent/CN102096642B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1416Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
    • G06F12/1425Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block
    • G06F12/1441Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block for a range

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

本发明提供信息处理装置及存储器保护方法。所述存储器保护方法将存储器的地址空间划分为两个或更多保护区域,并且保护所述存储器免受程序对保护区域的未授权访问,所述存储器保护方法包括:定义步骤,即定义保护区域之间的关系;确定步骤,即当所述保护区域之间的所述关系是包含关系时,确定被包含保护区域不能直接访问包含保护区域,并且所述包含保护区域能够直接访问所述被包含保护区域;以及当请求对被确定为能够被直接访问的保护区域的访问时,准许对被确定为能够被直接访问的保护区域的直接访问、并且禁止对被确定为不能被直接访问的保护区域的直接访问的步骤。

Description

信息处理装置及存储器保护方法
技术领域
本发明涉及保护存储器免受程序的未授权访问的存储器保护方法及信息处理装置。
背景技术
作为保护存储器免受程序的未授权访问的常规方法,一般将中央处理单元(CPU)的执行模式和存储器管理单元(MMU,Memory Management Unit)的功能进行组合。例如,使用区别在特权和非特权模式(或具有多个级别的特权模式)下的执行的CPU,来设置在特权模式(或高级特权模式)下使用MMU的功能可访问的区域,以及在特权和非特权模式下均可访问的区域。可以设置仅在特权模式下可使用的存储器区域,以防止非特权模式下的未授权访问。在该方法中,不能独立于执行模式来自由设置待保护区域,但是,通常在特权模式下来执行所有的内置软件程序。
作为保护存储器免受在相同执行模式下执行的程序的未授权访问的方法,将程序划分为一个或更多模块,并且将各个模块布置在特有的虚拟地址空间中。一般而言,布置在不同虚拟地址空间中的功能模块,不能直接访问布置在另一地址空间中的存储器区域(不能在无OS等媒介的情况下来访问它)。这能够防止布置在地址空间中的模块之间的未授权访问。然而,该方法须要使用操作系统(OS)的功能,才能够响应于模块之间的功能调用来访问另一模块的数据。一般在OS中来复制数据,因而与直接访问另一模块的数据相比,执行效率降低。
作为保护存储器免受统一地址空间中的未授权访问的方法,已知有使用通过划分统一地址空间而获得的区域和模块两者的标识符的方法(例如,日本专利特开2002-189633号公报)。该模块被禁止访问与该模块具有不同的标识符的区域。当访问另一模块时,执行特殊空间切换程序,来将访问目的地的标识符改变为访问之前的程序的标识符。在访问之后,令标识符返回为原始标识符,从而限制除功能调用之外的访问。在这种情况下,可以通过寻址来直接访问数据。然而,在功能调用中需要与标识符有关的操作,因而与基于直接函数调用的数据参照相比,执行效率变低。
按照常规,当使用存储器保护功能时,需要使用间接功能调用,来访问保持在不同保护区域中的数据。即使当来自不同保护区域中的特定模块的访问是可靠的时,进行访问的模块也须要使用间接功能调用。间接功能调用的执行效率比直接功能调用低,因而降低了执行效率。
发明内容
本发明提供通过如下处理来减少执行效率的下降的存储器保护技术,在所述处理中,使得能够进行来自由访问目的地模块确定为具有高可靠性的模块的直接过程调用及访问,当不执行间接功能调用时,将来自被确定为具有低可靠性的模块的访问检测为未授权访问,并且当执行间接功能调用时,将其检测为授权访问。
根据本发明的一个方面,提供了一种存储器保护方法,该存储器保护方法将存储器的地址空间划分为至少两个保护区域,并且保护所述存储器免受程序对保护区域的未授权访问,所述存储器保护方法包括:定义步骤,定义保护区域之间的关系;确定步骤,当所述保护区域之间的所述关系是包含关系时,确定被包含保护区域不能直接访问包含保护区域,并且所述包含保护区域能够直接访问所述被包含保护区域;以及存储器管理步骤,针对被确定为能够进行直接访问的访问,准许直接访问,并且针对被确定为不能进行直接访问的访问,禁止直接访问。
根据本发明的另一方面,提供了一种存储器保护方法,该存储器保护方法将存储器的地址空间划分为至少两个保护区域,并且保护所述存储器免受程序对保护区域的未授权访问,所述存储器保护方法包括通过函数调用从具有高可靠性的模块访问所述保护区域、禁止通过函数调用从具有低可靠性的模块对所述保护区域的访问、以及通过间接过程调用从所述具有低可靠性的模块访问所述保护区域。
根据本发明的又一方面,提供了一种信息处理装置,其将存储器的地址空间划分为至少两个保护区域,并且保护所述存储器免受程序对保护区域的未授权访问,所述信息处理装置包括:定义单元,其适合于定义保护区域之间的关系;确定单元,其适合于在所述保护区域之间的所述关系是包含关系时,确定被包含保护区域不能直接访问包含保护区域,并且所述包含保护区域能够直接访问所述被包含保护区域;以及存储器管理单元,其适合于针对被确定为能够进行直接访问的访问,准许直接访问,并且针对被确定为不能进行直接访问的访问,禁止直接访问。
本发明能够提供通过如下处理来减少执行效率的下降的存储器保护技术,在所述处理中,使得能够对被确定为具有高可靠性的保护区域进行直接访问,并且,将对被确定为具有低可靠性的保护区域的直接访问作为未授权访问进行抑制。
通过以下参照附图对示例性实施例的描述,本发明的其他特征将变得清楚。
附图说明
图1A及1B是用于说明第一实施例中的信息处理装置的结构的框图;
图1C是用于说明保护区域之间的层次关系的框图;
图2A是用于说明统一地址空间中的保护区域的布置的图;
图2B是用于说明访问权限管理表中的初始设置的表;
图3是用于说明第一实施例中的实现间接过程调用的处理的流程图;
图4A是用于说明第二实施例中的信息处理装置的结构的框图;
图4B是示出特殊访问权限管理表中的初始设置的表;
图5是示出第二实施例中的执行特殊处理程序的处理的流程图;
图6A是用于说明第三实施例中的信息处理装置的结构的框图;
图6B是例示在依照图7的流程图转换过程调用之后的调用关系的图;
图7是用于说明将除保护区域之外的区域的过程调用转换为间接过程调用的处理的流程图;
图8A是用于说明保护区域层次关系定义表的表;
图8B是示出保持在特殊访问区域定义表中的信息的表;
图9A是用于说明具有访问标识符的访问权限管理表的表;以及
图9B是用于说明访问控制矢量的图。
具体实施方式
<第一实施例>
第一实施例中的信息处理系统包括两个信息处理装置1及2。信息处理装置1从验证目标程序生成验证目标图像,并且,信息处理装置2执行并验证该验证目标图像。
图1A示出了根据第一实施例的信息处理装置1的结构。中央处理单元(CPU)101对图1A中的信息处理装置1进行总体控制。由存储不需要改变的程序及参数的ROM,以及临时存储从外部设备等供给的程序及数据的RAM,形成存储器102。输入/输出接口103确保与信息处理装置2的连接。系统总线104连接CPU 101、存储器102及输入/输出接口103,以便它们能够相互通信。
存储器102中的验证目标程序105可以包含未授权访问,并且在本实施例中由模块A、B、C及D构成。未授权访问由程序错误等引起,并且,有意产生的访问被视为授权访问。假设验证目标程序105将当进行调用的模块是可靠的时的功能调用,描述为直接函数调用,并且将其他情况下的功能调用,描述为后述的间接过程调用。另外,假设模块之间的访问仅在功能调用中是必需的。表106(保护区域层次关系定义表)定义保护区域之间的层次关系。程序107(验证目标图像生成程序)生成验证目标图像。
图1B示出了根据第一实施例的信息处理装置2的结构。信息处理装置2能够将存储器的地址空间划分为两个或更多保护区域,并且保护存储器免受程序对保护区域的未授权访问。中央处理单元(CPU)111对信息处理装置2进行总体控制。由存储不需要改变的程序及参数的ROM,以及临时存储从信息处理装置1供给的程序及数据的RAM,形成存储器112。充当存储器管理设备的存储器管理单元(MMU)113,确定从CPU101请求的对另一单元的访问的有效性。存储器管理单元113还充当存储器保护单元(MPU),并且可以并入于CPU 111中。通过查找访问权限管理表119,存储器管理单元113准许或限制从CPU 111对存储器112的访问。可以将访问权限管理表119布置在存储器112中。在接收到来自CPU111的访问请求时,存储器管理单元113在访问权限管理表119中搜索与访问目的地地址相对应的条目(entry),并且确定该访问是对可访问的保护区域的访问,还是对不可访问的保护区域的访问。当存储器管理单元113检测到受限的访问请求时,其将该事件通知给CPU 111。输入/输出接口114确保与信息处理装置1的连接。然而,输入/输出接口114在验证目标图像116的执行期间不产生中断。系统总线115连接CPU 111、存储器112、存储器管理单元113及输入/输出接口114,以便它们能够相互通信。
信息处理装置1传送存储器112中的验证目标图像116。操作系统117进行存储器管理单元113的初始设置。初始访问权限保持表118保持访问权限管理表119的初始设置值。
图1C概念性地示出了保护区域之间的层次关系。保护区域是用于保护模块数据的区域。例如,用于模块A的保护区域是用于保护模块A的数据的区域。用于模块C的保护区域包含用于模块A及用于模块B的保护区域。用于操作系统的保护区域包含用于模块A、用于模块B、用于模块C及用于模块D的保护区域。其余的关系(除包含关系之外的)是对等关系。假设当保护区域具有包含关系时,从包含保护区域对被包含保护区域的访问不包括未授权访问。相反地,假设从被包含保护区域对包含区域的访问或者对具有对等关系的保护区域的访问,可以包括未授权访问。
图8A是例示定义图1C中所示的保护区域之间的关系的保护区域层次关系定义表106的表。为了定义保护区域之间的层次关系,保护区域层次关系定义表106仅描述保护区域之间的包含关系。未描述的保护区域之间的关系是对等关系。例如,用于模块A和用于模块B的保护区域具有对等关系。
首先,将说明信息处理装置1中的处理。在信息处理装置1中,验证目标图像生成程序107通过查找保护区域层次关系定义表106,来确定保护区域之间的可靠性。当保护区域具有包含关系时,验证目标图像生成程序107确定当从被包含保护区域来观察时,包含保护区域的可靠性是高的,并且当从包含保护区域来观察时,被包含保护区域的可靠性是低的。当保护区域具有对等关系(而非包含关系)时,验证目标图像生成程序107确定保护区域之间的可靠性是低的。例如,在图1C中,用于操作系统117的保护区域121(包含保护区域),包含所有其他保护区域(被包含保护区域)。因而,当从所有其他保护区域来观察时,用于操作系统117的保护区域121的可靠性是高的。相反地,用于模块A的保护区域122和用于模块B的保护区域123具有对等关系。这样,当从用于模块A和用于模块B的保护区域来观察时,对方的可靠性是低的。
验证目标图像生成程序107进一步编译验证目标程序105,从而生成验证目标图像116。编译结果包括验证目标图像116在统一地址空间中的布置信息。将验证目标图像、统一地址空间中的布置信息以及保护区域之间的可靠性的确定结果,从信息处理装置1经由输入/输出接口103及114,传送至信息处理装置2。
接下来,将说明信息处理装置2中的处理。在信息处理装置2中,将验证目标图像116在统一地址空间中的布置信息以及保护区域之间的可靠性的确定结果,连同OS在统一地址空间中的布置信息一起保持在初始访问权限保持表118中。
图2A例示了分配给操作系统及验证目标图像的区域在统一地址空间中的布置。分配给各模块的保护区域的地址范围,对应于分配给各程序的存储器区域。例如,分配给用于操作系统的保护区域的地址范围是0x0000至0x0FFF,并且,可以使用该范围内的地址,来访问分配给操作系统117的存储器区域。
图2B例示了初始访问权限保持表118。访问权限管理表119存储基于初始访问权限保持表118中的初始设置、被确定为具有高可靠性的保护区域、以及被确定为具有低可靠性的保护区域而进行的确定的结果。初始设置准许来自由进行访问的模块确定为具有高可靠性的保护区域的访问,并且限制来自被确定为具有低可靠性的保护区域的访问。
在信息处理装置2中,使用间接过程调用,来实现来自被确定为具有低可靠性的保护区域的访问。间接过程调用仅在过程调用的执行期间,才允许来自被确定为具有低可靠性的保护区域的访问。
图3示出了实现间接过程调用的处理。下面,将通过例示模块A间接调用模块B的过程的情况,来说明处理序列。当在模块A的执行中进行间接过程调用时,模块A执行间接过程调用处理,以临时合并(组合)用于模块A和用于模块B的保护区域。通过在步骤S302中利用模块A重写访问权限管理表119的内容,来实现上述处理。更具体地说,将从模块A对地址范围0x2800至0x2FFF的访问的条目,由禁止访问重写为准许访问,其中,所述地址范围0x2800至0x2FFF被分配给充当访问目的地的模块B的保护区域。结果,准许从模块A对模块B的访问。然后,在步骤S303中,模块A通过函数调用,直接调用由充当访问目的地的模块B提供的期望的过程。最后,在从函数调用返回之后,模块A将合并的保护区域,再次分离为合并之前的保护区域。通过在步骤S304中将访问权限管理表119写回为原始设置值,以禁止从模块A对地址范围0x2800至0x2FFF的访问,来实现上述处理。
可以通过改变针对模块A的访问权限管理表的有效范围,来实现保护范围的合并或分离。例如,下面将说明当使用如下所述的MMU时的实现方法,所述MMU具有图9A中所示的访问权限管理表961,以及图9B中所示的访问权限控制矢量962。访问权限管理表961保持针对访问目的地的地址范围的访问标识符。基于访问标识符和访问权限控制矢量962的组合,来确定是准许访问还是禁止访问。访问权限控制矢量962是32位字符串,并且,各个位对应于访问标识符“1”至“31”。当在访问权限控制矢量962中、设置了与分配给访问目的地的地址范围的访问标识符相对应的位时,准许对该地址范围的访问。如果将相应的位清除,则访问受限。例如,在开始执行模块A时,访问权限控制矢量962是0xa。通过设置或清除访问权限控制矢量962中的相应位,来实现间接过程调用中的保护区域的合并或分离。例如,当在模块A的执行中合并模块A和B的保护区域时,在访问权限控制矢量962中设置与访问标识符“3”相对应的位。当分离这些保护区域时,清除与访问标识符“3”相对应的位。
在该结构中,将间接过程调用,用于从被确定为具有低可靠性的保护区域进行的功能调用,并且将直接过程调用,用于从被确定为具有高可靠性的保护区域进行的功能调用。在除间接功能调用之外的调用中的、从被确定为具有低可靠性的保护区域进行的直接调用,被检测为未授权访问。相反地,从被确定为具有高可靠性的保护区域进行的访问,即使在直接函数调用中也是被准许的。由于直接过程调用的执行效率高于间接过程调用,因此,能够抑制存储器保护引起的执行效率的下降。
第一实施例能够提供这样的存储器保护技术,即通过使得能够进行针对具有高可靠性的保护区域的直接过程调用,并且将在除间接过程调用之外的调用中的、对被确定为具有低可靠性的保护区域的访问,作为未授权访问进行禁止,来减少执行效率的下降。
<第二实施例>
第二实施例中的信息处理系统包括两个信息处理装置1及3。信息处理装置1与第一实施例中相同。图4A示出了根据第二实施例的信息处理装置3的结构。根据第二实施例的信息处理装置3中的存储器管理单元402,具有特殊访问权限管理表406。特殊访问权限管理表406可以驻留在存储器408中。统一地址空间中的保护区域的布置以及保护区域之间的关系,与第一实施例中相同。
输入/输出接口114能够用作输入/输出设备,用于实现与外部存储设备或者信息处理装置3的用户的通信。此外,输入/输出接口114能够连接要连接至外部设备的网络设备,并且将中断通知给CPU 401。即使在验证目标图像116的执行期间,也可能会发生中断。CPU 401具有用于执行特殊处理的特殊模式,以及用于执行其他处理的正常模式。当接收到中断时,CPU 401改变为特殊模式。存储器管理单元402识别CPU 401的执行模式,并且在CPU 401处于正常模式时查找访问权限管理表405,来确定是准许访问还是禁止访问。当CPU 401处于特殊模式时,存储器管理单元402查找特殊访问权限管理表406,来确定是准许访问还是禁止访问。保持在访问权限管理表405及特殊访问权限管理表406中的信息,与保持在第一实施例中的访问权限管理表119中的信息相同。
存储器408中的特殊访问区域定义表407可以由信息处理装置3来生成,也可以连同验证目标图像116一起从信息处理装置1来传送。图8B示出了保持在特殊访问区域定义表407中的信息。特殊访问区域定义表407定义了在各特殊处理中可能会被访问的区域。例如,特殊处理程序EXP1可能会仅访问地址范围0x0000至0x0FFF,并且,特殊处理程序ISR2可能会访问地址范围0x0000至0x0FFF以及0x3A00至0x3FFF。
图4B例示了特殊访问权限管理表406中的初始设置。根据这些初始设置,仅刚好在CPU 401改变为特殊模式之后,分配给操作系统的地址范围0x0000至0x0FFF是可访问的。
图5示出了在特殊事件产生时执行特殊处理程序的处理。下面,将通过例示当调用ISR2时的处理,来说明上述处理。当CPU改变为特殊模式时,控制转变到OS。在步骤S502中,OS查找特殊访问区域定义表407,来指定要被特殊处理程序ISR2访问的保护区域。在步骤S503中,将特殊访问权限管理表406中的设置(图4B),改变为准许从特殊处理程序ISR2对地址范围0x0000至0x0FFF以及0x3A00至0x3FFF的访问。然后,在步骤S504中,调用特殊处理程序ISR2。在特殊处理程序ISR2结束之后,在步骤S505中,使特殊访问权限管理表406中的设置,改变并返回到特殊事件产生之前的状态。其余操作与第一实施例中相同。
该结构能够在特殊处理程序的执行中,来防止不需要访问的保护区域的存储器遭受未授权访问的破坏。特殊处理程序能够直接访问需要访问的保护区域,而无须使用间接功能调用。因此,能够抑制存储器保护引起的对中断处理的响应性的下降。
<第三实施例>
第三实施例中的信息处理系统包括两个信息处理装置2及4。信息处理装置2与第一实施例中相同。图6A示出了根据第三实施例的信息处理装置4的结构。第三实施例与第一实施例的不同之处在于,验证目标程序605中的所有功能调用均被描述为直接函数调用,并且,信息处理装置4具有开放过程一览表606。开放过程一览表606列出了准许在保护区域之间调用的过程的符号名称。
图7示出了将不同保护区域的直接过程调用转换为间接过程调用的处理。在编译中,验证目标图像生成程序607替换验证目标程序605中的过程调用。首先,在步骤S702中,生成要被另一模块调用的过程的列表。在步骤S703中,从在步骤S702中生成的列表中,删除开放过程一览表606中不包含的过程。在步骤S704中,将用于依照图3中所示的序列、来间接调用列表中剩余的各个过程的过程,添加至验证目标程序605。在步骤S705中,将通过对要被在步骤S704中添加的过程间接调用的过程的符号名称,添加前缀“_”而获得的字符串,设置为所添加的过程的符号名称。最后,在步骤S706中,如果在步骤S703中生成的列表,包含在验证目标程序605中的跨越保护区域的过程调用中要调用的过程的名称,则对过程名称添加前缀“_”。
将在步骤S704中添加的过程,布置在其能够被调用模块直接调用的区域中。例如,将未分配给任何模块的地址范围0x3800至0x39FF,设置为能够从所有模块访问的区域。通过将添加的过程布置在该区域中,能够从所有模块来直接调用添加的过程。
图6B是例示在依照图7的流程图转换过程调用之后的调用关系的概念图。在图6B中,将从模块A 651对模块B 652的直接函数调用procB,在转换处理中转换为对添加的过程653的调用_procB。添加的过程653通过直接函数调用,来调用模块B 652的过程。结果,从模块A 651对模块B 652的功能调用,变为间接过程调用。其余操作与第一实施例中相同。
本发明还适用于这样的编译器,所述编译器基于保护区域之间的包含关系,来确定是否禁止直接访问,并且依照确定结果来改变描述。
上述结构能够改变保护区域之间的关系,而无须由开发者改变验证目标程序605。与改变程序的情形相比,能够提高开发效率。
其他实施例
还可以由读出并执行记录在存储设备上的程序来执行上述实施例的功能的系统或装置的计算机(或诸如CPU或MPU等的设备),来实现本发明的各方面;并且可以利用由通过例如读出并执行记录在存储设备上的程序来执行上述实施例的功能的系统或装置的计算机来执行各步骤的方法,来实现本发明的各方面。为此,例如经由网络或从充当存储设备的各种类型的记录介质(例如,计算机可读存储介质)将程序提供给计算机。
虽然参照示例性实施例对本发明进行了描述,但是应当理解,本发明并不局限于所公开的示例性实施例。应当对所附权利要求的范围给予最宽的解释,以使其涵盖所有的这类变型例及等同结构和功能。

Claims (12)

1.一种存储器保护方法,该存储器保护方法将存储器的地址空间划分为至少两个保护区域,并且保护所述存储器免受程序对保护区域的未授权访问,所述存储器保护方法包括:
定义步骤,定义保护区域之间的关系;
确定步骤,当所述保护区域之间的所述关系是包含关系时,确定被包含保护区域不能直接访问包含保护区域,并且所述包含保护区域能够直接访问所述被包含保护区域;以及
存储器管理步骤,针对被确定为能够进行直接访问的访问,准许直接访问,并且针对被确定为不能够进行直接访问的访问,禁止直接访问。
2.根据权利要求1所述的存储器保护方法,其中,在所述确定步骤中,当所述保护区域之间的所述关系不是包含关系时,确定所述保护区域不能直接相互访问。
3.根据权利要求1所述的存储器保护方法,其中,
在所述确定步骤中,将被确定为能够被直接访问的保护区域以及被确定为不能被直接访问的保护区域的确定结果,存储在定义所述保护区域之间的关系的访问权限管理表中,并且,
在所述存储器管理步骤中,当请求对所述被确定为不能被直接访问的保护区域的访问时,将存储在所述访问权限管理表中的、所述被确定为不能被直接访问的保护区域,改变为能够被直接访问的保护区域,并且,准许对所述被确定为不能被直接访问的保护区域的间接访问。
4.根据权利要求3所述的存储器保护方法,其中,在所述存储器管理步骤中,在对所述被确定为不能被直接访问的保护区域的所述间接访问结束之后,使被改变为所述能够被直接访问的保护区域的保护区域,返回为所述不能被直接访问的保护区域,并且,将对所述保护区域的直接访问作为未授权访问进行禁止。
5.根据权利要求3所述的存储器保护方法,其中,所述存储器存储定义在各特殊处理中可能会被访问的保护区域的特殊访问区域定义表。
6.根据权利要求5所述的存储器保护方法,该存储器保护方法还包括接受作为特殊处理的中断处理的输入的输入步骤,
其中,在所述存储器管理步骤中,当在所述输入步骤中、接受作为所述特殊处理的所述中断处理的输入时,通过查找所述特殊访问区域定义表,来获得在所述中断处理中可能会被访问的保护区域,并且,当所述保护区域作为所述被确定为能够被直接访问的保护区域、而被存储在所述访问权限管理表中时,准许对可能会被访问的所述保护区域的直接访问。
7.根据权利要求6所述的存储器保护方法,其中,在所述存储器管理步骤中,当在所述中断处理中可能会被访问的所述保护区域、作为所述被确定为不能被直接访问的保护区域而被存储在所述访问权限管理表中时,将存储在所述访问权限管理表中的、所述被确定为不能被直接访问的存储区域,改变为所述能够被直接访问的保护区域,并且,准许对所述可能会被访问的保护区域的间接访问。
8.根据权利要求7所述的存储器保护方法,其中,在所述存储器管理步骤中,在所述中断处理结束之后,使存储在所述访问权限管理表中的、被改变为所述能够被直接访问的保护区域的保护区域,返回为所述不能被直接访问的保护区域,并且,将对所述保护区域的直接访问作为未授权访问进行禁止。
9.根据权利要求1所述的存储器保护方法,其中,所述存储器管理步骤包括描述程序的步骤,用函数调用来描述被准许进行直接访问的访问,并且,用间接过程调用来描述被禁止进行直接访问的访问。
10.根据权利要求1所述的存储器保护方法,其中,所述存储器管理步骤包括执行程序的步骤,当直接访问被准许时,执行通过函数调用进行的访问,并且,当直接访问被禁止时,执行通过间接过程调用进行的访问。
11.一种存储器保护方法,该存储器保护方法将存储器的地址空间划分为至少两个保护区域,并且保护所述存储器免受程序对保护区域的未授权访问,所述存储器保护方法包括通过函数调用从具有高可靠性的模块访问所述保护区域、禁止通过函数调用从具有低可靠性的模块对所述保护区域的访问、以及通过间接过程调用从所述具有低可靠性的模块访问所述保护区域。
12.一种信息处理装置,其将存储器的地址空间划分为至少两个保护区域,并且保护所述存储器免受程序对保护区域的未授权访问,所述信息处理装置包括:
定义单元,其适合于定义保护区域之间的关系;
确定单元,其适合于在所述保护区域之间的所述关系是包含关系时,确定被包含保护区域不能直接访问包含保护区域,并且所述包含保护区域能够直接访问所述被包含保护区域;以及
存储器管理单元,其适合于针对被确定为能够进行直接访问的访问,准许直接访问,并且针对被确定为不能进行直接访问的访问,禁止直接访问。
CN201010592027.6A 2009-12-15 2010-12-13 存储器保护装置及存储器保护方法 Expired - Fee Related CN102096642B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2009284547 2009-12-15
JP2009-284547 2009-12-15
JP2010-247843 2010-11-04
JP2010247843A JP5582971B2 (ja) 2009-12-15 2010-11-04 メモリ保護方法および情報処理装置

Publications (2)

Publication Number Publication Date
CN102096642A true CN102096642A (zh) 2011-06-15
CN102096642B CN102096642B (zh) 2014-02-12

Family

ID=44129744

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010592027.6A Expired - Fee Related CN102096642B (zh) 2009-12-15 2010-12-13 存储器保护装置及存储器保护方法

Country Status (3)

Country Link
US (1) US8478960B2 (zh)
JP (1) JP5582971B2 (zh)
CN (1) CN102096642B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104881374A (zh) * 2014-02-27 2015-09-02 三星电子株式会社 自加密驱动器和包括自加密驱动器的用户装置
CN108376226A (zh) * 2017-01-18 2018-08-07 丰田自动车株式会社 未授权确定系统和未授权确定方法

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5582971B2 (ja) * 2009-12-15 2014-09-03 キヤノン株式会社 メモリ保護方法および情報処理装置
CN102592083B (zh) * 2011-12-27 2014-12-10 深圳国微技术有限公司 用于提高soc芯片系统安全的存储保护控制器及方法
JP5914145B2 (ja) 2012-05-01 2016-05-11 ルネサスエレクトロニクス株式会社 メモリ保護回路、処理装置、およびメモリ保護方法
DE102012218363A1 (de) * 2012-10-09 2014-04-10 Continental Automotive Gmbh Verfahren zur Steuerung eines getrennten Ablaufs von verknüpften Programmblöcken und Steuergerät
GB2522906B (en) * 2014-02-10 2021-07-14 Advanced Risc Mach Ltd Region identifying operation for identifying a region of a memory attribute unit corresponding to a target memory address
DE102015223335A1 (de) 2015-11-25 2017-06-01 Robert Bosch Gmbh Verfahren zum Betreiben eines Mikrocontrollers
US10824572B2 (en) * 2016-09-09 2020-11-03 Cylance Inc. Memory space protection
GB2570474B (en) * 2018-01-26 2020-04-15 Advanced Risc Mach Ltd Region fusing
US11334501B2 (en) 2020-01-28 2022-05-17 Hewlett Packard Enterprise Development Lp Access permissions for memory regions

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4677546A (en) * 1984-08-17 1987-06-30 Signetics Guarded regions for controlling memory access
JP2002189633A (ja) * 2000-12-21 2002-07-05 Nec Corp 仮想空間のメモリ保護方法及び装置
CN1487424A (zh) * 2002-09-12 2004-04-07 �Ҵ���˾ 禁止对受保护存储区进行未经授权的访问的系统和方法
CN1492332A (zh) * 2002-10-10 2004-04-28 �Ҵ���˾ 数据处理系统内分配和访问存储映像工具的方法、设备和系统
CN101281506A (zh) * 2007-04-03 2008-10-08 Arm有限公司 数据处理系统内基于存储器域的安全控制

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5280614A (en) * 1990-08-21 1994-01-18 International Business Machines Corporation Apparatus and method for controlling access to data using domains
JP4559937B2 (ja) * 2005-09-01 2010-10-13 株式会社東芝 プログラム生成装置
GB2448149B (en) * 2007-04-03 2011-05-18 Advanced Risc Mach Ltd Protected function calling
US20100280817A1 (en) * 2009-04-30 2010-11-04 Spansion Llc Direct pointer access and xip redirector for emulation of memory-mapped devices
JP5582971B2 (ja) * 2009-12-15 2014-09-03 キヤノン株式会社 メモリ保護方法および情報処理装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4677546A (en) * 1984-08-17 1987-06-30 Signetics Guarded regions for controlling memory access
JP2002189633A (ja) * 2000-12-21 2002-07-05 Nec Corp 仮想空間のメモリ保護方法及び装置
CN1487424A (zh) * 2002-09-12 2004-04-07 �Ҵ���˾ 禁止对受保护存储区进行未经授权的访问的系统和方法
CN1492332A (zh) * 2002-10-10 2004-04-28 �Ҵ���˾ 数据处理系统内分配和访问存储映像工具的方法、设备和系统
CN101281506A (zh) * 2007-04-03 2008-10-08 Arm有限公司 数据处理系统内基于存储器域的安全控制

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104881374A (zh) * 2014-02-27 2015-09-02 三星电子株式会社 自加密驱动器和包括自加密驱动器的用户装置
CN108376226A (zh) * 2017-01-18 2018-08-07 丰田自动车株式会社 未授权确定系统和未授权确定方法
CN108376226B (zh) * 2017-01-18 2022-04-01 丰田自动车株式会社 未授权确定系统和未授权确定方法

Also Published As

Publication number Publication date
US8478960B2 (en) 2013-07-02
CN102096642B (zh) 2014-02-12
JP5582971B2 (ja) 2014-09-03
US20110145531A1 (en) 2011-06-16
JP2011146030A (ja) 2011-07-28

Similar Documents

Publication Publication Date Title
CN102096642B (zh) 存储器保护装置及存储器保护方法
US7444668B2 (en) Method and apparatus for determining access permission
CN101162443B (zh) 数据处理器
US7434264B2 (en) Data processing system with peripheral access protection and method therefor
CN105431858B (zh) 安全特权等级执行和访问保护
CN101006433A (zh) 信息通信装置和程序执行环境控制方法
CN101714124B (zh) 存储器保护方法及信息处理装置
KR20090065531A (ko) 메모리 액세스 보안 관리
JPH0242528A (ja) Icメモリカード
US20090150645A1 (en) Data processing apparatus and address space protection method
WO2019237866A1 (zh) 一种运行时访问控制方法及计算装置
CN107766706A (zh) 用于保护设备的域免于未经授权的访问的方法和装置
US20080178261A1 (en) Information processing apparatus
US10628611B2 (en) Exclusive execution environment within a system-on-a-chip computing system
CN103729598B (zh) 数据安全互联系统及其建立方法
US8176567B2 (en) Apparatus and method to limit access to selected sub-program in a software system
CN105760164A (zh) 一种用户空间文件系统中acl权限的实现方法
CN111026683A (zh) 访问存储器的方法
CN115730341A (zh) 访问控制方法、系统、存储介质、电子设备及系统级芯片
TW202324158A (zh) 以安全分區記憶體空間於系統單晶片中錯誤管理
JP4335940B2 (ja) データ処理装置及びデータ処理装置における周辺装置保護方法
JP2019049928A (ja) 電子制御装置及び電子制御装置の制御方法
CN103729601B (zh) 数据安全互联系统及数据安全互联系统建立方法
WO2005121979A1 (ja) アクセス制御装置及びアクセス制御方法
US10997089B2 (en) Cross domain filtration in multi-processor environments

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20140212

Termination date: 20171213