CN1487424A - 禁止对受保护存储区进行未经授权的访问的系统和方法 - Google Patents

禁止对受保护存储区进行未经授权的访问的系统和方法 Download PDF

Info

Publication number
CN1487424A
CN1487424A CNA03153984XA CN03153984A CN1487424A CN 1487424 A CN1487424 A CN 1487424A CN A03153984X A CNA03153984X A CN A03153984XA CN 03153984 A CN03153984 A CN 03153984A CN 1487424 A CN1487424 A CN 1487424A
Authority
CN
China
Prior art keywords
believable
visit
memory cell
unit
district
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
CNA03153984XA
Other languages
English (en)
Other versions
CN1297909C (zh
Inventor
B��R�����ֶ�
B·R·哈林顿
K·B·洛克
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN1487424A publication Critical patent/CN1487424A/zh
Application granted granted Critical
Publication of CN1297909C publication Critical patent/CN1297909C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

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/1458Protection against unauthorised use of memory or access to memory by checking the subject access rights

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

禁止对受保护存储区进行未经授权的访问的系统和方法
技术领域
一般地说,本发明涉及计算机系统领域,更具体地说,涉及禁止对受保护的存储区域进行未经授权的访问的系统、方法和计算机程序产品。
背景技术
在数据处理系统(平台)内的逻辑分区选项(LPAR)允许单一操作系统(OS)的多个副本或多个异构操作系统同时在单一数据处理系统硬件平台上运行。一个在其中运行操作系统映像的分区可以被赋予该平台硬件资源的一个不重叠子集。在一些实现中,指定系统资源的一个百分数,使得系统资源基本上是对各个分区时间切片的。这些可分配的平台资源包括一个或多个在体系结构上不同的处理器及其中断管理区、系统存储区以及输入/输出(I/O)适配器总线插槽。分区的资源由它自己的资源列表来代表,该列表通常由系统底层固件创立和维护,并可由OS映像使用。
在平台内运行的每个不同的OS或一个OS的映像受到保护以免彼此影响,这样,一个逻辑分区上的软件错误不会影响任何其他分区的正确操作。在一个给定的时刻,这是通过把平台资源的不相交集合分配给每个OS映像直接管理和通过提供机制保证各个OS映像不能控制未曾分配给它的资源来实现的。再有,防止在分配给一个操作系统的资源的控制中的软件错误影响其他OS映像的资源。这样,在一个给定的时刻,OS的每个映像或每个不同的OS直接控制平台内的可分配资源的不同集合。
许多逻辑分区的系统使用管理程序。管理程序是介于硬件和逻辑分区之间的一层有特权的软件,它管理和坚持分区保护边界。该管理程序也称作分区管理固件。该管理程序负责在同一物理平台上配置、服务和运行多个逻辑系统。该管理程序通常负责向分区分配资源,在分区中安装操作系统,在分区中启动和停止操作系统,转储分区的主存储器,在分区之间进行通信,以及提供其他功能。为了实现这些功能,管理程序还得要实现它自己的低层操作,如主存储器管理、同步化原语、I/O实用工具、堆管理以及其他功能。
在管理程序代码中包括的访问管理程序功能可以改变管理程序代码的功能。所以,由于管理程序支持全部分区,改变管理程序的功能将影响整个系统的稳定性。
所以,需要一种方法、系统和产品用于禁止对受保护的存储区,例如存储管理程序的区域进行未经授权的访问,以保护在受保护区内存储的软件例程。
发明内容
公开说明了一种系统、方法和计算机程序产品,用于禁止对受保护的存储区进行未经授权的访问。指定受保护存储区和可信赖存储区这两个区域。接收要访问受保护存储区内一个单元的调用。然后确定该调用的起始单元。如果确定该起始单元是在可信赖区内,则响应这一确定,允许该调用访问受保护存储区。如果确定该起始单元是在可信赖区之外,则响应这一确定,禁止该调用访问受保护存储区。
在下文的详细书面描述中,本发明的上述以及其他目的、特点和优点将变得显而易见。
附图说明
在所附权利要求中提出了相信能表明本发明特征的新特性。然而,发明本身以及优选的使用方式、它的进一步的目的和优点,都将通过下文中结合附图对实施示例的详细描述而最好地得到理解,这里:
图1是根据本发明的一个优选实施例可以在其中实现本发明的数据处理系统的图形表示;
图2是根据本发明的一个优选实施例可以在其中实现本发明的数据处理系统的更详细的方框图;
图3是可以在其中实现本发明的被逻辑分区的平台示例的方框图;
图4是根据本发明的存储器映像的方框图,图中还显示来自可信赖区外部区域的一个要进入受保护存储区内一个地址的调用;
图5是根据本发明的存储器映像的方框图,图中还显示来自可信赖区内部的一个要进入受保护存储区内一个地址的调用;
图6显示一个高层流程图,描述根据本发明当一个软件例程被允许访问存储器内一个受保护区时把该软件例程存入可信赖区;以及
图7显示一个高层流程图,描述根据本发明只有当调用来自可信赖区时才执行这些要进入受保护区的调用。
具体实施方式
通过参考附图会更好地理解本发明的一个优选实施例以及它的优点,附图中使用相似的数字表示相似的或相应的部件。
本发明是一种系统、方法和计算机程序产品,用于禁止对受保护的存储区进行未经授权的访问。给定存储器的受保护区和可信赖区这两个区域。从可信赖区进入受保护区的调用将被允许和执行。不可靠的调用,即来自可信赖区之外一个区域的要进入受保护区的调用将不被执行。这些调用将被返回而不允许访问受保护区。
为了确定要进入受保护区的调用的起始地址,将要确定一个链接寄存器的当前值。如果该链接寄存器的当前值落入可信赖区,则执行该调用并允许其访问受保护区。然而,如果该链接寄存器的当前值没有落入可信赖区,则不执行该调用并且不允许其访问受保护区。
需要保护不受不可靠调用的软件可以存储在受保护区内。可允许访问受保护软件的软件例程必须存储在可信赖区内,以得到对受保护软件的访问。例如,管理程序代码可以存储在受保护区内。只有存储在可信赖区内的软件代码才可以访问该管理程序代码。以这种方式,该管理程序代码将受到保护。
图1描绘可以在其中实现本发明的数据处理系统网络。网络数据处理系统10是一个计算机网络,在其中可以实现本发明,网络数据处理系统10包含网络12,它是用于在网络数据处理系统10内连接在一起的各种设备和计算机之间提供通信链路的介质。网络12可以包括多种连接,如有线、无线通信链路或光纤电缆。
在所描绘的例子中,服务器14与存储器单元16一起连接到网络12。此外,客户机18、20和22也连接到网络12。网络12可以包括永久性连接,如有线连接或光纤电缆连接,或者通过电话连接构成的临时性连接。通信网络12还能包括其他公共的和/或专用的广域网,局域网,无线网,数据通信网络或连接,内联网,路由器,卫星链路,微波链路,蜂窝或电话网,无线电链路,光纤传输线,ISDN线路,T1线路,DSL等。在一些实施例中,用户设备可直接连接到服务器14而不脱离本发明的范围,再有,如这里使用的那样,通信包括由有线或无线技术实现的通信。
客户机18、20和22可以是例如个人计算机,便携计算机,移动或固定的用户站,工作站,网络终端或服务器,蜂窝电话,Kiosk系统,哑终端,个人数字助理,双向寻呼机,智能电话,信息设备,或网络计算机。为了本申请的目的,网络计算机是与网络耦合的任何计算机,它从耦合到该网络的另一计算机接收程序或其他应用。
在所描绘的例子中,服务器14向客户机18-22提供数据,如引导文件、操作系统映像以及应用。客户机18、20和22是服务器14的客户机。网络数据处理系统10可以包括附加的服务器、客户机以及其他设备(未示出)。在所描绘的例子中,网络数据处理系统10是因特网,以网络12代表使用一套TCP/IP协议彼此通信的网络和网关的全球集合。在因特网的核心是主要节点或主计算机之间传送数据和消息的骨干高速数据通信线路,这些节点或主计算机包含数以千计的商业、政府、教育和其他计算机系统。当然,网络数据处理系统10还可以作为若干不同类型的网络来实现,例如内联网、局域网(LAN)或广域网(WAN)。图1是作为举例,不是对本发明体系结构的限制。
图2是可以在其中实现本发明的数据处理系统的更详细的方框图。数据处理系统100是一个被逻辑分区的系统。数据处理系统100包括一个中央电子复合体(CEC)101,它包括被逻辑分区的硬件。CEC101包括连接到系统总线106上的多个处理器101、102、103和104。连接到系统总线106上的还有存储器控制器/高速缓存108,它提供到多个局部存储器160-163的接口。远程输入/输出(RIO)集线器110连接到系统总线106并提供到RIO总线112的接口。如图所示,存储器控制器/高速缓存108和RIO集线器110可以集成在一起。
数据处理系统100是一个被逻辑分区的数据处理系统。这样,数据处理系统100可以有多个异构操作系统(或单一操作系统的多个实例)同时运行。这多个操作系统每一个可以有任意数量的软件程序在其中运行。数据处理系统100是被逻辑分区的,从而不同的I/O适配器120-121、128-129、136以及148-149可被赋予不同的逻辑分区。
这样,例如,假定数据处理系统100被分成三个逻辑分区P1、P2和P3。每个I/O适配器120-121、128-129、136和148-149,每个处理器101-104,以及每个逻辑存储器160-163被赋予这三个逻辑分区之一。例如,处理器101、存储器160以及I/O适配器120、128和129可能被赋予逻辑分区P1;处理器102-103、存储器161以及I/O适配器121和136可能被赋予分区P2,而处理器104、存储器162-163以及I/O适配器148-149可能被赋予逻辑分区P3。
在数据处理系统100内执行的每个操作系统被赋予不同的逻辑分区。这样,在数据处理系统100内执行的每个操作系统只可以访问在它的逻辑分区内的那些I/O单元。
连接到I/O总线112的RIO至外围部件互连(PCI)主机桥114提供与PCI局部总线115的接口。若干输入/输出适配器120-121可以通过使用PCI-PCI桥116与PCI总线115相连。通常的PCI-PCI桥实现将支持四个至八个I/O适配器(即用于加入连接器的扩展插槽)。每个I/O适配器120-121提供数据处理系统100和输入/输出设备之间的接口。I/O设备120a与I/O适配器120耦合,I/O设备121a与I/O适配器121耦合。
附加的RIO至PCI主机桥122提供用于附加PCI总线123的接口。通过使用PCI-PCI桥124,PCI总线123由PCI总线126-127连接到多个PCI I/O适配器128-129。I/O设备128a与I/O适配器128耦合,I/O设备129a与I/O适配器129耦合。
如图所示,存储器映像图形适配器148可以经由PCI总线144和145,通过RIO至PCI主机桥140和PCI-PCI桥142,连接到I/O总线112。同样,如图所示,硬盘150也可以经由PCI总线141和145,通过RIO至PCI主机桥140和PCI-PCI桥142,连接到I/O总线112。
RIO至PCI主机桥130为PCI总线131连到I/O总线112提供接口。PCI总线131把RIO至PCI主机桥130连到服务处理器信箱接口和ISA总线访问通过逻辑194以及PCI-PCI桥132。ISA总线访问通过逻辑194转发以PCI/ISA桥193为目的地的PCI访问。NVRAM存储器连到ISA总线196。服务处理器135通过它的局部PCI总线195与服务处理器信箱接口194耦合。服务处理器135还经由多个JTAG/I2C总线134与处理器101-104相连。JTAG/I2C总线134是JTAG/扫描总线(见IEEE 1149.1)和Phillips I2C总线的组合。然而,替代地,JTAG/I2C总线134可以由只是Phillips I2C总线或只是JTAG/扫描总线代替。主机处理器101、102、103和104的全部SP-ATTN信号共同连到服务处理器的中断输入信号。服务处理器135有它自己的局部存储器191并能访问硬件操作面板190。
当数据处理系统100开始通电时,服务处理器135使用JTAG/扫描总线134查询系统(主机)处理器101-104、存储器控制器108和RIO集线器110。在完成这一步骤之后,服务处理器135了解了数据处理系统100的可用资源及其拓扑。服务处理器135还对查询系统处理器101-104、存储器控制器108以及RIO集线器110所发现的所有部件执行内置自测试(BIST),基本保证测试(BAT)和存储器测试。关于在BIST、BAT和存储器测试过程中检测到的故障的任何错误信息都由服务处理器135收集和报告。
如果在去掉BIST、BAT和存储器测试期间发现有故障的部件之后,一个有意义的/有效的系统资源配置仍为可能的,则数据处理系统100被允许把可执行代码加载到局部(主机)存储器160-163中。然后服务处理器135释放主机处理器101-104用于执行加载到主机存储器160-163的代码。当主机101-104执行来自数据处理系统100的各操作系统的代码时,服务处理器135进入监视和报告错误方式。由服务处理器监视的项目类型包括例如冷却扇速度和运行、热传感器、电源稳压器、以及由处理器101-104、存储器160-163以及总线桥控制器110报告的可恢复和不可恢复错误。
服务处理器135负责保留和报告与数据处理系统100中所有监视项目有关的错误信息。服务处理器135还基于错误类型和定义的阈值采取行动。例如,服务处理器135可以注意到在处理器高速缓存上的过量的可恢复错误并确定这预示一个硬件故障。基于这一确定,服务处理器135可能标记那个资源,供当前运行会话期间重新配置和将来初始程序加载(IPL)使用。
本领域普通技术人员将会理解,图2中描绘的硬件是可以改变的。例如,其他外围设备,如光盘驱动器等也可用于补充或替代所描绘的硬件。所描绘的例子不意味着针对本发明施加体系结构上的限制。
图3是可在其中实现本发明的被逻辑分区的平台示例方框图。被逻辑分区的平台200包括被分区的硬件230、分区管理固件(也称管理程序)210以及各分区201-204。操作系统201a-204a存在于分区201-204内。操作系统201a-204a可以是在平台200上同时运行的单一操作系统的多个副本或者多个异构操作系统。
被分区的硬件230包括多个处理器232-238,多个系统存储器单元240-246,多个输入/输出(I/O)适配器248-262以及存储单元270。处理器242-248、存储器单元240-246、NVRAM存储器298以及I/O适配器248-262中的每一个可被赋予这多个分区201-204中的一个。
分区管理固件(管理程序)210为分区201-204完成若干功能和服务,以建立和坚持对被逻辑分区的平台200的分区。管理程序210是由固件实现的与底层硬件完全相同的虚拟机。固件是存储在存储器芯片中的“软件”,该芯片保持其内容而无需电源,例如只读存储器(ROM)、可编程ROM(PROM)、可擦可编程ROM(EPROM)、电可擦可编程ROM(EEPROM)、以及非易失随机存取存储器(非易失RAM)。这样,管理程序210允许同时执行独立的OS映像201a-204a,或者通过硬件资源的虚拟化或者通过提供对逻辑分区平台200的共享系统资源的自动访问来实现。管理程序210可以通过I/O适配器以一种只供OS映像201a-204a之一使用的排他方式把I/O设置连接到单个虚拟机。
图4是根据本发明的存储器映像的方框图,图中还显示来自可信赖区外部区域的一个要进入受保护存储区内地址的调用。图中描绘了存储器如存储器240、242、244或246的映像400。存储器的一个区域已被指定为可信赖区402。可信赖区是在链接时定义的而且是不能改变的。可信赖区是通过规定可信赖区起始存储器单元和结束存储器单元来定义的。
再有,存储器的一个区域受到保护并被定义为受保护区404。当一个调用被放到受保护区404内的一个地址时,存储在测试单元406的一个测试例程将中断该调用并确定该调用的起点地址。测试单元406位于受保护区404内。如果该调用来自可信赖区402外部的一个位置,例如来自区域408,则该调用将被测试例程返回而不被执行。
要受保护以免未经授权的访问的软件例程将存储在受保护区内,如受保护区404。以这种方式,只有被授权的要进入受保护软件例程的调用才被执行。例如,管理程序代码应该只能由被授权的代码访问或修改。这样,如果管理程序代码存储在受保护存储区内,则管理程序代码将不能被来自可信赖存储区外的不可靠调用访问和修改。为了本申请的目的,不可靠调用被定义为源自可信赖存储区外部某个单元的那些调用。
图5是根据本发明的存储器映像的方框图,图中还显示来自可信赖区内部的一个要进入受保护区内一个地址的调用。存储器映像500包括可信赖区502和受保护区504。测试例程存储在测试区506。测试区506包括在受保护区504之内。当一个调用被放在受保护区504内包括的一个地址时,测试例程将中断该调用并确定该调用的起始地址。如果该调用源自可信赖区502内的一个位置,则由测试例程执行该调用,把该调用转发到受保护区504内的地址。
图6显示一个高层流程图,描述根据本发明当一个软件例程被允许访问存储器内一个受保护区时把该软件例程存储可信赖区。如图所示,该过程以块600开始,然后进入块602,在此指定存储器的一个特定区域为可信赖区。一个可信赖区是通过为可信赖区指定起始存储器单元和结束存储器单元来指定的。这样,可信赖区包括起始和结束存储器单元之间并包括起始和结束单元的全部存储器单元。接下来,块604描述指定特定存储器区域为受保护区。一个受保护区是通过为受保护区指定起始存储器单元和结束存储器单元来指定的。这样,受保护区包括起始和结束存储器单元之间并包括起始和结束单元的全部存储器单元。然后,过程进入块601,它显示建立一个软件例程。然后,块608描述试图把此软件例程存入可信赖区。
块610说明确定该软件例程是否被允许访问受保护存储区内的一个地址。如果确定该软件例程被允许访问受保护区内的一个地址,则块612描述该软件例程被存储在可信赖区内部。然后,如块614所示,过程终止。
再参考块610,如果确定该软件例程不被允许访问受保护区内的任何地址,则该软件例程被禁止存储在可信赖区内。然后,如块614所示,过程终止。
图7描绘一个高层流程图,显示根据本发明只有当调用来自可信赖区时才执行这些要进入受保护区的调用。如图所示,该过程以块700开始,然后进入块702,它显示一个测试例程拦截一个被放到受保护区内一个地址的调用。接下来,块704描述该测试例程检验链接寄存器的当前值。链接寄存器是用于存储产生上一个指令的地址。这样,链接寄存器将含有产生该调用的地址。测试例程使用链接寄存器的当前值确定放置该调用的起始存储器地址。
然后过程进到块706,它显示确定该起始地址是否在可信赖区内。这一确定是由测试例程做出的。测试例程确定链接寄存器的当前值。如果链接寄存器的当前值在可信赖区起始和结束存储器单元之间或包括起始和结束单元,则由测试例程确定该起始地址位于可信赖区内。
再参考块706,如果确定该起始地址位于可信赖区内,则过程进入块708,它描述通过把该调用转发到受保护区内的地址,使该调用得到执行。然后过程回到块702。再参考块706,如果确定该起始地址不位于可信赖区内,则过程进入块710,它显示把控制返回给起始存储器地址而不执行该调用。然后过程回到块702。
说明以下情况是重要的:尽管是在全功能数据处理系统的范围内描述了本发明,但本领域普通技术人员将会理解,本发明的过程能以指令的计算机可读介质形式以及以多种形式分发,而且不论实际用于携带这些指令的承载信号介质的具体类型如何,本发明都同样适用。计算机可读介质的实例包括可记录型介质,如软盘、硬盘驱动器、RAM、CD-ROM、DVD-ROM以及传输型介质,如数字和模拟通信链路、有线或无线通信链路,它们使用的传输形式如无线电频率和光波传输。计算机可读介质可以采取编码格式形式,它们在特定数据处理系统中被解码供实际使用。
已经为了说明和描述的目的描述了本发明,但不是要把本发明穷尽和局限于所公开的形式。对于本领域普通技术人员,许多修改和变化是显然的。对实施例的选择和描述是为了最好地解释本发明的原理、实际应用和使本领域其他普通技术人员能理解本发明,以用于适合所考虑的具体应用的带有各种修改的各种实施例。

Claims (36)

1.一种禁止对受保护存储区进行未经授权的访问的方法,所述方法包括如下步骤:
指定一个受保护存储区;
指定一个可信赖存储区;
接收一个要访问所述受保护存储区的调用;
确定所述调用的起始单元;以及
如果确定所述起始单元在所述可信赖区内,则响应这一确定,允许所述调用访问所述受保护存储区。
2.根据权利要求1的方法,进一步包括响应所述起始单元在所述可信赖区外部,从而禁止所述调用访问所述受保护存储区的步骤。
3.根据权利要求1的方法,进一步包括如下步骤:
创立一个软件例程;
确定所述软件例程是否被授权访问所述受保护存储区;以及
如果确定所述软件例程被授权访问所述受保护存储区,则响应这一确定,把所述软件例程存储在所述可信赖存储区内。
4.根据权利要求3的方法,进一步包括响应确定所述软件例程未被授权访问所述受保护存储区,从而把所述软件例程存储在所述可信赖存储区外部的步骤。
5.根据权利要求1的方法,进一步包括如下步骤:
创立一个软件例程;
确定所述软件例程是否要被保护以防被不可靠调用访问,所述不可靠调用是来自所述可信赖区外部的一个存储器单元的调用;
响应确定所述软件例程要被保护以防被不可靠调用访问,把所述软件例程存储在所述受保护区内。
6.根据权利要求1的方法,进一步包括如下步骤:
建立一个测试例程;
由所述测试例程拦截试图访问所述受保护区内任何位置的全部调用;
由所述测试例程确定所述调用每一个的起始单元;
响应由所述测试例程确定的试图访问所述受保护区内第一单元的第一调用的起始单元是在所述可信赖区内,由所述测试例程把所述第一调用转发到所述受保护存储区内的所述第一单元。
7.根据权利要求6的方法,进一步包括如下步骤:响应由所述测试例程确定的试图访问所述受保护区内第一单元的第一调用的起始单元是在所述可信赖区之外,由所述测试例程把所述第一调用返回给所述起始单元,使所述受保护存储区内的所述第一单元不受访问。
8.根据权利要求1的方法,进一步包括如下步骤:
创建管理程序代码用于实现管理程序功能;以及
把所述管理程序代码存储在所述受保护区内。
9.根据权利要求1的方法,进一步包括如下步骤:通过确定一链接寄存器的当前值来确定所述调用的起始单元,所述链接寄存器的所述当前值是所述调用源自的存储器单元。
10.根据权利要求1的方法,进一步包括如下步骤:通过指定起始存储器单元和结束存储器单元来指定可信赖存储区,所述可信赖存储区包括从所述起始存储器单元至所述结束存储器单元并包括所述起始和结束单元的全部存储器单元。
11.根据权利要求1的方法,进一步包括如下步骤:通过指定起始存储器单元和结束存储器单元来指定受保护存储区,所述受保护存储区包括从所述起始存储器单元至所述结束存储器单元并包括所述起始和结束单元的全部存储器单元。
12.根据权利要求1的方法,进一步包括如下步骤:
通过指定起始存储器单元和结束存储器单元来指定可信赖存储区,所述可信赖存储区包括从所述起始存储器单元至所述结束存储器单元并包括所述起始和结束单元的全部存储器单元;
通过确定一链接寄存器的当前值来确定所述调用的起始单元,所述链接寄存器的所述当前值是所述调用源自的存储器单元;
确定所述调用源自的存储器单元是否在所述起始存储器单元和所述结束存储器单元之间,包括所述起始和结束单元;
如果确定所述调用源自的存储器单元是在所述起始存储器单元和所述结束存储器单元之间,包括所述起始和结束单元,则响应这一确定,确定所述调用源自的存储器单元是在所述可信赖存储区内,并允许所述调用访问所述受保护存储区;以及
如果确定所述调用源自的存储器单元不是在所述起始存储器单元和所述结束存储器单元之间,包括所述起始和结束单元,则响应这一确定,确定所述调用源自的存储器单元是在所述可信赖存储区外,并禁止所述调用访问所述受保护存储区。
13.一种禁止对受保护存储区进行未经授权的访问的数据处理系统,包括:
受保护存储区;
可信赖存储区;
被接收的要访问所述受保护存储区的调用;
所述系统包括一个CPU执行代码以确定所述调用的起始单元;以及
如果确定所述起始单元在所述可信赖区内,则响应这一确定,所述CPU执行代码允许所述调用访问所述受保护存储区。
14.根据权利要求13的系统,进一步包括响应所述起始单元在所述可信赖区外部,所述CPU执行代码禁止所述调用访问所述受保护存储区。
15.根据权利要求13的系统,进一步包括:
一个软件例程;
所述CPU执行代码以确定所述软件例程是否被授权访问所述受保护存储区;以及
如果确定所述软件例程被授权访问所述受保护存储区,则响应这一确定,所述软件例程被存储在所述可信赖存储区内。
16.根据权利要求15的系统,进一步包括响应确定所述软件例程未被授权访问所述受保护存储区,从而所述软件例程被存储在所述可信赖存储区外部。
17.根据权利要求13的系统,进一步包括:
一个软件例程;
所述CPU执行代码用于确定所述软件例程是否要被保护以防被不可靠调用访问,所述不可靠调用是来自所述可信赖区外部的存储器单元的调用;
响应确定所述软件例程要被保护以防被不可靠调用访问,所述软件例程被存储在所述受保护区内。
18.根据权利要求13的系统,进一步包括:
一个测试例程;
所述测试例程拦截试图访问所述受保护区内任何单元的全部调用;
所述测试例程确定所述每一个调用的起始单元;
响应由所述测试例程确定的试图访问所述受保护区内第一单元的第一调用的起始单元是在所述可信赖区内,所述测试例程把所述第一调用转发到所述受保护存储区内的所述第一单元。
19.根据权利要求18的系统,进一步包括:响应由所述测试例程确定的试图访问所述受保护区内第一单元的第一调用的起点单元是在所述可信赖区之外,所述测试例程把所述第一调用返回给所述起始单元,使所述受保护存储区内的所述第一单元不受访问。
20.根据权利要求13的系统,进一步包括:
管理程序代码用于实现管理程序功能;以及
所述管理程序代码被存储在所述受保护区内。
21.根据权利要求13的系统,进一步包括通过确定一链接寄存器的当前值来确定所述调用的起始单元,所述链接寄存器的当前值是所述调用源自的存储器单元。
22.根据权利要求13的系统,进一步包括一个可信赖存储区,所述可信赖存储区是通过指定起始存储器单元和结束存储器单元来指定的,所述可信赖区包括从所述起始存储器单元至所述结束存储器单元并包括所述起始和结束单元的全部存储器单元。
23.根据权利要求13的系统,进一步包括一个受保护存储区,所述受保护存储区是通过指定起始存储器单元和结束存储器单元来指定的,所述受保护区包括从所述起始存储器单元至所述结束存储器单元并包括所述起始和结束单元的全部存储器单元。
24.根据权利要求13的系统,进一步包括:
一个可信赖存储区,所述可信赖存储区是通过指定起始存储器单元和结束存储器单元来指定的,所述可信赖区包括从所述起始存储器单元至所述结束存储器单元并包括所述起始和结束单元的全部存储器单元;
所述CPU执行代码用于通过确定一个链接寄存器的当前值确定所述调用的起始单元,所述链接寄存器的当前值是所述调用源自的存储器单元;
所述CPU执行代码用于确定所述调用源自的存储器单元是否在所述起始存储器单元和所述结束存储器单元之间,包括所述起始和结束单元;
如果确定所述调用源自的存储器单元是在所述起始存储器单元和所述结束存储器单元之间,包括所述起始和结束单元,则响应这一确定,所述CPU执行代码确定所述调用源自的存储器单元是在所述可信赖存储区内,并允许所述调用访问所述受保护存储区;以及
如果确定所述调用源自的存储器单元不是在所述起始存储器单元和所述结束存储器单元之间,包括所述起始和结束单元,则响应这一确定,确定所述调用源自的存储器单元是在所述可信赖存储区外,并禁止所述调用访问所述受保护存储区。
25.一种在数据处理系统中禁止对受保护存储区进行未经授权的访问的计算机程序产品,包括:
用于指定一个受保护存储区的指令单元;
用于指定一个可信赖存储区的指令单元;
用于接收要访问所述受保护存储区的调用的指令单元;
用于确定所述调用的起始单元的指令单元;以及
如果确定所述起始单元在所述可信赖区内,则响应这一确定,允许所述调用访问所述受保护存储区的指令单元。
26.根据权利要求25的产品,进一步包括响应所述起始单元在所述可信赖区外部,禁止所述调用访问所述受保护存储区的指令单元。
27.根据权利要求25的产品,进一步包括:
建立一个软件例程的指令单元;
确定所述软件例程是否被授权访问所述受保护存储区的指令单元;以及
如果确定所述软件例程被授权访问所述受保护存储区,则响应这一确定,把所述软件例程存储在所述可信赖存储区内的指令单元。
28.根据权利要求27的产品,进一步包括响应确定所述软件例程未被授权访问所述受保护存储区,从而把所述软件例程存储在所述可信赖存储区外部的指令单元。
29.根据权利要求25的产品,进一步包括:
建立一个软件例程的指令单元;
确定所述软件例程是否要被保护以防被不可靠调用访问的指令单元,所述不可靠调用是来自所述可信赖区外部存储器单元的调用;
响应确定所述软件例程要被保护以防被不可靠调用访问,将所述软件例程存储在所述受保护区内的指令单元。
30.根据权利要求25的产品,进一步包括:
建立一个测试例程的指令单元;
由所述测试例程拦截试图访问所述受保护区内任何单元的全部调用的指令单元;
由所述测试例程确定所述每一个调用的起始单元的指令单元;
响应由所述测试例程确定的试图访问所述受保护区内第一单元的第一调用的起始单元是在所述可信赖区内,由所述测试例程把所述第一调用转发到所述受保护存储区内的所述第一单元的指令单元。
31.根据权利要求30的产品,进一步包括指令单元用于:响应由所述测试例程确定的试图访问所述受保护区内第一单元的第一调用的起始单元是在所述可信赖区之外,由所述测试例程把所述第一调用返回给所述起始单元,使所述受保护存储区内的所述第一单元不受访问。
32.根据权利要求25的产品,进一步包括:
创建管理程序代码用于实现管理程序功能的指令单元;以及
把所述管理程序代码存储在所述受保护区内的指令单元。
33.根据权利要求25的产品,进一步包含指令单元用于:通过确定一链接寄存器的当前值来确定所述调用的起始单元,所述链接寄存器的所述当前值是所述调用源自的存储器单元。
34.根据权利要求25的产品,进一步包含指令单元用于:通过指定起始存储器单元和结束存储器单元来指定可信赖存储区,所述可信赖存储区包括从所述起始存储器单元至所述结束存储器单元并包括所述起始和结束单元的全部存储器单元。
35.根据权利要求25的产品,进一步包含指令单元用于:通过指定起始存储器单元和结束存储器单元来指定受保护存储区,所述受保护存储区包括从所述起始存储器单元至所述结束存储器单元并包括所述起始和结束单元的全部存储器单元。
36.根据权利要求25的产品,进一步包括:
指令单元,用于通过指定起始存储器单元和结束存储器单元来指定可信赖存储区,所述可信赖存储区包括从所述起始存储器单元至所述结尾存储器单元并包括所述起始和结束单元的全部存储器单元;
指令单元,用于通过确定一链接寄存器的当前值来确定所述调用的起点单元,所述链接寄存器的所述当前值是所述调用源自的存储器单元;
指令单元,用于确定所述调用源自的存储器单元是否在所述起始存储器单元和所述结束存储器单元之间,包括所述起始和结束单元;
指令单元,用于:如果确定所述调用源自的存储器单元是在所述起始存储器单元和所述结束存储器单元之间,包括所述起始和结束单元,则响应这一确定,确定所述调用源自的存储器单元是在所述可信赖存储区内,并允许所述调用访问所述受保护存储区;以及
指令单元,用于:如果确定所述调用源自的存储器单元不是在所述起始存储器单元和所述结尾存储器单元之间,包括所述起始和结束单元,则响应这一确定,确定所述调用源自存储器单元是在所述可信赖存储区外,并禁止所述调用访问所述受保护存储区。
CN03153984.XA 2002-09-12 2003-08-21 禁止对受保护存储区进行未经授权的访问的系统和方法 Expired - Fee Related CN1297909C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/242,746 2002-09-12
US10/242,746 US7266658B2 (en) 2002-09-12 2002-09-12 System, method, and computer program product for prohibiting unauthorized access to protected memory regions

Publications (2)

Publication Number Publication Date
CN1487424A true CN1487424A (zh) 2004-04-07
CN1297909C CN1297909C (zh) 2007-01-31

Family

ID=32028917

Family Applications (1)

Application Number Title Priority Date Filing Date
CN03153984.XA Expired - Fee Related CN1297909C (zh) 2002-09-12 2003-08-21 禁止对受保护存储区进行未经授权的访问的系统和方法

Country Status (3)

Country Link
US (1) US7266658B2 (zh)
JP (1) JP2004103009A (zh)
CN (1) CN1297909C (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100365596C (zh) * 2004-06-18 2008-01-30 东芝开利株式会社 微型计算机及具有该微型计算机的电气设备
CN100371915C (zh) * 2004-09-29 2008-02-27 安国国际科技股份有限公司 可携式储存装置及其数据存取方法
CN1841401B (zh) * 2005-03-30 2010-10-06 Lg电子株式会社 具有支持安全功能的移动通信终端及其方法
CN101149688B (zh) * 2006-09-19 2010-10-13 株式会社理光 虚拟化系统及其内存管理方法
CN102096642A (zh) * 2009-12-15 2011-06-15 佳能株式会社 信息处理装置及存储器保护方法
CN101281506B (zh) * 2007-04-03 2011-10-26 Arm有限公司 数据处理系统内基于存储器域的安全控制
US8843742B2 (en) 2008-08-26 2014-09-23 Hewlett-Packard Company Hypervisor security using SMM
US9286080B2 (en) 2008-07-02 2016-03-15 Hewlett-Packard Development Company, L.P. Memory management for hypervisor loading
CN112703490A (zh) * 2018-09-18 2021-04-23 华为技术有限公司 用于存储器保护的装置和方法
CN113287097A (zh) * 2018-12-28 2021-08-20 美光科技公司 用于存储器的未授权访问命令记录

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7730318B2 (en) * 2003-10-24 2010-06-01 Microsoft Corporation Integration of high-assurance features into an application through application factoring
US7530071B2 (en) * 2004-04-22 2009-05-05 International Business Machines Corporation Facilitating access to input/output resources via an I/O partition shared by multiple consumer partitions
US7971255B1 (en) * 2004-07-15 2011-06-28 The Trustees Of Columbia University In The City Of New York Detecting and preventing malcode execution
US8898246B2 (en) * 2004-07-29 2014-11-25 Hewlett-Packard Development Company, L.P. Communication among partitioned devices
US20060026418A1 (en) * 2004-07-29 2006-02-02 International Business Machines Corporation Method, apparatus, and product for providing a multi-tiered trust architecture
US7529864B2 (en) 2004-11-09 2009-05-05 International Business Machines Corporation Method and system for testing remote I/O functionality
US7380049B2 (en) * 2005-09-06 2008-05-27 Intel Corporation Memory protection within a virtual partition
US20070056039A1 (en) * 2005-09-07 2007-03-08 Hormuzd Khosravi Memory filters to aid system remediation
US7661016B2 (en) * 2006-02-23 2010-02-09 Librato, Inc. Method for a checkpoint library to detect corruption by an application
US20100031057A1 (en) * 2008-02-01 2010-02-04 Seagate Technology Llc Traffic analysis resistant storage encryption using implicit and explicit data
US20090196417A1 (en) * 2008-02-01 2009-08-06 Seagate Technology Llc Secure disposal of storage data
US8103844B2 (en) 2008-02-01 2012-01-24 Donald Rozinak Beaver Secure direct platter access
US8006055B2 (en) * 2008-03-04 2011-08-23 Microsoft Corporation Fine granularity hierarchiacal memory protection
US9767283B2 (en) * 2014-06-27 2017-09-19 Mcafee, Inc. System and method to mitigate malicious calls
JP6323235B2 (ja) * 2014-07-29 2018-05-16 株式会社デンソー 電子制御装置
US9489534B2 (en) 2014-10-23 2016-11-08 Northrop Grumman Systems Corporation Multi-level security system for enabling secure file sharing across multiple security levels and method thereof
US10534730B1 (en) * 2018-12-20 2020-01-14 Ati Technologies Ulc Storing microcode for a virtual function in a trusted memory region

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4621321A (en) 1984-02-16 1986-11-04 Honeywell Inc. Secure data processing system architecture
US4918653A (en) 1988-01-28 1990-04-17 International Business Machines Corporation Trusted path mechanism for an operating system
CN101303717B (zh) 1995-02-13 2015-04-29 英特特拉斯特技术公司 用于安全交易管理和电子权利保护的系统和方法
US6006328A (en) 1995-07-14 1999-12-21 Christopher N. Drake Computer software authentication, protection, and security system
JPH09160831A (ja) 1995-12-08 1997-06-20 Hitachi Ltd 情報処理装置
JP3638714B2 (ja) 1996-05-23 2005-04-13 三菱電機株式会社 記憶データ保護装置
JPH10228421A (ja) 1997-02-14 1998-08-25 Nec Ic Microcomput Syst Ltd メモリアクセス制御回路
US6360244B1 (en) * 1997-04-11 2002-03-19 Fujitsu Limited System and method for multi-level memory domain protection
US6385727B1 (en) * 1998-09-25 2002-05-07 Hughes Electronics Corporation Apparatus for providing a secure processing environment
US6330670B1 (en) 1998-10-26 2001-12-11 Microsoft Corporation Digital rights management operating system
US6272533B1 (en) 1999-02-16 2001-08-07 Hendrik A. Browne Secure computer system and method of providing secure access to a computer system including a stand alone switch operable to inhibit data corruption on a storage device
US6449699B2 (en) 1999-03-29 2002-09-10 International Business Machines Corporation Apparatus and method for partitioned memory protection in cache coherent symmetric multiprocessor systems
US6289455B1 (en) 1999-09-02 2001-09-11 Crypotography Research, Inc. Method and apparatus for preventing piracy of digital content
US6594780B1 (en) * 1999-10-19 2003-07-15 Inasoft, Inc. Operating system and data protection
US6986052B1 (en) * 2000-06-30 2006-01-10 Intel Corporation Method and apparatus for secure execution using a secure memory partition
US6820164B2 (en) * 2001-04-17 2004-11-16 International Business Machines Corporation Peripheral component interconnect bus detection in logically partitioned computer system involving authorizing guest operating system to conduct configuration input-output operation with functions of pci devices
US7024555B2 (en) * 2001-11-01 2006-04-04 Intel Corporation Apparatus and method for unilaterally loading a secure operating system within a multiprocessor environment

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100365596C (zh) * 2004-06-18 2008-01-30 东芝开利株式会社 微型计算机及具有该微型计算机的电气设备
CN100371915C (zh) * 2004-09-29 2008-02-27 安国国际科技股份有限公司 可携式储存装置及其数据存取方法
CN1841401B (zh) * 2005-03-30 2010-10-06 Lg电子株式会社 具有支持安全功能的移动通信终端及其方法
CN101149688B (zh) * 2006-09-19 2010-10-13 株式会社理光 虚拟化系统及其内存管理方法
CN101281506B (zh) * 2007-04-03 2011-10-26 Arm有限公司 数据处理系统内基于存储器域的安全控制
US9286080B2 (en) 2008-07-02 2016-03-15 Hewlett-Packard Development Company, L.P. Memory management for hypervisor loading
US8843742B2 (en) 2008-08-26 2014-09-23 Hewlett-Packard Company Hypervisor security using SMM
CN102096642A (zh) * 2009-12-15 2011-06-15 佳能株式会社 信息处理装置及存储器保护方法
CN102096642B (zh) * 2009-12-15 2014-02-12 佳能株式会社 存储器保护装置及存储器保护方法
CN112703490A (zh) * 2018-09-18 2021-04-23 华为技术有限公司 用于存储器保护的装置和方法
CN113287097A (zh) * 2018-12-28 2021-08-20 美光科技公司 用于存储器的未授权访问命令记录
US11644982B2 (en) 2018-12-28 2023-05-09 Micron Technology, Inc. Unauthorized access command logging for memory

Also Published As

Publication number Publication date
CN1297909C (zh) 2007-01-31
US7266658B2 (en) 2007-09-04
US20040064718A1 (en) 2004-04-01
JP2004103009A (ja) 2004-04-02

Similar Documents

Publication Publication Date Title
CN1297909C (zh) 禁止对受保护存储区进行未经授权的访问的系统和方法
US6839892B2 (en) Operating system debugger extensions for hypervisor debugging
US7392524B2 (en) Method, system, and storage medium for managing computer processing functions
KR100306456B1 (ko) 오퍼레이팅시스템의재기동방법
US7356665B2 (en) Method and system for machine memory power and availability management in a processing system supporting multiple virtual machines
US7139940B2 (en) Method and apparatus for reporting global errors on heterogeneous partitioned systems
US6910160B2 (en) System, method, and computer program product for preserving trace data after partition crash in logically partitioned systems
CN100345081C (zh) 用于在多分区数据处理系统中管理操作系统的方法和数据处理系统
US20020129212A1 (en) Virtualized NVRAM access methods to provide NVRAM chrp regions for logical partitions through hypervisor system calls
US20040139368A1 (en) Method and apparatus for reporting error logs in a logical environment
US8301599B2 (en) Cluster arrangement
US20020124166A1 (en) Mechanism to safely perform system firmware update in logically partitioned (LPAR) machines
JP2003323306A (ja) 論理パーティション・データ処理システムでのエラーまたはイベントを処理する方法、コンピュータ・プログラム、データ処理システム
CN1702625A (zh) 保存跟踪数据的方法和装置
JP3815569B2 (ja) ロジカル・パーティション・データ処理システムにおいてパーティション・ファームウェアを同時更新及び活動化するための方法及び装置
CN1324463C (zh) 多节点计算机系统的枚举方法和装置
CN1696904A (zh) 数据处理系统以及用于监视数据处理系统的方法
US11777991B2 (en) Forecast-based permissions recommendations
JP2005056392A (ja) 地理的ミラーリングに関するリソースの妥当性検査およびランキングのための方法および装置
US7039692B2 (en) Method and apparatus for maintaining profiles for terminals in a configurable data processing system
CN1308278A (zh) 集群服务器的ip容错方法
US7496729B2 (en) Method and apparatus to eliminate interpartition covert storage channel and partition analysis
CN1823318A (zh) 实时修复重要计算机文件的系统
US6898731B2 (en) System, method, and computer program product for preventing machine crashes due to hard errors in logically partitioned systems
KR100456512B1 (ko) 커널 백도어 탐지 시스템, 이를 이용한 커널 백도어 탐지방법 및 커널 데이터 복구 방법

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
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20070131

Termination date: 20110821