CN105103121B - 刀片系统以及刀片系统的分区执行方法 - Google Patents

刀片系统以及刀片系统的分区执行方法 Download PDF

Info

Publication number
CN105103121B
CN105103121B CN201380075180.3A CN201380075180A CN105103121B CN 105103121 B CN105103121 B CN 105103121B CN 201380075180 A CN201380075180 A CN 201380075180A CN 105103121 B CN105103121 B CN 105103121B
Authority
CN
China
Prior art keywords
logic processor
blade apparatus
memory
blade
instruction
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.)
Active
Application number
CN201380075180.3A
Other languages
English (en)
Other versions
CN105103121A (zh
Inventor
D·舒马赫
S·K·迈尔
R·W·赫里尔
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.)
Hewlett Packard Enterprise Development LP
Original Assignee
Hewlett Packard Enterprise Development LP
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 Hewlett Packard Enterprise Development LP filed Critical Hewlett Packard Enterprise Development LP
Publication of CN105103121A publication Critical patent/CN105103121A/zh
Application granted granted Critical
Publication of CN105103121B publication Critical patent/CN105103121B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4406Loading of operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本文公开的示例涉及标识刀片设备的存储器以便由包括该刀片设备的分区的操作系统(OS)使用。示例包括:标识与第一刀片设备的第一逻辑处理器关联的第一刀片设备的存储器,以便由包括第一刀片设备和第二刀片设备的分区的OS使用,其中所述OS由第二刀片设备的至少第二逻辑处理器来执行。

Description

