带有取回保护的动态地址转换制造技术

技术编号:4891305 阅读:189 留言:0更新日期:2012-04-11 18:40
提供了一种增强的动态地址转换工具。在一个实施例中,首先获取要转换的虚拟地址,并且获取转换表层次结构的转换表的初始起始地址。根据所获取的初始起始地址,获取段表表项。所述段表表项被配置为包含格式控制字段和访问有效性字段。如果已启用所述格式控制字段和访问有效性字段,则所述段表表项还包含访问控制字段、取回保护字段以及段-帧绝对地址。仅当所述访问控制字段与程序状态字或所执行程序指令的操作数中的任意一个所提供的程序访问键匹配时,才允许存储操作。当与所述虚拟地址关联的程序访问键与所述段访问控制字段相同时,允许取回操作。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术一般地涉及用于在计算机系统中转换虚拟地址的系统和方法,更具体地 说,涉及在具有动态地址转换工具的计算机系统中将虚拟地址转换成数据块的实地址或绝 对地址的系统和方法,其中虚拟地址转换通过转换表层次结构实现。
技术介绍
动态地址转换提供这样的能力在任意时刻中断程序的执行,将程序及其数据记 录到诸如直接存取存储设备之类的辅助存储装置中,并在以后将程序及其数据返回到其他 主存储位置以恢复执行。程序及其数据在主存储装置和辅助存储装置之间的转移可逐步执 行,并且可发生将信息返回到主存储装置以响应在执行需要时CPU访问该信息的尝试。这 些功能可在不更改或不检查程序及其数据的情况下执行,它们不需要重新定位的程序中的 任何显式编程约定,并且除了所涉及的时间延迟以外,不会干扰程序的执行。借助操作系统的适当支持,可使用动态地址转换工具为用户提供一种其中存储装 置似乎大于配置中可用的主存储装置的系统。此明显的主存储装置通常被称为虚拟存储装 置,并且用于指定虚拟存储装置中的位置的地址通常被称为虚拟地址。用户的虚拟存储装 置远大于配置中可用的主存储装置的大小并且一般在辅助存储装置中维护。虚拟存储装置 被视为包括通常被称为页(也被称为段和区)的数据块。仅将虚拟存储装置的最近被引用 的页分配为占用物理主存储装置的数据块。当用户引用的虚拟存储装置的页不在主存储装 置中时,将调入这些页以替换主存储装置中引用次数较少的页。在某些情况下,虚拟存储装 置被长期(或永久)分配给主存储装置而不考虑是否引用该存储装置。操作系统可在用户 不知情的情况下执行存储装置页的调换。程序使用地址(或虚拟地址)访问虚拟存储装置。程序可使用虚拟地址从虚拟存 储装置取回指令或从虚拟存储装置加载数据或存储数据。与虚拟存储装置的范围关联的虚 拟地址定义了地址空间。借助操作系统的适当支持,可使用动态地址转换工具提供若干地 址空间。这些地址空间可用于提供用户间的隔离程度。此类支持可针对每个用户包含完全 不同的地址空间,从而提供完全的隔离,或者可通过将每个地址空间的一部分映射到单独 的公共存储区域来提供共享区域。另外,还提供了允许半特权程序访问多个此类地址空间 的指令。动态地址转换提供了来自多个不同地址空间的虚拟地址的转换。这些地址空间被 称为主地址空间、二级地址空间以及存取寄存器指定的地址空间。特权程序还可导致访问 起始地址空间。可针对CPU生成的指令和数据地址指定动态地址转换。需要一种提供本领域迄今为止尚未了解的附加功能、能力和保护的增强的动态地 址转换工具。
技术实现思路
提供了一种用于增强的动态地址转换工具的系统、方法和计算机程序产品,所述工具将虚拟地址转换成具有机器体系结构的计算机系统的主存储装置中的所需数据块的 实地址或绝对地址,所述机器体系结构具有用于转换的转换表层次结构。可向实地址添加 前缀以形成绝对地址。在一个示例实施例中,获取要转换的虚拟地址以及所述转换表层次结构的转换表 的初始起始地址。所述转换表包括区第一表(region first table)、区第二表、区第三表或 段表。根据所获取的初始起始地址,从所述段表获取段表表项。所述段表表项被配置为包 含格式控制字段。如果已启用增强的DAT工具以及所述格式控制字段,则判定是否已启用 所述段表表项中的访问有效性字段。如果已启用所述访问有效性字段,则所述段表表项还 包含访问控制字段、保护字段以及主存储装置中的大数据块的段_帧绝对地址。所述大数 据块是大小至少为1MB的块。如果已启用所述访问控制字段,则仅当所述访问控制字段与 程序状态字或者所执行程序指令的操作数所提供的程序访问键(program access key)匹 配时,才允许到所需数据块的存储操作。仅当与所述虚拟地址关联的程序访问键与所述访 问控制字段相同时,才允许从所需数据块执行取回操作。在另一实施例中,如果已启用所述访问有效性字段,则响应于在所需存储块处尝 试取回操作或存储操作并且段访问控制字段与程序访问控制字段不匹配,指示保护异常。下面将结合示出的特定实施例对本专利技术进行描述。应该理解,本领域的技术人员 可以在不偏离本专利技术的精神或范围的情况下做出各种更改和修改。附图说明附图连同下面的详细说明一起被结合到说明书中或构成说明书的一部分,用于全 部根据本专利技术进一步示出各种实施例和解释各种原理和优点,在所述附图中,相同的标号 在各个独立的视图之间表示相同或功能相似的元素,这些附图是图1示出了其中执行增强的动态地址转换的主计算机系统的一个实施例;图2提供了仿真具有主机体系结构的主计算机系统的示例仿真主计算机系统;图3示出了如何使用程序状态字针对虚拟地址的动态地址转换确定有效ASCE的 一个实施例;图4示出了其中使用在图3中确定的有效ASCE来确定在虚拟地址转换中使用的 转换表层次结构中的最高转换表的一个实施例;图5A示出了使用转换表层次结构使虚拟地址被动态地址转换到段表级别的过程 的一个实施例;图5B示出了图5A中的动态地址转换的后续过程,其中段表表项(STE)格式控制 (FC)为 0 ;图5C示出了图5A中的动态地址转换的后续过程,其中段表表项(STE)格式控制 (FC)为 1 ;图6示出了增强的动态地址转换(eDAT)获取段表表项中的格式控制字段的一个 实施例的流程图;图7示出了从图6的节点614开始的流程图的后续过程;图8示出了从图6的节点616开始的流程图的后续过程;图9示出了确定要应用于由转换后的虚拟地址寻址的所需数据块的DAT保护级别的一个实施例的流程图;图10示出了从图8的节点822开始的流程图的后续过程,其确定要应用于由转换 后的虚拟地址寻址的所需数据块的访问控制保护级别;图11示出了从图8的节点822开始的流程图的后续过程,其确定要应用于由转换 后的虚拟地址寻址的所需数据块的取回保护级别;图12示出了从图8的节点822开始的流程图的后续过程,其中从段表表项获取更 改记录忽略(override)字段;以及图13示出了实地址和绝对地址之间的关系。具体实施例方式应该理解,本申请的说明书中做出的陈述并非一定限制各种要求保护的专利技术中的 任何专利技术。而且,某些陈述适用于某些专利技术特性,但不适用于其他专利技术特性。除非另外指出, 否则在不失一般性的情况下,单数元素可以表示复数元素,并且反之亦然。本领域中的技术人员很容易熟悉在计算环境中为存储装置寻址以及使用寄存器 或地址字段中的位指示不同的状态以及针对这些状态执行操作。进而,本领域中的技术人 员了解计算机程序领域并且了解计算机系统组件之间的工作方式和相互关系。概述提供了增强的动态地址转换(DAT)工具的示例实施例。当安装并启用增强的DAT 工具之后,DAT转换可产生由段表表项中的段表表项(STE)格式控制确定的页帧实地址或 段帧绝对地址。如在此使用的,术语“应用增强的DAT”表示满足下面所有条件1)已安装 EDAT工具;2)已通过控制寄存器0 (CRO)位40启用EDAT工具;以及3)借助DAT-表表项转 换地址。应用增强的DAT之后,可以在DAT过程中提供以下附加功能将DAT保护位添加到区表表项,提供与段表表项和页表表项中的DAT保护位类似 的功能。将STE格式控制添加到段表表项。当STE格式控本文档来自技高网
...

