当前位置: 首页 > 专利查询>英特尔公司专利>正文

在用户级存储器中提供后备存储器制造技术

技术编号:2819632 阅读:324 留言:0更新日期:2012-04-11 18:40
在一个实施例中,本发明专利技术包括一种用于请求为处理器的体系结构状态信息分配存储器作为后备存储器、并使用应用程序将所述体系结构状态信息存储在后备存储器中的方法。这样,后备存储器以及使用后备存储器中的信息的处理器增强对操作系统可以是透明的。描述了其它实施例并要求其权益。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术的实施例涉及基于处理器的系统中的数据处理,特别是涉及对操作系统(os)透明地执行处理器操作。
技术介绍
系统通常由硬件和软件组件构成。典型的硬件包括处理器及相关电路,其中包括芯片组、存储器、输入/输出(I/0)设备等。软件组件通 常包括OS和基本输/^/输出系统(BIOS)程序、低级驱动器和高级应用 程序,如用于执行诸如字处理、数据库处理、科学计算等预期任务的 用户级应用程序。一般来说,OS是系统上的活动的主调度器,并且完全知道在处理 器上正运行的各种进程。因此,在将附加特征或扩展加入硬件、如处理器时,在驱动器或其它软件方面需要os支持,使得os可监测增强 的硬件的运行。当附加处理器特征或扩展对正在处理器上运行的各进 程可见时,os可选择对特征或扩展进行虚拟化,使得各进程感觉它具 有它自己的、对特征或扩展的私有访问或副本。在发起进程时,OS提供进^I控制块(PCB),它是表示存储器的特 许级中(即用户级应用程序不可访问)的进程的结构。PCB可包括与运 行进程有关的各种信息,例如标识信息、状态信息、寄存器值、存储 器信息和其它这种信息。提供这种信息并保持处理器与OS维护的进程控制块中的这种信息之间的相干性的步骤是麻烦且性能敏感的活 动。在将某些指令加入指令集体系结构(ISA)时,附加的、扩展的状态 在处理器中可能是可用的。此外,在结合对硬件(例如处理器硬件,如 寄存器等)的增强时,需要OS支持。这种支持可采取当前OS的驱动器或者新os服务包的形式,并且将来的os版本可包括附加代码来支持所述增强。另外,每当将新特征加到处理器时,需要PCB或其它 OS数据结构中的附加存储空间。这些扩展还可对各种活动、如两个进程之间的上下文切换产生性 能影响。如果由于这些扩展而4吏附加状态不可能由大多数进程频繁使 用,则OS可实现所谓的延迟(lazy)保存和恢复机制,该机制可用来推 迟、有时消除因这些扩展而引起的附加状态的上下文切换,从而节省 时间。但是,在多处理器系统、如对称多处理器(SMP)系统中,这些 机制更为麻烦,并且OS通常会在上下文切换时改为执行全状态保存, 这可能是比较昂贵的过程。这类保存既涉及到OS又是低效的。因此,需要一种实现对硬件的增强、如处理器扩展的改进方式。附图说明图1是根据本专利技术的一个实施例的方法的流程图。 图2是根据本专利技术的一个实施例、初始化后备存储器的方法的流 程图。图3是根据本专利技术的一个实施例、换出任务的方法的流程图。图4是根据本专利技术的一个实施例、执行进程迁移的方法的流程图。图5是根据本专利技术的一个实施例的处理器的框图。图6是根据本专利技术的 一个实施例的系统的 一部分的框图。图7是根据本专利技术的一个实施例的系统的框图。具体实施例方式在各种实施例中,应用存储器(即用户级可存取存储器)可用作处 理器的某些按进程或者按线程状态信息的存储装置,而不要求操作系 统(OS)在其PCB或其它OS结构中提供存储装置。状态信息可对应于 体系结构状态信息,例如控制和配置寄存器、物理寄存器、其它控制结构等。在一些实现中,这些寄存器的至少一部分可以是远比处理器 的标量寄存器更宽的向量大小寄存器。这样,OS可能不知道加到处理 器的附加状态。此外,附加状态可由独立应用程序使用,而无需应用 程序之间的任何交互或协调。这转而允许在现有操作系统上使用新的 处理器扩展,例如新的操作模式、指令扩展等。使用本专利技术的实施例,可保存和恢复处理器状态而无需os参与。状态可包括状态的N个字节,其中N可通过待实现的给定处理器特征 来确定。此外,本文描述的机制可以是操作系统不可知且透明的,并 且能以比OS对每个上下文切4奂执行完全保存和恢复时更高的性能来 执行状态保存和恢复操作。为此,这些机制可具有建立和使用的最小 开销,并且可由多个进程使用,而无需OS对这个被管理状态进行上 下文切换。因此,可在处理器中实现新的寄存器和特征,而无需OS 进程控制块中的附加存储要求。换言之,可支持处理器扩展,它们可 包括执行新特征或功能的附加石更件、状态和/或指令(本文中统称为"扩 展")。此外,可提供这种支持而无需OS支持。也就是说,这类扩展 可包含在处理器中,并且可对OS透明地进行适当的执行。另外,无 需在控制权转移到另一个应用程序时立即保存处理器状态。因此,可 使保持状态的性能开销为最小,并且只进行绝对必要的上下文切换。 如果扩展的性质可使得多个进程将同时使用该扩展是不太可能的,则 一般避免了这个新状态的上下文切换。在更为扩展的状态没有被大多 数应用程序使用或者没有被频-緊使用时,这是特别适当的。这样,可按线程或按进程来对扩展(例如处理器)资源进行虚拟化, 从而要求来自用户代码的最小支持,同时完全是OS透明的。这样, 多个线程和/或进程可有效的使用扩展资源,其中对上下文变更具有最 小开销。一般来说,在上下文切换期间由OS显式保存和恢复OS中的进程可用的寄存器。通常,os知道进程的寄存器的后备存储装置所在的位 置,但硬件不知道。但是,在这里,处理器知道后备存储器的位置,而在一些实施例中,OS可能不知道。代替上下文切换期间的显式保存 和恢复,硬件保存状态的一位或多位,它们指示新扩展状态的当前授 权副本所在的位置,是在硬件的寄存器中还是在后备存储器中。在一 些实施例中,仅使用一个状态位来表示全部扩展状态,由硬件根据需 要对该状态位进行保存和恢复。在其它实施例中,新扩展状态可分解 为更小的部分,其中的每一个具有这样一个状态位。硬件可动态地、 即根据与这些状态位其中之一相对应的状态来检测对扩展状态的给定部分进行保存或恢复的需要,以及根据需要透明地执行保存或恢复, 并相应地更新该状态位。当后备存储器是授权副本并且用户尝试访问扩展状态的 一部分 时,硬件在继续执行之前透明地将状态恢复到处理器的寄存器中。这 个动作可能引起页错误,因为后备存储器不一定存在。因此,指定访 问这种扩展状态的所有新指令允许这类页错误。当用户尝试修改扩展状态的一部分时,硬件首先检验后备存储器 当前是否存在、可写,以及标记为"脏"。如果不是,则发信号通知 适当页错误。因此,指定可修改这种扩展状态的所有新指令允许这类 页错误。当进行这种检验时,处理器可在出现某些事件之前对肯定结 果进行高速緩存,从而消除对于频繁检验的需要。作为这种检验的一 个副作用,处理器发现用户为后备存储器指定的虚拟地址的物理转换, 这种物理转换可由硬件来保持,并按照以下所述方式使用。在一些实施例中,当用户尝试修改扩展状态的一部分时,处理器 断言后备存储器中对应的高速纟爰存线的所有权。进行这种操作的方法 随所涉及存储系统的性质而改变。在一些实施例中,将一个或多个修改标志位(dirty bit)与扩展状态 的若干部分相关联。在从后备存储器中恢复一些值时,以及在又将这 些值保存到后备存储器时,清除这类修改标志位。每当运行改变相应 扩展寄存器的值的指令时,设置这类修改标志位。每当扩展状态的授权副本驻留在处理器的寄存器并且为"脏"时,始终存在处理器中存储的当前后备存储器的有效物理转换。处理器可 对针对这些地址的存储器事务作出响应。处理器可通过寄存器中存储 的值来响应存储器读取请求。因此,寄存器实质上充当专用高速緩存, 本文档来自技高网...

【技术保护点】
一种方法,包括: 为处理器的体系结构状态信息分配存储器的一部分作为后备存储器,其中,所述体系结构状态信息包括对操作系统(OS)透明的扩展状态信息,所述扩展状态信息对应于所述OS不支持的扩展处理器特征;以及 通过应用程序将所述体系结构状态信息存储在所述后备存储器中,而无需OS支持。

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:P哈默隆德M迪克松M科尔纳比M费特曼
申请(专利权)人:英特尔公司
类型:发明
国别省市:US[美国]

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

1
相关领域技术
  • 暂无相关专利