刀片系统以及刀片系统的分区执行方法
技术领域
本申请涉及刀片系统,并且尤其涉及识别刀片设备的存储器以用于由包括所述刀片设备的分区的操作系统使用。
背景技术
刀片系统可以包括安装到刀片外壳中的多个刀片设备。每个刀片设备可以是例如刀片服务器。在一些示例中,用户可以设置刀片系统的分区以包括安装在刀片外壳中的一个、多个或全部刀片设备。在这些示例中,分区可以运行操作系统(OS)并且利用OS来运行应用。
发明内容
根据本发明的第一方面,提供一种非暂时性机器可读存储介质,其编码有包括指令的系统固件实例,所述指令能够由刀片系统的第一刀片设备的第一逻辑处理器执行以用于:访问所述刀片系统的分区的分区信息,所述分区执行操作系统并且包括所述第一刀片设备和包括第二逻辑处理器的第二刀片设备,其中,所述第一逻辑处理器和所述第二逻辑处理器作为不同系统固件域的部分进行操作;向所述第二刀片设备标识与所述第一逻辑处理器相关联的所述第一刀片设备的能够使用的存储器,其中,所述第二刀片设备使得所述第一刀片设备的所标识的存储器能够由所述操作系统使用;以及响应于判定出所述分区信息指示所述第一刀片设备是扩展刀片设备,将所述第一逻辑处理器布置成系统固件执行模式,在所述系统固件执行模式中,所述第一逻辑处理器执行所述系统固件实例的指令,而所述操作系统由至少所述第二逻辑处理器执行。
根据本发明的第二方面,提供一种刀片系统,其包括:第一固件存储器,其存储第一系统固件实例;包括第一刀片设备和第二刀片设备的分区的所述第一刀片设备的第一逻辑处理器,所述第一刀片设备和所述第二刀片设备的每一个被安装在刀片外壳中;第二固件存储器,其存储第二系统固件实例以引导所述分区来执行操作系统;以及所述第二刀片设备的第二逻辑处理器;其中,所述第一系统固件实例包括能够由所述第一逻辑处理器执行以完成如下动作的指令:向所述第二刀片设备标识与所述第一逻辑处理器相关联的所述第一刀片设备的能够使用的存储器;以及将所述第一逻辑处理器布置成系统固件执行模式,在所述系统固件执行模式中,所述第一逻辑处理器执行所述第一系统固件实例的指令,而所述操作系统由至少所述第二逻辑处理器执行;以及其中,所述第二系统固件实例包括能够由所述第二逻辑处理器执行以使得所述第二逻辑处理器和所述第一刀片设备的所标识的存储器能够由所述操作系统使用的指令。
根据本发明的第三方,提供一种能够由包括第一刀片设备和第二刀片设备的刀片系统的分区执行的方法,所述第一刀片设备和所述第二刀片设备分别包括第一逻辑处理器和第二逻辑处理器,所述方法包括:配置所述第一逻辑处理器以作为与第一系统固件实例相关联的第一系统固件域的部分进行操作,并且配置所述第二逻辑处理器以作为与第二系统固件实例相关联的第二系统固件域的部分进行操作,来引导所述分区执行操作系统;利用所述第一逻辑处理器和所述第二逻辑处理器来标识与所述第一逻辑处理器相关联的所述第一刀片设备的能够使用的存储器和与所述第二逻辑处理器相关联的所述第二刀片设备的能够使用的存储器;使得所述第一刀片设备和所述第二刀片设备中的每一个的所述第二逻辑处理器和所标识的存储器能够由所述操作系统使用;在开始所述操作系统的执行之前,将所述第一逻辑处理器布置成系统管理模式;利用至少所述第二逻辑处理器来开始所述操作系统的执行;以及在所述操作系统的执行期间将所述第一逻辑处理器保持在所述系统管理模式中。
附图说明
下面的详细说明参考了附图,在附图中:
图1是在将第一逻辑处理器布置成系统固件(SFW)执行模式而操作系统(OS)由至少第二逻辑处理器来执行的示例刀片系统的框图;
图2是将分区的多个逻辑处理器布置成SFW执行模式而OS由分区的另一逻辑处理器执行的示例刀片系统的框图;
图3是将系统的分区的逻辑处理器布置成SFW执行模式并且使得与逻辑处理器相关联的存储器可供分区的OS使用的示例系统的框图;
图4是在利用第二逻辑处理器执行OS的期间将第一逻辑处理器保持在系统管理模式(SMM)中的示例方法的流程图;以及
图5是使得被配置为在不同的SFW域中操作的分区的第一和第二逻辑处理器的存储器可供分区的OS使用的示例方法的流程图。
具体实施方式
如上所述,刀片系统的分区可以运行操作系统(OS)并且利用OS来运行应用。运行OS的分区可以包括多个刀片设备,每个刀片设备都包括逻辑处理器和存储器。每个逻辑处理器可以被包括在集成电路(IC)(例如,芯片)上。包括至少一个中央处理单元(CPU)的IC在本文中可以被称为“CPU IC”。在一些示例中,除了逻辑处理器之外,CPU IC可以包括用于管理刀片设备的存储器的至少一个集成存储器控制器。在这些示例中,CPU IC的存储器控制器能够管理相对有限量的存储器,这会限制在刀片设备上可用的存储器的量,因此限制在分区中可用的存储器的量。
通过将附加的刀片设备添加到分区,可以将更多的存储器添加到分区中。然而,由OS所运行的一些应用的许可证成本可以基于可供应用使用的逻辑处理器的数量来计算。因此,由于所添加的刀片设备的逻辑处理器的可用性,将刀片设备添加到分区可能大幅度增加一些应用的许可证成本。
为了解决这些问题,本文所描述的示例可以与刀片系统的分区有关,其中分区用于执行OS并且包括分别包含第一逻辑处理器和第二逻辑处理器的扩展刀片设备和计算刀片设备,其中第一逻辑处理器和第二逻辑处理器要在不同的系统固件(SFW)域内操作。本文所描述的示例可以将扩展刀片设备的第一逻辑处理器布置成SFW执行模式,在该模式中第一逻辑处理器用于执行SFW实例的指令,而OS由至少计算刀片设备的第二逻辑处理器来执行。本文所描述的示例可以进一步使得与第一逻辑处理器相关联的扩展刀片设备的存储器可供OS使用。
通过将第一和第二逻辑处理器布置在不同的SFW域中,而不向OS标识第一逻辑处理器,本文所描述的示例可以使分区的OS能够使用扩展刀片设备的存储器,而不将扩展刀片设备的第一逻辑处理器暴露于OS或由OS 运行的应用。如此,本文所描述的示例可以使分区能够使用扩展刀片设备的存储器,以用来运行OS和应用,而不会由于扩展刀片设备的逻辑处理器增加应用许可证成本。
在本文所描述的示例中,通过在由分区执行OS期间将扩展刀片设备的逻辑处理器布置成SFW执行模式,逻辑处理器仍可用来执行SFW实例的指令,以便例如在扩展刀片设备处采集错误信息,或者以其他方式在SFW 实例的指令控制下管理扩展刀片设备的资源,同时保持不能由OS使用。
另外,通过在不同的SFW域中操作扩展刀片设备和计算刀片设备的逻辑处理器,本文所描述的示例可以使分区能够利用具有不同设计的逻辑处理器的扩展刀片设备和计算刀片设备。在这些示例中,扩展刀片设备可以包括比计算刀片设备的逻辑处理器更廉价的逻辑处理器。通过这种方式,本文所描述的示例可以使分区的存储器能够由比计算刀片设备更廉价的扩展刀片设备提供的存储器来补充。
现在参考附图,图1是将第一逻辑处理器132布置成SFW执行模式而 OS由至少第二逻辑处理器142执行的示例刀片系统100的框图。在本文所描述的示例中,刀片系统可以是计算系统,其包括刀片外壳和安装在刀片外壳中的至少一个刀片设备。在图1的示例中,刀片系统100包括刀片设备130和140,每个刀片设备都安装在刀片系统100的刀片外壳中。刀片系统100可以利用刀片设备130和140中的每一个的资源来运行OS 115。例如,OS 115可以由包括至少刀片设备130和140的刀片系统100的分区108 来运行。
如本文所使用的,“刀片设备”可以是物理计算设备,其包括存储器和至少一个逻辑处理器,并且能够安装到刀片外壳上。在一些示例中,刀片设备可以是模块化的计算设备,其能够物理地安装到刀片外壳上以用于操作,其包括一些核心计算资源(例如,CPU IC和存储器),并且不包括一些外围设备计算资源(例如,电源、冷却风扇、外部网络端口等等、或其组合)。如本文所使用的,“刀片外壳”可以是接收多个刀片设备并且针对接收到的刀片设备提供至少一个外围设备资源的底盘。例如,刀片外壳可以包括冷却所安装的刀片设备的风扇、将电力提供给所安装的刀片设备的至少一个电源、用于所安装的刀片设备的外部网络端口,等等,或者其组合。
在图1的示例中,刀片设备130可以包括逻辑处理器132以及与逻辑处理器132相关联的存储器134。在本文所述的示例中,逻辑处理器132在本文中可以被称为“扩展”逻辑处理器132,而刀片设备130在本文中可以被称为“扩展”刀片设备130。在一些示例中,刀片设备130可以包括多个逻辑处理器,其中的一些或全部的逻辑处理器具有关联的存储器。刀片设备140可以包括逻辑处理器142。在一些示例中,刀片设备140可以包括与逻辑处理器142关联的存储器。在本文所述的示例中,逻辑处理器142在本文中可以被称为“计算”逻辑处理器142,而刀片设备140在本文中可以被称为“计算”刀片设备140。在一些示例中,刀片设备140可以包括多个逻辑处理器,其中的一些或全部具有关联的存储器。如本文所使用的,“逻辑处理器”可以是CPU IC、CPU IC的CPU(即,多核CPU IC上的多个核中的一个)、或CPU IC的CPU(或核)上的线程。
本文所描述的任何扩展刀片设备或计算刀片设备可以是如上所述的刀片设备。在本文所描述的示例中,扩展刀片设备可以是被指定为提供存储器而不是逻辑处理器,以用于由包括该刀片设备的分区的OS使用的刀片设备。在本文所描述的示例中,计算刀片设备可以是被指定为提供存储器和逻辑处理器,以用于由包括该刀片设备的分区的OS使用的刀片设备。在一些示例中,分区的每个刀片设备可以被指定为在描述分区的配置的各方面的分区信息中的扩展刀片设备或计算刀片设备。另外,本文所述的任何扩展逻辑处理器或计算逻辑处理器可以是如上所述的逻辑处理器。在本文描述的示例中,扩展逻辑处理器可以是扩展刀片设备的逻辑处理器,而计算逻辑处理器可以是计算刀片设备的逻辑处理器。
如本文所使用的,与逻辑处理器“关联”的存储器(或者逻辑处理器的“关联”存储器)是由集成在包括逻辑处理器或构成逻辑处理器的CPU IC 上的存储器控制器管理的存储器。例如,包括与逻辑处理器关联的存储器的刀片设备可以包括至少一个存储器模块以及包括至少一个逻辑处理器 (例如,CPU或核)以及至少一个管理存储器模块的集成的存储器控制器的CPU IC。在一些示例中,刀片设备可以包括多个CPU IC,每个CPU IC 都包括至少一个管理刀片设备的存储器模块的集成的存储器控制器。如本文所使用的,存储器模块可以是例如双内联存储器模块(DIMM)、单内联存储器模块(SIMM)、或包括多个存储器设备的任意其他类型的存储器模块。
在图1的示例中,刀片设备130包括机器可读存储介质120,其中编码有包括指令122、124和126的SFW实例121。在一些示例中,SFW实例 121可以包括附加的指令。如本文所使用的,“机器可读存储介质”可以是电的、磁的、光的或其他物理存储装置,以包含或存储例如可执行指令、数据等信息。例如,本文所描述的任何机器可读存储介质可以是随机存取存储器(RAM)、只读存储器(ROM)、易失性存储器、非易失性存储器、闪存、存储驱动器(例如,硬盘驱动器)、固态驱动器、任意类型的存储磁盘(例如,压缩盘只读存储器(CD-ROM)、任何其他类型的压缩盘,DVD 等),等等,或其组合中的任一种。此外,本文所述的任何机器可读存储介质可以是非暂时性的。本文所描述的任何“存储器”可以是至少一个机器可读存储介质的至少一部分。
在图1的示例中,SFW实例121的指令能够由逻辑处理器132来执行以实施如下面结合SFW实例121所描述的功能。逻辑处理器132可以取得、解码和执行存储在存储介质120上的指令以实施下面描述的功能。在图1 的示例中,存储介质120可以是存储SFW实例121的ROM。在一些示例中,存储介质120可以包含在安装于刀片系统100的刀片设备外壳中的另一刀片设备上。如本文所使用的,“系统固件实例”(或“SFW实例”)可以是引导并且管理刀片设备的资源的一组机器可执行指令。例如,在重置之后,刀片设备的逻辑处理器可以开始执行SFW实例的指令以初始化逻辑处理器以用于操作,以及初始化刀片设备的其他资源,例如与逻辑处理器关联的存储器。在一些示例中,逻辑处理器和关联的存储器的初始化可以包括由SFW实例实现的加电自测试(POST)。
当由逻辑处理器执行时,SFW实例的指令还可以将逻辑处理器配置为在与SFW实例相关联的SFW域中操作。如本文所使用的,与SFW实例相关联的“系统固件域”(或者“SFW域”)可以是如下的环境:当在引导之后执行SFW实例的指令时,由SFW实例引导的逻辑处理器可以操作。在一些示例中,SFW域可以包括多个SFW资源,包括例如SFW数据结构和 SFW代码(即,机器可执行指令)。如本文所使用的,作为SFW域的部分操作的逻辑处理器可以是对SFW域的SFW资源具有访问权的逻辑处理器。在一些示例中,SFW域的SFW资源(例如,SFW数据结构和SFW代码) 可以被存储在SFW域的系统管理存储器区域(例如,SMRAM)中。在这些示例中,作为SFW域的部分操作的逻辑处理器可以是对存储在SFW域的系统管理存储器区域中的SFW资源具有访问权的逻辑处理器。作为SFW 域的部分操作的逻辑处理器并不总是对系统管理存储器区域中的SFW资源具有访问权。相反,逻辑处理器可以有时(例如,在引导时)、在一些模式下(例如,系统管理模式(SMM))等情况下具有访问权。在本文所描述的示例中,具有这种受限访问权的逻辑处理器仍可以被视为对系统管理存储器区域中的SFW资源具有访问权。在一些示例中,系统管理存储器区域可以是被安装在刀片外壳中并且包括对该区域具有访问权的逻辑处理器的至少一个刀片设备的机器可读存储介质的至少一部分。
SFW数据结构可以包括例如高级配置和功率接口(ACPI)表、系统管理BIOS(SMBIOS)表、存储器数据结构、中断矢量、信号量等,或其组合。SFW数据结构可以通过逻辑处理器执行SFW实例的指令来生成并且存储在系统管理存储器区域中。SFW代码可以包括实现中断服务例程的可执行指令,例如,系统管理中断(SMI)处理程序等等。SFW代码还可以包括实现错误处理程序的可执行指令。SFW代码可以是被复制到系统管理存储器区域中的SFW实例的指令。
在图1的示例中,逻辑处理器132和142可以被配置为分别作为不同的SFW域160和162的部分操作。在本文所描述的示例中,被配置为作为不同SFW域的部分操作的逻辑处理器可以是被配置为访问不同的系统管理存储器区域(例如,不同的SMRAM区域)中的不同SFW资源的逻辑处理器。在这些示例中,被配置为作为第一SFW域的部分操作的逻辑处理器可能对第二SFW域的任意SFW资源不具有访问权。例如,被配置为作为SFW 域160的部分操作的逻辑处理器132可以对存储在第一系统管理存储器区域(例如,SMRAM)中的SFW域160的第一SFW资源具有访问权(例如,在SMM中),并且可能对存储在第二系统管理存储器区域(例如,SMRAM) 中的SFW域162的第二SFW资源不具有访问权。在这些示例中,被配置为作为SFW域162的部分操作的逻辑处理器142可以对存储在第二系统管理存储器区域中的SFW域162的第二SFW资源具有访问权(例如,在SMM 中),并且可能对存储在第一系统管理存储器区域中的SFW域160的第一 SFW资源不具有访问权。
在一些示例中,通过用不同的SFW实例来引导每个逻辑处理器,逻辑处理器可以被配置为作为不同SFW域的部分操作。在图1的示例中,通过用SFW实例121的指令引导逻辑处理器132以及用不同于SFW实例121 的另一SFW实例的指令引导逻辑处理器142,逻辑处理器132和142可以被配置为作为不同SFW域的部分操作。
在图1的示例中,在刀片系统100的至少一部分重置(例如,分区108 重置)之后,SFW实例121的指令122,在由逻辑处理器132执行时,可以将逻辑处理器132配置作为与SFW实例121关联的SFW域160的部分操作。例如,指令122可以配置逻辑处理器132的硬件地址映射,使得逻辑处理器132访问存储在第一系统管理存储器区域(例如,SMRAM)中的 SFW域160的第一SFW资源。在这些示例中,第一SFW资源可以包括SFW 域160的SFW代码(例如,SMI处理程序等)以及状态信息(例如,关于未决中断、装载的驱动器、装载的ACPI表等的信息)。在一些示例中,第一系统管理存储器区域可以是分区108的刀片设备130的存储器(例如, RAM)的区域(例如,存储器134的区域)或者另一刀片设备的存储器(例如,RAM)的区域。
而且,在重置之后,逻辑处理器142可以执行另一SFW实例的指令以将逻辑处理器142配置作为不同于SFW域160并且与另一SFW实例相关联的SFW域162的部分操作。例如,指令可以配置逻辑处理器142的硬件地址映射,使得逻辑处理器142访问存储在不同于第一系统管理存储器区域的第二系统管理存储器区域(例如,SMRAM)中的SFW域162的第二 SFW资源。在这些示例中,不同于第一SFW资源的第二SFW资源可以包括SFW域162的SFW代码(例如,SMI处理程序等)以及状态信息(例如,关于未决中断、装载的驱动器、装载的ACPI表等的信息)。在一些示例中,第二系统管理存储器区域可以是分区108的刀片设备140的存储器 (例如,RAM)的区域或另一刀片设备的存储器的区域。
在图1的示例中,当由逻辑处理器132执行时,指令124可以向刀片设备140标识刀片设备130的与逻辑处理器132相关联的可用存储器135。在一些示例中,由指令124标识的存储器135可以是被判定为可供刀片系统100的OS(例如,OS 115)使用的存储器。例如,逻辑处理器132可以执行指令124以标识与逻辑处理器132相关联的存储器134中的可用存储器135。在一些示例中,逻辑处理器132可以在重置之后执行作为其引导进程的部分的指令124。在这些示例中,指令124可以确定与逻辑处理器132 相关联的存储器134的量,然后测试存储器134以判定存储器134的何部分能够使用(即,起作用)。在一些示例中,指令124可以标识被判定为能够使用的存储器134的至少一部分作为可供OS 115使用的存储器135(即,可用存储器135)。例如,逻辑处理器132可以保留可用存储器134的一部分,以由逻辑处理器132使用(例如,当执行SFW实例121的指令时),并且将可用存储器134的其余部分标识作为可供OS 115使用的存储器135。
执行指令124的逻辑处理器132还可以将标识的可用存储器135的描述存储在刀片设备130的服务存储器中,使得刀片设备130的服务处理器可以将该描述提供给负责协调分区108的引导来运行OS 115的王 (monarch)逻辑处理器(例如,自引导逻辑处理器)。标识的可用存储器 135的描述可以为任何适合的格式、数据结构等(例如,表等)。在一些示例中,逻辑处理器142可以是王逻辑处理器。在这些示例中,通过将可用存储器135的描述存储在刀片设备130的服务存储器中,刀片设备130的服务处理器可以访问该描述并且将其提供给包括逻辑处理器142的刀片设备140。在这些示例中,逻辑处理器132可以通过将描述存储在刀片设备 130的服务存储器中来向逻辑处理器142标识可用存储器。刀片设备140可以使得刀片设备130的标识的存储器135供OS 115使用,如下面所描述的。
在图1的示例中,执行SFW实例121的指令122的逻辑处理器132可以访问刀片设备130的分区信息154。在本文所描述的示例中,刀片设备的分区信息可以描述与刀片设备有关的分区的配置的至少一些方面。例如,分区信息154可以指示(例如,通过标记等)刀片设备130是否被指定为分区108的扩展刀片设备或计算刀片设备。逻辑处理器132可以访问刀片设备130的服务存储器中的分区信息154或者在从例如服务存储器中被复制之后访问SFW域160的第一系统管理存储器区域中的分区信息154。
响应于判定出分区信息154指示刀片设备130是扩展刀片设备,则由逻辑处理器132执行的指令126可以对逻辑处理器132隐藏刀片设备130 的标识的存储器135,并且将逻辑处理器132布置成SFW执行模式。例如,当由逻辑处理器132执行时,指令126可以通过设置逻辑处理器132的源地址解码器使得逻辑处理器132不能访问任何标识的存储器135,来隐藏所标识的存储器135。在这些示例中,指令126可以设置逻辑处理器132的源地址解码器,使得它们不包括存储器134的标识的存储器135中任何地址的地址变换。以这种方式,指令126可以将可供OS 115使用的标识的存储器135与逻辑处理器132隔离。在一些示例中,指令126可以接收将使得可供OS 115使用的对标识的存储器135的选定部分的指示并且可以对逻辑处理器132隐藏选定部分,而不是其余的部分。
而且,响应于判定出分区信息154指示刀片设备130是扩展刀片设备,由逻辑处理器132执行的指令126可以将逻辑处理器132布置成SFW执行模式,在该模式下逻辑处理器132用于执行SFW实例121的指令,而OS 115 由刀片设备140的至少逻辑处理器142来执行。在一些示例中,SFW执行模式可以是SMM。例如,当由逻辑处理器132执行时,指令126可以使逻辑处理器132进入SMM并且保持在SMM中,而OS 115由至少逻辑处理器142来执行。在本文所描述的示例中,系统管理模式(SMM)可以是一种在其中逻辑处理器执行SFW域的SFW代码的模式,所述逻辑处理器被配置为在所述SFW域中操作。在SMM中,逻辑处理器132可以对与SFW 实例121相关联的SFW域160的第一系统管理存储器区域(例如,SMRAM) 具有访问权,并且可以执行存储在第一系统管理存储器区域中的SFW代码 (例如,SFW实例121的指令)。在SMM中,逻辑处理器132不能供OS 115 使用来运行例如OS 115的任何部分或者在OS 115中运行的任何应用的任何部分。
此外,在SMM中,逻辑处理器132保持可供用来执行SFW实例121 的指令,例如响应于检测到SMI的SMI处理程序的指令,以及响应于例如错误指示的错误处理程序的指令。在这些示例中,SMI处理程序的指令和错误处理程序的指令可以是SFW实例121的指令,并且可以在引导进程期间被复制到第一系统管理存储器区域中。在这些示例中,在SMM中,逻辑处理器132可以执行这些出自第一系统管理存储器区域的指令。
在其他示例中,SFW执行模式可以是在其中分区的逻辑处理器用于执行SFW实例的代码而分区的其他逻辑处理器正在执行OS的任何适合状态。例如,指令126可以使逻辑处理器132执行由SFW实例121的指令实现的循环,以使逻辑处理器132在分区的其他逻辑处理器正在执行OS的同时保持执行SFW实例121的指令,并且使得逻辑处理器132可供脱离循环来执行其他SFW代码,例如SMI或错误处理程序,如上所述。
如上所述,在一些示例中,由逻辑处理器132执行的指令124可以通过将可用存储器135的描述存储在刀片系统100的共享存储器区域中来向逻辑处理器142标识可用的存储器135。在这些示例中,逻辑处理器142可以是王逻辑处理器,并且可以使得刀片设备130的标识的存储器135可供 OS 115使用。例如,逻辑处理器142可以以任何适合的格式或者数据结构 (例如,表等)将标识刀片设备130的存储器135的信息提供给OS 115。例如,逻辑处理器142可以在存储在能够由OS 115访问的刀片系统100的存储器区域中的至少一个ACPI表中将该信息提供给OS 115。在一些示例中,也是通过标识存储于能够由OS 115访问的存储器区域中的ACPI表中那些其他资源,逻辑处理器142还可以使得分区108的其他资源(例如,刀片设备140和逻辑处理器142的可用存储器)能够供OS 115使用。
在图1的示例中,王逻辑处理器可以不将逻辑处理器132标识为能够由OS 115使用。例如,因为逻辑处理器132和142被配置为分别在不同的 SFW域160和162中操作,所以逻辑处理器132可能对于逻辑处理器142 而言不可见。此外,逻辑处理器132可以不向逻辑处理器142将其自身标识为可供OS 115使用。因此,在逻辑处理器142是王逻辑处理器的示例中,逻辑处理器142可以不将逻辑处理器132标识为能够供OS 115使用。例如,由逻辑处理器142提供给OS 115的ACPI表可以包括逻辑处理器142、刀片设备130的可用存储器135以及刀片设备140的可用存储器的标识,并且可以不包括逻辑处理器132的任何标识。在这些示例中,逻辑处理器132 可以不供OS 115使用,并且可以使得可供OS 115使用的标识的存储器135 不供逻辑处理器132使用,如上所述。
在使逻辑处理器142以及刀片设备130和140的标识的存储器(包括存储器135)可供OS 115使用之后,OS 115可以使用向OS 115标识的资源(例如,在ACPI表中)在分区108上执行。例如,OS 115可以利用逻辑处理器142以及刀片设备130和140的标识的可用存储器来执行和运行应用,而逻辑处理器132不可供OS 115或者由OS 115运行的任何应用所使用。在一些示例中,本文结合图1所描述的功能可以与本文结合图2-5 中的任意图所描述的功能相结合地来提供。
图2是将分区208的多个逻辑处理器布置成SFW执行模式而OS由分区的另一逻辑处理器执行的示例刀片系统200的框图。在图2的示例中,刀片系统200包括刀片外壳205,以及安装在刀片外壳205中的刀片设备 230和240。刀片设备230可以在本文中被称为扩展刀片设备230,并且刀片设备240可以在本文中被称为计算刀片设备240。刀片系统200可以利用各个刀片设备230和240的资源来运行OS 115,如上文结合图1所描述的。例如,OS 115可以由刀片系统200的分区208来运行,分区208包括至少一个刀片设备230和240。
在图2的示例中,扩展刀片设备230可以包括逻辑处理器132和与逻辑处理器132相关联的存储器134,如上文结合图1所描述的。扩展刀片设备230还可以包括与刀片设备230的存储器234相关联的逻辑处理器232。在其他示例中,刀片设备230可以包括多于两个的逻辑处理器,其中一些或全部的逻辑处理器具有关联的存储器。逻辑处理器132和232中的每一个在本文可以被称为扩展逻辑处理器。计算刀片设备240可以包括逻辑处理器142,如上文结合图1所描述的,以及与计算逻辑处理器142相关联的存储器144。计算刀片设备240还可以包括与刀片设备240的存储器244相关联的逻辑处理器242。在其他示例中,刀片设备240可以包括多于两个的逻辑处理器,其中一些或全部具有关联的存储器。逻辑处理器142和242 中的每一个在本文中可以被称作计算逻辑处理器。
刀片设备230包括机器可读存储介质120,其编码有包括指令122、124 和126的SFW实例121,如上文结合图1所描述的。SFW实例121的指令能够由逻辑处理器132和232来执行以实施下文结合SFW实例121所描述的功能。刀片设备240包括机器可读存储介质280,其编码有包括能够由逻辑处理器142和242来执行以实施下文结合SFW实例281所描述的功能的指令的SFW实例281。
在图2的示例中,在刀片系统200的至少一部分(例如,分区208)重置之后,指令122可以配置逻辑处理器132和232中的每一个以作为与SFW 实例121关联的SFW域160的部分操作,如上文结合图1的刀片系统100 所描述的。例如,可以利用SFW实例121来引导逻辑处理器132和232中的每一个。在这些示例中,逻辑处理器132和232被配置为作为相同SFW 域160的部分操作。在本文所描述的示例中,被配置为作为单个SFW域(即,相同的SFW域)的部分操作的逻辑处理器可以是各自被配置为访问SFW 域的SFW资源的逻辑处理器。例如,逻辑处理器可以各自对存储SFW域的SFW资源的系统管理存储器区域具有访问权(例如,在SMM中)。
例如,当由逻辑处理器132和232执行时,指令122可以将逻辑处理器132和232的相应的硬件地址映射配置为相同的。在一些示例中,指令 122可以配置相应的硬件地址映射以使逻辑处理器132和232各自对SFW 域160的第一系统管理存储器区域中的(即,SFW域160的)相同SFW资源具有访问权。指令122可以配置硬件地址映射,以使逻辑处理器132和 232访问SFW域160的相同的SFW代码和相同的状态信息。而且,在重置之后,SFW实例281的指令可以配置逻辑处理器142和242中的每一个作为与SFW实例281关联的SFW域162的部分(即,作为相同的SFW域的部分)操作,如上文结合SFW域160的逻辑处理器132和232所描述的。在图2的示例中,SFW域160和162为不同的SFW域。
在图2的示例中,当由刀片设备230的多个逻辑处理器来执行时,指令124可以标识与多个逻辑处理器中的任一个关联的刀片设备230的可用存储器,如上文结合图1所描述的。例如,当执行指令124时,逻辑处理器132可以标识存储器134的可用存储器135,并且逻辑处理器232可以标识存储器234的可用存储器235。另外,当执行指令124时,多个逻辑处理器中的每一个可以将标识的存储器的描述存储在能够由刀片设备230的服务处理器250访问的刀片设备230的服务存储器252中。例如,当执行指令124时,逻辑处理器132和232可以将标识的存储器135和235的描述 256存储在服务存储器252中。描述256可以是由各个逻辑处理器标识的存储器的单一描述,或者是由每个逻辑处理器标识的存储器的单独描述。
在刀片设备240包括用于分区208的王逻辑处理器的示例中,服务处理器250可以将描述256提供给刀片设备240。例如,如果逻辑处理器142 为王逻辑处理器,则服务处理器250可以通过从服务存储器252取回描述 256并且将描述256提供给刀片设备240的服务处理器270来将描述256提供给刀片设备240。服务处理器270可以将接收到的描述256存储在刀片设备240的服务存储器272中,其中描述256能够由逻辑处理器142来访问。在本文描述的示例中,服务处理器可以为CPU、基于半导体的微处理器、适合于取回并且执行存储在机器可读存储介质上的指令的其他电子电路系统,或者其组合中的至少一者。
另外,在图2的示例中,刀片设备240的多个逻辑处理器可以执行SFW 实例281的指令以标识与相应的逻辑处理器关联的刀片设备240的可用存储器,如上文结合刀片设备230所描述的。例如,逻辑处理器142可以标识存储器144的可用存储器145,并且逻辑处理器242可以标识存储器244 的可用存储器245。
在一些示例中,王逻辑处理器可以确定要被提供给OS 115的总存储器映射,其可以包括标识的存储器135、235、145、245中的至少一些。在这些示例中,在王逻辑处理器确定了存储器映射之后,服务处理器250可以接收路由信息258并且将其存储在服务存储器252中。在这些示例中,执行指令122的逻辑处理器132和232可以利用路由信息258来配置刀片设备230以利用刀片设备230的节点控制器233将来自OS 115并且以刀片设备230的标识的存储器(例如,存储器135和235)为目标的存储器交易路由到标识的存储器。例如,指令122可以设置节点控制器233中的路由表以将来自OS 115的、以标识的存储器为目标的存储器交易路由到刀片设备 230的标识的存储器。
在这些示例中,由逻辑处理器142和242执行的SFW实例281的指令还可以配置刀片设备240来通过节点控制器243和233使以刀片设备230 的标识的存储器为目标的存储器交易进行路由。例如,指令可以设置逻辑处理器142和242中的路由表以使以刀片设备230的标识的存储器为目标的存储器交易路由通过节点控制器243,并且可以设置节点控制器243中的路由表以使交易路由通过刀片设备230的节点控制器233。节点控制器233 和243中的每一个的功能可以被实现为电子电路的形式、编码在机器可读存储介质上的可执行指令的形式、或其组合。
在图2的示例中,执行SFW实例121的指令122的逻辑处理器132可以访问刀片设备230的分区信息254并且基于信息254(例如,基于信息 254中的标记)来判定刀片设备230是扩展刀片设备还是计算刀片设备。在图2的示例中,分区信息254可以由服务处理器250(例如从分区208的分区管理器)接收并且被存储在服务存储器252中。逻辑处理器132可以访问服务存储器252中的分区信息254或者在其已经从服务存储器252复制到SFW域160的第一系统管理存储器区域之后访问SFW域160的第一系统管理存储器区域中的分区信息254。在图2的示例中,指示刀片设备240 是扩展刀片设备还是计算刀片设备的分区信息274可以存储在服务存储器 272中并且可以由逻辑处理器142和242来访问以判定刀片设备240是扩展刀片设备还是计算刀片设备。
在分区信息254指示刀片设备230是扩展刀片设备的示例中,由刀片设备230的逻辑处理器执行的指令126可以对与其关联的相应的逻辑处理器隐藏刀片设备230的标识的存储器的每个区域,并且将刀片设备230的多个逻辑处理器中的每一个布置成SFW执行模式,如上文结合图1所描述的。例如,指令126可以对逻辑处理器132隐藏标识的存储器135并且将逻辑处理器132布置成SFW执行模式(例如,SMM),并且指令126可以对逻辑处理器232隐藏标识的存储器235,并且将逻辑处理器232布置成 SFW执行模式(例如,SMM)。
在一些示例中,多个逻辑处理器中的每一个可以被布置成SFW执行模式,以使每个逻辑处理器执行SFW实例121的指令,而OS由刀片设备240 的至少逻辑处理器142来执行。在其他示例中,刀片设备230的一个逻辑处理器可以被布置成SFW执行模式,而刀片设备230的其他逻辑处理器可以不保持可供执行SFW实例121的指令使用。例如,其余的逻辑处理器可以被布置成停止状态、初始化状态(例如,等待启动处理器间中断(SIPI)),等等。在这些示例中,保持可供执行SFW实例121的指令使用的一个逻辑处理器可以用来管理刀片设备。
在刀片设备230的逻辑处理器被布置成SFW执行模式之后,王逻辑处理器可以使得刀片设备230的标识的存储器可供OS 115使用。在逻辑处理器142是王逻辑处理器的示例中,逻辑处理器142可以以任何适合的格式或数据结构(例如,表等)将标识刀片设备230的存储器135和235的信息提供给OS 115。例如,逻辑处理器142可以在存储于能够由OS 115访问的刀片系统100的存储器区域中的至少一个ACPI表中将该信息提供给OS 115。在一些示例中,同样通过标识存储在能够由OS 115访问的存储器区域中的ACPI表中的那些其他资源,逻辑处理器142还可以使得分区208 的其他资源(例如,刀片设备240的可用存储器145和245以及逻辑处理器142和242)可供OS 115使用。在这些示例中,王逻辑处理器不将逻辑处理器132和232标识为可供OS 115使用,如上文结合图1所描述的。
在使得逻辑处理器142和242以及刀片设备230和240的标识的存储器可供OS 115使用之后,OS 115可以利用向OS 115标识的资源(例如,在ACPI表中)运行在分区208上。例如,OS 115可以利用逻辑处理器142 和242以及刀片设备230和240的标识的可用存储器来执行并且运行应用,而逻辑处理器132和232不能供OS 115或者OS 115运行的任何应用所使用。在一些示例中,本文结合图2所描述的功能可以与本文结合图1以及图3-5所描述的功能相结合地提供。
图3是将系统300的分区的逻辑处理器布置成SFW执行模式并且使得与逻辑处理器关联的存储器可供分区的OS使用的示例系统300的框图。在图3的示例中,系统300(例如,刀片系统300)包括刀片外壳305以及安装在刀片外壳305中的刀片设备330、340和390。在其他示例中,系统300 可以包括安装在刀片外壳305中的更多或更少的刀片设备。刀片设备330可以在本文中被称为扩展刀片设备330,并且刀片设备340可以在本文被称为计算刀片设备340。
在图3的示例中,扩展刀片设备330包括逻辑处理器332、与逻辑处理器332关联的存储器334、以及管理存储器334的存储器控制器331。逻辑处理器332在本文中可以称被为扩展逻辑处理器332。存储器控制器331和扩展逻辑处理器332可以被集成到单个CPU IC中。例如,存储器控制器 331可以被集成到包括或构成逻辑处理器332的CPU IC中。在一些示例中,包括逻辑处理器332和存储器控制器331的CPU IC还可以包括管理刀片设备330的其他存储器的附加的存储器控制器。在一些示例中,刀片设备330 可以包括多个逻辑处理器,其中的一些或全部具有关联的存储器。
计算刀片设备340包括逻辑处理器342、与逻辑处理器342关联的存储器344以及管理存储器344的存储器控制器341。逻辑处理器342在本文中可以被称为计算逻辑处理器342。存储器控制器341和逻辑处理器342可以被集成到单个CPU IC中。例如,存储器控制器341可以被集成到包括或构成逻辑处理器342的CPU IC中。在一些示例中,包括逻辑处理器342和存储器控制器341的CPU IC还可以包括管理刀片设备340的其他存储器的附加的存储器控制器。在一些示例中,刀片设备340可以包括多个逻辑处理器,其中的一些或全部具有关联的存储器。存储器控制器331和341中的每一个的功能可以被实现为电子电路的形式、编码在机器可读存储介质上的可执行指令的形式,或其组合。
刀片系统300可以利用刀片设备330和340中的每一个的资源来运行 OS 115,如上文结合图1所描述的。例如,OS 115可以由包括至少刀片设备330和340的刀片系统300的分区308来运行。在图3的示例中,分区 308可以省略系统300的至少一个刀片设备,例如刀片设备390。在其他示例中,分区308可以包括安装到刀片外壳305中的附加的刀片设备。
在图3的示例中,刀片设备330包括固件存储器320,其编码有包括指令322、324、326、328和329的SFW实例321。在一些示例中,SFW实例321可以包括附加的指令。SFW实例321的指令能够由至少逻辑处理器 332来执行以实施下面结合SFW实例321所描述的功能。刀片设备340包括固件存储器380,其编码有包括指令382、384、386和388的SFW实例 381。在一些示例中,SFW实例381可以包括附加的指令。SFW实例381 的指令能够由至少逻辑处理器342来执行以实施下面结合SFW实例381来描述的功能。在图3的示例中,SFW实例381能够执行以引导分区308来执行OS 115。在图3的示例中,刀片设备330包括服务处理器250和服务存储器252,并且刀片设备340包括服务处理器270和服务存储器272,如上文结合图2所描述的。
在图3的示例中,在重置至少分区308之后,在由逻辑处理器332执行时,指令322可以配置逻辑处理器332作为与SFW实例321关联的SFW 域360的部分操作,如上文结合图1所描述的。同样在重置之后,当由逻辑处理器342来执行时,指令382可以配置逻辑处理器342作为与SFW实例381关联并且不同于SFW域360的SFW域362的部分操作,如上文结合图1所描述的。在这些示例中,逻辑处理器332和342可以具有不同的硬件设计,因为它们由不同的SFW实例引导并且被引导而在不同的SFW 域中操作。例如,用来执行OS 115并且运行OS 115中的应用的计算逻辑处理器342可以是比不能供OS 115使用的扩展逻辑处理器332更高性能(以及可能更昂贵)的逻辑处理器。
在图3的示例中,逻辑处理器332可以执行指令324以标识与逻辑处理器332关联的存储器334中的可用存储器335,如上文结合图1所描述的。执行指令324的逻辑处理器332还可以将标识的可用存储器335的描述356 存储在刀片设备330的服务存储器252中,以使刀片设备330的服务处理器250可以将描述提供给用于分区308的王逻辑处理器。在逻辑处理器342 是王逻辑处理器的示例中,服务处理器250可以将描述356经由服务处理器270从服务存储器252传送给刀片设备340的服务存储器272。例如,服务处理器250可以将描述356提供给服务处理器270,服务处理器可以将接收到的描述356存储在服务存储器272中,在服务存储器272中,该描述能够由逻辑处理器342来访问。在这些示例中,指令324可以通过将描述 356存储在服务存储器252中来向逻辑处理器342标识可供使用的存储器 335。
在图3的示例中,执行指令326的逻辑处理器332可以访问用于刀片设备330的分区信息354(例如,在服务存储器252中,或者在用于SFW 域360的系统管理存储器区域中),并且基于信息354来判定刀片设备330 是扩展刀片设备。响应于判定出刀片设备330是扩展刀片设备,逻辑处理器332可以执行指令328,以对逻辑处理器332隐藏标识的可用存储器335,如上所述。而且,响应于判定出刀片设备330是扩展刀片设备,逻辑处理器332可以执行指令329,以将逻辑处理器332布置成SFW执行模式(例如,SMM),如上文结合图1所描述的。在SFW执行模式中,逻辑处理器 332可以执行SFW实例321的指令,而OS 115由至少逻辑处理器342来执行。
在图3的示例中,由逻辑处理器342执行的指令384可以标识与逻辑处理器342关联的可用存储器345,该可用存储器可以为刀片设备340的存储器344的至少一部分。另外,执行指令386的逻辑处理器342可以访问用于刀片设备340的分区信息374(例如,在服务存储器272中或者在用于 SFW域362的系统管理存储器区域中),并且基于信息374来判定刀片设备 340是计算刀片设备。
响应于判定出刀片设备340是计算刀片设备,由逻辑处理器342执行的指令386可以利用逻辑处理器342来判定不进入SFW执行模式。在一些示例中,逻辑处理器342可以是王逻辑处理器。在这些示例中,逻辑处理器342可以执行指令388以使逻辑处理器342、刀片设备330的标识的存储器(例如,存储器335)和刀片设备340的标识的存储器(例如,存储器345)可供OS 115使用。
在一些示例中,指令388可以通过向OS 115标识资源来使得这些资源可供OS 115使用。例如,由逻辑处理器342执行的指令388可以在至少一个ACPI表366中指示,逻辑处理器342以及标识的存储器335和345可供 OS 115使用。在这些示例中,ACPI表的每一个可以不包括任何关于逻辑处理器332的信息,以使逻辑处理器332不可供OS 115使用。指令388可以将ACPI表366存储在能够由OS 115访问的刀片系统300的存储器区域365 中。存储器区域365可以是刀片设备340的存储器的至少一部分,或者是分区308的另一刀片设备的至少一部分。OS 115和任何应用随后可以利用 ACPI表366中向OS 115标识的资源在分区308上运行。在一些示例中,本文结合图3所描述的功能可以与本文结合图1-2和图4-5中的任一图所描述的功能相结合地来提供。
图4是用于在利用第二逻辑处理器执行OS期间保持第一逻辑处理器处于SMM中的示例方法400的流程图。虽然下面参考图3的刀片系统300 描述了方法400的执行,但是还能够使用用于执行方法400的其他适合的系统(例如,刀片系统100或200)。另外,方法400的实现不限于这些示例。
在方法400的405中,在至少分区308重置之后,当由逻辑处理器332 执行时,指令322可以配置逻辑处理器332作为与SFW实例321关联的SFW 域360的部分操作。而且,在405中,当由逻辑处理器342执行时,指令 382可以配置逻辑处理器342作为与SFW实例381关联的SFW域362的部分操作。在一些示例中,SFW实例381可以包括引导分区308执行OS 115 的指令。
在410,当由逻辑处理器332执行时,指令324可以标识与逻辑处理器 332关联的刀片设备330的可用存储器335。而且,在410,当由逻辑处理器342执行时,指令384可以标识与逻辑处理器342关联的刀片设备340 的可用存储器345。在415,当由逻辑处理器342执行时,指令388可以使逻辑处理器342、刀片设备330的标识的存储器335和刀片设备340的标识的存储器345可供OS 115使用,如上所述。
在420,当通过逻辑处理器332执行时,指令329可以在OS 115的执行开始之前将逻辑处理器332布置成SMM。指令329可以响应于判定刀片设备330被指定为扩展刀片设备而使逻辑处理器332进入SMM,如上所述的。在425,分区308可以利用至少逻辑处理器342来开始执行OS 115。例如,分区308可以利用SFW实例381来引导OS 115,如上所述,然后通过逻辑处理器342利用可供OS 115使用的分区308的资源(例如,在提供给OS 115的APCI表中,如上所述)而开始执行OS 115。在这些示例中,分区308可以利用至少逻辑处理器342以及标识的存储器335和345来执行OS 115,而逻辑处理器332不可供OS 115使用。在一些示例中,分区308可以利用分区308的附加资源来执行OS 115。在430,由逻辑处理器 332执行的指令329可以在利用例如至少逻辑处理器342的分区308的其他逻辑处理器执行OS 115期间保持逻辑处理器332处于SMM中。在这些示例中,通过保持逻辑处理器332处于SMM,逻辑处理器332可以保持可供用来执行SFW实例321的指令,而其不可供OS 115使用。
虽然图4的流程图示出了一些功能的执行的具体次序,但是方法400 不限于该次序。例如,在流程图中接连显示的功能可以按不同的次序来执行,可以同时地或者部分同时地执行,或者其组合。在一些示例中,本文结合图4所描述的功能可以与本文中结合图1-3以及图5中的任意图所描述的功能相结合地来提供。
图5是使得被配置为在不同SFW域中操作的分区的第一和第二逻辑处理器的存储器可供分区的OS使用的示例方法500的流程图。虽然下面参考图3的刀片系统300描述了方法500的执行,但是能够使用其他适合于执行方法500的系统(例如,刀片系统100或200)。另外,方法500的实现不限于这些示例。
在方法500的505中,在至少分区308重置之后,当由逻辑处理器332 执行时,指令322可以配置逻辑处理器332作为与SFW实例321关联的SFW 域360的部分操作。而且,在405,当由逻辑处理器342执行时,指令382 可以配置逻辑处理器342作为与SFW实例381关联并且不同于SFW域360 的SFW域362的部分操作。在一些示例中,SFW实例381可以包括引导分区308以执行OS 115的指令。
在510,当由逻辑处理器322执行时,指令326可以基于分区信息354 来判定逻辑处理器332是扩展逻辑处理器。而且,在510,当由逻辑处理器 342执行时,指令386可以基于分区信息374来判定逻辑处理器342是计算逻辑处理器。
在515,当由逻辑处理器332执行时,指令324可以标识与逻辑处理器 332关联的刀片设备330的可用存储器335。而且,在515,当由逻辑处理器342执行时,指令384可以标识与逻辑处理器342关联的刀片设备340 的可用存储器345。在520,指令324可以将标识的存储器335的描述356 存储在能够由刀片设备330的服务处理器250访问的刀片设备330的服务存储器252中。在525,服务处理器250可以将描述356提供给刀片设备 340的服务处理器270。在530,服务处理器270可以将描述356存储在刀片设备340的服务存储器272中,在该服务存储器中描述356能够由逻辑处理器342来访问。
在535,当由逻辑处理器342执行时,指令388可以使逻辑处理器342、刀片设备330的标识的存储器335和刀片设备340的标识的存储器345可供OS 115使用,如上所述。在540,当由逻辑处理器332执行时,指令329 可以在OS 115执行开始之前将逻辑处理器332布置成SMM。指令329可以响应于判定出刀片设备330被指定为扩展刀片设备而使逻辑处理器332进入SMM,如上所述的。
在545,分区308可以利用至少逻辑处理器342来开始执行OS 115。例如,分区308可以利用SFW实例381来引导OS 115,如上所述的,然后通过逻辑处理器342利用可供OS 115使用的分区308的资源(例如,在提供给OS 115的APCI表中,如上所述)来开始OS 115的执行。在这些示例中,分区308可以利用至少逻辑处理器342以及标识的存储器335和345 来执行OS 115,而逻辑处理器332不可供OS 115使用。在一些示例中,分区308同样可以利用分区308的附加资源来执行OS 115。在550,由逻辑处理器332执行的指令329可以在利用分区308的如至少逻辑处理器342 的其他逻辑处理器执行OS 115期间保持逻辑处理器332处于SMM中。在一些示例中,指令329可以响应于判定出逻辑处理器332是扩展逻辑处理器而在OS115执行期间保持逻辑处理器332处于SMM。
在555,在至少逻辑处理器342上执行的OS 115可以在OS 115活动操作期间访问刀片设备330的标识的存储器335(例如,经由节点控制器243 和233,如上所述)。在这些示例中,OS 115可以访问标识的存储器335,而不进入SMM或以其他方式中止在执行OS 115的逻辑处理器中的任一个上OS 115的操作。
虽然图5的流程图示出了一些功能的执行的具体次序,但是方法500 不限于该次序。例如,在流程图中接连显示的功能可以按不同的次序来执行,可以同时地或者部分同时地执行,或者其组合。在一些示例中,本文结合图5所描述的功能可以与本文中结合图1-4中的任意图所描述的功能相结合地来提供。