【技术保护点】
一种用于保护具有转换表层次结构的计算机系统中的数据的方法,所述转换表用于将虚拟地址转换成主存储装置中的数据块的转换后的地址,所述方法包括:获取要转换的虚拟地址;获取所述转换表层次结构的转换表的初始起始地址,所述转换表层次结构包括段表;根据所获取的初始起始地址,从所述段表获取段表表项,所述段表表项被配置为包含格式控制字段;响应于已启用增强的DAT工具,判定是否已启用所述段表表项中的所述格式控制字段;以及响应于已启用所述格式控制字段,执行以下操作:判定是否已启用所述段表表项中的访问有效性字段,所述段表表项包括所述访问有效性字段、段访问控制字段、段取回保护字段以及主存储装置中的大数据块的段-帧绝对地址;以及响应于已启用所述访问有效性字段,执行以下操作:允许到所需存储块的存储,其中所述存储与所述虚拟地址关联,仅响应于所述段访问控制字段与程序状态字或所执行程序指令的操作数中的任意一个所提供的程序访问键匹配,才允许所述存储;以及仅响应于a)已禁用所述段取回保护字段,或者b)已启用所述段取回保护字段并且与所述虚拟地址关联的所述程序访问键与所述段访问控制字段相同,才允许从所需数据块执行取回,其中所述取回与所述虚拟地址关联。...

