用于多处理系统中的工作负载请求分派的方法和系统的制作方法

文档序号:8380800阅读:144来源:国知局
用于多处理系统中的工作负载请求分派的方法和系统的制作方法
【技术领域】
[0001]本公开一般地涉及多核处理系统的领域,并且更具体地,涉及多处理系统中的工作负载请求分派。
【背景技术】
[0002]操作系统的关键任务是向所有应用分配硬件资源,如处理器周期和存储器。通常,应用接收或多或少相等的资源共享。在特定情况下,期望向几个应用给予优于其他应用的对资源的访问,诸如满足期望的服务质量。在其他情况下,期望限制由应用消耗的资源,诸如避免拒绝服务攻击。
[0003]通用操作系统以不同的方式满足这些目标。一种解决方案支持按过程的优先级和限制的概念。另一解决方案以诸如用户ID的任意属性来对任务进行分组,并且对由组中的所有任务消耗的资源施加限制。管理对任务组而不是对独立任务的资源分配需要增加的灵活度并且可从管理的角度来进行管理。附加解决方案对诸如卷组、文件系统和文件提供资源隔离。因此,资源隔离提供了对使用或访问对象的限制;然而,这样的隔离没有延伸到处理器。

【发明内容】

[0004]本发明的实施例提供了一种用于在多核系统中的基于域的资源隔离的系统、方法和程序产品。一种计算设备确定对用第一域标识符所标识的工作负载请求尝试的操作。该计算设备确定用第二域标识符所标识的处理器核。响应于确定了用第二域标识符所标识的处理器核可以服务用第一域标识符所标识的工作负载请求,计算设备向处理器核部署工作负载请求来进行服务。
【附图说明】
[0005]图1A描绘了根据本发明的实施例的示例性多核系统。
[0006]图1B描绘了根据本发明的实施例的环境。
[0007]图1C描绘了根据本发明的实施例的环境。
[0008]图1D描绘了根据本发明的实施例的CPU池的示例性图示。
[0009]图1E描绘了根据本发明的实施例的工作负载域分离的示例性图示。
[0010]图2描绘了根据本发明的实施例的在内核空间中实施的基于域的工作负载隔离的示例性示图。
[0011]图3是描绘根据本发明的实施例的程序功能的操作步骤的流程图。
[0012]图4描绘了根据本发明的实施例的虚拟化系统的组件的框图。
【具体实施方式】
[0013]所属技术领域的技术人员知道,本发明的各个方面可以实现为系统、方法或计算机程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、驻留软件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。此外,在一些实施例中,本发明的各个方面还可以实现为在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质中包含计算机可读的程序代码/指令。
[0014]可以采用计算机可读介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是一但不限于一电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPR0M或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
[0015]计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
[0016]计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括一但不限于一无线、有线、光缆、RF等等,或者上述的任意合适的组合。
[0017]可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言一诸如Java、Smalltalk、C++等,还包括常规的过程式程序设计语言一诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络一包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
[0018]下面将参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述本发明。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,从而生产出一种机器,使得这些计算机程序指令在通过计算机或其他可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。
[0019]也可以把这些计算机程序指令存储在计算机可读介质中,这些指令使得计算机、其他可编程数据处理装置、或其他设备以特定方式工作,从而,存储在计算机可读介质中的指令就产生出包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的指令的制造品(article of manufacture)。
[0020]计算机程序指令还可以被加载到计算机、其他可编程数据处理装置或者其他设备,以使得在该计算机、其他可编程装置或者其他设备上执行操作步骤序列以产生计算机执行的处理,使得在计算机或其他可编程装置上执行的指令提供用于实现在流程图和/或框图的一个或多个块中规定的功能/动作的处理。
[0021]操作系统的关键任务是向所有应用分配硬件资源,如处理器周期和存储器。通常,应用接收或多或少相等的资源共享。在特定情况下,期望向几个应用给予优先于其他应用的对资源的访问,诸如满足期望的服务质量。在其他情况下,期望限制由应用消耗的资源,诸如以避免拒绝服务攻击。
[0022]在用户运行多个不同的交易的情况下,每个用户可能需要独立的处理器负载和预定的工作负载优化。本发明的实施例试图利用资源隔离来解决上述处理器负载和工作负载优化的问题。具体地,本发明的实施例使用域来向处理器核提供资源隔离。在实施例中,域是基于预定性能准则和/或预定工作负载模式来对处理器核分组的标签(tag)。
[0023]现在将具体参考附图来描述本发明的实施例。图1A描绘了根据本发明的实施例的示例性多核系统。多核系统包括核O、I和2,每一个都具有与存储器块和I/O设备进行通信的相关联的L1、L2和L3高速缓存,该存储器块和I/O设备诸如磁盘驱动器、键盘、监视器、打印机、调制解调器和网卡。多核系统的优点之一在于能够同时执行多个指令,这可以提高系统性能。虽然图1A的示例性多核系统包括三(3)个核,但是其他示例性多核系统可以包括更多或更少的核以及不同的高速缓存电路。
[0024]图1B描绘了根据本发明的实施例的虚拟化系统,通常为100。虚拟化系统100是其中生成如具有操作系统的物理计算设备一样进行动作的虚拟机的系统。在虚拟机上执行的软件从底层资源分离。在硬件虚拟化中,主控机是虚拟化发生在其上的实际物理机,并且客户机是虚拟机。术语主控和客
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1