Claims (15)

1.一种非暂时性机器可读存储介质,其编码有包括指令的系统固件实例,所述指令能够由刀片系统的第一刀片设备的第一逻辑处理器执行以用于:
访问所述刀片系统的分区的分区信息,分区执行操作系统并且包括所述第一刀片设备和包括第二逻辑处理器的第二刀片设备,其中,所述第一逻辑处理器和所述第二逻辑处理器作为不同系统固件域的部分进行操作;
向所述第二刀片设备标识与所述第一逻辑处理器相关联的所述第一刀片设备的能够使用的存储器,其中,所述第二刀片设备使得所述第一刀片设备的所标识的存储器能够由所述操作系统使用;以及
响应于判定出所述分区信息指示所述第一刀片设备是扩展刀片设备,将所述第一逻辑处理器布置成系统固件执行模式,在所述系统固件执行模式中,所述第一逻辑处理器执行所述系统固件实例的指令,而所述操作系统由至少所述第二逻辑处理器执行。
2.如权利要求1所述的存储介质,其中,用来布置的所述指令包括能够由所述第一逻辑处理器执行以进入系统管理模式并且保持在所述系统管理模式中而所述操作系统由至少所述第二刀片设备的第二逻辑处理器执行的指令。
3.如权利要求1所述的存储介质,其中,用来布置的所述指令包括能够由所述第一逻辑处理器执行以对所述第一逻辑处理器隐藏所述第一刀片设备的所标识的存储器的指令。
4.如权利要求1所述的存储介质,其中:
用来标识的所述指令包括能够由所述第一逻辑处理器执行以将所标识的存储器的描述存储在能够由所述第一刀片设备的服务处理器访问的所述第一刀片设备的服务存储器中的指令,其中,所述服务处理器将所述描述提供给所述第二刀片设备;以及
用来访问的所述指令包括能够由所述第一逻辑处理器执行以访问被存储在所述服务存储器中的分区信息的指令。
5.如权利要求4所述的存储介质,其中,用来访问的所述指令还包括能够由所述第一逻辑处理器执行以完成如下动作的指令:
访问被存储在所述服务存储器中的所述分区的存储器路由信息;以及
基于所述存储器路由信息,利用所述第一刀片设备的节点控制器来将所述第一刀片设备配置为将存储器事务路由到所述第一刀片设备的所标识的存储器,所述存储器事务来自所述操作系统并且以所标识的存储器为目标。
6.如权利要求1所述的存储介质,其中,用来标识的所述指令包括能够由所述第一刀片设备执行以完成如下动作的指令:
标识与所述第一刀片设备的多个逻辑存储器中的任一个相关联的所述第一刀片设备的能够使用的存储器,所述多个逻辑处理器包括所述第一逻辑处理器;以及
将所述第一刀片设备的所标识的存储器的描述提供给所述第二刀片设备;
其中,用来布置的所述指令包括能够由所述第一刀片设备执行来将所述多个逻辑处理器中的每一个布置成所述系统固件执行模式的指令,在所述系统固件执行模式中,所述逻辑处理器中的每一个执行所述系统固件实例的指令,而所述操作系统由至少所述第二刀片设备的所述第二逻辑处理器执行。
7.一种刀片系统,包括:
第一固件存储器,其存储第一系统固件实例;
包括第一刀片设备和第二刀片设备的分区的所述第一刀片设备的第一逻辑处理器,所述第一刀片设备和所述第二刀片设备的每一个被安装在刀片外壳中;
第二固件存储器,其存储第二系统固件实例以引导所述分区来执行操作系统;以及
所述第二刀片设备的第二逻辑处理器;
其中,所述第一系统固件实例包括能够由所述第一逻辑处理器执行以完成如下动作的指令:
向所述第二刀片设备标识与所述第一逻辑处理器相关联的所述第一刀片设备的能够使用的存储器;以及
将所述第一逻辑处理器布置成系统固件执行模式,在所述系统固件执行模式中,所述第一逻辑处理器执行所述第一系统固件实例的指令,而所述操作系统由至少所述第二逻辑处理器执行;以及
其中,所述第二系统固件实例包括能够由所述第二逻辑处理器执行以使得所述第二逻辑处理器和所述第一刀片设备的所标识的存储器能够由所述操作系统使用的指令。
8.如权利要求7所述的刀片系统,其中,所述第一系统固件实例包括能够由所述第一逻辑处理器执行以便对所述第一逻辑处理器隐藏所述第一刀片设备的所标识的能够使用的存储器的指令。
9.如权利要求7所述的刀片系统,其中,所述第一系统固件实例的用来标识的所述指令包括能够由所述第一逻辑处理器执行以将所标识的存储器的描述存储在能够由所述第一刀片设备的第一服务处理器访问的所述第一刀片设备的第一服务存储器中的指令,其中,所述第一服务处理器经由所述第二刀片设备的第二服务处理器将所述描述从所述第一服务存储器传送到所述第二刀片设备的第二服务存储器。
10.如权利要求9所述的刀片系统,其中:
所述第一系统固件实例包括能够由所述第一逻辑处理器执行以便基于第一分区信息来判定所述第一逻辑处理器是扩展逻辑处理器的指令;
用来布置的所述指令包括能够由所述第一逻辑处理器执行以便响应于判定出所述第一逻辑处理器是扩展逻辑处理器而将所述第一逻辑处理器布置成所述系统固件执行模式的指令;以及
所述第二系统固件实例的指令包括能够由所述第二逻辑处理器执行以完成如下动作的指令:
基于第二分区信息来判定所述第二刀片设备是计算刀片设备;以及
响应于判定出所述第二刀片设备是计算刀片设备而判定不进入所述系统固件执行模式。
11.如权利要求10所述的刀片系统,其中,所述第二系统固件实例的指令还包括能够由所述第二逻辑处理器执行以完成如下动作的指令:
标识与所述第二逻辑处理器相关联的所述第二刀片设备的能够使用的存储器;
在至少一个高级配置和功率接口表中指示所述第一刀片设备和所述第二刀片设备的计算逻辑处理器和所标识的存储器能够由所述操作系统使用;以及
将每个均不包括关于所述第一逻辑处理器的任何信息的所述至少一个高级配置和功率接口表存储在能够由所述操作系统访问的存储器区域中。
12.如权利要求7所述的刀片系统,其中:
所述第一逻辑处理器和所述第二逻辑处理器具有不同的设计;
所述第一系统固件实例包括能够由所述第一逻辑处理器执行以配置所述第一逻辑处理器来作为第一系统固件域的部分进行操作的指令;以及
所述第二系统固件实例包括能够由所述第二逻辑处理器执行以配置所述第二逻辑处理器来作为不同于所述第一系统固件域的第二系统固件域的部分进行操作的指令。
13.一种能够由包括第一刀片设备和第二刀片设备的刀片系统的分区执行的方法,所述第一刀片设备和所述第二刀片设备分别包括第一逻辑处理器和第二逻辑处理器,所述方法包括:
配置所述第一逻辑处理器以作为与第一系统固件实例相关联的第一系统固件域的部分进行操作,并且配置所述第二逻辑处理器以作为与第二系统固件实例相关联的第二系统固件域的部分进行操作,来引导所述分区执行操作系统;
利用所述第一逻辑处理器和所述第二逻辑处理器来标识与所述第一逻辑处理器相关联的所述第一刀片设备的能够使用的存储器和与所述第二逻辑处理器相关联的所述第二刀片设备的能够使用的存储器;
使得所述第一刀片设备和所述第二刀片设备中的每一个的所述第二逻辑处理器和所标识的存储器能够由所述操作系统使用;
在开始所述操作系统的执行之前,将所述第一逻辑处理器布置成系统管理模式;
利用至少所述第二逻辑处理器来开始所述操作系统的执行;以及
在所述操作系统的执行期间将所述第一逻辑处理器保持在所述系统管理模式中。
14.如权利要求13所述的方法,还包括:
将所述第一刀片设备的所标识的存储器的描述存储在能够由所述第一刀片设备的第一服务处理器访问的所述第一刀片设备的第一服务存储器中;
将所述描述从所述第一服务处理器提供给所述第二刀片设备的第二服务处理器;以及
利用所述第二服务处理器将所述描述存储在所述第二刀片设备的第二服务存储器中。
15.如权利要求14所述的方法,还包括:
基于第一分区信息来判定所述第一逻辑处理器是扩展逻辑处理器,其中,所述第一逻辑处理器响应于判定出所述第一逻辑处理器是扩展逻辑处理器而将所述第一逻辑处理器布置成所述系统管理模式并且保持在所述系统管理模式中;
基于第二分区信息来判定所述第二逻辑处理器是计算逻辑处理器;以及
在所述操作系统的活动操作期间,利用所述操作系统来访问所述第一刀片设备的所标识的存储器。
CN201380075180.3A 2013-03-28 2013-03-28 刀片系统以及刀片系统的分区执行方法 Active CN105103121B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2013/034236 WO2014158153A1 (en) 2013-03-28 2013-03-28 Identifying memory of a blade device for use by an operating system of a partition including the blade device

