CN100382034C - 信息处理设备和处理控制方法 - Google Patents
信息处理设备和处理控制方法 Download PDFInfo
- Publication number
- CN100382034C CN100382034C CNB2005800014889A CN200580001488A CN100382034C CN 100382034 C CN100382034 C CN 100382034C CN B2005800014889 A CNB2005800014889 A CN B2005800014889A CN 200580001488 A CN200580001488 A CN 200580001488A CN 100382034 C CN100382034 C CN 100382034C
- Authority
- CN
- China
- Prior art keywords
- processor
- concurrent physical
- logic
- physical processor
- concurrent
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
提供了一种利用逻辑处理器和物理处理器的最优关联设置而实现数据处理的设备与方法。在将逻辑处理器关联到物理处理器的同时执行数据处理的配置中,通过应用将逻辑分区地址(虚拟物理地址)空间转换为物理地址空间的第一转换表格以及将虚拟地址空间转换为物理地址空间的第二转换表格,由此修改逻辑处理器和物理处理器之间的关联,来设置和更新表格条目。利用这个配置,有可能在考虑硬件负载和数据处理程序状态的情况下,以逻辑处理器和物理处理器之间的最优关联来执行数据处理。
Description
技术领域
本发明涉及信息处理设备、处理控制方法、以及计算机程序。更具体地说,本发明涉及这样的信息处理设备、处理控制方法、以及计算机程序,它们用于在有多个操作系统(OS)起作用的多OS环境中,利用以时分方式将物理处理器与对应于每个OS所设定的逻辑分区而设定的逻辑处理器相对应来处理数据。
背景技术
在单个系统中具有多个操作系统(OS)的多OS系统中,每个OS可以执行各自的处理,而且以时间顺序连续地切换诸如中央处理单元(CPU)和存储器之类的对该系统通用的硬件。
例如,由分区管理软件程序执行多个OS的处理(任务)的调度。如果OS(α)和OS(β)共存于单个系统中,其中OS(α)的处理为分区A而且OS(β)的处理为分区B,则分区管理软件程序确定分区A和分区B的调度,并且利用基于所确定的调度而分配的硬件资源来执行OS的处理。
专利文献1公开了多OS系统的任务管理技术。根据专利文献1,通过将优先级放置在紧急处理上而调度由多个OS执行的任务。
在这样的多OS系统中,将实体处理数据设置为分区。更具体地说,将逻辑分区设置为共享系统中的资源的实体。将诸如物理处理器的使用时间、虚拟地址空间、以及存储器空间之类的各种资源分配到逻辑分区。然后使用所分配的资源执行处理。在该逻辑分区中设置与任何物理处理器相对应的逻辑处理器,并且基于该逻辑处理器执行数据处理。逻辑处理器不总是以一一对应的关系与物理处理器相对应。例如,单个逻辑处理器可以与多个物理处理器相对应,而且多个逻辑处理器可以对应于单个物理处理器。
如果使用逻辑处理器并行执行多个处理,则通过调度多个逻辑处理器来使用物理处理器。更具体地说,多个逻辑处理器以时分方式使用物理处理器。
当使用多个逻辑处理器来利用所应用的多个物理处理器处理数据时,一种增加数据处理效率的方法是设置并且更新在逻辑处理器和物理处理器之间的对应关系。如果长时间使用一个物理处理器,则作为加热的结果而使该物理处理器温度升高。如果使用了多个物理处理器,则优选为恰当地切换物理处理器。
[专利文献1]日本未经审查的专利申请公开第2003-345612号
发明内容
[本发明要解决的问题]
本发明的目的在于提供这样的信息处理设备、处理控制方法、以及计算机程序,其用于在使用多个逻辑处理器以利用多个所应用的物理处理器来处理数据的数据处理系统中,设置和更新逻辑处理器和物理处理器之间适当的对应关系以实现高效的数据处理,以及避免使用物理处理器过长的时间段。
本发明的目的还在于提供这样的信息处理设备、处理控制方法、以及计算机程序,其用于通过适当地设置和更新在虚拟地址空间、逻辑分区地址(虚拟物理地址)空间、以及物理地址空间之间的地址空间转换中应用的表格,来以适当的方式设置和更新逻辑处理器和物理处理器之间的对应关系,以便高效地处理数据。
[解决这些问题的装置]
在本发明的第一方面,信息处理设备包括:控制OS,执行用于以时分方式将逻辑处理器与物理处理器相对应的处理;以及寄宿OS,作为逻辑处理器的应用实体的逻辑分区的设置对象。控制OS设置和更新两个地址转换表格作为用于确定逻辑处理器和物理处理器之间的对应关系的地址转换表格,两个地址转换表格中的第一转换表格设置逻辑分区地址空间和物理地址空间之间的对应关系,而第二转换表格设置寄宿OS的虚拟地址空间和物理地址空间之间的对应关系。
在本发明的一个实施例的信息处理设备中,控制OS获取与第一转换表中基于逻辑分区地址确定的索引相对应的物理地址,并且更新与第二转换表中基于虚拟地址而确定的索引相对应的物理地址。
在本发明一个实施例的信息处理设备中,为了切换逻辑处理器和物理处理器之间的对应关系,控制OS获取根据第一转换表中与物理处理器相对应的逻辑处理器的索引而确定的物理地址,使第二转换表中所有保持所获取物理地址的条目无效;获取第一转换表中与该物理处理器新对应的逻辑处理器相对应的索引;将对应的物理处理器的物理地址信息作为与所获取的索引相对应的物理地址而存储。
在本发明一个实施例的信息处理设备中,物理地址包括物理处理器中的MMIO寄存器的物理地址。
在本发明一个实施例的信息处理设备中,控制OS在使用一个物理处理器的处理的操作时间达到预定阈值时间的时候,更新逻辑处理器和物理处理器之间的对应关系,以进行物理处理器的切换处理。
在本发明一个实施例的信息处理设备中,控制OS在一个物理处理器的温度达到预定阈值温度的时候,更新逻辑处理器和物理处理器之间的对应关系,以进行物理处理器的切换处理。
在本发明的一个实施例的信息处理设备中,控制OS设置逻辑处理器和物理处理器之间的对应关系,以便将多个并行操作的物理处理器设置为连接到相同供电线路的物理处理器组。
在本发明一个实施例的信息处理设备中,控制OS基于物理处理器对布置在信息处理设备内不同位置处的存储器的存取状态,使位于比该物理处理器更近的位置上的存储器的存取频率变得越高的方式,设置逻辑处理器和物理处理器之间的对应关系。
在本发明的第二方面,一种利用以时分方式与物理处理器相对应的多个逻辑处理器来处理数据的处理控制方法,包括:在设置对象上设置逻辑分区以作为逻辑处理器的应用实体;以及更新两个地址转换表,其中的第一转换表设置逻辑分区地址空间和物理地址空间之间的对应关系,而第二转换表设置该设置对象的虚拟地址空间和物理地址空间之间的对应关系。
在本发明一个实施例的处理控制方法中,表格更新步骤包括:获取与第一转换表中基于逻辑分区地址而确定的索引相对应的物理地址;以及更新与第二转换表中基于虚拟地址而确定的索引相对应的物理地址。
在本发明一个实施例的处理控制方法中,为了切换逻辑处理器和物理处理器之间的对应关系,该处理控制方法还包括:更新根据第一转换表中与物理处理器相对应的逻辑处理器的索引而确定的物理地址,使第二转换表中所有保持所获取的物理地址的条目无效;获取第一转换表中与该物理处理器新对应的逻辑处理器相对应的索引,将对应的物理处理器的物理地址信息作为与所获取的索引相对应的物理地址而存储。
在本发明一个实施例的处理控制方法中,在该处理控制方法中,优选为该物理地址包括物理处理器中的MMIO寄存器的物理地址。
在本发明一个实施例的处理控制方法中,所述处理控制方法包括:在使用一个物理处理器的处理的操作时间达到预定阈值时间的时刻,更新逻辑处理器和物理处理器之间的对应关系以进行物理处理器的切换。
在本发明一个实施例的处理控制方法中,控制OS包括:在一个物理处理器温度达到预定阈值温度的时刻,更新逻辑处理器和物理处理器之间的对应关系以进行物理处理器的切换。
在本发明一个实施例的处理控制方法中,控制OS包括:设置逻辑处理器和物理处理器之间的对应关系,以使得将多个并行操作的物理处理器设置为连接到相同供电线路的物理处理器组。
在本发明一个实施例的处理控制方法中,控制OS包括:基于物理处理器对布置在信息处理设备内不同位置处的存储器的存取情况,使位于比物理处理器更近的位置上的存储器的存取频率变得越高的方式,更新设置逻辑处理器和物理处理器之间的对应关系。
在本发明的第三方面,一种利用以时分方式与物理处理器相对应的多个逻辑处理器来处理数据的计算机程序,包括:在设置对象上设置逻辑分区以作为逻辑处理器的应用实体的步骤;以及更新两个地址转换表的步骤,其中的第一转换表设置逻辑分区地址空间和物理地址空间之间的对应关系,而第二转换表设置该设置对象的虚拟地址空间和物理地址空间之间的对应关系。
本发明一个实施例中的计算机程序以诸如CD、FD、或者MO之类的计算机可读存储介质,或者诸如网络之类的通信介质的形式,提供给执行各种程序代码的通用计算机系统。通过以计算机可读的方式提供计算机程序,计算机系统响应于计算机程序而执行处理。
根据以下对本发明和附图的描述,本发明的这些及其他特征,以及优点将变得明显。在本发明描述的上下文中,系统是指多个设备的逻辑集合,而不局限于在同一个外壳内包含多个单元的设备。
[优点]
根据本发明的实施例,将逻辑处理器与物理处理器对应。设置包括虚拟地址空间、逻辑分区地址(虚拟物理地址)、和物理地址在内的不同地址空间之间的地址转换中应用的表格。通过适当地修改这些转换表,设置和更新逻辑处理器和物理处理器之间的适当对应关系。因此执行高效的数据处理。
根据本发明的实施例,控制OS使用两个地址转换表,即用于将逻辑分区地址(虚拟物理地址)空间转换为物理地址空间的第一转换表,以及用于将虚拟地址空间转换为物理地址空间的第二转换表。通过设置和更新在这些表格中的条目,控制OS更新逻辑处理器和物理处理器之间的对应关系。根据情况,修改逻辑处理器和物理处理器之间的对应关系。物理处理器因此根据数据处理顺序,以时分方式处理数据。考虑到在硬件上的工作负荷和数据处理程序而适当地执行数据处理。
根据本发明的实施例,控制OS对物理处理器执行轮流处理,即通过更新转换表的迁移处理。这个布置控制由于长时间连续使用而导致的物理处理器的加热。
根据本发明的实施例,在具有一组连接到不同供电线路的物理处理器的系统中,对应于不同物理处理器的多个逻辑处理器并行操作。通过将逻辑处理器分配到连接到相同供电线路的物理处理器,可以除去供给处于空闲模式中的物理处理器组的电力。因此执行了节能。
根据本发明的实施例,在该设备内不同位置中布置有多个存储器的系统中,更新地址转换表,以把与每个处理相对应的逻辑处理器与更靠近对其具有更高存取频率的存储器的物理处理器相对应。该处理器对应处理实现了高速的数据存取,由此导致高效率的数据处理。
附图说明
图1是本发明一个实施例的信息处理设备的框图。
图2图解了在该信息处理设备中的处理器模块的结构。
图3图解了本发明一个实施例的信息处理设备中的操作系统的结构。
图4图解了时分方式中的逻辑处理器与物理处理器之间的对应处理。
图5图解了在逻辑处理器和物理处理器之间的对应处理。
图6图解了作为在本发明一个实施例的信息处理设备中的地址转换机制的地址空间和转换表格。
图7图解了应用于本发明一个实施例的信息处理设备的第一转换表。
图8图解了应用于本发明一个实施例的信息处理设备的第二转换表。
图9图解了对转换表中的条目的更新处理的流程图。
图10具体地图解了在转换处理中对条目的更新处理。
图11是图解更新在逻辑处理器和物理处理器之间的对应关系的处理的流程图。
图12具体图解了更新在逻辑处理器和物理处理器之间的对应关系的处理的流程图。
图13具体图解了更新在逻辑处理器和物理处理器之间的对应关系的处理的流程图。
图14具体图解了更新在逻辑处理器和物理处理器之间的对应关系的处理。
图15具体图解了更新在逻辑处理器和物理处理器之间的对应关系的处理。
图16图解了具有定时器和温度传感器的处理器模块的结构。
图17图解了切换在逻辑处理器和物理处理器之间随时间变化的对应关系的切换处理。
图18图解了切换在逻辑处理器和物理处理器之间随温度而变的对应关系的切换处理。
图19图解了从逻辑处理器的对应候选者中除去在预操作阶段或者在操作阶段变得有缺陷的物理处理器的处理。
图20图解了这样的布置,其中基于在物理处理器和使用的电源之间的关系来确定逻辑处理器和物理处理器之间的对应关系。
图21图解了基于对物理处理器的存取的逻辑处理器和物理处理器之间的对应处理。
图22图解了基于对物理处理器的存取的逻辑处理器和物理处理器之间的对应处理。
图23图解了基于对物理处理器的存取的逻辑处理器和物理处理器之间的对应处理。
具体实施方式
下面参考附图描述信息处理设备、处理控制方法和计算机程序。
下面参考图1描述本发明一个实施例的信息处理设备的硬件结构。处理器模块101包括多个处理器(处理单元),并且根据存储在ROM(只读存储器)104和HDD 123中的、包括操作系统(OS)以及在该OS上运行的应用程序在内的各种程序处理数据。稍后将参考图2描述处理器模块101。
响应于经由处理器模块101输入的命令,图形引擎102生成要在形成输出单元122的显示器的屏幕上显示的数据,例如执行3D图形绘制处理。主存储器(DRAM)103存储由处理器模块101执行的程序以及随着程序执行的过程而改变的参数。这些单元经由包括中央处理器(CPU)总线在内的主机总线111而互连。
主机总线111经由桥接器105连接到诸如PCI(外部设备互连/接口)总线之类的外部总线112。桥接器105控制主机总线111、外部总线112、控制器106、存储卡107、及其他设备之间的数据输入和输出。
输入单元121将信息输入到诸如键盘和定点设备之类由用户操作的输入设备。输出单元122包括诸如液晶显示器和CRT(阴极射线管)之一之类的图像输出单元、以及诸如扬声器之类的音频输出设备。
HDD(硬盘驱动器)123驱动加载在其中的硬盘,由此记录或者重放要由处理器模块101执行的程序和信息。
驱动器124读取存储在诸如磁盘、光盘、磁光盘、半导体存储器等之类的已加载可移动记录介质127中的数据和程序,并且经由接口113、外部总线112、桥接器105、和主机总线111将这些数据和程序提供给主存储器(DRAM)103。
连接端口125连接到外部设备128,并且可以包括USB、IEEE 1394总线等。连接端口125经由接口113、外部总线106、桥接器105、和主机总线111连接到处理器模块101。连接到网络的通信单元126发送从HDD 123等提供的数据,并且从外部接收数据。
下面参考图2描述处理器模块101的结构。如所示,处理器模块200包括包含多个主处理器单元在内的主处理器组201,以及多个子处理器组202-20n,这些子处理器组中的每个包括多个子处理器单元。每个组还包括存储控制器和辅助高速缓存。各自例如包含八个处理器单元的处理器组201-20n经由横杆体系结构和分组交换网络之一进行连接。响应于主处理器组201中的主处理器的命令,选择多个子处理器组202-20n中的至少一个子处理器执行预定程序。
在每个处理器组中的存储器流控制器控制到图1中的主存储器103的数据输入和数据输出。辅助高速缓存在每个处理器组中起用于处理数据的存储区域的作用。
下面参考图3描述本发明一个实施例中的信息处理设备的操作系统(OS)。多OS信息处理设备具有以如图3所述的逻辑分层结构布置的多个操作系统(OS)。
如图3所示,主OS 301布置在底层。多个子OS 302、303、和304布置在上层。子OS 302和303是寄宿(guest)OS,而子OS 304是系统控制OS。主OS 301连同系统控制OS 304一起,形成了作为由参考图1和2所述的处理器模块101执行的每个处理的执行单元的逻辑分区,并且向每个逻辑分区分配系统硬件资源(例如,作为计算资源的主处理器、子处理器、存储器、以及设备)。
作为子OS的寄宿OS 302和303是游戏OS、Windows(注册商标)、Linux(注册商标)等,并且在主OS 301的控制下进行操作。虽然图3中仅仅示出了两个寄宿OS 302和303,但是寄宿OS的数目不局限于两个。
寄宿OS 302和303在由主OS 301和系统控制OS 304设置的逻辑分区内进行操作。寄宿OS 302和303使用每个都被分配到逻辑分区的诸如主处理器、子处理器、存储器、和设备之类的硬件资源处理各种数据。
寄宿OS(a)302使用分配到由控制OS 301和系统控制OS 304设置的逻辑分区的包括主处理器、子处理器、存储器、和设备在内的硬件设备,由此执行与寄宿OS(a)302相对应的应用程序305。寄宿OS(b)303使用分配到逻辑分区“n”的包括主处理器、子处理器、存储器、和设备在内的硬件资源,由此执行与寄宿OS(b)303相对应的应用程序306。主OS 301提供了执行寄宿OS所需要的寄宿OS编程接口。
作为子OS之一的系统控制OS 304生成包含逻辑分区管理程序的系统控制程序307,并且连同主OS 301一起响应于系统控制程序307执行操作控制。系统控制程序307使用系统控制程序编程接口控制系统策略。通过控制OS301向应用程序306提供系统控制程序编程接口。例如,系统控制程序307允许灵活的定制,例如对资源分配设置上限。
系统控制程序307使用系统控制程序编程接口控制系统的行为。例如,系统控制程序307产生新的逻辑分区,并且在该逻辑分区处启动新的寄宿OS。在其中多个寄宿OS进行操作的系统中,以在系统控制程序307中编程的次序初始化这些寄宿OS。系统控制程序307可以在从寄宿OS发出的资源分配请求被主OS 301接收之前接收和检查该请求,修改系统策略,并且拒绝该请求本身。以这种方法,没有特定的寄宿OS独占资源。在其中实现系统策略的程序是系统控制程序。
主OS 301将具体的逻辑分区(例如,图3所示的逻辑分区1)分配到系统控制OS 304。主OS 301以超级管理程序模式(hypervisor mode)进行操作。寄宿OS以管理模式(supervisor mode)进行操作。系统控制OS 304和应用程序以问题模式(problem mode)(用户模式)进行操作。
逻辑分区是系统中接收资源分配的实体。例如,主存储器103被划分为几个区域(参见图1),并且向每个逻辑分区授予使用相应区域的权利。下面列出了分配到逻辑分区的资源类型。
a)物理处理器单元使用时间
b)虚拟地址空间
c)可由逻辑分区中操作的程序访问的存储器
d)由控制OS使用以管理逻辑分区的存储器
e)事件端口
f)使用设备的权利
g)高速缓存分区
h)使用总线的权利
如先前所述,每个OS在逻辑分区内操作。该OS独占分配到该逻辑分区的资源以处理各种数据。在很多情况下,以寄宿OS为单位(on a per guest OSbasis),为在该系统上运行的寄宿OS产生一个分区。向每个逻辑分区分配唯一的标识符。系统控制OS 304通过使系统控制程序与标识符相关联,来管理作为逻辑分区管理信息而生成的系统控制程序。
逻辑分区由主OS 301和系统控制OS 304生成。就在产生之后,逻辑分区没有资源,并且没有对可用资源设置限制。逻辑分区采用两种状态即活动状态和结束状态之一。就在产生之后逻辑分区立即采用活动状态。响应于在逻辑分区中操作的寄宿OS的请求,该逻辑分区变换为结束状态,并且停止分配到该逻辑分区的所有逻辑处理器。
该逻辑处理器是分配到逻辑分区的逻辑处理器,并且对应于任何物理处理器,即在图2的处理器组内的处理器。逻辑处理器和物理处理器并不总是以一一对应的关系彼此相关。单个逻辑处理器可以对应于多个物理处理器。可替换地,多个逻辑处理器可以对应于单个物理处理器。逻辑处理器和物理处理器之间的对应关系由主OS 301确定。
主OS 301具有限制可用于每个逻辑分区的资源量的功能。可以对寄宿OS 302和寄宿OS 303可以分配和释放的资源的使用量设置限制,而不用与系统控制OS 304进行通信。
每个逻辑分区包含控制信号端口。逻辑分区之间的数据交换和共享所需要的各种控制信号到达控制信号端口。控制信号列出如下。
a)连接逻辑分区之间的事件端口的请求
b)连接逻辑分区之间的消息信道的请求
c)连接到共享存储器区域的请求
到达每个逻辑分区的控制信号由控制信号端口排队。没有对由存储器资源所允许的范围内的队列深度设置限制。从接收控制信号的逻辑分区中保留排队所需要的存储器资源。为了从端口拾取控制信号,调用寄宿OS编程接口。当控制信号到达空控制信号端口时,可以将事件传输到任何事件端口。通过调用寄宿OS编程接口指定事件端口。
控制OS以物理子处理器的抽象形式向逻辑分区提供逻辑子处理器作为资源(计算资源)。如先前所述,物理子处理器不以一一对应的关系与逻辑子处理器相关联,而且不要求物理子处理器在数量上与逻辑子处理器相同。根据需要,控制OS可以因此使单个物理子处理器对应于多个逻辑子处理器。
如果逻辑子处理器的数目大于物理子处理器的数目,则控制OS以时分方式使用物理子处理器。逻辑子处理器可以重复地停止然后再恢复操作。寄宿OS可以监视到这样的变化。
处理数据的实体被设置为分区。更具体地说,逻辑分区被设置为共享系统中的资源的实体。将诸如物理处理器的使用时间、虚拟地址空间、以及存储器空间之类的各种资源分配到逻辑分区。然后使用所分配的资源执行处理。在该逻辑分区中设置与任何物理处理器相对应的逻辑处理器,并且基于该逻辑处理器执行数据处理。逻辑处理器不总是以一一对应的关系与物理处理器相对应。例如,单个逻辑处理器可以与多个物理处理器相对应,而且多个逻辑处理器可以对应于单个物理处理器。
如果使用逻辑处理器并行执行多个处理,则通过调度多个逻辑处理器来使用物理处理器。更具体地说,多个逻辑处理器以时分方式使用物理处理器。
参见图4,描述了如何以时分方式使用物理处理器。如图4(a)所示,将对应于主OS和子OS之一的单个逻辑处理器分配到单个物理处理器。逻辑处理器(a)独占物理处理器(1),而逻辑处理器(b)独占物理处理器(2)。
如图4(b)所示,分配到单个物理处理器的多个逻辑处理器以时分方式执行处理。以逻辑处理器(c)→(a)→(c)→(a)→(b)→(c)→(b)的次序在时间上共享物理处理器1。执行与主OS和子OS之一的处理相对应的每个逻辑处理器。以逻辑处理器(b)→(d)→(b)→(d)→(c)→(d)→(a)的次序在时间上共享物理处理器(2)。执行与主OS和子OS之一的处理相对应的每个逻辑处理器。
如图5所示,物理处理器和逻辑处理器之间的对应描述如下。图5图解了单个主处理器401、以及物理子处理器411到414的结构,以及以时分方式操作的物理子处理器(2)和物理子处理器(4)的时序。
如图5所示,如下面所列出的那样,逻辑子处理器以时分形式分配到物理子处理器(2)。
时隙ta0-ta1:逻辑子处理器(a)
时隙ta1-ta2:逻辑子处理器(b)
时隙ta2-ta3:逻辑子处理器(c)
时隙ta3-:逻辑子处理器(a)
在每个分配时隙中,每个逻辑子处理器使用物理子处理器(2)执行处理。
如下面所列出的那样,物理子处理器(4)由逻辑子处理器所共享。
时隙tb0-tb1:逻辑子处理器(b)
时隙tb1-tb2:逻辑子处理器(c)
时隙tb2-tb3:逻辑子处理器(a)
时隙tb3-:逻辑子处理器(b)
在每个分配时隙中,每个逻辑子处理器使用物理子处理器(4)执行处理。
逻辑子处理器时分这些物理处理器以执行相应的处理。为了在下一个分配时隙期间利用物理处理器恢复数据处理操作,每个逻辑子处理器需要在数据处理中止时间期间保持诸如硬件状态之类的状态信息。状态信息包含物理处理器的本地存储器的内容、以及MMIO(存储器映射输入和输出)寄存器的内容。MMIO(存储器映射输入和输出)是用于以存储器映射方式控制硬件的输入和输出控制机制。MMIO使用具体的存储器位置执行写入处理和读取处理,从而控制硬件。
在将逻辑子处理器分配到物理处理器的同时,将负责逻辑子处理器的状态的物理处理器中的MMIO区域和本地存储器区域映射到与该逻辑子处理器相对应的逻辑分区地址空间中的区域。
下面参考图6描述在本发明的一个实施例的信息处理设备中定义的地址空间和地址转换(映射)机制。
图6图解了逻辑分区地址(虚拟物理地址)空间501、虚拟地址空间502、物理地址空间503、以及作为地址空间的地址转换机制的将逻辑分区地址(虚拟物理地址)空间501转换为物理地址空间503的第一转换表521和将虚拟地址空间502转换为物理地址空间503的第二转换表522。
逻辑分区地址(虚拟物理地址)空间501是物理地址空间503的抽象形式的地址空间,并且在系统控制程序产生逻辑分区的同时产生。逻辑分区地址空间(虚拟物理地址)501包含可由逻辑处理器存取的区域。为对应于先前参考图3描述的寄宿OS而设置的每个逻辑分区设置逻辑分区地址(虚拟物理地址)空间501。
直接由寄宿OS使用虚拟地址空间502。寄宿OS根据需要生成新的虚拟地址。如有必要,寄宿OS可以在逻辑分区中生成多个虚拟地址空间。物理地址空间503是真实地址空间。物理地址空间503中的地址用于在总线上指定存取目标。
第一转换表521和第二转换表522用于转换地址空间。第一转换表521将逻辑分区地址(虚拟物理地址)空间转换为物理地址空间503。下面参考图7描述第一转换表521的结构。
如图7所示,第一转换表具有逻辑分区地址(虚拟物理地址)空间的页号作为索引,以引用对应物理地址空间中的页面。将物理处理器的MMIO寄存器的物理地址设置为物理地址空间的页号。通过设置物理地址来标识具体物理处理器。作为索引的逻辑分区地址(虚拟物理地址)空间的页号可由逻辑处理器存取。根据第一转换表的对应,逻辑子处理器和物理子处理器之间被相应。
在响应于该索引(逻辑分区地址(虚拟物理地址)空间的页号)而引用的物理地址(物理处理器中的MMIO寄存器的物理地址)的页号处设置指示对应条目为无效的有效物理地址(空值)。由控制OS根据需要更新该物理地址的值。
下面参考图8描述第二转换表。第二转换表用于将虚拟地址空间502转换为物理地址空间503。第二转换表包含虚拟地址空间的页号作为索引,其中利用该虚拟地址空间的页号引用对应物理地址空间中的页面。将物理处理器中的MMIO寄存器的物理地址设置为物理地址空间的页号。基于所设置的物理地址标识具体的物理子处理器。作为索引的虚拟地址空间的页号可由寄宿OS存取。执行由第二转换表中的对应关系所标识的、物理子处理器的处理。
在响应于该索引(逻辑分区地址空间的页号)而引用的物理地址(物理处理器中的MMIO寄存器的物理地址)的页号处设置指示对应条目(空值)为无效的有效物理地址或者值。由控制OS根据需要更新该物理地址的值。
下面参考图9和10描述由控制OS执行的第一转换表和第二转换表的条目更新处理序列。在这个更新处理中,设定与逻辑分区相对应的逻辑处理器和物理处理器之间的对应关系。
下面参考图9中的流程图描述这些表格的条目更新处理序列。在步骤S101,从逻辑分区地址(虚拟物理地址)计算第一转换表的索引。逻辑分区地址(虚拟物理地址)是在为每个分区设置的地址空间中的地址,其中每个分区对应于参考图3所述的寄宿OS而设置。确定与该地址相对应的第一转换表的索引。在步骤S102,根据所确定的索引,从第一转换表中确定物理地址。
下面参考图10描述这个处理。根据逻辑分区地址(虚拟物理地址)610确定第一转换表620的索引[qqqqq]621。然后确定与索引[qqqqq]621相对应的物理地址[uuuuu]622。逻辑分区地址610是在与图3的一个寄宿OS中设置的逻辑分区相对应的地址空间中的地址,并且由与逻辑分区相对应的逻辑子处理器600使用。
在步骤S103,从虚拟地址中计算第二转换表的索引。在步骤S104,更新第二转换表。
下面参考图10描述这个处理。根据虚拟地址630确定第二转换表620的索引[aaaaa]641。更新与索引[aaaaa]641相对应的物理地址[uuuuu]642。结果,如图10所示,将可通过逻辑分区地址(虚拟物理地址)610存取的物理子处理器和可通过虚拟地址存取的物理子处理器设置为相同的物理子处理器650。虚拟地址630是在图3中的寄宿OS之一的逻辑分区中设置的虚拟地址空间中的地址,并且由与逻辑分区相对应的逻辑子处理器600使用。
通过更新转换表来设定逻辑子处理器和物理子处理器之间的对应。通过应用由第一转换表和第二转换表关联的物理子处理器,与逻辑分区相关联的逻辑子处理器可以执行处理。
下面参考图11的流程图以及图12和13的处理示例描述逻辑子处理器的切换处理。在该切换处理中,就与在对应于图3的寄宿OS的逻辑分区中执行数据处理的逻辑子处理器相对应的物理子处理器而言,取消逻辑子处理器到物理子处理器的对应,并且执行将新的物理子处理器与另一个逻辑子处理器相对应的处理。更具体地说,更新逻辑子处理器和物理子处理器之间的对应关系。这个处理由控制OS执行。
在步骤S201,获取在对应更新中所需要的、与分配到物理子处理器的逻辑子处理器相对应的第一转换表中的索引。在步骤S202,基于所获取的索引获取物理地址。
下面参考图12描述这个处理。物理子处理器a701需要对应更新。与分配到物理子处理器a701的逻辑子处理器α702相对应的第一转换表703的索引为索引[qqqqq]704。在步骤S201,获取索引[qqqqq]704,并且在步骤S202,基于索引[qqqqq]704获取物理地址[uuuuu]705。
在步骤S203,在第二转换表中,将所有保持物理地址[uuuuu]的条目无效化为[空值]。例如,参考图12,将在第二转换表710中保持物理地址[uuuuu]的条目711无效化为[空值]。图12仅仅示出了一个具有物理地址[uuuuu]的条目。可以存在多个具有物理地址[uuuuu]的条目。如果存在多个具有物理地址[uuuuu]的条目,则把这些条目全部无效化为[空值]。利用这个处理,逻辑子处理器α702在数据处理中不能使用物理子处理器a701。
在步骤S204,获取与需要分配到新物理子处理器的逻辑子处理器相对应的第一转换表中的索引。在步骤S205,将在新分配中需要的物理子处理器的MMIO寄存器的物理地址存储在第一转换表中。
下面参考图13描述这个处理。期望将逻辑子处理器β721分配到物理子处理器a701。在步骤S204,获取与逻辑子处理器β721相对应的第一转换表703中的索引,即索引[rrrrr]722。在步骤S205,将物理子处理器a701的MMIO寄存器的物理地址[uuuuu]存储在第一转换表703中。
通过这个处理,将逻辑子处理器β721与物理子处理器a701相对应,并且连续地执行逻辑子处理器β721的处理。
执行参考图11所描述的条目的更新处理。下面参考图14描述这个处理。从虚拟地址830中确定第二转换表840的索引[bbbbb]841。将与索引[bbbbb]841相对应的物理地址更新到[uuuuu]842。结果,如图14所示,将可通过逻辑分区地址(虚拟物理地址)810存取的物理子处理器以及可通过虚拟地址存取的物理子处理器设置为相同的物理子处理器a701。
在上面的论述中,新分配不同于当前分配到物理处理的逻辑处理器的逻辑处理器。作为选择,替换为其分配了该逻辑处理器的物理处理器。如图15所示,通过将物理子处理器b651的MMIO寄存器的物理地址[vvvvv]622存储到第一转换表620中,将逻辑子处理器α600分配到物理子处理器b651。
执行物理处理器的切换操作以切换处理器,从而防止在单个物理处理器连续处理数据的情况下导致的过热。当单个物理处理器的连续操作时间到达最大连续处理器操作时间时,控制OS执行参考图15论述的处理器切换操作。修改逻辑到物理处理器对应关系以便用新物理处理器执行处理。
如图16所示,处理器模块200在每一个子处理器组202-20n中都包含定时器单元252-25n。定时器单元252-25n测量作为物理处理器的子处理器组202-20n的处理时间。在过去了定常时间之后,更新逻辑处理器和物理处理器之间的对应关系。将温度传感器271-273和281-283布置为接近于作为图16中的子处理器单元的物理处理器,以检测每个处理器中的温升。如果所检测的温度达到预定的温度阈值,则切换逻辑处理器和物理处理器之间的对应关系以控制过度温升。
为了切换逻辑处理器和物理处理器之间的对应关系,可以使用取决于时间的处理器切换处理、取决于温度的处理器切换处理、或者二者的组合。在取决于时间的处理器切换处理中,响应于由布置在子处理器组202-20n处的定时器单元252-25n所测量的时间,每隔定常时间段切换这些处理器。在取决于温度的处理器切换处理中,当由每个靠近物理处理器布置的温度传感器271-273和281-283检测到的温升达到预定温度阈值时,切换逻辑处理器和物理处理器之间的对应关系。在参考图15所述的处理器切换操作中执行逻辑处理器和物理处理器之间的对应关系的切换处理。
图17图解了每隔定常时段切换逻辑处理器和物理处理器之间的对应关系的、取决于时间的处理器切换处理的概念。图17(a)-(c)图解了逻辑处理器和物理处理器之间每隔优选时间段(ti)切换的对应关系。
(a)在时间T0时在逻辑处理器和物理处理器之间的对应关系
逻辑处理器α=物理处理器a
逻辑处理器β=物理处理器b
逻辑处理器γ=物理处理器c
(b)在从时间T0开始时间过去了ti之后的时间T1,逻辑处理器和物理处理器之间的对应关系
逻辑处理器γ=物理处理器a
逻辑处理器α=物理处理器b
逻辑处理器β=物理处理器c
(c)在从时间T1开始时间过去了ti之后的时间T2,逻辑处理器和物理处理器之间的对应关系
逻辑处理器β=物理处理器a
逻辑处理器γ=物理处理器b
逻辑处理器α=物理处理器c
每隔时间段(ti),以(a)→(b)→(c)的次序进一步重复循环来切换该对应关系。
图18图解了在由靠近物理处理器布置的每个温度传感器271-273和281-283(参见图16)检测到的温升达到预定温度阈值的时刻,切换逻辑处理器和物理处理器之间的对应关系的取决于温度的处理器切换处理的概念。如图18(a)-(c)所示,响应于处理器的温度而切换逻辑处理器和物理处理器之间的对应关系。
如图18(a)所示,逻辑处理器和物理处理器之间的对应关系如下所示进行切换,
逻辑处理器α=物理处理器a
逻辑处理器β=物理处理器b
逻辑处理器γ=物理处理器c
如果物理处理器a达到并且上升超过预定温度阈值,则如图18(b)所示,交换与温度最高的逻辑子处理器a处于对应关系中的物理子处理器α以及与温度最低的逻辑子处理器b处于对应关系中的物理子处理器β的对应关系。
逻辑处理器β=物理处理器a
逻辑处理器α=物理处理器b
逻辑处理器γ=物理处理器c
在这个切换处理中,在对应上,将假定已经执行了需要高吞吐量的处理的逻辑子处理器α从物理处理器a切换到物理处理器b。逻辑处理器α的处理因此由另一单个的物理处理器连续执行,而控制了过度的温升。
代替响应于由温度传感器对处理器的温升检测而切换对应关系,定时器单元可用于每隔定常时间段切换具有最高温度的物理处理器和具有最低温度的物理处理器之间的对应关系。通过执行处理器切换处理(迁移处理),避免了长时间使用单个处理器而引起的过度温升。
如上所述,控制OS设置和更新两个地址转换表即用于将逻辑分区地址空间转换为物理地址空间的第一转换表和用于将虚拟地址空间转换为物理地址空间的第二转换表中的条目,以便修改逻辑处理器和物理处理器之间的对应关系。根据这些情况,设置和更新逻辑到物理处理器的对应关系。物理处理器因此根据数据处理顺序,以时分方式处理数据。考虑到在硬件上的工作负荷和数据处理程序而执行适当的数据处理。
如果从对应于寄宿OS而设置的逻辑分区的角度看,即使通过更新转换表改变了物理处理器,也连续地执行逻辑分区的处理。寄宿OS可以在与单个物理处理器实质上以连续形式执行同一处理的处理环境相同的处理环境中处理数据。
可以从逻辑到物理处理器对应关系中排除在服务年限的最始或者随后阶段出故障的物理处理器。下面参考图19描述这个处理。
具有多个物理处理器的设备可以包含不能处理数据的有故障的物理处理器。这样的物理处理器可能最初有故障或者在服务年限中随后变得有故障。从对应关系中除去出故障的物理处理器。
图19图解了四个物理处理器a-d。逻辑处理器被分配到这些物理处理器。假定物理处理器c最初出故障或者在服务年限中随后变得有故障,并且不能执行数据处理功能或者具有低性能。
将逻辑处理器α到δ与物理处理器a、b、和d相对应。从该对应关系中排除物理处理器c。如先前所述,不要求逻辑处理器和物理处理器以一一对应的关系相互对应,而且不要求逻辑处理器在数量上等于物理处理器。
执行用于将逻辑处理器与物理处理器相对应的处理的控制OS从对应关系中排除了有故障的物理处理器,并且产生确定逻辑处理器和物理处理器之间的对应关系的地址转换表,以仅仅将正常操作的物理处理器与逻辑处理器相对应。如果包含了最初有故障的物理处理器,则在开始时产生从对应关系中排除那个物理处理器的地址转换表。如果任何物理处理器在服务年限中随后变得有故障,则更新地址转换表以从对应关系中排除有故障的物理处理器。
仅仅使用正常的物理处理器而排除了有故障的物理处理器。因此该设备没有数据处理中的错误。例如,在包括其上安装有n个物理处理器的芯片的设备中,仅仅将m个物理处理器(n>m)与逻辑处理器对应。该设备因此作为具有m个处理器的设备而起作用。
如果预测到多个物理处理器以预定比率包含有故障的处理器,则优选为将具有n个物理处理器的设备中的数据处理程序开发为仅仅利用m(n>m)个物理处理器处理数据的程序。利用这个布置,即使数目与在n和m之间的差值相等的物理处理器随后变得有故障,也可以执行数据处理而没有任何问题。
如图20所示,基于在物理处理器和所使用电源之间的关系,设置逻辑到物理处理器的对应关系。在具有多个物理处理器的设备中,使用共用来自电源的供电线路的物理处理器组。如图20(A)所示,物理处理器a和物理处理器b经由单条供电线路901从电源A接收电力。物理处理器c和物理处理器d经由另一条供电线路902从电源B接收电力。
如果物理处理器b和物理处理器d在同一时段期间处理数据而让物理处理器a和c在该设备中空闲,则电源A和B经由供电线路901和902提供电力。
与使用一个电源和一条供电线路相比,两个电源和两条供电线路的使用耗费了更多的电力。如果同时进行操作的物理处理器数目是少的,则优选为最小化电源和供电线路的数目以节省电力。
控制OS基于物理处理器和所使用的电源之间的关系而执行逻辑到物理处理器对应处理,并且设置和更新地址转换表。如图20(B)所示,设备包含经由供电线路901连接到单一电源的物理处理器a和b、以及经由供电线路902连接到单一电源的物理处理器c和d。在这个布置中,仅仅将逻辑处理器与经由一条供电线路供给电源的两个物理处理器相对应。
如图所示,将逻辑处理器与物理处理器c和d相对应以处理数据。物理处理器a和b处于空闲状态,即不活动状态,并且不需要电力。因此仅仅经由供电线路902提供电力。因此执行了节能。
执行逻辑到物理处理器对应处理的控制OS引用每个物理处理器和电源之间的关系表格,并且设置和更新确定逻辑到物理处理器对应关系的地址转换表,以便最小化在处理时间期间接通的电源数目和供电线路数目。因此执行了节能。
参见图21-23,下面描述在数据处理中,由为其对应了逻辑处理器的物理处理器所使用的存储器。还描述了基于物理处理器的位置的、逻辑到物理处理器对应关系的设置。
图21中的信息处理设备包括四个物理处理器a-d,以及存储器X和Y。在数据处理中,每个物理处理器a到d存取存储器X和Y。存储器X和Y分离地位于该设备内。每个处理器经由内部总线911将数据存储到存储器X和存储器Y中,或者从中读取数据。
从经由总线的存储器存取处理和数据传输处理的观点看,物理处理器和存储器之间的短距离提高了总线使用效率,并且缩短了存取时间和处理时间。
控制OS监视为其对应了逻辑处理器以执行各种处理的物理处理器的存储器存取状态。取决于存取状态,控制OS将更靠近具有高存取频率的存储器布置的物理处理器与对应于各存取的逻辑处理器相对应。
监视单元921监视为各种处理而设置的逻辑处理器和执行与该逻辑处理器相对应的处理的物理处理器之间的对应关系,以及每个物理处理器的存储器存取状态。监视单元921被示为处于单个块中。在监视处理中,由控制OS的监视程序监视由布置在每个单独物理处理器中的硬件单元计数的存储器存取。下面参考图22描述该监视处理。
图22(B)图解了以给定数据处理顺序执行的逻辑到物理处理器对应处理,以及物理处理器的存储器存取。物理处理器a到d存取存储器X和Y。存储器X和存储器Y在信息处理设备内彼此间隔开。存储器X靠近物理处理器a和b定位,而存储器Y靠近物理处理器c和d定位。
图22(A)图解了作为由控制OS执行的监视处理的结果而获取的数据,其中利用图22(B)中的逻辑到物理处理器的对应关系执行数据处理。所监视的数据包含逻辑到物理处理器的对应关系,以及所记录的、每个物理处理器对存储器X和存储器Y的数据存取频率。
物理处理器a执行与逻辑处理器α相对应的处理。该数据示出物理处理器a存取存储器X 20次,并且存取存储器Y 7次。类似地,关于其它物理处理器,列出了所对应的逻辑处理器和存取频率。监视处理的时段不局限于任何时序。监视处理可以在具体处理的时段中一直执行。作为选择,监视处理可以在任何预编程的时间处执行。
如参考图22(B)所述,与存储器Y相比,物理处理器a和物理处理器b更靠近存储器X定位。与存储器X相比物理处理器c和d更靠近存储器Y定位。为了实现高存取效率、短存取时间以及短处理时间,每个物理处理器优选为靠近具有较高存取频率的存储器定位。
图22(A)的监视结果示出为其对应了逻辑处理器α的物理处理器a对存储器X的存取计数为[20],而对存储器Y的存取计数为[7]。对更靠近物理处理器a的存储器X的存取计数因此高于对存储器Y的存取计数。通过将逻辑处理器α与物理处理器a相对应,而高效地执行该处理。
为其对应了逻辑处理器γ的物理处理器b对存储器X的存取计数为[2],而对存储器Y的存取计数为[25]。对更靠近物理处理器b的存储器X的存取计数小于对更远的存储器Y的存取计数。在执行将逻辑处理器γ与物理处理器b相对应的处理中效率有可能下降。
为其对应了逻辑处理器β的物理处理器c对存储器X的存取计数为[5],而对存储器Y的存取计数为[30]。对更靠近物理处理器c的存储器Y的存取计数高于对更远存储器X的存取计数。因此执行将逻辑处理器β与物理处理器c相对应的处理而执行高效的处理。
为其对应了逻辑处理器δ的物理处理器d对存储器X的存取计数为[12],而对存储器Y的存取计数为[5]。对更靠近物理处理器d的存储器Y的存取计数小于对更远的存储器X的存取计数。在执行将逻辑处理器δ与物理处理器d相对应的处理中效率有可能下降。
基于这些监视结果,控制OS更新逻辑到物理处理器对应关系,以便下次执行相同的处理。取决于存取状态,将更靠近具有较高存取频率的存储器的物理处理器与对应于该处理的逻辑处理器相对应。如先前所述,控制OS通过更新地址转换表来设置任何逻辑到物理处理器对应关系。基于监视结果,更新地址转换表以便将靠近具有较高存取频率的存储器的物理处理器与对应于该处理的逻辑处理器相对应。
根据图22(A)的监视结果,对应关系
物理处理器a:逻辑处理器α以及
物理处理器c:逻辑处理器β
工作优异,但是对应关系
物理处理器b:逻辑处理器γ以及
物理处理器d:逻辑处理器δ
导致数据传输效率降低。控制OS更新逻辑到物理处理器对应关系,以便将更靠近具有较高存取频率的存储器的物理处理器与对应于该处理的逻辑处理器相对应。
下面参考图23描述更新处理之后的逻辑到物理处理器对应关系以及存储器存取频率。控制OS通过更新地址转换表来更新逻辑到物理处理器对应关系。更具体地说,更新地址转换表,以便将更靠近具有较高存取频率的存储器的物理处理器与对应于该处理的逻辑处理器相对应。
如图23(C)所示,逻辑到物理处理器对应关系确定如下
物理处理器a:逻辑处理器α
物理处理器b:逻辑处理器δ
物理处理器c:逻辑处理器β,以及
物理处理器d:逻辑处理器γ。
如果利用该对应关系执行与参考图22所述的处理相同的处理,则物理处理器的存储器存取监视结果如图23(D)所示。
为其对应了逻辑处理器α的物理处理器a和为其对应了逻辑处理器δ的物理处理器b中的每一个对附近存储器X的存取计数都比对更远存储器Y的存取计数大,并且因此实现高处理效率。
类似地,为其对应了逻辑处理器β的物理处理器c和为其对应了逻辑处理器γ的物理处理器d中的每一个对附近存储器X的存取计数都比对更远存储器Y的存取计数大,并且实现高处理效率。
执行逻辑到物理处理器对应处理的控制OS根据每个为其对应了逻辑处理器的物理处理器的存储器存取状态更新地址转换表。控制OS因此更新逻辑到物理处理器对应关系。这样更新地址转换表以便将更靠近具有较高存取频率的存储器的物理处理器与逻辑处理器相对应。加速了数据存取,并且因此高效执行数据处理。
已经参考具体的实施例描述了本发明。在本发明精神之内对实施例的修改和改变对于本领域的技术人员来说是显然的。仅仅为了示例目的而论述了本发明的实施例,而不用于限制本发明的范围。本发明的范围仅仅由附加权利要求所限制。
上面说明的步骤系列可以使用软件、硬件、或者它们的组合执行。如果使用软件执行这一系列步骤,则例如将形成软件的程序从记录介质或者经由网络安装到并入硬件结构的计算机或者通用计算机上。
程序可以事先记录在作为记录介质的硬盘和ROM(只读存储器)之一上。该程序还可以暂时或者永久地存储(记录)在可移动记录介质上。记录介质包括软盘、CD-ROM(光盘只读存储器)、MO(磁光)盘、DVD(数字多用途盘)、磁盘、半导体存储器等。可以在软件包方面提供这样的可移动介质。
该程序可以从可移动记录介质安装到计算机。该程序可以以无线方式从下载站点传送到计算机。该程序还可以以有线方式经由诸如LAN(局域网)和国际互联网络之一的网络传送。程序然后由计算机接收并且安装在计算机中诸如硬盘之类的记录介质上。
在这个说明中论述的处理步骤按照上面所述以时间序列次序顺序地执行。作为选择,可以并行或者分别执行这些步骤。在这个说明书中,系统是指包含多个设备的逻辑系统,而且每个设备中的单元不是必须包含在同一个外壳中。
工业实用性
根据本发明的实施例,将逻辑处理器与物理处理器相对应。设置在包括虚拟地址空间、逻辑分区地址(虚拟物理地址)、和物理地址在内的不同地址空间之间的地址转换中应用的表格。通过适当地修改这些转换表,设置和更新逻辑处理器和物理处理器之间的适当对应关系。因此执行了高效的数据处理。
根据本发明的实施例,控制OS使用两个地址转换表,即用于将逻辑分区地址(虚拟物理地址)空间转换为物理地址空间的第一转换表,以及用于将虚拟地址空间转换为物理地址空间的第二转换表。通过设置和更新这些表格申的条目,控制OS更新逻辑处理器和物理处理器之间的对应关系。根据情况,修改逻辑处理器和物理处理器之间的对应关系。物理处理器因此根据数据处理顺序,以时分方式处理数据。因此考虑到在硬件上的工作负荷和数据处理程序而适当地执行数据处理。
根据本发明的实施例,控制OS通过更新转换表,在物理处理器上执行轮流处理,即迁移处理。这个布置控制由于长时间连续使用而导致的物理处理器的加热。
根据本发明的实施例,在具有一组连接到不同供电线路的物理处理器的系统中,与不同物理处理器对应的多个逻辑处理器并行操作。通过将逻辑处理器分配到连接到同一供电线路的物理处理器,可以除去给处于空闲模式中的物理处理器组的电力。因此执行了节能。
根据本发明的实施例,在设备内不同位置中布置有多个存储器的系统中,更新地址转换表,以将更靠近具有更高存取频率的存储器的物理处理器与对应于每个处理的逻辑处理器相对应。该处理器分配处理实现了高速的数据存取,由此导致高效数据处理。
Claims (16)
1.一种信息处理设备,包括:
控制操作系统,执行用于以时分方式将逻辑处理器与物理处理器相对应的处理;以及
寄宿操作系统,作为逻辑处理器的应用实体的逻辑分区的设置对象,
其中,控制操作系统通过设置和更新两个地址转换表格作为用于确定逻辑处理器和物理处理器之间的对应关系的地址转换表格,来设置和更新逻辑处理器和物理处理器之间的对应关系,所述两个地址转换表格中的第一转换表格设置逻辑分区地址空间和物理地址空间之间的对应关系,而第二转换表格设置该寄宿操作系统的虚拟地址空间和物理地址空间之间的对应关系。
2.如权利要求1所述的信息处理设备,其中,所述控制操作系统获取与第一转换表中基于逻辑分区地址而确定的索引相对应的物理地址,并且更新与第二转换表中基于虚拟地址而确定的索引相对应的物理地址。
3.如权利要求1所述的信息处理设备,其中,为了切换逻辑处理器和物理处理器之间的对应关系,所述控制操作系统获取根据第一转换表中与物理处理器相对应的逻辑处理器的索引而确定的物理地址,使第二转换表中所有保持所获取的物理地址的条目无效;获取第一转换表中与该物理处理器新对应的逻辑处理器相对应的索引,将对应的物理处理器的物理地址信息作为与所获取的索引相对应的物理地址而存储。
4.如权利要求1到3之一所述的信息处理设备,其中,物理地址包括物理处理器中的存储器映射输入和输出寄存器的物理地址。
5.如权利要求1所述的信息处理设备,其中,控制操作系统在使用一个物理处理器的处理的操作时间达到预定阈值时间的时候,更新逻辑处理器和物理处理器之间的对应关系,以进行物理处理器的切换处理。
6.如权利要求1所述的信息处理设备,其中,控制操作系统在一个物理处理器的温度达到预定阈值温度的时候,更新逻辑处理器和物理处理器之间的对应关系,以进行物理处理器的切换处理。
7.如权利要求1所述的信息处理设备,其中,控制操作系统设置逻辑处理器和物理处理器之间的对应关系,以使得将并行操作的多个物理处理器设置为连接到相同供电线路的物理处理器组。
8.如权利要求1所述的信息处理设备,其中,所述控制操作系统基于物理处理器对布置在信息处理设备内不同位置处的存储器的存取状态,使位于比该物理处理器更近的位置上的存储器的存取频率变得越高的方式,设置逻辑处理器和物理处理器之间的对应关系。
9.一种利用以时分方式与物理处理器相对应的多个逻辑处理器处理数据的处理控制方法,该方法包括:
在寄宿操作系统上设置逻辑分区作为逻辑处理器的应用实体的步骤;以及
更新两个地址转换表的步骤,所述两个地址转换表中的第一转换表设置逻辑分区地址空间和物理地址空间之间的对应关系,而第二转换表设置该寄宿操作系统的虚拟地址空间和物理地址空间之间的对应关系。
10.如权利要求9所述的处理控制方法,其中表格更新步骤包括:获取与第一转换表中基于逻辑分区地址而确定的索引相对应的物理地址;以及
更新与第二转换表中基于虚拟地址而确定的索引相对应的物理地址。
11.如权利要求9所述的处理控制方法,为了切换逻辑处理器和物理处理器之间的对应关系,还包括:更新根据第一转换表中与物理处理器相对应的逻辑处理器的索引而确定的物理地址,使第二转换表中所有保持所获取的物理地址的条目无效;获取第一转换表中与该物理处理器新对应的逻辑处理器相对应的索引,将对应的物理处理器的物理地址信息作为与所获取的索引相对应的物理地址而存储。
12.如权利要求9到11之一所述的处理控制方法,其中,物理地址包括物理处理器中的存储器映射输入和输出寄存器的物理地址。
13.如权利要求9所述的处理控制方法,还包括:在使用一个物理处理器的处理的操作时间达到预定阈值时间的时刻,更新逻辑处理器和物理处理器之间的对应关系以进行物理处理器的切换处理。
14.如权利要求9所述的处理控制方法,还包括:在一个物理处理器的温度达到预定阈值温度的时刻,更新逻辑处理器和物理处理器之间的对应关系以进行物理处理器的切换处理。
15.如权利要求9所述的处理控制方法,还包括:设置逻辑处理器和物理处理器之间的对应关系,以使得将多个并行操作的物理处理器设置为连接到相同供电线路的物理处理器组。
16.如权利要求9所述的处理控制方法,还包括:基于物理处理器对布置在信息处理设备内不同位置处的存储器的存取状态,使位于比物理处理器更近的位置上的存储器的存取频率变得越高的方式,设置逻辑处理器和物理处理器之间的对应关系。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004283533 | 2004-09-29 | ||
JP283533/2004 | 2004-09-29 | ||
JP167911/2005 | 2005-06-08 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1906581A CN1906581A (zh) | 2007-01-31 |
CN100382034C true CN100382034C (zh) | 2008-04-16 |
Family
ID=37674997
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2005800014889A Expired - Fee Related CN100382034C (zh) | 2004-09-29 | 2005-09-26 | 信息处理设备和处理控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100382034C (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5563974B2 (ja) * | 2010-12-21 | 2014-07-30 | パナソニック株式会社 | 機器管理システム |
US9298516B2 (en) * | 2013-10-01 | 2016-03-29 | Globalfoundries Inc. | Verification of dynamic logical partitioning |
CN104618414B (zh) * | 2013-11-05 | 2018-05-04 | 阿里巴巴集团控股有限公司 | 一种分布式服务的实现方法、服务代理装置及分布式系统 |
US9619387B2 (en) * | 2014-02-21 | 2017-04-11 | Arm Limited | Invalidating stored address translations |
CN112667318A (zh) * | 2020-12-31 | 2021-04-16 | 京信网络系统股份有限公司 | 逻辑核的绑定方法、装置、设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06187301A (ja) * | 1992-12-18 | 1994-07-08 | Fujitsu Ltd | 仮想プロセッサ方式とデータ転送処理方法及びその装置 |
JP2000215189A (ja) * | 1998-11-04 | 2000-08-04 | Digital Equip Corp <Dec> | 多数のオペレーティングシステムインスタンス及びソフトウェア制御式リソース割り当てを伴うマルチプロセッサコンピュータアーキテクチャ |
-
2005
- 2005-09-26 CN CNB2005800014889A patent/CN100382034C/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06187301A (ja) * | 1992-12-18 | 1994-07-08 | Fujitsu Ltd | 仮想プロセッサ方式とデータ転送処理方法及びその装置 |
JP2000215189A (ja) * | 1998-11-04 | 2000-08-04 | Digital Equip Corp <Dec> | 多数のオペレーティングシステムインスタンス及びソフトウェア制御式リソース割り当てを伴うマルチプロセッサコンピュータアーキテクチャ |
Also Published As
Publication number | Publication date |
---|---|
CN1906581A (zh) | 2007-01-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2397536C2 (ru) | Устройство обработки информации, способ управления процессом и компьютерная программа | |
CN103699334B (zh) | 用于管理虚拟机磁盘的方法和系统 | |
CN101706742B (zh) | 一种基于多核动态划分的非对称虚拟机i/o调度方法 | |
CN100549964C (zh) | 信息处理设备、中断处理控制方法 | |
CN102103516B (zh) | 基于虚拟cpu的频率和电压调节 | |
US8291430B2 (en) | Optimizing system performance using spare cores in a virtualized environment | |
US8230432B2 (en) | Defragmenting blocks in a clustered or distributed computing system | |
KR100885346B1 (ko) | 액티비티 정보를 이용한 가상 머신 관리 | |
CN100504763C (zh) | 启用同时多线程(smt)的系统及其管理方法 | |
CN101233489B (zh) | 自适应进程分派的方法和系统 | |
CN101276293B (zh) | 在逻辑分区之间平衡物理系统资源访问的方法和系统 | |
CN103189844A (zh) | 在非一致存储器访问架构上使用处理位置来绑定io资源 | |
KR101440107B1 (ko) | 다중 코어 시스템에서 접근 시간에 기초한 메모리 관리방법 및 장치 | |
US11579908B2 (en) | Containerized workload scheduling | |
CN101169731A (zh) | 多路多核服务器及其cpu的虚拟化处理方法 | |
CN102508718A (zh) | 一种虚拟机负载均衡方法和装置 | |
CN100382034C (zh) | 信息处理设备和处理控制方法 | |
JP2004030574A (ja) | 動的にキャッシュ・メモリの割り当てを行うプロセッサ集積回路 | |
CN102521154A (zh) | 用于创建低功率区域的动态存储器分配和重新定位 | |
CN101968746A (zh) | 一种内核虚拟机组织架构模式的实现方法 | |
CN107577185A (zh) | 一种任务执行方法及基于多核处理器的控制器 | |
CN105843683A (zh) | 用于动态优化平台资源分配的方法、系统和设备 | |
CN101310257A (zh) | 多处理器系统和用于使计算机执行多处理器系统的控制方法的程序 | |
CN102968344A (zh) | 一种多虚拟机迁移调度的方法 | |
CN102023844A (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20080416 Termination date: 20150926 |
|
EXPY | Termination of patent right or utility model |