[发明专利]选择处理器似乎遵循的架构级别的方法、处理器及系统有效
申请号: | 200810001772.1 | 申请日: | 2008-01-08 |
公开(公告)号: | CN101221514A | 公开(公告)日: | 2008-07-16 |
发明(设计)人: | G·R·弗拉齐耶;M·J·科里甘;R·L·阿恩特;W·J·阿姆斯特朗;J·T·奥坎二世;N·纳亚尔;T·R·马齐尼;C·梅 | 申请(专利权)人: | 国际商业机器公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48 |
代理公司: | 北京市中咨律师事务所 | 代理人: | 于静;杨晓光 |
地址: | 美国*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 选择 处理器 似乎 遵循 架构 级别 方法 系统 | ||
技术领域
本发明一般地涉及处理器,具体地说,涉及配置处理器架构以与软件兼容的方法。
背景技术
现今的计算设备能够执行多种任务。传统计算设备可以执行各种类型的软件产品,并且包括执行设计为在早期硬件(如早期中央处理单元(CPU))上运行的软件的能力。计算设备由计算设备上运行的操作系统(O/S)管理并通过操作系统执行软件产品。O/S管理系统的硬件和软件资源并为应用提供了与计算设备的硬件进行交互的稳定一致的方式。
通常,当针对给定处理器架构级别编写的程序在遵循定义更多指令或其他功能的更高架构级别的处理器上运行时,可能会因为无意中使用新的指令或功能而出错。例如,针对处理器A编写并且遵循架构A的程序包含诸如没有按照架构的要求将指令中的保留字段设置为“0”之类的潜在“缺陷”。当程序在处理器A上运行时,由于处理器忽略这些字段,因此可能不会出错。如果接着开发了架构B并且该架构定义了这些先前保留的字段,则处理器B(遵循架构B)不再忽略这些字段,当程序在处理器B上执行时,可能出现严重错误。
不幸的是,在本领域的目前状态下,解决此问题的唯一方法是在遵循较新的架构级别的处理器上测试程序以发现任何隐藏的错误。然后可以更正这些错误并将程序重新分发给所有用户。在多数情况下,这是极其昂贵的,并且如果程序由于缺乏支持或源代码不可用而无法被修改,则有时这是不可能的。
此外,当针对处理器B编写新程序时可能发生问题。例如,所述程序将利用处理器B的新功能,但是需要确保所述程序在没有新功能的处理器A上正确执行。目前,确保没有任何可导致程序在处理器A上异常运行的潜在缺陷的唯一方法是在处理器A上测试程序。此方法需要处理器A可用,并且如果程序被设计为在只遵循两种架构级别的处理器上运行,则此方法可能不会呈现问题。但是,当程序被设计为在若干先前的架构级别上运行时,满足获得遵循每种早期架构级别的处理器样本的要求会非常麻烦。
在要将正在执行的程序迁移到一组处理器(每个处理器可能遵循不同的架构级别)的情况下会产生另一个问题。在此上下文中的迁移意味着当程序仍在运行时,将程序的执行状态从一个处理器转移到另一个处理器。一种形式的程序迁移是逻辑分区迁移,其是在单个计算机的资源由一组独立逻辑分区共享的情况下的迁移。每个分区被配置为在给定架构级别的架构功能上运行。在分区迁移期间,其中将正在执行的逻辑分区从源计算机系统迁移到目标计算机系统,源计算机系统和目标计算机系统的处理器可能遵循不同的处理器架构级别。由于程序可能针对特定架构级别而设计,因此可进行迁移的处理器组限于那些遵循程序设计所针对的架构级别的处理器。此限定可以限制迁移的可能性并相应地限制程序迁移的多样性。
直到目前为止,如果出现上述问题,则显然本领域的技术人员不了解选择处理器似乎遵循的架构级别的适当方法。由于对于程序而言,可以在处理器架构的增强(或更新或不同)级别上执行非常重要,因此需要一种机制来确保如果程序在遵循某一架构级别的处理器上正确执行,则程序无需被修改便可在遵循所有后续架构级别的处理器上运行,即使程序包含上述的潜在缺陷。此外,需要一种机制来确保程序能够在早期处理器上正确执行而无需早期处理器物理地可用于程序测试。此外,需要一种允许程序在所有处理器之间迁移而与该组处理器支持的架构级别无关的方案。此类方案还将允许程序在具有遵循不同架构级别的处理器的两个计算机系统之间进行运行中的迁移。
发明内容
本发明披露了一种在计算环境中选择处理器似乎(appear)遵循的架构级别以允许高效的程序执行并在不同的处理器架构级别之间进行迁移的方法和系统。简言之,所述方法利用可控制处理器要支持的架构级别的“处理器兼容性寄存器”(PCR)。在一个实施例中,所述PCR只能由超级特权软件来访问。所述超级特权软件设置PCR中指定处理器要支持的架构级别的位,以便当程序在处理器上运行时,处理器根据程序设计所针对的架构级别来运行。
与处理器关联的处理器兼容性寄存器(PCR)由计算机系统的设计者定义。在开始执行程序或逻辑分区期间,在处理器处从诸如系统管理程序之类的超级特权软件程序来接收指令。所述指令通过设置与执行程序或逻辑分区所需的架构级别对应的适当级别位(多个)来修改所述处理器兼容性寄存器。所述方法还包括根据所述处理器兼容性寄存器的内容来配置处理器以便根据遵循指定架构级别的处理器的要求运行。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国际商业机器公司,未经国际商业机器公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810001772.1/2.html,转载请声明来源钻瓜专利网。