Publications (2)

Publication Number Publication Date
CN105103121A CN105103121A (zh) 2015-11-25
CN105103121B true CN105103121B (zh) 2018-10-26

Family

ID=51624938

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380075180.3A Active CN105103121B (zh) 2013-03-28 2013-03-28 刀片系统以及刀片系统的分区执行方法

Country Status (6)

Country Link
US (1) US9747116B2 (zh)
EP (1) EP2979171A4 (zh)
JP (1) JP6031212B2 (zh)
CN (1) CN105103121B (zh)
TW (1) TWI497318B (zh)
WO (1) WO2014158153A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014158161A1 (en) * 2013-03-28 2014-10-02 Hewlett-Packard Development Company, L.P. Error coordination message for a blade device having a logical processor in another system firmware domain
CN105706068B (zh) * 2013-04-30 2019-08-23 慧与发展有限责任合伙企业 路由存储器流量和i/o流量的存储器网络

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101482832A (zh) * 2007-12-31 2009-07-15 英特尔公司 用于支持具有众核的计量客户端的系统和方法
CN101542433A (zh) * 2006-11-21 2009-09-23 微软公司 系统处理器的透明替换
CN102203735A (zh) * 2008-07-02 2011-09-28 惠普公司 用于超级管理器加载的存储器管理