【技术特征摘要】
【国外来华专利技术】US 2008-1-11 11/972,688一种用于保护具有转换表层次结构的计算机系统中的数据的方法,所述转换表用于将虚拟地址转换成主存储装置中的数据块的转换后的地址,所述方法包括获取要转换的虚拟地址;获取所述转换表层次结构的转换表的初始起始地址,所述转换表层次结构包括段表;根据所获取的初始起始地址,从所述段表获取段表表项,所述段表表项被配置为包含格式控制字段;响应于已启用增强的DAT工具,判定是否已启用所述段表表项中的所述格式控制字段;以及响应于已启用所述格式控制字段,执行以下操作判定是否已启用所述段表表项中的访问有效性字段,所述段表表项包括所述访问有效性字段、段访问控制字段、段取回保护字段以及主存储装置中的大数据块的段 帧绝对地址;以及响应于已启用所述访问有效性字段,执行以下操作允许到所需存储块的存储,其中所述存储与所述虚拟地址关联,仅响应于所述段访问控制字段与程序状态字或所执行程序指令的操作数中的任意一个所提供的程序访问键匹配,才允许所述存储;以及仅响应于a)已禁用所述段取回保护字段,或者b)已启用所述段取回保护字段并且与所述虚拟地址关联的所述程序访问键与所述段访问控制字段相同,才允许从所需数据块执行取回,其中所述取回与所述虚拟地址关联。2.如权利要求1中所述的方法,其中所述转换后的地址是实地址或绝对地址中的任意 一个,其中向所述实地址添加前缀以形成所述绝对地址,其中所述转换表层次结构包括区 第一表、区第二表、区第三表以及所述段表中的一个或多个,其中从所述段表获取所述段表 表项包括A、B、C、D中的任意一个A)根据所获取的所述区第一表的初始起始地址,使用所述虚拟地址的第一索引部分引 用所述区第一表中包含所述区第二表的起始地址的区第一表表项;根据所述区第二表的所 述起始地址,使用所述虚拟地址的第二索引部分引用所述区第二表中包含所述区第三表的 起始地址的区第二表表项;根据所述区第三表的所述起始地址,使用所述虚拟地址的第三 索引部分引用所述区第三表中包含所述段表的起始地址的区第三表表项;以及根据所述段 表的所述起始地址,使用所述虚拟地址的段索引部分引用所述段表中的段表表项;B)根据所获取的所述区第二表的初始起始地址,使用所述虚拟地址的第二索引部分引 用所述区第二表中包含所述区第三表的起始地址的所述区第二表表项;根据所述区第三表 的所述起始地址,使用所述虚拟地址的第三索引部分引用所述区第三表中包含所述段表的 起始地址的所述区第三表表项;以及根据所述段表的所述起始地址,使用所述虚拟地址的 所述段索引部分引用所述段表中的所述段表表项;C)根据所获取的所述区第三表的初始起始地址,使用所述虚拟地址的第三索引部分引 用所述区第三表中包含所述段表的所述起始地址的所述区第三表表项;以及根据所述段表 的所述起始地址,使用所述虚拟地址的所述段索引部分引用所述段表中的所述段表表项; 以及D)根据所获取的所述段表的初始起始地址,使用所述虚拟地址的所述段索引部分引用所述段表表项。3.如权利要求2中所述的方法,其中响应于已启用所述增强的DAT工具以及未启用所 述格式控制字段,执行以下操作从所述段表表项获取页表的起始地址并使用所述虚拟地址的页索引部分引用所述页 表中的页表表项;从所述页表表项获取主存储装置中的小数据块的页_帧实地址,所述小数据块的大小 小于所述大数...

【专利技术属性】
技术研发人员:D格雷纳C小盖尼L海勒D奥西塞克E普费弗T什莱格尔C韦布
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1