本发明专利技术名称为“在处理器中提供用于系统管理模式的状态存储装置”。在一个实施例中,本发明专利技术包括具有例如静态随机存取存储器的管芯上存储装置的处理器,管芯上存储装置在进入系统管理模式(SMM)时存储从处理器的架构状态存储装置交换出来的一个或多个线程的架构状态。以此方式,能够避免将此状态信息传送到系统管理存储器,从而减少与进入SMM关联的等待时间。实施例还可以使处理器能够更新处于长指令流中或处于系统管理中断(SMI)阻塞的状态中的执行代理的状态,以便向SMM内部的代理提供指示。还描述了其他实施例并且对其要求权利。
【技术实现步骤摘要】
本专利技术涉及在处理器中提供用于系统管理模式的状态存储装置。
技术介绍
大多数计算机系统处理器支持称为系统管理模式(SMM)的特殊操作模式。SMM提 供对于操作系统(OS)软件透明的不同操作环境。此模式常常被原始设备制造商(OEM)用 于执行例如系统管理、装置、电源和热管理的特殊任务。服务器相关的可靠性、可用性和可 服务性(RAS)功能常常使用SMM来实现。通常通过向处理器发送系统管理中断(SMI)消息 来进入SMM。当确认SMI时,处理器将当前处理器上下文(也称为处理器保存状态)保存 到系统存储器中专门分配给SMM的部分,称为系统管理随机存取存储器(SMRAM),并且执行 SMRAM中包含的SMI处理程序(handler)代码。当SMI处理程序完成其操作时,它执行特殊 的(仅在SMM中有效的)恢复指令,该指令使处理器从SMRAM重新加载所保存的处理器上 下文并恢复执行中断的任务。在多处理器系统中,一般将SMI消息广播到所有处理器。SMI处理程序选择一个 处理器(称为SMM主控(monarch))来处理事件。此处理器等待直到所有其他处理器会合 (rendezvous)在SMM内,之后才处理SMI事件。非主控处理器保留在SMM中,直到主控完成 事件处理。当处理了 SMM事件时,主控将以信号通知其他处理器退出SMM。实现这种同步的 进入和退出行为以阻止两个并行环境(OS与SMM)之间的任何资源冲突。即,如果一些处理 器在OS环境中是活动的,而同时其余的处理器在SMM环境中是活动的,则可能的是它们可 能修改共享的资源,并由此干扰彼此的操作,从而导致系统崩溃。此外,某些SMM事件只能 由特定逻辑处理器或一组逻辑处理器来处理。广播确保了此条件总是被满足,因为所有逻 辑处理器都将进入SMI。因此,多处理器系统中的SMI处理是复杂的且能消耗所有系统资源,阻止其他有 用工作的处理,因为当处理器处于SMM中时,它就不可用于操作系统。
技术实现思路
本专利技术提供一种设备,包括处理器核,执行指令并进入系统管理模式(SMM),其 中当进入所述SMM时,所述处理器核将存储所述处理器核的状态存储装置中存在的活动状 态到所述处理器核的存储单元中,并将通过插入与所述SMM关联的值到所述状态存储装置 中来设立SMM执行环境。本专利技术还提供一种方法,包括响应系统管理中断(SMI)事件,确定处理器上执行 的所有线程是否已进入系统管理模式(SMM)会合状态;以及如果否,则确定其余线程是否 正在执行长流操作或处于SMI禁止的状态中,以及如果是,则使用主控线程在其余线程执 行所述长流操作或处于所述SMI禁止的状态中时处理所述SMI事件,否则在处理所述SMI 事件之前等待其余线程进入所述SMM会合状态。本专利技术还提供一种系统,包括第一处理器,包括执行指令和进入系统管理模式(SMM)的第一核、指示所述第一核上执行的线程是否处于长流操作中的第一指示符、指示所 述线程是否处于系统管理中断(SMI)禁止的状态中的第二指示符以及存储单元,其中在进 入所述SMM时,所述第一核将存储所述第一核的状态存储装置中存在的活动状态到所述存 储单元中并将存储SMM执行状态到所述状态存储装置中,所述存储单元专用于在所述SMM 期间存储所述活动状态;第二处理器,包括执行指令和进入所述SMM的第二核、指示所述第 二核上执行的第二线程是否处于长流操作中的第一指示符、指示所述第二线程是否处于所 述SMI禁止的状态中的第二指示符以及第二存储单元,其中在进入所述SMM时,所述第二核 将存储所述第二核的状态存储装置中存在的活动状态到所述第二存储单元中并将存储SMM 执行状态到所述状态存储装置中,所述第二存储单元专用于在所述SMM期间存储所述活动 状态;以及动态随机存取存储器(DRAM),耦合到所述第一和第二处理器,其中所述DRAM的 一部分是用于所述系统的系统管理随机存取存储器(SMRAM)。附图说明图1是根据本专利技术的一个实施例的处理器的框图。图2是根据本专利技术的一个实施例的多处理器系统的框图。图3是根据本专利技术的一个实施例的方法的流程图。图4是根据本专利技术的另一个实施例的方法的流程图。具体实施例方式在多种实施例中,能够使用管芯上存储装置(on-die storage)作为使用外部物理 存储器的备选以存储有关SMM进入/退出的各个线程的保存状态。相比之下,对于进入和 退出SMM,目前的系统依赖于外部物理存储器。这种SMM对系统RAM的依赖性导致任务关 键应用中的伸缩(scaling)、性能和可靠性相关的限制,并且能使用本专利技术的一实施例来避 免。注意,当在本文中使用时,术语“线程”可以指包括用于与进程关联的架构状态的处理 器中的存储装置(例如,寄存器文件(register file)和关联的配置和状态寄存器)的硬 件线程。当在本文中使用时,术语“硬件线程”与术语“逻辑处理器”同义来使用。每个处 理器核可以包括多个逻辑处理器,每个逻辑处理器具有专用的架构状态存储装置,但是其 共享其他核资源(例如前端单元、执行单元等)。在不同的实现中,提供用于在SMM期间存储任何活动线程的保存状态的管芯上 存储装置能够是用作用于保存状态存储装置的小专用存储器的处理器本身中的寄存器文 件或管芯上静态RAM(SRAM)。一些处理器可以包括用于像电源管理的特定任务的管芯上 SRAM,例如,例如根据高级配置和电源接口(ACPI)状态的OS管理的低电源(low power)状 态(例如,C6状态或其他电源管理操作)。在此类处理器中,能够为每个线程的SRAM保存 状态预留在每线程基础上分区的此SRAM中的部分。作为一个示例,每个逻辑处理器可以使 用1千字节(KB)的SRAM存储装置以用于SMM保存状态。如果给定的处理器不能将这个量 的SRAM专用于SMM保存状态,则能够实现一实施例使得它能够利用为C6流(flow)预留的 SRAM。在此情况中,SMM内部的C6/C7转变能够降级到更低的低电源状态(例如,C3)以确 保互斥地将共享的SRAM空间用于SMM状态保存。一些处理器并不为C6状态保存实现专用 的SRAM,而是相反利用末级高速缓存(LLC)的一部分以用于在C6状态保存期间存储处理器5状态。在这些处理器中,SMM保存状态能够存储在LLC中。一旦保存,则可以在不同方式中存取此内部SMM保存状态。例如,能够使用每线程 基础上的模型特定的寄存器(MSR)寻址或后向兼容机制来存取该内部状态。常规方式下, 处理器能够在某个系统存储器地址存取SMM保存状态。后向兼容机制包括捕捉(trap)逻 辑处理器对这些遗留存储器地址的存取并将其重定向到适合的SRAM位置的处理器中的逻 辑。如果要求与现有基本输入/输出系统(BIOS)软件的绝对后向兼容性,则能实现此类重 定向。这些MSR只能在SMM模式中读或写并且遵循与SMM保存状态关联的约束。如果一个 逻辑处理器需要对另一个处理器的保存状态的存取,则这能经软件协议来完成。在一些实施例中,专用处理器标识符叶(leaf)(例如,CPUID叶)或其字段或特征 启用的MSR(模型特定的寄存器)位能用于启用内部SRAM的使用。现在参考图1,示出的是 根据本专利技术的一个实施例的处理器的框图。如图1中所示,本文档来自技高网...
【技术保护点】
一种设备,包括:处理器核,执行指令并进入系统管理模式(SMM),其中当进入所述SMM时,所述处理器核将存储所述处理器核的状态存储装置中存在的活动状态到所述处理器核的存储单元中,并将通过插入与所述SMM关联的值到所述状态存储装置中来设立SMM执行环境。
【技术特征摘要】
...
【专利技术属性】
技术研发人员:MS纳图,T兰加拉詹,GB多希,SM达塔,B加尼桑,MJ库马尔,RS帕塔萨拉蒂,F宾斯,RN默西,RC斯旺森,
申请(专利权)人:英特尔公司,
类型:发明
国别省市:US[美国]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。