Family Cites Families (79)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5435001A (en) 1993-07-06 1995-07-18 Tandem Computers Incorporated Method of state determination in lock-stepped processors
US7064376B2 (en) 1996-05-24 2006-06-20 Jeng-Jye Shau High performance embedded semiconductor memory devices with multiple dimension first-level bit-lines
US6742066B2 (en) 1999-05-17 2004-05-25 Hewlett-Packard Development Company, L.P. System and method for controlling remote console functionality assist logic
US6542926B2 (en) 1998-06-10 2003-04-01 Compaq Information Technologies Group, L.P. Software partitioned multi-processor system with flexible resource sharing levels
US6094699A (en) 1998-02-13 2000-07-25 Mylex Corporation Apparatus and method for coupling devices to a PCI-to-PCI bridge in an intelligent I/O controller
US6631448B2 (en) 1998-03-12 2003-10-07 Fujitsu Limited Cache coherence unit for interconnecting multiprocessor nodes having pipelined snoopy protocol
US6199107B1 (en) 1998-07-22 2001-03-06 Microsoft Corporation Partial file caching and read range resume system and method
US6418525B1 (en) 1999-01-29 2002-07-09 International Business Machines Corporation Method and apparatus for reducing latency in set-associative caches using set prediction
US6279085B1 (en) 1999-02-26 2001-08-21 International Business Machines Corporation Method and system for avoiding livelocks due to colliding writebacks within a non-uniform memory access system
US6453344B1 (en) 1999-03-31 2002-09-17 Amdahl Corporation Multiprocessor servers with controlled numbered of CPUs
US6684343B1 (en) 2000-04-29 2004-01-27 Hewlett-Packard Development Company, Lp. Managing operations of a computer system having a plurality of partitions
US6725317B1 (en) * 2000-04-29 2004-04-20 Hewlett-Packard Development Company, L.P. System and method for managing a computer system having a plurality of partitions
US7096469B1 (en) * 2000-10-02 2006-08-22 International Business Machines Corporation Method and apparatus for enforcing capacity limitations in a logically partitioned system
US7603516B2 (en) 2000-12-15 2009-10-13 Stmicroelectronics Nv Disk controller providing for the auto-transfer of host-requested-data from a cache memory within a disk memory system
US6988169B2 (en) 2001-04-19 2006-01-17 Snowshore Networks, Inc. Cache for large-object real-time latency elimination
TWI231424B (en) 2002-06-28 2005-04-21 Quanta Comp Inc Management and preparation system of blade server
US7055071B2 (en) 2003-01-09 2006-05-30 International Business Machines Corporation Method and apparatus for reporting error logs in a logical environment
US7155370B2 (en) * 2003-03-20 2006-12-26 Intel Corporation Reusable, built-in self-test methodology for computer systems
US7222339B2 (en) 2003-06-13 2007-05-22 Intel Corporation Method for distributed update of firmware across a clustered platform infrastructure
US20050015430A1 (en) 2003-06-25 2005-01-20 Rothman Michael A. OS agnostic resource sharing across multiple computing platforms
US7363392B2 (en) * 2003-07-30 2008-04-22 Hewlett-Packard Development Company, L.P. Automatic maintenance of configuration information in a replaceable electronic module
US7363484B2 (en) 2003-09-15 2008-04-22 Hewlett-Packard Development Company, L.P. Apparatus and method for selectively mapping proper boot image to processors of heterogeneous computer systems
US7251746B2 (en) 2004-01-21 2007-07-31 International Business Machines Corporation Autonomous fail-over to hot-spare processor using SMI
US7383461B2 (en) 2004-02-12 2008-06-03 International Business Machines Corporation Method and system to recover a failed flash of a blade service processor in a server chassis
US7512830B2 (en) 2004-05-14 2009-03-31 International Business Machines Corporation Management module failover across multiple blade center chassis
US7873776B2 (en) 2004-06-30 2011-01-18 Oracle America, Inc. Multiple-core processor with support for multiple virtual processors
US7409594B2 (en) 2004-07-06 2008-08-05 Intel Corporation System and method to detect errors and predict potential failures
US7426657B2 (en) 2004-07-09 2008-09-16 International Business Machines Corporation System and method for predictive processor failure recovery
US7404105B2 (en) * 2004-08-16 2008-07-22 International Business Machines Corporation High availability multi-processor system
US7353375B2 (en) * 2004-10-07 2008-04-01 Hewlett-Packard Development Company, L.P. Method and apparatus for managing processor availability using a microcode patch
US7694298B2 (en) 2004-12-10 2010-04-06 Intel Corporation Method and apparatus for providing virtual server blades
KR100699473B1 (ko) 2005-05-19 2007-03-26 삼성전자주식회사 화상형성장치 및 화상형성장치와 연결된 외부 메모리부의파티션 인식방법
US7480747B2 (en) 2005-06-08 2009-01-20 Intel Corporation Method and apparatus to reduce latency and improve throughput of input/output data in a processor
US8484213B2 (en) 2005-08-31 2013-07-09 International Business Machines Corporation Heterogenous high availability cluster manager
US20070067614A1 (en) 2005-09-20 2007-03-22 Berry Robert W Jr Booting multiple processors with a single flash ROM
JP4394624B2 (ja) * 2005-09-21 2010-01-06 株式会社日立製作所 計算機システム及びi/oブリッジ
US7474623B2 (en) 2005-10-27 2009-01-06 International Business Machines Corporation Method of routing I/O adapter error messages in a multi-host environment
US7814366B2 (en) 2005-11-15 2010-10-12 Intel Corporation On-demand CPU licensing activation
US20070150713A1 (en) 2005-12-22 2007-06-28 International Business Machines Corporation Methods and arrangements to dynamically modify the number of active processors in a multi-node system
US7552283B2 (en) 2006-01-20 2009-06-23 Qualcomm Incorporated Efficient memory hierarchy management
US7797756B2 (en) * 2006-04-18 2010-09-14 Hewlett-Packard Development Company, L.P. System and methods for managing software licenses in a variable entitlement computer system
US7827387B1 (en) 2006-09-08 2010-11-02 Marvell International Ltd. Communication bus with hidden pre-fetch registers
US20080183626A1 (en) * 2007-01-31 2008-07-31 Francisco Romero Software license agreement management based on temporary usage
US20080229049A1 (en) 2007-03-16 2008-09-18 Ashwini Kumar Nanda Processor card for blade server and process.
US7734859B2 (en) 2007-04-20 2010-06-08 Nuon, Inc Virtualization of a host computer's native I/O system architecture via the internet and LANs
US8788750B2 (en) 2007-04-27 2014-07-22 Hewlett-Packard Development Company, L.P. Managing resources in cluster storage systems
US8813080B2 (en) 2007-06-28 2014-08-19 Intel Corporation System and method to optimize OS scheduling decisions for power savings based on temporal characteristics of the scheduled entity and system workload
US8230145B2 (en) 2007-07-31 2012-07-24 Hewlett-Packard Development Company, L.P. Memory expansion blade for multiple architectures
US20090119748A1 (en) 2007-08-30 2009-05-07 Jiewen Yao System management mode isolation in firmware
US7865762B2 (en) 2007-12-04 2011-01-04 Intel Corporation Methods and apparatus for handling errors involving virtual machines
US7802042B2 (en) 2007-12-28 2010-09-21 Intel Corporation Method and system for handling a management interrupt event in a multi-processor computing device
US20090172232A1 (en) 2007-12-28 2009-07-02 Zimmer Vincent J Method and system for handling a management interrupt event
US8069359B2 (en) 2007-12-28 2011-11-29 Intel Corporation System and method to establish and dynamically control energy consumption in large-scale datacenters or IT infrastructures
US7441135B1 (en) 2008-01-14 2008-10-21 International Business Machines Corporation Adaptive dynamic buffering system for power management in server clusters
US7921179B1 (en) 2008-01-15 2011-04-05 Net App, Inc. Reducing latency of access requests in distributed storage systems having a shared data set
WO2009140631A2 (en) 2008-05-15 2009-11-19 Smooth-Stone, Inc. Distributed computing system with universal address system and method
US8244918B2 (en) 2008-06-11 2012-08-14 International Business Machines Corporation Resource sharing expansion card
WO2009154626A1 (en) 2008-06-19 2009-12-23 Hewlett-Packard Development Company, L.P. Multi-blade interconnector
US8144582B2 (en) 2008-12-30 2012-03-27 International Business Machines Corporation Differentiating blade destination and traffic types in a multi-root PCIe environment
US8352710B2 (en) * 2009-01-19 2013-01-08 International Business Machines Corporation Off-loading of processing from a processor blade to storage blades
US8140871B2 (en) 2009-03-27 2012-03-20 International Business Machines Corporation Wake on Lan for blade server
US8151027B2 (en) 2009-04-08 2012-04-03 Intel Corporation System management mode inter-processor interrupt redirection
US20120102273A1 (en) 2009-06-29 2012-04-26 Jichuan Chang Memory agent to access memory blade as part of the cache coherency domain
US8880682B2 (en) 2009-10-06 2014-11-04 Emc Corporation Integrated forensics platform for analyzing IT resources consumed to derive operational and architectural recommendations
US9767070B2 (en) 2009-11-06 2017-09-19 Hewlett Packard Enterprise Development Lp Storage system with a memory blade that generates a computational result for a storage device
US8713350B2 (en) 2009-12-08 2014-04-29 Hewlett-Packard Development Company, L.P. Handling errors in a data processing system
US8793481B2 (en) * 2009-12-10 2014-07-29 Hewlett-Packard Development Company, L.P. Managing hardware resources for soft partitioning
US8601128B2 (en) 2009-12-10 2013-12-03 Hewlett-Packard Development Company, L.P. Managing hardware resources for soft partitioning
US8151147B2 (en) 2009-12-17 2012-04-03 Hewlett-Packard Development Company, L.P. Synchronize error handling for a plurality of partitions
WO2011114383A1 (ja) 2010-03-19 2011-09-22 富士通株式会社 情報処理装置及び情報処理装置のデバイス情報収集処理方法
US9009384B2 (en) 2010-08-17 2015-04-14 Microsoft Technology Licensing, Llc Virtual machine memory management in systems with asymmetric memory
US8966020B2 (en) 2010-11-02 2015-02-24 International Business Machines Corporation Integration of heterogeneous computing systems into a hybrid computing system
US9081613B2 (en) 2010-11-02 2015-07-14 International Business Machines Corporation Unified resource manager providing a single point of control
US8793427B2 (en) 2011-02-10 2014-07-29 Hewlett-Packard Development Company, L.P. Remote memory for virtual machines
US8880795B2 (en) 2011-04-29 2014-11-04 Comcast Cable Communications, LLC. Intelligent partitioning of external memory devices
US20130073811A1 (en) 2011-09-16 2013-03-21 Advanced Micro Devices, Inc. Region privatization in directory-based cache coherence
US9697008B2 (en) 2012-02-22 2017-07-04 Hewlett Packard Enterprise Development Lp Hiding logical processors from an operating system on a computer
US8954698B2 (en) 2012-04-13 2015-02-10 International Business Machines Corporation Switching optically connected memory
US20150052293A1 (en) 2012-04-30 2015-02-19 Blaine D. Gaither Hidden core to fetch data

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101542433A (zh) * 2006-11-21 2009-09-23 微软公司 系统处理器的透明替换
CN101482832A (zh) * 2007-12-31 2009-07-15 英特尔公司 用于支持具有众核的计量客户端的系统和方法
CN102203735A (zh) * 2008-07-02 2011-09-28 惠普公司 用于超级管理器加载的存储器管理

Also Published As

Publication number Publication date
US20160055012A1 (en) 2016-02-25
TW201502805A (zh) 2015-01-16
EP2979171A1 (en) 2016-02-03
JP6031212B2 (ja) 2016-11-24
TWI497318B (zh) 2015-08-21
EP2979171A4 (en) 2016-11-23
JP2016514874A (ja) 2016-05-23
US9747116B2 (en) 2017-08-29
WO2014158153A1 (en) 2014-10-02
CN105103121A (zh) 2015-11-25

Similar Documents

Publication Publication Date Title
JP5357972B2 (ja) コンピュータシステムにおける割り込み通信技術
CN104980454B (zh) 一种资源数据共享方法、服务器及系统
US8225120B2 (en) Wake-and-go mechanism with data exclusivity
US8732683B2 (en) Compiler providing idiom to idiom accelerator
US9104453B2 (en) Determining placement fitness for partitions under a hypervisor
US8640141B2 (en) Wake-and-go mechanism with hardware private array
US8452947B2 (en) Hardware wake-and-go mechanism and content addressable memory with instruction pre-fetch look-ahead to detect programming idioms
ES2389894T3 (es) Equipo de extracción de tiempo de CPU
US8601250B2 (en) Control over loading of device drivers for an individual instance of a PCI device
US20100287341A1 (en) Wake-and-Go Mechanism with System Address Bus Transaction Master
JP2009151774A (ja) マルチコア・プロセッサ上での自律型ワークロード分配のための方法、装置、およびシステム
US11099884B2 (en) Dynamic control of halt polling based on receiving a monitoring instruction executed by a guest
US20120191940A1 (en) Allocating addressable memory regions to an adapter
JP2021007027A (ja) 投機的仮想マシン実行
CN105103121B (zh) 刀片系统以及刀片系统的分区执行方法
CN105074653B (zh) 使计算刀片设备和扩展刀片设备的存储器可供由操作系统使用
CN108885552B (zh) 用于向后兼容性的欺骗cpuid
US9727390B1 (en) Invoking a firmware function
US10013041B2 (en) Directed wakeup into a secured system environment
US10289467B2 (en) Error coordination message for a blade device having a logical processor in another system firmware domain
CN104007956A (zh) 一种操作系统进程识别跟踪及信息获取的方法和装置
CN113474754A (zh) 有条件退让给管理程序指令

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20160817

Address after: American Texas

Applicant after: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP

Address before: Texas USA

Applicant before: Hewlett-Packard Development Company, Limited Liability Partnership

GR01 Patent grant
GR01 Patent grant