CN1122908C - 数据处理***用的电能管理*** - Google Patents

数据处理***用的电能管理*** Download PDF

Info

Publication number
CN1122908C
CN1122908C CN95103046A CN95103046A CN1122908C CN 1122908 C CN1122908 C CN 1122908C CN 95103046 A CN95103046 A CN 95103046A CN 95103046 A CN95103046 A CN 95103046A CN 1122908 C CN1122908 C CN 1122908C
Authority
CN
China
Prior art keywords
state
electric energy
physical
event
power
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 - Lifetime
Application number
CN95103046A
Other languages
English (en)
Other versions
CN1115883A (zh
Inventor
F·L·劳森
小·G·G·索托迈耶
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN1115883A publication Critical patent/CN1115883A/zh
Application granted granted Critical
Publication of CN1122908C publication Critical patent/CN1122908C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/325Power saving in peripheral device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3287Power saving characterised by the action undertaken by switching off individual functional units in the computer system
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Power Sources (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

一种数据处理***中的电能管理结构,它包括物理设备,每种物理设备均具有至少一种状态,每种状态均有相应的电能值,而***状态则被定义为该物理设备所有当前状态的集合。电能对象和热量对象包含物理设备可能状态的需用电能和热量需求的信息。电能和热量对象还描述允许的状态转换以及所有可能状态转换的需用电能及热量特征。事件装置产生表示***内发生事件的信号。策略模块包含有规则。控制器根据事件改变物理设备的状态。

Description

数据处理***用的电能管理***
本发明总体上涉及到数据处理***的电能管理(powermanagement),具体地说,本发明涉及到一种以面向对象方式进行数据处理***电能管理的方法与***。
在诸如便携式膝上型***及图形输入板之类的计算机设备中,管理及节省电能的使用是一件首要的技术设计任务。在通常以电池为基本电源进行工作的移动式计算机设备中,通过有效地管理和使用该电池能量而节省电能以使运行时间最大化,是特别重要的。例如,电能管理的一种技术是使空闲了一段特定时间的计算机***组件减少电能的消耗。
在许多便携式设备中,当断开该设备与诸如110伏交流电之类的主要外部电源的联接时,电池之类的自给式电源就起主电源的作用。在某些情况下,该电池起辅助电源的作用以便在设备突然掉电时保持某些关键性电路的运转。这就会使设备的存储器处于活动状态以保持存储在该存储器内的任何信息,否则,这些信息可能会丢失。先进的管理***可以监控各个功能元件的运行情况,并且在不再需要某些元件起作用的时候切断其电源供应,从而使得该设备在使用其内部电源的情况下能够延长运行时间。此外,超时***会在特定的时间之后使该设备处于待机状态以保存电能。例如,对新型膝上型计算机来说,在其空闲了一段特定的时间时就断开显示屏的电源,这是很普遍的。
膝上型计算机均设计成能靠其内部电源运行数个小时。为了能在使电池尺寸及重量均为最小的同时延长膝上型计算机的自我维持时间,需要有复杂的电能管理***以便只向那些需要电能的电路和设备提供电能并在不需要特定的电路工作时使该电路断电或使该电路进入低功耗状态。该管理***还必须能连续地监控各种电路及设备,以便在需要时立即重新供电从而启动这些电路及设备。
更重要的是,现代大型主计算机均具有需要大量电能的复杂结构。对这些大型***所能利用的电能的管理和预算面临着具有与进行膝上型计算机电能管理相类似的问题。例如,计算机***只需用有限的电源供应即可满足***运行所需的远大于该电源供应量的能量需求。为此需要一电能管理***以预算整个***的电能。
目前的一代电能管理技术存在着许多问题。现代的用于大型计算机及类似的膝上型计算机中的电能管理***的第一个问题在于,该电能管理***都是***专用的。而提供一种可在任何计算机***内使用的电能管理***则是最理想的。而且,最好能提供这样一种电能管理结构,该结构可运行于任何计算机***中;但也可以定做成任何所需的结构,即通过设计出该管理结构所遵循的规则以使这些规则满足对计算机***来说是最佳的理想电能指标。
因此,最好能提供一种可广泛应用于不同类型***的电能管理结构。为之设计有一种电能管理结构的操作***或核心程序最终可以在各种计算机***上运行。这就要求上述电能管理***在从手提式功能相对固定的***到具有数千个处理器的高功耗***中都是通用且耐用的。每种类型的***都带有自己的上述电能管理结构所必须要满足的关键性要求。以下***类型列表描述了每一种类型的***及其可能有的关键性要求。
1.MPP***
该***是“大规模并行处理机”(Massively ParallelProcessor)***,该***可包含有数百或数千个处理部件。这种类型的***的目标是提供“原始”的性能。其性能通常以处理能力为目标但通常具有带宽相当高的I/O以满足处理器的性能要求。应避免任何会妨碍或限制***性能的问题。电能管理***必须不影响***的性能。
2.服务器***
这种***用于将某些服务提供给若干其它的客户***。这种***一般被用作文件服务器以向多个客户提供(相对)多的文件。同时,这种类型的***也可用来提供任何类型可被共享的服务(即打印机)。这种***所具有的主要要求是数据可靠且可在较大的时间比例内使用上述服务。电能管理结构可通知面临电源中断的***并能转换至后备电源以“渡过”上述电源中断期,因而增加对服务器***的需求。
3.桌面***
这种***主要由终端用户所使用并且是一种终端用户通常与之相交互的***。这种类型的***有许多与终端用户有关的特征,而影响终端用户的满意感的一个可能最为重要的因素就是响应时间。也就是说,当用户在这种***上进行某种操作时,使用户“看到”某种响应所花费的时间在很大程度上决定了用户对该***的满意感并极大地影响着用户对该***速度或性能的感觉。电能管理结构必须避免使这种类型***的响应时间有较大的(可感觉到的)增加。
4.膝上型***
这种类型的***与桌面***相类似的地方是它们都由终端用户所使用。但是,与位置基本固定的桌面***不同,这种***是可移动式的。即这种***可四处移动。作为这种***移动性的一个部分的是便携式电源(通常是电池)。同桌面式***一样,膝上型***也把响应时间作为重要的评价标准。但是,由于这种***的移动性,所以存在着这样的要求,即便携式电源应能提供尽可能长时间的电能。这有时与快速响应时间的愿望不一致,但是,通常可牺牲某种响应时间以获得较长的电池寿命。过去,电能管理所主要关注的就是这类***。这种关注将一直持续下去,直至或者可以极大地减少这种***自身的功耗以增加电池寿命,或者电池技术充分发展以至于不再关心功耗,或者出现略微减少功耗与改进电池技术以生产出理想的“长”电池寿命这两种最有可能的改进形式的组合。
5.嵌入***
这种类型的***分成两个子类:诸如厂矿控制器之类的通常用于某种过程控制的“单板机”以及可用作另一种***中子***的组成部分的“控制器”,如服务器***内的磁盘控制器之类的“控制器”。嵌入***所关心的主要问题通常是实时。也就是说,其软件对***性能特征有特定的期望,即软件依靠该***性能特征可获得正确的操作(即程序的正确性不仅取决于算法的正确性而且包含了时间因素)。电能管理结构必须允许实时应用程序以能满足这些程序定时标准的方式运行。
6.PDA***
这种***是“个人数字式辅助***”(Personal  DigitalAssistants)或手持式***。这种***要比膝上型***小的多并且不如更为通用的同类***灵活。PDA***有两个主要的要求。一是非常长的电池寿命。如果膝上型***的电池寿命是以小时或天数计量的话,那么,PDA***的电池寿命则要以月来计量。通常要牺牲PDA***的性能以获得长时间的电池寿命。另一个要求是所谓的“瞬时接通”。也就是说,PDA的“引导”时间是用零点几秒来计量的。
除膝上型***及PDA***以外,在上述所有类型的***中电能管理也都变得重要起来了。所有的***都需要有电源。在固定式***中,正是上述电源将壁装电源(美国为120V,60Hz)变换至***内部所需的各种直流电压。对给定的电压来说,所需要的电流越大,电源也就越大。通常大型的电源要比小型电源的成本高。为了使***的成本下降,生产者会使用确信能完成任务的最小型电源。但是,终端用户可能希望配置一种能消耗比所提供的电源更多能量的***。历史上用户通常会以较大的花费去购买带有大型电源的***。最好能存在一种能预算其电能的***以解决这一问题。
使用壁装电源的***可能有另一种问题。能向所述***内部供给更多电能的电源必须要有更多的输入电能。在某些情况下,不可能得到更多的输入电能。以一个具有l00个***而每个***耗电500W的成套设备为例。它将产生合计50KW的耗电量。如果上述***所在的建筑能承受60KW的负载,则一切都没有问题,但是,如果要用每个耗电量为750KW的***来替换上述***,那么,由于整个耗电量为75KW,超过该建筑所能承受的负载15KW,因而会出现问题。这就是为什么人们越来越多地看到有低耗电的“绿色机器”出现。所以,电能管理不仅仅只对膝上型***及PDA***而是对所有类型的***都是重要的。
为了能够定义电能管理结构,该结构必须不依赖任何设备的特性。例如,某些处理器结构具有特定的扩充部分以进行电能管理(诸如用于电能管理代码的特殊执行模式)。电能管理结构的定义不应假定特殊的处理器结构特征。这将极大地限制电能管理结构对其它处理器结构的适用性。
象IBN Thinkpad系列膝上型***那样的机器是以英特尔高级电能管理结构(Intel Advance Power Management Architecture)及其前身为基础的。这种技术局限于SL系列中特定的英特尔(Intel)结构的处理器并且不能为以开放***技术为基础的软件***工作。
高级电源管理(Advanced Power Management)使用了一种称为***管理模式(System Management Mode)的特殊处理器模式以执行处理电能事件的代码。遗憾的是,使用这种模式违背了开放***的结构化原则。开放***假定它们能完全控制处理器的操作。开放***只以机器的普通特权方式运行,此时通常启动地址翻译机制。在有实时作业存在的情况下,如果硬件进入***管理模式,则会使用于管理处理器资源的所有作业调度和所有算法都无效。
而且,在多处理器***中,如果有一个处理器进入***管理模式。那么,该多处理器设备中的其它处理器就认为该处理器已经失效并试图从***中将该处理器排除出去。假如这个处理器要恢复正常的执行状态,那么***就不能运行了。此外,在多处理器设备中,如果处理器在进行处理的同时进入***管理模式,那么,就会在该进程的某些特定类型的关键过程段中出现死锁。例如,如果操作***的核心程序正在终止一个翻译后备缓冲器(Translation Lookaside Buffer)的使用,处理器就会进行一系列空转与确认循环。如果正在空转的处理器进入***管理模式,则***内的所有处理器都将开始空转。
最后,高级电能管理取决于基本输入/输出***(BIOS)的存在与使用。由于开放***是可移植的,可以提供实时支持并在多处理器硬件上运行以及直接提供BIOS层的所有功能,所以,开放***不使用BIOS。正如通过上述问题所看到的那样,不能在开放***中使用高级电能高管理。
在引入“实时”这一概念时,由于传统的电能管理装置通过阻止“实时”应用程序运行或关闭电能管理而解决上述问题,所以该电能管理装置常常会失灵。结果这是一种次优化的解决方案。如果人们认为多媒体是一种实时的应用程序并且多媒体在市场上愈发变得流行了,那么,实时就是一件必须由电能管理结构所处理的重要事项。当和电能管理一道考虑时,“实时”是严格的理由在于:“实时”需要可以预料的有效服务(即已知的子***响应时间)。另一方面,传统的电能管理没有责任提供一致的子***响应时间,其目的是以性能和子***响应时间以及这两个参数可能随“感觉到的”***活动而改变为代价来减小电能。
除现代电能管理***的不可移植性以及不能预算***内整个的功耗以外,当前的电能管理***即没有考虑有关从一种电能状态转换到另一种电能状态的电能损失,也不能预算电能。先前的技术只能使计算机***组件的功耗减至最小,该管理***不重视给定状态的电能需求同时假定状态转换具有零损耗并且是瞬时的。例如,在使功耗最小化的过程中,管理总是假定磁盘驱动器在运转时有较多的功耗而在停转时有很少的功耗。因此,如果暂时不使用磁盘驱动器,电能管理就会使磁盘停转。这种进行电能管理的简单化方法所带有的问题是:没有考虑使磁盘停转时的功耗或使磁盘重新起转以再使用时的功耗。所以,如果磁盘驱动器花费不同数量的电能和一些时间停转,并花费不同数量的电能和一些时间起转,那么,电能管理结构就应该在确定需要使磁盘驱动器停转以节省电能时把上述开销考虑进去。
一个相关的问题是热量管理。对电能管理***来说,在就整个计算机***之适当的配置与电源作出决定时,最好能考虑热量对电能的消耗与供给、部件的可靠性以及整个***性能的影响。
所以,最好能提供这样一种用于数据处理***的电能管理结构,它不是某种硬件专用的。这就排除了为每种计算机应用而重新设计该电能管理结构的必要性。通过使电能管理在平台间具有更高的可移植性其结构可被简化,从而能将更复杂的控制功能很容易地加到电能管理中。此外,对这种***来说,最好能预算整个***的有效电能。另外,电能管理结构必须不依靠任何实现特性来定义该结构。电能管理***还应考虑到状态转换的电能开销。最后,电能管理***也应该考虑热量对电能消耗与供给的影响。
依照本发明,数据处理***中的电能管理结构包括物理设备,物理设备至少具有一种状态,每种状态都带有相应的值,其中,将***状态定义为所有物理设备的当前状态的集合。分别对应于一种物理设备的电能对象和热量对象都包含着有关该种物理设备可能状态的需用电能及热量特征的信息。所述电能及热量对象还能描述所允许的从一种可能状态到另一种状态的状态转换以及所有可能的状态转换的需用电能和热量特征。也可以传递各个物理设备的当前状态。事件装置产生指示在***中出现了事件的信号。策略模块包括实现电能管理的规则,这些规则控制着活动,而且,这些规则是事件和电能对象信息的函数。与上述物理设备、热量及电能对象,事件方法以及策略模块相通讯的控制器能随着事件而改变任何一种物理设备的状态。该控制器根据策略模块的规则决定是否改变物理设备的状态。
通过以下的详细说明,本发明之上述和其它目的,特征及优点将会变得更明显。后附的权利要求中说明了本发明之可信的新颖特征。而如果连同附图参照以下对示意性实施例的详细说明则能更好地理解本发明以及本发明的最佳用法、其它目的和优点,在附图中:
图1是本发明之电能管理结构所管理的计算机***组件的示意图;
图2是与本发明之电能管理结构所管理的计算机***组件相对应的计算机***电能对象的示意图;
图3以图示的方式说明了一电能封装对象的内容;
图4是本发明之与物理设备相关的对象的图解示意图;
图5以图示的方式说明了本发明之事件源对象的内容;
图6是本发明之上述物理设备的图解示意图;
图7以图示的方式说明了本发明之事件源对象的内容;
图8是本发明之上述物理设备的图解示意图;
图9以图示的方式说明了本发明之事件源对象的内容;
图10显示了实现策略模块  规则的一个实例时控制器所执行的逻辑步骤的表:
图11说明了本发明之另一最佳实施例的子***的关系模型;
图12A和图12B说明了包括对象及对象之间关系在内的电能管理框架(Power Management Framework);
图13图示出了包括对象及对象之间关系在内的电能管理状态子***(Power Management States Subsystem);以及
图14图示出了包括对象及其之间关系在内的电能管理事件子***(Power Management Event Subsystem)。
以下就膝上型计算机中所使用的最佳实施例来说明本发明的电能管理结构。但是,应该认识到,本发明并不局限于在膝上型计算机中的应用。本发明可在任何计算机***内运行并且可同样地应用于任何的计算机***。由于所述电能管理结构的机制以及控制该机制的策略规则都是独立的,所以本发明是一种可以包括在任何计算机***内的电能管理结构,从而使得上述机制、策略或者机制与策略两者都具有可移植性。
以下参照附图,特别是图1,这是由本发明之电能管理结构的一个最佳实施例所管理的计算机***组件的示意图。在这一简化的实例中,由电能管理结构所管理的膝上型计算机内有八个物理设备。图1显示了由所述电能管理结构所控制的CPU31、存储器32、显示器33、后照灯34(该后照灯为显示器提供后照光)、磁盘驱动器35、键盘36、风扇37、电池38等八个物理设备以及交流电转接器39。这些组件均包括膝上型计算机内由电源加以控制的元件。对每个物理设备来说都有一如图2所示的相关“设备对象”。
图2显示了八个物理设备对象,它们是:CPU对象40、存储器对象45、显示器对象50、后照灯对象55、磁盘驱动器对象60、键盘对象65、风扇对象70以及电池对象80。正如“对象”这一术语被计算机编程人员以及软件***工程师所广泛理解的那样,本说明书所使用的对象涉及到包括数据集合和可能的过程在内的软件模块。对象具有逻辑的状态和属性,与其它对象的关系以及可以随时间改变以上内容的动态能力。每个对象都是一个潜在活动的,具有独立时序的因素,并且一次至多执行一种活动。对象之间通过产生事件而相通讯。事件发生的特征是变化的并且可包括点对点的消息及非专门的请求。事件可以触发转换或新事件。而且,虽然所述的实施例用面向对象的程序设计去实现本发明,但是,在其它实施例中,也可以使用任何编程或***设计的方法去实现本发明的电能管理结构。
上述设备对象包括在电能封装100内。电能封装100提供了一种方法用于对所管理的特定类的对象进行逻辑分组。封装是一种通过将***分成若干封装并定义这些封装之间关系来表示***布局的简便方法。例如,包括在一个封装内的电能对象或者向该封装内的对象供应电能或者消耗来自一电源对象的电能。这样,就可通过嵌套所述电能封装内的电能对象来定义***的电能分配布局。电能封装100自身是一种“受控对象”(Managed  Object)。受控对象是一种由所述电能管理结构通过控制器100所控制的对象。控制器110是一处理器或者其它用于执行一个过程的逻辑机。
策略模块120是一个包含所述规则的对象,通过上述规则、电能管理结构分配并控制计算机***内的电源及功耗,同时维持并控制该计算机***内的热传递。策略模块120可直接加到控制器110内。控制器110通过确定封装100的结构及当前状态并计算由策略模块120的规则所限定的活动来进行所需的电能管理。此后,控制器110改变包含在计算机内物理设备的状态,以实现电能管理。
图3至图9以图示的方式说明了本发明中的软件对象的结构。实线框代表一个在面向对象的程序设计中被概念化了的逻辑对象。虚线框代表一实际对象的完全确定的实例。换句话说,虚线框代表用于实施本发明的实际的软件模块或者对象。每个逻辑对象都包含着代表该对象的多个属性的字段。逻辑对象仅仅是一种用于根据物理设备对象的类型来对所述属性进行分类的有用工具,但并不代表用软件实现的独立对象。用来表示逻辑对象的参照标号是该对象id(标识)字段中所示的号码。没有id字段的对象具有外部参照标号。
以下参照图3,它是一“封装对象”内容的示意图。“电能封装对象”100表示用于控制电能的对象“热量封装对象”则表示用于控制热传递的对象。受控对象1通过其标号“1”而被标记为电能管理结构。其类型被确定为“封装”的受控对象,这表示它为由电能管理所管理的一类对象提供了逻辑的容器。正如由“Contained in=O”所指示的那样,该受控对象不包含在任何其它的封装中。而且,正如所指出的那样,电能封装对象不会引发一个事件源。对象140表示包含在封装内的一类对象。在这种情况下,该封装被分类为一“电能”类型,所以它只包含有电能对象。此外,还显示了策略模块,所述类要受该策略模块的作用。对象150提供有关包含在电能封装内的物理装置是供电器还是耗电器的信息。在膝上型计算机的实例中,电池被说明为供电器,而CPU、存储器、显示器、后照灯、磁盘、键盘及风扇则全被说明为耗电器。
如果封装对象是一热量封装,那么,电池、CPU、存储器、显示器、后照灯、磁盘、键盘以及风扇都被说明为热源。但是,由于风扇能通过对流来传递热,所以它还被标记为散热器。
以下参照图4,它显示了逻辑对象的图解示意图,这些逻辑对象代表一耗电器的物理设备对象,该设备对象的可能状态以及所允许的转换。受控对象2由标号2所标识。对此例来说,受控对象是CPU。因此,该受控对象的类型是一“物理对象”(Physical Object),此物理对象包含在与电能封装100相对应的受控对象1中。所以,受控对象2是CPU电能对象。
对象180将上述CPU设备对象表示为电能对象。电能对象190说明了CPU的电能特性。CPU的允许状态被表示为物理状态3、4和5。电能对象190还通过适时地标识CPU在给定时刻所据有的状态3、4或5而表示出该CPU的当前状态。“说明”(Description)信息表示与受控对象2相应的物理设备。
对象190将物理对象180表示为一“耗电器”耗电器在运行时所使用的能量要多于它所产生的能量。电能对象的其它可能类型是“供电器”。供电器在运行时所产生的能量要多于它所消耗的能量。
如图4所示,对CPU来说,物理状态3处于100%的性能水平。维持这种物理状态所需的电能级是5W。CPU从物理状态3所能进行的唯一允许转换是物理转换6。因此,CPU仅能通过这种物理转换6离开其100%的性能状态。为这种物理转换所提供的信息包括转换将要开始的状态和转换将要结束的状态。在这种情况下,所说的转换是从物理状态3到物理状态4的转换。因此,在以满电能运行时,CPU的唯一允许状态改变是在物理状态4处减至一半性能。上述物理转换被表示为功耗为5W且需要1ms的执行时间。
物理状态4代表CPU正以一半性能运转的状态。当以这种状态运行时,CPU将耗电3W。自物理状态4的唯一允许转换被表示为物理转换7和物理转换8。正如起始状态4和结束状态3所表示的那样,物理转换7会使CPU从50%的性能上升至100%的性能。这种物理转换将在1.5ms的时间内需要5W的电能。
物理转换8使CPU从50%的性能转换至停止状态。这由起始状态4和结束状态5所表示。这种转换耗电3W且需要2ms的时间。
如果CPU当前是停止的,则它当前状态是物理状态号5。在这种状态下,CPU没有任何功耗。自这种状态的允许物理转换是物理转换9和10。物理转换9使CPU从停止状态进入到50%的性能状态。物理转换10使CPU从物理状态5转换至物理状态3或满电能。
“事件源对象”是一个使产生的物理事件与电能管理控制器相通讯的对象。“事件源对象”的一个实例是在将膝上型******交流电插座时或在该交流电插座内断电时向电能管理控制器110提供消息的对象。当按下按键时与键盘相关的事件源对象则是另一个实例。
以下参照图5。受控对象11是一个事件源对象。为这一对象列举出的属性有:其标识号为11;它是一个事件源;它包含在受控对象1内;以及这一对象所可能发生的事件(Generatable Event)是12、13、41及42。另一个可能的属性是策略模块的标记,该策略模块是上述事件源的函数。能够发生的事件12说明了CPU何时处于忙态。能够发生的事件13说明了CPU何时已空闲了一段特定的时间。这种能够发生的事件是一种“阈值”型事件,这是因为,当已超过所述阈值时,该事件就会发生。在本例中,可以看出,所述阈值是CPU空闲了250毫秒。能够发生的事件41是一个阈值型事件,它表示CPU以高负荷或高速运行了多于1.5秒的阈值时间。能够发生的事件42也是一个阈值型事件,它表示CPU以低负荷运行了大于半秒的阈值时间。
本技术的专家应该认识到,一种物理设备任何数量的属性都能由对象发送给电能管理控制器。受控对象提供给电能管理控制器的信息类型依赖于***设计者赋予计算机***的特定电能管理方法。体现上述电能管理方法的因素平衡及特征折衷均包括在由策略模块所提供的规则内。这些规则可设计成能预算物理设备之间的电能,从而为较佳的性能而折衷电能或者为增加物理设备的可靠性而牺牲电能。因此,在实现电能管理时,所述控制器会确定是否要根据策略模块的规则来改变物理设备的状态,所述规则是***内所有物理设备当前状态,业已出现的任一事件以及电能对象信息的函数,而所述电能对象信息则提供了所有可能状态的属性以及物理设备的转换状态。
受控的物理耗电器的第二个实例是磁盘驱动器,图6及图7说明了磁盘驱动器的对象。参照图5,已显示的磁盘驱动器对象60的属性有:受控对象的标识号是14;它是一个物理对象并且是一个包含在电能管理封装内的耗电器。对受控对象14来说所允许的两种物理状态是物理状态15及物理状态16。这些物理状态均可由上述具有图6所列出的属性的受控对象发送给电能管理控制器。所述属性包括:物理状态的标识号;物理状态的类型;从这种物理状态所能进行的转换以及这种物理设备在这种状态下的性能级别。磁盘驱动器具有“起转”的物理状态15,在这种状态下,所述磁盘驱动器以满电能运转并耗电8瓦。自这种起转状态只存在有一种物理转换即物理转换17。这种物理转换要花20秒的时间并耗电10瓦。“停转”物理转换使磁盘驱动器从起转状态转换至物理状态16的“停转”状态。在物理状态16中,磁盘驱动器没有功耗并且只能通过一种物理转换即物理转换18改变状态。上述物理转换使磁盘驱动器从停转状态转换至所述起转状态。磁盘驱动器为了起转要耗电12瓦达30秒钟。
事件对象以与上述CPU实例相类似的方式向所述控制器提供信号以表示在磁盘驱动器中已经出现了一个可以发送的事件。如图7所示,受控对象19向所述控制器提供三个能发生的事件(信号或消息)。这些事件是:能发生的事件20,它表示磁盘已经处于忙态;能发生的事件21,它表示所述磁盘具有未决的操作,以及能发生的事件22,它表示所述磁盘已经空闲了一段时间。这些能发生的事件都是阈值型事件,它们或者需要某些最少的时间,或者在能发生的事件21的情况下需要最少量的磁盘存取请求。当满足所述阈值时,上述事件源就会发送一个能发生的事件的信号。虽然把受控对象19说成是一个独立的对象,但是,所述磁盘驱动器对象通过维持能发生的事件因而能起一事件源对象的作用。例如,磁盘驱动器对象60具有充当磁盘驱动器耗电器对象和充当磁盘驱动器能发生的事件的事件源对象的双重功能。
以下参照图8,它图示出了电能对象65,此对象是用于物理耗电器的第三个实例即计算机键盘。键盘受控对象23具有物理状态25即100%的性能状态以及物理状态25即零性能的状态。唯一的允许转换即物理转换26和27说明了用于将键盘从完全运行转换至停止的特性。在图9中,受控对象28是一事件源对象,它具有两个能发生的事件。当按下按键时,能发生的事件29就会发出信号,而能发生的事件30则是一个阈值型事件源信号,它表示键盘的空闲时间。
能以同样的方式创建热量对象。一个热量对象总是和一个物理设备相对应。所述热量对象包括有关物理设备的每种可能状态的特征及要求的信息。而且,该热量对象总是传送物理设备的当前状态并对该状态提供一温度值。这种温度值可以是由温度传感器所测试出的实际温度或者是物理设备用瓦特为单位度量的热传导率。
图10显示了一个非常简化的上述类型的规则的实例,这些规则是由电能管理***的设计者编入策略模块120的。所显示的是一个具有三列的表。第一列是“事件”栏,它说明了十个可能的事件,这些事件能由一事件源对象检测到并被当作一个事件而传递。第一行和第二行包括同样的事件即“CPU正处于忙态”。策略模块120的规则要求所述控制器检查***状态的条件,具体地说是检查电池的载电量,如“条件”栏所示。由于存取了该电池的电能对象,因此上述控制器可以获得该电池的当前状态,以便设置***模式。所述控制器能分辨出电池的载电量是高还是低。根据这一结果,策略模块的规则请求特定的活动,如“活动”栏所示。如果电池的载电量低,则所述规则请求将CPU设置为状态号3。如果电池的载电量高,则上述规则请求将CPU设置为状态号4。在这一特定的实例中,所述控制器根据作为***状态(即***的条件)函数的策略模块规则在事件过程中决定是否改变CPU的当前状态以及将CPU变换至哪种状态。在本例中,如果电池的载电量低且CPU的当前状态是状态号3,则所述控制器会确定所需的活动是根本没有活动。但是,在该例中,如果电池载电量高,则会将CPU从状态号3切换至状态号4。
行号3和行号4显示了策略模块规则的实例,而所述策略模块的规则则仅为事件的函数。如果CPU空闲,则行号3中的规则请求将CPU设置为状态号5。在处理所述特定规则时,***的条件是不相关的。行号6和行号7提供了与上述磁盘驱动器有关的相似实例。
行号8例示了一种更为复杂的策略模块规则。该规则请求所述控制器根据该策略模块的规则确定是否改变物理设备的状态或***的状态,而上述策略模块的规则则是所述***状态、电能对象的属性以及事件的函数。就本例而言,事件源是磁盘空闲。实现所述规则的条件要求所述控制器考虑由磁盘驱动器电能对象所发送的该磁盘驱动器的当前状态和该磁盘驱动器的属性。上述磁盘驱动器的电能对象提供信息,该信息包括:磁盘驱动器停转的时间Tsd,进行停转这种状态转换的功耗Psd;使磁盘驱动器再度起转的时间Tsu;磁盘驱动器进行起转状态转换的功耗Psu以及磁盘驱动器处于旋转状态时的功耗Ps。因此,所述控制器可以进行“条件”运算,此后再根据预定的空闲时间确定是否要求将磁盘设置为状态号16的活动。通过这种方式,电能管理结构的设计者创建了一种规则,这种规则通过比照使磁盘停转然后再使磁盘起转以便在以后使用的总功耗来加权计算使磁盘驱动器处于当前旋转状态的功耗,从而使得所述控制器确定活动的最有效进程。
图10的实例示出了本发明之电能管理结构所具有的灵活性。所述电能对象,事件对象以及策略模块与所述控制器一道起作用,而与其中已实现有前述电能管理结构的特定类型硬件无关。依照本发明,所述电能管理结构的框架与功能提供了一种用于任何预定计算机平台上的电能管理***。因此,可以在膝上型计算机或者大规模多处理器***中使用本发明。但是,为了能在一种***内使用,应配置物理对象,以适应相应物理设备所具有的特定属性。而且,不是为特定***设计的广泛通用的策略模块在特定的***内可能不会有足够的性能。因此,应把策略模块设计成带有更多专用于硬件的规则。
以下参照图11,它显示了本发明之另一最佳实施例的子***关系模型。所述本发明之另一最佳实施例是面向对象的电能管理结构。电能管理框架(PMF)200是包含有对象与设备的子***,而所述对象和设备则包括电能管理的基本结构。电能管理事件子***(PME)300包含并处理包括能发生的事件在内的所有事件。PMF200与PME300之间的关系由连接它们的关系R51、R53以及R52所限定。(以下将说明这些关系)。电能管理状态子***(PMS)400包含限定上述电能管理之物理状态和物理转换的对象。PMS400通过两组关系与PMF200相连接,这两组关系是:R42、R43以及R44为一组,R40、R41以及R45为另一组。(以下将说明这些关系)。
为了简化对图12至图14的说明,均使用标准的格式说明所有的对象与所有的关系。在上述附图中,方框代表对象、菱形框代表两个对象之间的关系。以下列出用于对象(即图中方框)的标准格式:
      [#].[对象名]
             [对象属性等]
      说明:[对对象及其特征的说明]
在每个对象的说明中包括了对所述对象所提供的每种属性的说明。这些属性的格式如下:
      [#].X[关系名]
      说明:[对该属性的说明]
图中菱形框所示的对象之间的关系按标准格式表示如下:
     R[#].[关系]
      说明:[对该关系的简要说明]
应该注意,对象名前的标号和关系前的标号等于耐图中的参照标号。
附图中用来说明关系功能的符号来源于著名的Shlaer-Mellor标记。这种符号在本技术中是周知的。1988年出版的Shlaer和Mellor的著作《Object Oriented System Analysis:Modeling TheWorld In Data》以及他二人1992年出版的著作《Object LifeCycles:Modeling The World In States》说明了这种标记。本文所使用的符号与Shlaer-Mellor的用法略有不同,即没有使用箭头。而是通过将关系连接符的每一侧均标记一个“1”来表示一对二对一(one-two-one)的关系。来自各参加对象的关系名加在连线上并用括号括起来。Multiplicity(多样性)涉及到参与关系的一个对象的多种实例并用“M”表示。三种基本的多样性关系的形式是一对一、一对多和多对多。图中用“1”或“M”来表示这些关系。Conditionality(条件限制)表示在可能有一个对象的某些实例不参与关系的条件下一个对象的每个实例是否一定要参与所述关系。字母“C”用于表示图中的条件限制并放在有时为真的关系短语旁边。
参照图12至图14,以下列举的内容说明了包含在这些图中的对象以及就这些对象的活动而言上述电能管理框架所表现出的特定细节。在对象的目次之后设置了关系的目次用以说明对象之间的关系。图12A和图12B说明了电能管理框架,它包括对象及对象之间的关系。图13示出了包括对象及对象之间关系的电能管理状态子***。图14示出了包括对象及其关系的电能管理事件子***。
对MK.power_mgmt.framework子***对象及属性的说明
1.Managed_Object
                    (managed_object_id,
                     managed_object_type,
                     containing_envelope_id,
                     containing_envelope_type)
说明Managed_Object表示***中的某些物理部件。这些部件通常与诸如设备驱动器之类的其它更通用的***部件相连。就设备驱动器而言,并不例外的是,Managed_Object实际上是所述设备驱动器的一部分。但是,从概念的观点来看以及也许从接口实现的观点来看,可将其看作是独立的并且与所述设备驱动器无关。还可能存在着这样的情况,在这种情况下,所述部件仅是上述设驱动器输出的“实时”接口。常在***中存在有多个Managed_Object。***内Managed_Object的数量在某种程度上是由支持该***物理实现的支持程度所决定的。但是,***内主要的功能部件可能会实现受控对象而与该部件的支持无关。Managed_Object通常是被动的。它们向Power_Management_Policy提供自身的信息,但不做自身协议的任何事情。为此,Managed_Object会具有开始使机制与策略相分离的目标失效的Power_Management_Policy的某些职能。1. 1 Managed_Object.managed_object_id说明:该属性标识Managed_Object1. 2 Managed_Object.managed_object_type说明:描述由当前实例所代表的Managed_Object的类型。1. 3 Managed_Object.containing_envelope_id说明:它引用的是直接包含Managed_Object的Envelope。1. 4 Managed_Object.containing_envelope_type说明:它引用的是直接包含Managed_Object的Envelope的类型。
       2.Envelope
                  (managed_object_id,
                   managed_object_type,
                   envelope_id,
                   envelope_type,
                   controlling_policy_id)说明:Envelope是一种容器型对象。也就是说,它包含着其它Managed_Object。它也可以包含其它Envelope。可以使用Envelope来描述***内的电能及热量分布。也可以提供适当的工作区以使得在各个Managed_Object和Power_Management_Policy之间形成联系,这是因为,所述策略通常与事物的集合相关而不是与个别的事物相关。每个Managed_Object都包含在一个Envelope内,该Envelope包括其它的Envelope。有一个例外,那就是概念*Universal_Envelope*。这种Envelope是特殊的,因为它不包含在任何其它的Envelope内。它是最外层的Envelope并且总是存在的。2. 1 Envelope managed_object_id说明:这种属性使Managed_Object的实例与Envelope的实例联系起来。2. 2 Envelope managed_object_type说明:这种属性用于将Managed_Object的实例与Envelope的实例联系起来。2. 3 Envelope envelope_id说明:这是一种标识-Envelope的属性。它包括来自Managed_Object的两个字段。这两个字段共同限定了上述属性。2. 4 Envelope envelope_type说明:描述特定Envelope所代表的Envelope的类型。2. 5 Envelope.controlling_policy_id说明:它是对管理上述Envelope及其内容的Power_Management_Policy的一个引用。
    3.Event_Source
                  (managed_object_id,
                   managed_object_type,
                   event_source_id,
                   events_for,
                   events_for_type,
                   receiving_policy_id)说明:Event_Source是方法,通过这种方法可将(电能和热量管理方面的)有关***的事件类型传递给Power_Management_Policy。存在有几种不同类型的Event_Source,但是,不管其类型如何,一种Event_Source可以属于下述类别中的一个。Event_Source的第一个类别是那些与其它Managed_Object相关的Event_Source。在这一类别中,Event_Source为相关的Managed_Object向Power_Management_Policy发送事件。这种类型的Event_Source的一个实例是由电源所产生的断电信号。另一个实例是指示已经空闲了若干秒的磁盘设备驱动器。Event_Source的第二个类别是那些与另一种Managed_Object无关的Event_Source在这一类别内,Event_Source通常表示某种Power_Management_Policy可能关心的但不是由其它Managed_Object所体现出来的事件源。这种类型的Event_Source的一个实例是膝上型***罩盖上的开关,当打开或关闭所述罩盖时,该开关就会改变状态。Power_Management_Policy可以接收到这类事件。3. 1 Event_Source.managed_object_id说明:这一属性将Managed_Object的实例与Event_Source的实例联系起来。3. 2 Event_Source.managed_object_type说明:这一属性将Managed_Object的实例与Event_Source的实例联系起来。3. 3 Event_Source.event_source_id说明:它用于标识Event_Source的属性。它包括来自Managed_Object的两个字段。这两个字段共同限定了该属性。3. 4 Event_Source.event_for说明:这一所述Event_Source为其产生事件的Managed_Object。3. 5 Event_Source.event_for_type说明:涉及到这一Event_Source为其产生事件的Managed_Object。3. 6 Event_Source.receiving_policy_id说明:涉及到Event_Source将事件传递给的Power_Management_Policy。
4.Physical_Object
                  (managed_object_id,
                   managed_object_type,
                   physical_object_id,
                   physical_object_type,
                   current_physical_state_id,
                   current_physical_state_type,
                   physical_object_description)说明:Physical_Object表示了支持***实现的物理特征。它们用来模拟***的特征,这些特征从电能及热量管理的角度看是“值得关注的”因而不包括从其它角度来看也可能“值得关注的”所有特征。所说的其它特征可由***的其它部分(如设备驱动器)更好地来模拟。Physical_Object模拟两种基本特征:电能及热量。电能管理关注物理实体的电能特征及其热量特征。在某些***中,***的热量管理和***的电能管理一样重要(如果不是更重要的话)。从电能管理的观点来看,由于热量管理会影响到***的功耗,所以热量管理是重要的。如果***带有能够根据某些热量标准(如内部温度)而开关的风扇,那么,Power_Management_Policy必须要了解这一点,这是因为,将***的物理部件设置成特定的电能状态可能会要求打开一个或多个风扇,这些风扇又会增加***的功耗。Power_management_Policy也必须了解在某些***中开启***的某些部件不能超过电能容量但可以超过***的容量,从而能除去由***该部分所产生的最终多余的热量。4. 1 Physical_Object.managed_object_id说明:这一属性将Managed_Object的实例与Physical_Object的实例联系起来。4. 2 Physical_Object.managed_object_type说明:这一属性将Managed_Object的实例与Physical_Object的实例联系起来。4. 3 Physical_Object.physical_object_id说明:这是一种表示Physical_Object的属性。它包括来自Managed_Object的两个字段。这两个字段共同限定了该属性。4. 4 Physical_Object.physical_object_type说明:描述由特定Physical_Object所表示的Physical_Object的类型。4. 5 Physical_Object.current_physical_state_id说明:这一属性引用了Physical_State,该物理状态表示所述Physical_Object所处的当前状态。4. 6 Physical_Object.current_physical_state_type说明:这一属性引用了Physical_state,该物理状态表示所述Physical_Object所处的当前状态。4. 7 Physical_Object.physical_object_description说明:这一属性描述上述Physical_Object。它由Power_Managment_Policy所使用以获得有关Physical_Object的附加语义。见附属于此属性的注释。5. Power_Management_Policy
                      (policy_id)说明:这里无法包括Power_Management_Policy所做工作的精确细节,这是因为,不同的Power_Management_Policy具有不同的重要***参数并对电能和/或温度管理来说有不同的***运行目标。在功率管理子***中,Power_Management_Policy与其它对象相配合以实现其目标。5. 1 Power_Management_Policy.policy_id说明:这是表示Power_Management_Policy的属性。
6.Thermal_Envelope
                  (envelope_id,
                   envelope_type,
                   thermal_envelope_id)说明:Thermal_Envelope是一个包含有Thermal_Object的Envelope。Thermal_Envelope用于描述***的热结构。Thermal_Envelope必须包括至少一个Thermal_Sink和一个Thermal_Source。6. 1 Thermal_Envelope.envelope_id说明:这一属性将Envelope的实例与Thermal_Envelope的实例联系起来。6. 2 Thermal_Envelope.envelope_type说明:这一属性将Envelope的实例与Thermal_Envelope的实例联系起来。6. 3 Thermal_Envelope.thermal_envelope_id说明:这一属性唯一地标识了所述Thermal_Envelope。它包括两个字段,这两个字段的值取自属性Envelope.envelope_id和Envelope.envelope_type
7.Power_Envelope
                  (envelope_id,
                   envelope_type,
                   power_envelope_id)说明:Power_Envelope是一种包含Power_Object的封装。Power_Envelope用于描述***的电能结构。Power_Envelope必须包含至少一个Power_Supplier和一个Power_Consumer。7. 1 Power_Envelope.envelope_id说明:这一属性说明Power_Envelope所涉及的Envelope。7. 2 Power_Envelope.envelope_type说明:这一属性将封装Envelope的实例与电能Power_Envelope的实例联系起来。7. 3 Power_Envelope.Power_envelope_id说明:这一属性唯一地标识了所述Power_Envelope。它包括两个字段,这两个字段的值取自属性Envelope.envelope_id和Envelope.envelope_type。
    8.Power_Object

                    (physical_object_id,

                     physical_object_type,

                     power_object_id,

                     power_object_type,

                     thermal_object_id,

                     thermal_object_type,

                     policy_id,

                     current_power_state,  

                     containing_power_envelope)
说明:Power_Object表示***物理部件的电能方面。正是通过对Power_Object控制才使电能管理策略得以实现(即Power_Object是电能管理机制的一部分)。为了在如何限定Power_Management_Policy方面给该Power_Management_Policy以最大的自由(即该功Power_Management_Policy不必做出许多假设),必须要表示出***内的所有电能(供给的和消耗的)。这就可以防止Power_Management_Policy不易计及的电能在***内“出现”和“消失”。通常,各个Power_Object可以表示***被充分限定的物理子部件。但是,在大型的复杂***中,Power_Object可以表示***的某个逻辑部件。这种逻辑子部件可包括它自己的Power_Management_Policy,并且,正是与该子部件的策略的相互作用而使该子部件得以控制。这就要求能用Power_Object来体现Power_Management_Policy。8. 1 Power_Object.physical_object_id说明:这一属性将Physical_Object的实例与Power_Object的实例联系起来。8. 2 Power_Object.physical_object_type说明:这一属性将Physical_Object的实例与Power_Object的实例联系起来。8. 3 Power_Object.power_object_id说明:这一属性唯一地标识所述的Power_Object。它包括来自Physical_Object的两个属性:Physical_Object.physical_object_id以及Physical_Object.physical_object_type。8. 4 Power_Object.Power_Object_type说明:这一属性限定了由一特定实例所表示的Power_Object的类型。8. 5 Power_Object.thermal_object_id说明:这一属性引用了表示所述Power_Object热量方面的Thermal_Object。这一属性能形成各个Power_Object和Thermal_Object之间的联系,以便统一电能及热量管理。8. 6 Power_Object.thermal_Object_type说明:这一属性引用了表示所述Power_Object热量方面的Thermal_Object的类型。8. 7 Power_Object.policy_id说明:这一属性在出现时用于使Power_Menagement_Policy产生嵌套,从而使该属性由其它Power_Management_Policies所控制。正是通过这种代表性的Power_Object,一种Power_Management_Policy,会受到另一种Power_Management_Policy的影响。8. 8 Power_Object.current_power_state说明:这一属性涉及到表示所述Power_Object当前状态的power_state。8. 9 Power_Object.containing_power_envelope说明:这一属性引用了直接包含Power_Object的Power_Envelope。
9.Thermal_Object
                  (physical_object_id,
                   physical_object_type,
                   thermal_object_id,
                   thermal_object_type,
                   policy_id,
                   containing_thermal_envelope,
                   current_thermal_state)说明:Thermal_Object表示***物理部件的热量方面。正是通过对Thermal_Object的控制才得以实现热量管理策略(即该Thermal_Object是热量管理机制的一部分)。为了能在如何限定Power_Management_Policy方面给该Power_Management_Policy以最大的自由(即该Power_Management_Policy不必做出许多假设),必须要表示出***内所有的热量(产生的和散失的)。这就会防止Power_Management_Policy不易计及说明的热量在***内“出现”和“消失”。通常,各个Thermal_Object可以表示***的被充分限定了的物理子部件。但是,在大型的复杂***中,Thermal_Object可以表示***的某个逻辑部件。这种逻辑子部件可包括它自己的Power_Management_Policy,并且,正是与该Power_Management_Policy的相互作用而使该子部件得以控制。这就要求能用Thermal_Object来体现Power_Management_Policy。9. 1 Thermal_Object.physical_object_id说明:这一属性将(Physical_Object的实例与Thermal_Object的实例联系起来。9. 2 Thermal_Object.physical_object_type说明:这一属性将Physical_Object的实例与Thermal_Object的实例联系起来。9. 3 Thermal_Object.thermal_object_id说明:这一属性唯一地标识了Thermal_Object。它包括两个子段。这两个字段从Physical_Object.physical_object_id和Physical_Object.physical_object_type获得数值。9. 4 Thermal_Object.thermal_object_type说明:这一属性限定了所述Thermal_Object的类型。9. 5 Thermal_Object.policy_id说明:这一属性出现时表示所述Thermal_Object用于表示Power_Management_Policy。它使得Power_Management_Policy在Thermal_Envelope内得以嵌套并且通过把“内部”Power_Management_Policy当做一Thermal_Object而受“外部”Power_Management_Policy的控制。9. 6 Thermal_Object.containing_thermal_envelope说明:这一属性涉及到包含上述Thermal_Object的Thermal_Envelope。9. 7 Thermal_Object.current_thermal_State说明:这一属性引用了所述Thermal_State,该Thermal_State表示前述Thermal_Object的当前Thermal_State
 10.Power_Consumer
                  (power_object_id,
                   power_object_type,
                   power_consumer_id,
                   power_supplier_id)说明:Power_Consumers是表示***内功耗的Power_Object。通常,各个Power_Consumer代表某个已充分限定了的***物理子部件。但是,在使用嵌套Envelope以表示电能分布结构的***中,必须要使用Power_Consumer以表示内部Envelope之一内的Power_Supplier的功耗需要。10. 1 Power_Consumer.power_object_id说明:这一属性将Power_Object的实例与Power_Consumer的实例联系起来。10. 2 Power_Consumer.power_object_type说明:这一属性将Power_Object的实例与Power_Consumer的实例联系起来。10. 3 Power_Consumer.power_consumer_id说明:这一属性标识Power_Consumer。它包括来自Power_Object的两个字段。这两个字段共同限定了该属性。10. 4 Power_Consumer.power_supplier_id说明:这一属性出现时允许以适当的外层Power_Envelope表示内层Power_Envelope的Power_Supplier的能耗需要。这就能精确地表示出能量分布的结构。
11.Power_Supplier
                  (power_object_id,
                   power_object_type,
                   power_supplier_id,
                   time_vs_power_consumption)说明:Power_Supplier是表示***内电源的Power_Objects。在使用嵌套式封装(Envelopes)以表示电能布局的***内,将在外层封装(Envelope)内使用一Power_Consumer来表示该外层封装(Envelope)内的Power_Supplier的能耗。11. 1 Power_Supplier.power_object_id说明:这一属性将Power_Object的实例与Power_Supplier的实例联系起来。11. 2 Power_Supplier.power_object_type说明:这一属性将Power_Object的实例与Power_Supplier的实例联系起来。11. 3 Power_Supplier.power_Supplier_id说明:这一属性唯一地标识了Power_Supplier。它包括来自Power_Object的两个属性。这两个属性共同限定了上述属性。11. 4 Power_Supplier.time_vs_power_consumption说明:这一属性表示上述Power_Supplier在所示的电能水平上所能供电的时间长短。
12.Thermal_Source
                  (thermal_object_id,
                   thermal_object_type,
                   thermal_source_id,
                   thermal_sink_id)说明:Thermal_Source是表示在***内产生多余热量的Thermal_Object。通常,各个Thermal_Source代表已作充分限定了的某种***物理子部件。但是,在使用嵌套式Thermal_Envelope来表示热量结构的***中,可以使用Thermal_Source来表示在内层Thermal_Envelope之一中源自Thermal_Sink的热散失。12. 1 Thermal_Source.thermal-object-id说明:这一属性将Thermal_Object的实例与Thermal_Source的实例联系起来。12. 2 Thermal_Source.thermal_object_type说明:这一属性将Thermal_Object的实例与Thermal_Source的实例联系起来。12. 3 Thermal_Source.thermal_source_id说明:这一属性标识出所述的Thermal_Source。它来源于属性Thermal_Source.thermal_object_id以及Thermal_Source.thermal_object_type。12. 4 Thermal_Source.thermal_sink_id说明:这一属性使外层Thermal_Envelope内的Thermal_Source表示内层Thermal_Envelope的Thermal_Sink。这就限定了热量是从内层Thermal_Envelope流向外层Thermal_Envelope。
13.Thermal_Sink
                  (thermal_object_id,
                   thermal_object_type,
                   thermal_sink_id)说明:Thermal_Sinks是表示热量从***的一部分移至***另一部分的Thermal_Object。一个Thermal_Envelope必须包含至少一个Thermal_Sink。正是Thermal_Envelopes的内容描述了如何处理***内的热负荷。13. 1 Thermal_Sink.thermal_object_id说明:这一属性将Thermal_Object的实例与Thermal_Sink的实例联系起来。13. 2 Thermal_Sink.thermal_object_type说明:这一属性将Thermal_Object的实例与Thermal_Sink的实例联系起来。13. 3 Thermal_Sink.thermal_sink_id说明:这一属性唯一地标识所述的Thermal_Sink。它包括两个字段,这两个字段的值来自属性Thermal_Object.thermal_object-id和Thermal_Object.thermal_object_type。
14.Physical_Object_Dependency
                   (dependent_upon_object_id,
dependent_upon_object_type,
                   dependent_object_id,
                   dependent_object_type)说明:这一对象用于形式化两个Physical_Object之间的关系,在所述两个物理对象中,其中的一个从属于另外一个。所述关系可以是这样一种关系:一个从属Physical_Object可以从属于一个以上的其它Physical_Object。一个从属于其它物理对象的Physical_Object自身也可以被第三个Physical_Object所从属。当第一个Physical_Object从属于其它Physical_Object以便处于某种特定的状态时,为了使该第一Physical_Object处于某种特定的状态,一个Physical_Object可以从属于其它的Physical_Object。一个实例就是CPU和存储器。CPU总是从属于存储器的状态(也就是说,使CPU处于高电能状态并使存储器关闭是很没道理的)。14. 1 Physical_Object_Dependency.dependent_upon_object_id说明:这一属性涉及到上述Physical_Object所从属的Physical_Object。14. 2 Physical_Object_Dependency.dependent_upon_object_type说明:这一属性涉及到其它Physical_Object所从属的Physical_Object。14. 3 Physical_Object_Dependency.dependent_object_id说明:这一属性涉及到从属于其它Physical_Object的Physical_Object,而所述其它Physical_Object则是由上述Physical_Object_Dependency所标识的。14. 4 Physical_Object_Dependency.dependent_object_type说明:这一属性涉及到从属于其它Physical_Object的Physical_Object,而所述其它Physical_Object则是由上述Physical_Object_Dependency所标识的。对mk.power_mgmt.framework子***中的关系的说明R1.Managed_Object是一种超级型Event_source
Event_Source是一种子型Managed_Object
Managed_Object是一种超级型Physical_Object
Physical_Object是一种子型Managed_Object
Managed_Object是一种超级型Envelope
Envelope是一种子型Managed_ObjectR10.Power_Management_Policy(1)控制封装Envelope(MC)
Envelope(MC)由Power_Management_Policy(1)所控制R11.Managed_Object(MC)由Power_Management_Policy
(1)所控制
Power_Management_Policy(1)控制着Managed_Object(MC)R12.Power_Management_Policy(1C)由Power_Object(1C)所表示
Power_Object(1C)表示Power_Management_Policy(1C)R13.Thermal_Object(1C)表示Power_Management_Policy(1C)
Power_Management_Policy(1C)由Thermal_Object所表示R14.Power_Object(M)包含在Power_Envelope(1)内
Power_Envelope(1)包含Power_Object(M)R15.Thermal_Object(M)包含在Thermal_Envelope(1)内
Thermal_Envelope(1)包含Thermal_Object(M)R2.Envelope是一种超级型Thermal_EnvelopeThermal_Envelope是一种子型Envelope。Envelope(封装)是一种超级型Power_EnvelopePower_Envelope(电能封装)是一种子型Envelope。R20.Event_Source(MC)为Managed_Object(1C)产生事件
Managed_Object(1C)带有由Event_Source(MC)所产生的事件R21.Event_Source(MC)向Power_Management_Policy(1)发送事件
Power_Management_Policy(1)从事件Event_Source(MC)接收事件R22.Physical_Object(MC)具有从属的Physical_Object(MC)
Physical_Object(MC)从属于Physical_Object(MC)R3.Physical_Object是一种超级型电能对象Power_Object
Power_Object是一种子型Physical_Object
Physical_Object是一种超级型Thermal_Object
Thermal_Object是一种子型Physical_ObjectR4.Power_Object是一种超级型Power_Consumer
Power_Consumer是一种子型Power_Object
Power_Object是一种超级型Power_Supplier
Power_Supplier是一种子型Power_ObjectR40.Physical_state(M)是Physical_Object的一种状态Physical_Object(1)包含Physical_state(M)R41.Power_State(M)是Physical_Object的一种状态Power_Object(1)包含Power_State(M)R42.Thermal_Object(1)包含Thermal_State(M)Thermal_State(M)是Thermal_Object(1)的一种状态R43.Physical_Object(1)当前处于Physical_state(1)
Physical_state(1)表示Physical_Object(1)的当前状态R44.Power_Object(1)当前处于Power_State(1)
Power_State(1)表示Power_Object(1)的当前状态R45.Thermal_State(1)表示Thermal_Object(1)的当前状
Thermal_Object(1)当前处于Thermal_State(1)R5.Thermal_Object是一种超级型Thermal_Sink
Thermal_Sink是一种子型Thermal_Object
Thermal_Object是一种超级型Thermal_Source
Thermal_Source是一种子型Thermal_ObjectR51 Event_Source(1)可以产生事件,该事件由Generatable_Event(M)所描述
Generatable_Event(M)描述可由Event_Source(1)产生的事件R52.Event(MC)由Event_Source(1)所产生
Event_Source(1)产生Event(MC)R53.Power_Management_Policy(1)接收Event(MC)Event(MC)被发送至Power_Management_Policy(1)R6.Power_Object(1)表示Thermal_Object(1)的电能方面
Thermal_Object(1)表示Power_Object(1)的热量方面R7.Power_Consumer(1C)在封装的内部由Power_Supplier(1)来表示
Power_Supplier(1)在封装的外部由Power_Consumer(1C)来表示R8.Thermal_Sink(1)在封装的外部由Thermal_Source(1C)来表示
Thermal_Source(1C)在封装的内部由Thermal_Sink(1)来表示R9.Managed_Object(MC)由Envelope(1)所包含
Envelope(1)包含Managed_Object(MC)对mk.power_mgmt.events子***的对象及属性的说明
101.Generatable_Event
                  (generatable_event_id,
                   generatable_event_type,
                   event_source_id,
                   masked)说明:此对象描述可由一Event_Source产生的特定类型Event。一个Event_Source可能产生多种不同的Event。每种类型的Event都可由一唯一的Generatable_Event所描述,Generatable_Event还控制它所描述的Event的产生。101.1 Generatable_Event.generatable_event_id说明:这一属性唯一地标识Generatable_Event实例。每个Generatable_Event均具有自己唯一的标识(ID)。101.2 Generatable_Event.generatable_event_type说明:这一属性标识Generatable_Event的类型(即可以产生什么样类型的Event)。一种Generatable_Event只能产生一种类型的Event。101.3 Generatable_Event.event_source_id说明:这一属性标识所述Event_Source,该Event_Source产生由所述Generatable_Event来描述的Event。101.4 Generatable_Event.masked说明:这一属性指示Generatable_Event是否能产生事件。如果屏敝掉Generatable_Event,则它就不能产生事件。如果没有屏敝掉,则它只能产生事件。
102.Event
                (event_id,
                 event_type,
                 generatable_event_id,
                 generatable_event_type,
                 event_source_id,
                 policy_id)说明:此对象负责将一异步事件传递给Power_Management_Policy。所述Event带有关于事件类型的信息以及Power_Management_Policy解释上述Event所需要的任何附加信息。102.1 Event.event_id说明:这一属性唯一地标识一个Event。102.2 Event.event_type说明:这一属性标识所述Event的类型。这一属性的值来源于属性Event.generatable_event_type(即所述Event的类型必须与Generatable_Event的类型有关)。102.3 Event.generatable_event_id说明:这一属性涉及到上述Generatable_Event,而该Generatable_Event则负责描述所述Event。102.4 Event.generatable_event_type说明:这一属性涉及到描述上述Event的Generatable_Event的类型。102.5 Event.event_source_id说明:这一属性标识所述Event_Source,该Event_Source根据属于它的一个Generatable_Event产生了所述Event。102.6 Event.policy_id说明:这一属性涉及到要接收所述Event的Power_Management_Policy。103.Simple_Generatable_Event
                (generatable_event_id,
                 generatable_event_type,
                 simple_generatable_event_id)说明:Simple_Generatable_Event是一种描述如何产生Simple_Event的Generatable_Event。Simple_Generatable_Event通常描述***内某种物理传感器。正是Simple_Generatable_Event向***描述了所述传感器,因此,其值可以返回至Power_Management_Policy。103.1 Simple_Generatable_Event.generatable_event_id说明:这一属性形成Generatable_Event的实例与Simple_Generatable_Event的实例之间的联系。103.2 Simple_Generatable_Event.generatable_event_type说明:这一属性形成Generatable_Event的实例与Simple_Generatable_Event的实例之间的联系。103.3 Simple_Generatable_Event.simple_generatable_event_id说明:这一属性唯一地标识了一个Simple_Generatable_Event。它来源于属性Simple_Generatable_Event.generatable_event_id和Simple_Generatable_Event..generatable_event_type。104.Notification_Generatable_Event
                  (generatable_event_id,
                   generatable_event_type,说明:Notification_Generatable_Event是一种负责描述Notification_Event的Generatable_Event。Notification_Event通知Power_Management_Policy有某种事件发生,这种事件需要将一组相当复杂的数据发送回该Power_Management_Policy。104.1 Notification_Generatable_Event.generatable_event_id说明:这一属性形成Generatable_Event的实例与Notification_Generatable_Event的实例之间的联系。104.2 Notification_Generatable_Event.generatable_event_type说明:这一属性形成Generatable_Event的实例与Notification_Generatable_Event的实例之间的联系。104.3 Notification_Generatable_Event.notification_generatable_event_id说明:这一属性唯一地标识Notification_Generatable_Event的实例。它来源于属性Notification_Generatable_Event.generatable_event_id以及Notification_Generatable_Event.generatable_event_type。104.4 Notification_Generatable_Event.notification_type说明:这一属性描述所述Notification_Generatable_Event的类型。这一属性还有一个Notification_Event传递给它时描述提供给Power_Management_Policy的数据。105.Threshold_Generatable_Event
                  (generatable_event_id,
                   generatable_event_type,说明:Threshold_Generatable_Event是一种描述Threshold_Event如何产生的Generatable_Event。Threshold_Event,通常描述Power_Management_Policy所关心的业已改变了的其它对象的属性。通常,Power_Management_Policy并不关心所有的变化而只是关心其中的某些变化。当所述变化正好是Power_Management_Policy所关心的时,Power_Management_Policy就要调整所通知的Threshold_Generatable_Event的参数。105.1 Threshold_Generatable_Event.generatable_event_id说明:这一属性将Generatable_Event的实例与Threshold_Generatable_Evet的实例联系起来。105.2 Threshold_Generatable_Event.generatable_event_type说明:这一属性形成Generatable_Event的实例与Threshold_Generatable_Event的实例之间的联系。105.3 Threshold_Generatable_Event.threshold_generatable_event_id说明:这一属性唯一标识上述Threshold_Generatable_Event。它来源于属性Threshold_Generatable_Event.generatable_event_id和Threshold_Generatable_Event.generatable_event_id105.4 Threshold_Generatable_Event.threshold_value说明:这一属性限定了所述值,当以由属性Threshold_Generatable_Event.threshold_direction所描述的形式超过该值时会使Event_Source产生一个事件105.5 Threshold_Generatable_Event.threshold_direction说明:这一属性表示能触发发送一事件的值的变化方向。
106.Simple_Event
                  (event_id,
                   event_type,
                   simple_event_id,
                   generated_by,
                   simple_event_data)说明:Simple_Event负责将一异步事件传递给Power_Management_Policy。Simpe_Event带有很有限的关于正被说明的事件(Event)的信息。106.1 Simple_Event.event_id说明:这一属性提供了事件(Event)的实例与Simple_Event的实例之间的联系。106.2 Simple_Event.event_type说明:这一属性提供了事件(Event)的实例与Simple_Event的实例之间的联系。106.3 Simple_Event.simple_event_id说明:这一属性唯一地标识了所述Simple_Event。它来源于属性Simple_Event.event_id和Simple_Event.event_type106.4 Simple_Event.generated_by说明:这一属性涉及到上述负责描述所述(Simple_Event)的Simple_Generatabl_Event。106.5 Simple_Event.simple_event_data说明:这一属性描述将要通过上述Simple_Event传递给Power_Management_Policy的数据。它通常表示***内某种传感器的当前状态。
107.Notification_Event
                   (event_id,
                   event_type,
                   notification_event_id,
                   generated_by,
                   notification_event_data)说明:这一对象负责将一个异步“标志”事件传递给Power_Management_Policy。一个Notification_Event带有关于所述Event的信息,具体地说,是带有描述为什么要发送Event的信息。通常建立Notification_Event以通知Power_Management_Policy发生了一个该Power_Management_Polic应该知道的、无法由其它两种Event类型中的任意一个所满足的事件。通常,Notification_Event所发送的信息要比用其它事件(Event)类型所表达的信息更复杂。107.1 Notification_Event.event_id说明:这一属性提供了事件(Event)的实例与Notification_Event的实例之间的联系。107.2 Notification_Event.event_type说明:这一属性提供了事件(Event)的实例与Notification_Event的实例之间的联系。107.3 Notification_Event.notification_event_id说明:这一属性唯一标识所述Notification_Event。它来源于属性Notification_Event.event_id和Notification_Event.event_type。107.4 Notification_Event.generated_by说明:这一属性涉及到描述所述Notification_Event的Notification_Generatable_Event。107.5 Notification_Event.notification_event_data说明:这一属性描述所述Notification_Event所传递的数据。该数据是由属性Notification_Generatable_Event.notification_type来描述的。
108.Threshold_Event
                  (event_id,
                   event_type,
                   threshold_event_id,
                   generated_by,
                   crossing_direction,
                   compared_value)说明:Threshold_Event对象负责将一异步事件传递给Power_Management_Policy该Threshold_Event通知Power_Management_Policy某种阈值水平已被超过。它包含着有关阈值(即能引发所述事件的值)的信息,Power_Management_Policy在确定活动的进程时要使用该信息。108.1 Threshold_Event.event_id说明:这一属性将事件(Event)的实例与Threshold_Event的实例联系起来。108.2 Threshold_Event.event_type说明:这一属性将事件(Event)的实例与Threshold_Event的实例联系起来。108.3 Threshold_Event.Threshold_event_id说明:这一属性唯一标识所述Threshold_Event。它来源于属性Threshold_Event.event_id以及Threshold_Event.event_type。108.4 Threshold_Event.generated_by说明:这一属性涉及到负责描述所述Threshold_Event的Threshold_Generatable_Event。108.5 Threshold_Event.crossing_direction说明:这一属性指示将要触发事件(Event)发送的数值的变化方向。108.6 Threshold_Event.compared_value说明:这一属性所包含的数据将被比较以便确定是否超过了某阈值。对mk.power_mgmt.event子***关系的说明R101Generatable_Event是一种超级型(supertype)Simple_Generatable_Event
Simple_Generatable_Event是一种子型(subtype)Generatable_Event
Generatable_Event是一种超级型Notification_Generatable_Event
Notification_Generatable_Event是种子型Generatable_Event。
Generatable_Event是一种超级型Threshold_Generatable_Event。
Threshold_Generatable_Event是一种子型Generatable_Event。R102Event是一种超级型Simple_Event
Simple_Event是一种子型Event
Event是一种超级型Notification_Event
Notification_Event(标志型事件)是一种子型Event
Event是一种超级型Threshold_Event
Threshold_Event是一种子型EventR104.Generatable_Event(1)产生一Event(MC)
event(MC)产生于Generatable_Event(1)R105.Simple_Event(MC)产生于Simple_Generatable_Event(1)
Simple_Generatable_Event(1)产生-Simple_Event(M)R106.Notification_Event(MC)产生于Notification_Generatable_Event(1)
Notification_Generatable_Event(1)产生Notification_Event(MC)R107.Threshold_Event(MC)产生于Threshold_Generatable_Evet(1)。
Threshold_Generatable_Event(1)产生阈值型Threshold_Event(MC)R51 Event_Source(1)产生由Generatable_Event(M)所描述的事件
Generatable_Event(M)描述由Event_Source(1)产生的事件R52 Event(MC)由Event_Source(1)所产生
Event_Source(1)产生Event(MC)R53.Power_Management_Policy(1)接收Event(MC)
Event(MC)被发送给Power_Management_Policy(1)对mk.power_mgmt.states子***对象与属性的说明
201.Physical_State
                   (physical_state_id,
                   physical_state_type,
                   physical_object_id,
                   physical_object_type,
                   status,
                   reliability,
                   performance)说明:Physical_Object具有多种Physical_state,Physical_state用以表示Power_Management_Policy所关心的Physical_Object的各种特征。每个Physical_Object都具有至少一种Physical_state。(至少从电能或热量管理的角度来看)状态不能改变的Simple_Physical_Object被界定为只具有一种Physical_state。每种Physical_state均具有描述其状态的多种属性。一种状态的特定语义内容仅由其属性来定义。例如,通过一种状态与其它状态的正常关系无法推断有关该状态的任何事情。例如,对具有八种Physical_state的给定Physical_Object来说,无法断定Physical_state5比Physical_state4功耗是多还是少。201.1 Physical_State.physical_state_id说明:这一属性标识特定的Physical_State201.2 Physical_State.physical_state_type说明:这一属性描述由当前实例所表示的Physical_State的类型。20l.3 Physical_State.physical_object_id说明:这一属性涉及到该状态所属的Physical_Object。所述Physical_State必须是与Physical_Object相容的类型(也就是说,Thermal_State不能去说明Power_Object)。201.4 Physical_State.physical_object_type说明:这一属性涉及到该状态所属的Physical_Object的类型。所述Physical_State必须是与Physical_Object相容的类型(也就是说,Thermal_State不能去说明电能对Power_Object)。201.5 Physical_State.status说明:这一属性描述所述Physical_State的状态。它指示应如何处理该Physical_State其它属性的内容。当Physical_State.status不活动时,就意味着该Physical_State不是它所属Physical_Object的当前状态。当Physical_State.status活动时,就意味着该Physical_State表示它所属的Physical_Object的当前状态。当Physical_State.status是transition_from时,就意味着该Physical_State曾是所述物理对象的当前状态,但目前正在进行向其它状态的转换。一旦其它Physical_State被激活,则本状态就不再活动。201.6 Physical_State.reliability说明:这一属性用于描述处于所述Physical_State下的Physical_Object的可靠性特征。利用这一属性可使Power_Management_Policy决定是否应该为***可靠性的缘故要将一Physical_Object设置成某种Physical_State。范围:该属性如同简单的度量概念Mean_Time_Between_Failures(MTBF,平均断电时间)那样简单。它也可以用于对所述Physical_State下的Physical_Object之可靠性的某种更为复杂的说明中。201.7 Physical_State.performance说明:这一属性用于描述Physical_State的性能特征。利用这一属性能使Power_Management_Policy确定能否保证某一特定状态下的消耗量。这就能使Power_Management_Policy以合理且通用的方式计算相对电能或热量损失的性能。
  202.Physical_Transition

                    (starting_state_id,

                     starting_state_type,

                     ending_state_id,

                     ending_state_type,

                     physical_tranition_id,

                     physical_transition_type,

                     reliability,

                     transition_time,

                     status)
说明:Physical_Transition是一种描述一Physical_Object如何从一种Physical_State转换成另一种Physical_State的通用方式。由于所述转换通常都不是零消耗的(即转换具有开始状态和结束状态相区别的特性)并且都不是花费零时间,所以,Physical_Transition与描述上述转换所必需的属性有关,这样以来,Power_Management_Policy,不必作出对可能与特定转换相关的消耗的假设。Physical_Transition仅是单向的。也就是说,Physical_Transition描述从开始状态到结束状态的单向弧。这一点是肯定的,因为,从一种状态(状态A)转到另一种状态(状态B)与从状态B转到状态A相比总是有不同的消耗。还存在着这样的情况,其中能从状态A转到状态B,但没有直接的途径从状态B转回状态A(也就是说,一个Physical_Object可能必须从状态B转到状态C然后再转到状态A)。Physical_Object必须具有所创建的Physical_Transitions的完整集合,该集合用来描述所述Physical_Object中每种状态的每一种转换。202.1 Physical_Transition.starting_state_id说明:这一属性涉及到所述Physical_State,所述Physical_Transition始于该Physical_State。上述Physical_Transition的类型必须与Physical_Object的类型相匹配。也就是说,如果起始的Physical_State是一Power_State,那么,该Physical_Transition必须是一Power_Transition。202.2 Physical_Transition.starting_state_type说明:这一属性涉及到所述Physical_State。所述Physical_Transition始于该Physical_State。上述Physical_Transition的类型必须与Physical_Object的类型相匹配。也就是说,如果起始的Physical_State是一Power_State,那么,该Physical_Transition必须是一Power_Transition。202.3 Physical_Transition.ending_state_id说明:这一属性涉及所述Physical_State,Physical_Transition将终止于该Physical_State。所述Physical_Transition的类型必须与最后的Physical_State相匹配,也就是说,如果最后的Physical_State是一Power_State,那么,该Physical_Transition必须是一Power_Transition。202.4 Physical_Transition.ending_state_type说明:这一属性涉及Physical_State的类型,所述Physical_Transition将终止于这种类型的Physical_State。所述的Physical_Transition的类型必须与最后的Physical_State的类型相匹配。也就是说,如果最后的Physical_State是一Power_State,那么,该Physical_Transition必须是一Power_Transition。202.5 Physical_Transition.physical_transition_id说明:这一属性限定了一Physical_Transition的特定实例。202.6 Physical_Transition.physical_transition_type说明:这一属性限定了上述Physical_Transition的类型。202.7 Physical_Transition.reliability说明:这一属性用于描述一Physical_Object从一种Physical_State转换到另一种Physical_State时的可靠性特征。利用这一属性可使Power_Management_Policy决定是否应该为***可靠性的缘故作从一种Physical_State到另一种Physical_State的转换。存在有多种这样的物理设备,即这些物理设备在处于多种状态中的任何一种时都是很可靠的,但是,如果经常在这些状态之间转换,那么,这些物理设备就会过早地失效。这可以把附加的信息传给了一种策略,这种策略可以利用该信息来确定每隔多长时间将对象从一种状态转换到另一种状态。202.8 Physical_Transition.transition_time说明:这一属性用于描述所述Physical_Object从起始状态转换至结束状态所花费的时间。在许多物理设备中,所述时间是微不足道的。这可以使某一策略去确定预期的工作负荷是否能保证从一种状态到另一种状态的转换。202.9 Physical_Transition.status说明:这一属性指示所述Physical_Transition的状态。当Physical_Transition.status的值为不活动的时,这时,该Physical_Transition就不能用于在Physical_State之间的转换。而当Physical_Transition.status的值为活动的时,则该Physical_Transition当前正被用于一种Physical_State与另一种Physical_State之间的转换。一旦已经进行了所述转换,则Physical_Transition.status的值又被置回为不活动的。
  203.Power State

                    (physical_state_id,

                     physical_state_type,

                     power_state_id,

                     thermal_state_id,

                     power_object_id,

                     power_object_type,

                     power_value,

                     status)
说明:Power_State用于量化Power_Object的功耗(或供给)。一个Power_Object具有必需的多种Power_State以表示该Power_Object中可能产生的所有功耗(供给)水平。Power_State还涉及到Thermal_State。因此,如果需要特定Power_State下的Power_Object的温度特性,则Power_Management_Policy可以很快地引用该信息。203.1 Power_State.physical_state_id说明:这一属性将Physical_State的实例与Power_State的实例联系起来。203.2 Power_State.physical_state_type说明:这一属性将Physical_State的实例与Power_State的实例联系起来。203.3 Power_State.power_state_id说明:这一属性标识Power_State。它包括来自Power_State的两个字段。这两个字段共同限定了该属性的值。203.4 Power_State.thermal_state_id说明:这一属性是所述Thermal_State一个引用,它表示处于一Power_State下的Power_Object的热量属性。(正如该Power_Object的相关Thermal_Object所限定的那样)不同的Power_State会使所述Power_Object处于不同的Thermal_State。从一种Power_State到另一种Power_State的变化可能也可能不会进入新的Thermal_State。这一引用允许在Power_State和Thermal_State之间存在一种简单的相应性。203.5 Power_State.power_object_id说明:这一属性涉及到该Power_State所属的Power_Object。203.6 Power_State.power_object_type说明:这一属性涉及到该Power_State所属的Power_Object的类型。203.7 Power_State.power_value说明:这一属性用于描述处于该Power_State下的Power_Object的功耗。它可以是表示平均(期望)功耗的简单的事先算好的值。它表示最小、最大和平均功耗。所述属性可以象一个预算值的函数一样复杂,在该函数中Power_Object根据它所知道的某些因素(如当前的工作或所要做的预期工作,或者通过查寻基本硬件设备而得知这些因素来计算所述功耗。203.8 Power_State.status说明:这一属性描述一Power_State实例的状态。
  204.Theral_State

                    (physical_state_id,

                     physical_state_type,

                     thermal_state_id,

                     thermal_object_id,

                     thermal_object_type,

                     status,

                     thermal_value,

                     time_at_thermal_level)
说明:Thermal_State用于量化Thermal_Object的热量特征。一个Thermal_Object具有所需数量的Thermal_State以表示该Thermal_Object内所能产生的所有热量级别。Thermal_State还涉及到Power_State,因此,如果需要特定Thermal_State下的Thermal_Object的电能特征,那么,Power_Management_Policy可以很快地引用该信息。204.1 Thermal_State.physical_state_id说明:这一属性提供了一Physical_State的实例与一Thermal_State的实例之间的联系。204.2 Thermal_State.physical_state_type说明:这一属性提供了一Physical_State的实例与一Thermal_State的实例之间的联系。204.3 Thermal_State.thermal_state_id说明:这一属性标识所述Thermal_State。它来源于属性Thermal_State.physical_state_id和Thermal_State.physical_state_type。204.4 Thermal_State.thermal_object_id说明:这一属性涉及到该Thermal_State所属的Thermal_Object。204.5 Thermal_State.thermal_object_type说明:这一属性涉及到Thermal_Object的类型,而所述Thermal_State则是该Thermal_Object的一部分。204.6 Thermal_State.status说明:这一属性描述特定的Thermal_State的状态。204.7 Thermal_State.thermal_value说明:这一属性描述所述热负荷,所述Thermal_Object在处于该Thermal_State时将上述热负荷加载到***上。204.8 Thermal_State.time_at_thermal_level说明:这一属性描述所述Thermal_Object停留在Thermal_State的时间。205.Power_Transition
                  (physical_transition_id,
                   pnysical_transition_type,
                   starting_power_state,
                   ending_power_state,
                   power_transition_id,
                   power_value)说明:Power_Transition描述从一种Power_State到另一种Power_State的转换的属性。除了由Physical_Transition描述的属性以外,Power_Transition还描述Power_Object从一种Power_State转换到另一种Power_State时的需用电能。205.1 Power_Transition.physical_transition_id说明:这一属性将Physical_Transition的实例与Power_Transition的实例联系起来。205.2 Power_Transition.physical_transition_type说明:这一属性将Physical_Transition的实例与Power_Transition的实例联系起来。205.3 Power_Transition.starting_power_state说明:这一属性涉及到该Power_Transition所起始的Power_State。205.4 Power_Transition.ending_power_state说明:这一属性涉及到该Power_Transition终止的Power_State。205.5 Power_Transition.power_transition_id说明:这一属性唯一地标识所述Power_Transition它包括两个其值接收自Physical_Transition的属性。205.6 Power_Transition.power_value说明:这一属性描述进行从一种Power_State到另一种Power_State转换的需用电能。该属性所描述的值在整个转换期间一直起作用(即在进行这种转换所花费的时间内一直起作用)。
206.Thermal_Transition
                  (physical_transition_id,
                   physical_transition_type,
                   starting_thermal_state,
                   ending_thermal_state,
                   thermal_transition_id,
                   thermal_value)说明:Thermal_Transition描述从一种Thermal_State到另一种Thermal_State的转换的属性。除了由Physical_Transition描述的特性以外,Thermal_Transition还描述Thermal_Object从一种Thermal_State转换到另一种Thermal_State时的需用温度。206.1 Thermal_Transition.physical_transition_id说明:这一属性将Physical_Transition的实例与Thermal_Transition的实例联系起来。206.2 Thermal_Transition.physical_transition_type说明:这一属性将Physical_Transition的实例与Thermal_Transition的实例联系起来。206.3 Thermal_Transition.starting_thermal_state说明:这一属性涉及到该Thermal_Transition所起始的Thermal_State。206.4 Thermal_Transition.ending_thermal_state说明:这一属性涉及该Thermal_Transition将要终止的Thermal_State。206.5 Thermal_Transition.thermal_transition_id说明:这一属性标识Thermal_Transition。它来源于属性Thermal_Transition.physical_transition_id和Thermal_Transition.physical_transition_type。206.6 Thermal_Transition.thermal_value说明:这一属性描述热负荷,所述Thermal_Object在进行Thermal_Transition时将上述热负荷加载到***的其余部分。
207.Physical_State_Dependency
                  (dependent_upon_state_id,
                   dependent_upon_state_type,
                   dependent_state_id,
                   dependent_state_type)说明:这一对象用于形式化两个Physical_State之间的关系,在上述两个Physical_State中,一个Physical_State从属于另外一个Physical_State。所述Physical_State必须属于不同的Physical_Object。所述关系则是这样一种关系:一个从属的Physical_State可以从属于(不同Physical_Object中的)一个以上的其它Physical_State。从属于另一个Physical_State的Physical_State本身又可以被一第三Physical_State所从属。207.1 Physical_State_Dependency.dependent_upon_state_id说明:这一属性涉及到所述Physical_State所从属的Physical_State。207.2 Physical_State_Dependency.dependent_upon_state_type说明:这一属性涉及到上述其它Physical_State所从属的Physical_State。207.3 Physical_State_Dependency.dependent_state_id说明:这一属性涉及到从属于其它Physical_State的Physical_State,所述其它Physical_State则是由该Physical_State_Dependency来标识的。207.4 Physical_State_Dependency.dependent_State_type说明:这一属性涉及到从属于其它Physical_State的Physical_State,所述其它Physical_State则是由该Physical_State_Dependency来标识的。对mk.power_mgmt.state子***关系的说明R201.Physical_State(MC)表示来自Physical_State(MC)的转换
Physical_State(MC)表示向Physical_State(MC)的转换R202.Power_State(MC)表示来自Power_State(MC)的转换
Power_State(MC)表示向Power_State(MC)的转换R203.Physical_State是一种超级型Power_State
Power_State是一种子型Physical_State
Physical_State是一种超级型Thermal_State
Thermal_State是一种子型Physical_StateR204.Physical_Transition是一种超级型Thermal_Transition
Thermal_Transition是一种子型Physical_Transition
Physical_Transition是一种超级型Power_Transition
Power_Transition是一种子型Physical_TransitionR205.Thermal_State(1)表示向Thermal_State(1)的转换
Thermal_State(1)表示来自Thermal_State(1)的转换R206.Power_State(1)表示Thermal_State(1)的电能方面
Thermal_State(1)表示Power_State(1)的热量方面R212.Physical_State(MC)从属于Physical_State(MC)
Physical_State(MC)具有从属状态的Physical_State
(MC)R40.Physical_Object(1)包含Physical_State(1)
Physical_State(1)是Physical_Object(1)的一种状态R41.Power_Object(1)包含Power_State(M)
Power_State(M)是Power_Object(1)的一种状态R42.Thermal_Object包含Thermal_State(M)
Thermal_State(M)是Thermal(1)的一种状态R43.Physical_Object(1)当前处于Physical_State(1)
Physical_State(1)表示Physical_Object(1)的当前状态R44.Power_Object(1)当前处于Power_State(1)
Power_State(1)表示Power_Object(1)的当前状态R45.Thermal_Object(1)当前处于Thermal_State(1)
Thermal_State(1)表示Thermal_Object(1)的当前状态
上面以用面向对象的实现描述了对本发明最佳实施例的说明。本技术的专家将会注意到,除面向对象以外,用各种软件编程技术也能实现本发明。业已说明的对象均可体现在多个数据集和软件模块中,这些数据集和软件模块以与对本发明的说明同样的方式运行和相互配合。尽管面向对象的实施例是最佳的,但是,本发明并不局限于这种实施例。
依照本发明,包含在电能封装内的各个物理对象,电能对象以及热量对象传递受控物理设备的各种属性从而提供多种上述电能管理结构所管理的实际物理***的一种模型。电能对象传递物理设备的功耗或电能使用方面的信息。热量对象传递热量状态或热传递方面的信息。所述电能对象向电能管理控制器提供信息,该信息包括物理设备的各种可能状态的需用电能、所述设备从任一给定状态所能转换到的任何及所有下一种可能状态的需用电能以及向下一种状态进行转换的转换功耗。所述控制器可以根据这些信息构建一个受控的***框架。
更复杂的电能管理结构将会考虑***各个物理设备的其它信息或属性以便形成一个更复杂的受控***框架。由电能对象所提供的其它信息可以是设备的可靠性或从一种特定状态转换到另外一种状态所要花的时间。电能对象还能确定相应物理设备当前所处的状态或者说“当前状态”然后将该状态传递给所述控制器。该控制器可以根据所有当前状态的集合而在“***状态”在特定时间存在内时构建这种模型。
所述控制器还与事件对象相通讯。物理***内的实时事件会通过事件源对象产生一个事件源。物理事件的例子有:CPU空闲了一定阈值的时间;磁盘驱动器接收用于存取磁盘数据的某阈值量的请求以及按下键盘的按键。在产生这类事件时,所述控制器必须确定是否响应这些事件而改变***状态。该控制器根据策略模块所提供的规则而做出这类决策。而所述策略模块的规则则是事件、***状态以及电能或热量对象所提供的信息或属性的函数。所接收的上述事件信号调用某些规则,这些规则根据朝向***状态的可能转换面分析该***状态的模式,所述转换则在电能对象限定的结构内是允许的。通过电能管理设计者所构造的这些规则,使得所述控制器执行某种活动从而实现了电能管理。这种活动可能要求***状态不作改变,也可能要求改变多个物理设备中任何一个的状态。
在设计更为通用的电能管理结构时,应该注意,还必须要考虑热负荷及特性,因为,这会对***的电能产生某些影响。例如,当***的内部温度上升时,就应打开一个或多个风扇.由于***内的功耗和发热通常是密切相关的,所以,扩大上述电能管理的概念以包括热量管理是有意义的。结果,在许多情况下,特别是在临界环境下热量管理所需的设备与电能管理所需的机制是相类似的(即低电能及超温限制需要相似的设备与策略)。
本发明的电能管理结构被确定为足够通用且足够综合的,从而适于所有能进行电能管理的***类型。为了做到这一点,该结构与其机制分开,并包含物理对象和事件对象,同时,策略模块包含用于在特定***中实现该电能管理的规则。所述机制不懂正在使用该机制的策略规则的含义。电能管理策略模块也不具有该底层机制的特定知识。上述电能管理的控制器通过利用上述机制所提供的接口根据该机制的对象和策略模块规则来影响***电能使用方面的变化。
尽管是参照一最佳实施例以特定方式显示并说明了本发明,但是,本技术的专家应该认识到,在不脱离本发明精神与范围的情况下,可以作出形式和内容方面的多种变更。

Claims (42)

1.一种数据处理***的电能管理***,它包括:
多个物理设备,每个物理设备或者是耗电器或者是供电器,其中,每个物理设备都具有至少一种状态,每种状态都具有相应的电能值,而***状态则是上述多个物理设备的当前状态的集合;
多个对象,每个对象都对应于一种物理设备,其中,一个电能对象包含有上述物理设备的每一可能状态的需用电能以及该物理设备当前状态等方面的信息;
用于产生指示一个事件的信号的事件装置;
策略模块,该模块包含着控制活动的规则,所述规则是事件与对象信息的函数;以及
控制器,此控制器与所述物理设备、对象、事件装置以及策略模块相通讯,以便响应一指示事件的信号而改变上述多个物理设备中任何一个的状态,所述控制器根据策略模块规则,事件信号以及对象信息来确定是否改变一物理设备的状态。
2.如权利要求1所述之数据处理***中的电能管理***,其特征在于:所述对象信息提供了上述控制器在确定是否改变一物理设备状态时所使用的物理设备之物理特征的模型。
3.如权利要求1所述之数据处理***中的电能管理***,其特征在于,它还包括用于使多个对象在逻辑上分组的多个封装对象,该封装对象提供了说明它所包含的对象以及这些对象是什么样的类型等方面的信息。
4.如权利要求3所述之数据处理***中的电能管理***,其特征在于,它还包括一封装策略模块,此模块用于管理包含在封装对象内的对象并包含有控制物理设备的活动的规则,而所述的物理设备则与包含在前述封装对象中的对象相对应,所述规则是来自包含于上述封装对象中多个已在逻辑上分组了的对象的对象信息和事件的函数。
5.如权利要求3所述之数据处理***中的电能管理***,其特征在于,至少有一个封装对象使电能对象在逻辑上分组。
6.如权利要求1所述之数据处理***中的电能管理***,其特征在于,一个对象可以产生一个表示事件的信号。
7.如权利要求1所述之数据处理***中的电能管理***,其特征在于,一个对象包含着从每种可能的状态到另一种状态的允许状态转换以及所有可能状态转换需用电能等方面的信息。
8.如权利要求7所述之数据处理***中的电能管理***,其特征在于:一个对象包含着进行上述允许状态转换所需时间的信息。
9.如权利要求1所述之数据处理***中的电能管理***,其特征在于:一个对象包含着相应物理设备的可靠性的信息。
10.如权利要求1所述之数据处理***中的电能管理***,其特征在于:所述事件方法包括至少一个事件源对象,该事件源对象与一物理设备有关。
11.如权利要求1所述之数据处理***中的电能管理***,其特征在于:所述事件方法包括对象,并且,一个或多个对象产生表示***状态变化的信号。
12.如权利要求1所述之数据处理***中的电能管理***,其特征在于:所述物理设备包括一磁盘驱动器、一CPU、一显示器、一键盘,以及一电池电源。
13.如权利要求1所述之数据处理***中的电能管理***,其特征在于:一个对象包含着相应物理设备的性能的信息。
14.一种用于在数据处理***中进行电能管理的方法,它所包括的步骤有:
从多个对象处获得对象的信息,其中,对应于物理设备的对象包含该物理设备每种可能状态的需用电能及该物理设备当前状态等方面的信息,并且,所述***的状态是所有物理设备的当前状态的集合;
从一策略模块中获得电能管理规则;
接收一表示事件或***状态变化的信号;以及
根据上述事件或所述***状态的变化,改变至少一个物理设备的状态,而所进行的状态改变的类型则取决于电能管理规则的应用,而所述电能管理规则则是所述事件、***状态以及对象信息的函数。
15.如权利要求14所述之用于在数据处理***中进行电能管理的方法,其特征在于,编译所述对象信息以形成前述物理设备的模型,该模型表示所述物理设备的物理特征并被用于实施所述规则。
16.一种数据处理***的电能管理***,它包括:
多个物理设备,每个物理设备要么是一热源,要么就是一个散热器,其中,每个物理设备都具有至少一种状态,并且,每种状态都有一相应的热量值,同时,所述***的状态是上述多个物理设备当前状态的集合。
多个对象,每个对象都对应于一个物理设备,其中,对象包含有所述物理设备每种可能状态的热量需要和该物理设备当前状态等方面的信息:
用于产生指示一个事件的信号的事件装置;
策略模块,该模块包含着控制活动的规则,该规则是事件与对象的函数;
控制器,此控制器与所述物理设备、对象、事件装置以及策略模块相通讯,以便响应一指示事件的信号而改变上述多个物理设备中任何一个的状态,所述控制器根据策略模块的规则,事件信号以及对象信息来确定是否改变一物理设备的状态。
17.如权利要求16所述之数据处理***中的电能管理***,其特征在于,所述对象信息提供了上述控制器在确定是否要改变一物理设备状态时所使用的物理设备之物理特征的模型。
18.如权利要求16所述之数据处理***中的电能管理***,其特征在于:它还包括用于使多个对象在逻辑上分组的多个封装对象,该封装对象提供了说明它所包含的对象以及这些对象是什么样的类型等方面的信息。
19.如权利要求18所述之数据处理***中的电能管理***,其特征在于,它还包括一封装策略模块,此模块用于管理包含在封装对象内的对象并包含有控制物理设备的活动的规则,而所述的物理设备则与包含在前述封装对象中的对象相对应,所述规则是来自包含于上述封装对象中多个已在逻辑上分组了的对象的对象信息和事件的函数。
20.如权利要求18所述之数据处理***中的电能管理***,其特征在于:至少有一个封装对象使热量对象在逻辑上分组。
21.如权利要求16所述之数据处理***中的电能管理***,其特征在于:对象可以产生一个事件源。
22.如权利要求16所述之数据处理***中的电能管理***,其特征在于,对象描述了从每种可能的状态到另一种状态的允许状态转换以及状态之间所有可能的状态转换的热量需要。
23.如权利要求22所述之数据处理***中的电能管理***,其特征在于,对象包含着进行上述允许状态转换所需时间的信息。
24.如权利要求16所述之数据处理***中的电能管理***,其特征在于,对象包含着相应物理设备的可靠性的信息。
25.如权利要求16所述之数据处理***中的电能管理***,其特征在于,所述事件方法包括至少一个事件源对象,该事件源对象与一个物理设备有关。
26.如权利要求16所述之数据处理***中的电能管理***,其特征在于,所述事件方法包括对象,并且,一个或多个对象产生表示***状态变化的信息。
27.如权利要求16所述之数据处理***中的电能管理***,其特征在于,所述物理设备包括一磁盘驱动器、一CPU、一显示器、一键盘以及电池电源。
28.如权利要求16所述之数据处理***中的电能管理***,其特征在于,对象包含着相应物理设备的性能的信息。
29.一种数据处理***中的电能管理***,它包括:
多个物理设备,其中,每个物理设备都具有至少一种状态,每种状态都具有相应的热量值及相应的电能值,并且,***状态是上述多个物理设备的当前状态的集合;
多个热量对象,每个热量对象都对应于一种物理设备,其中,热量对象包含有上述物理状态的每一可能状态的热量需求和该物理设备当前状态等方面的信息;
多个电能对象,每个电能对象都对应于一种物理设备,其中,电能对象包含有上述物理设备的每一可能状态的需用电能以及该物理设备当前状态等方面的信息;
用于产生指示一个事件的信号的事件装置;
策略模块,该模块包含有控制活动的规则,所述规则是事件热量对象信息与电能对象信息的函数;以及
控制器,此控制器与所述物理设备、热量对象、电能对象、事件装置以及策略模块相通讯,以便响应一指示事件的信号而改变上述多个物理设备中任何一个的状态,所述控制器根据策略模块规则、事件信号以及对象信号来确定是否改变一物理设备的状态。
30.如权利要求29所述之数据处理***中的电能管理***,其特征在于,所述对象信息提供了上述控制器在确定是否改变一物理设备状态时所使用的物理设备之物理特征的模型。
31.如权利要求29所述之数据处理***中的电能管理***,其特征在于,它还包括用于使多个物理设备在逻辑上分组的多个封装对象,该封装对象提供了说明它所包含的物理对象以及这些物理对象是什么样的类型等方面的信息。
32.如权利要求31所述之数据处理***中的电能管理***,其特征在于,它还包括一封装策略模块,此模块用于管理包含在封装对象内的对象并包含有控制物理设备的活动的规则,而所述物理设备则与包含在前述封装对象中的对象相对应,所述规则是来自包含于上述封装对象中多个已在逻辑上分组了的对象的对象信息和事件的函数。
33.如权利要求31所述之数据处理***中的电能管理***,其特征在于,至少有一个封装对象使物理对象在逻辑上分组,并且,物理设备包括热量对象和电能对象。
34.如权利要求29所述之数据处理***中的电能管理***,其特征在于,至少有一个热量对象和至少一个电能对象能够产生一信号,此信号表示一事件。
35.如权利要求29所述之数据处理***中的电能管理***,其特征在于,每个电能对象都描述从每种可能的状态到另一种状态的允许状态转换以及状态之间所有可能的状态转换的需用电能,并且,每个热量对象都描述从每种可能状态到另一种状态的允许状态转换以及状态之间所有可能的状态转换的热量需求。
36.如权利要求29所述之数据处理***中的电能管理***,其特征在于,所述物理设备包括一磁盘驱动器、一CPU、一显示器、一键盘以及一电池电源。
37.如权利要求35所述之数据处理***中的电能管理***,其特征在于,每个热量对象和每个电能对象都包含进行上述允许状态转换所需时间的信息。
38.如权利要求29所述之数据处理***中的电能管理***,其特征在于,至少有一个电能对象和至少一个热量对象包含着相应物理设备的可靠性的信息。
39.如权利要求29所述之数据处理***中的电能管理***,其特征在于,所述事件方法包含热量对象和电能对象,此外,一个或多个热量对象产生表示***状态变化的信号,并且,一个或多个电能对象产生表示***状态变化的信号。
40.如权利要求29所述之数据处理***中的电能管理***,其特征在于,所述事件方法是至少一个事件源对象,该事件源对象与一物理设备有关。
41.如权利要求29所述之数据处理***中的电能管理***,其特征在于,所述物理设备包括一磁盘驱动器、一CPU、一显示器、一键盘以及一电池电源。
42.如权利要求29所述之数据处理***中的电能管理***,其特征在于,对象包含有相应物理设备的性能的信息。
CN95103046A 1994-04-05 1995-03-22 数据处理***用的电能管理*** Expired - Lifetime CN1122908C (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US223498 1994-04-05
US08/223,498 US5535401A (en) 1994-04-05 1994-04-05 Method and system of power and thermal management for a data processing system using object-oriented program design
US223,498 1994-04-05

Publications (2)

Publication Number Publication Date
CN1115883A CN1115883A (zh) 1996-01-31
CN1122908C true CN1122908C (zh) 2003-10-01

Family

ID=22836774

Family Applications (1)

Application Number Title Priority Date Filing Date
CN95103046A Expired - Lifetime CN1122908C (zh) 1994-04-05 1995-03-22 数据处理***用的电能管理***

Country Status (8)

Country Link
US (1) US5535401A (zh)
EP (1) EP0676685B1 (zh)
JP (1) JP3453451B2 (zh)
KR (1) KR0163233B1 (zh)
CN (1) CN1122908C (zh)
CA (1) CA2145162C (zh)
DE (1) DE69529310T2 (zh)
TW (1) TW310390B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101615065B (zh) * 2009-07-29 2011-07-20 浪潮电子信息产业股份有限公司 一种基于策略的计算机电源功率动态分配的方法
US8908763B2 (en) 2008-06-25 2014-12-09 Qualcomm Incorporated Fragmented reference in temporal compression for video coding
US8948822B2 (en) 2008-04-23 2015-02-03 Qualcomm Incorporated Coordinating power management functions in a multi-media device
US8948270B2 (en) 2008-08-19 2015-02-03 Qualcomm Incorporated Power and computational load management techniques in video processing
US8964828B2 (en) 2008-08-19 2015-02-24 Qualcomm Incorporated Power and computational load management techniques in video processing

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7064749B1 (en) * 1992-11-09 2006-06-20 Adc Technology Inc. Portable communicator
US5752011A (en) 1994-06-20 1998-05-12 Thomas; C. Douglas Method and system for controlling a processor's clock frequency in accordance with the processor's temperature
US7167993B1 (en) * 1994-06-20 2007-01-23 Thomas C Douglass Thermal and power management for computer systems
DE69535577T2 (de) * 1994-12-22 2008-03-06 Intel Corp., Santa Clara Leistungsverwaltung mit charakteristischem leistungsverbrauch einer vorrichtung
US5666538A (en) * 1995-06-07 1997-09-09 Ast Research, Inc. Disk power manager for network servers
US5787294A (en) * 1995-10-13 1998-07-28 Vlsi Technology, Inc. System for reducing the power consumption of a computer system and method therefor
US6029119A (en) * 1996-01-16 2000-02-22 Compaq Computer Corporation Thermal management of computers
CN1192298C (zh) * 1996-01-17 2005-03-09 德克萨斯仪器股份有限公司 按cpu活动调节cpu时钟频率而实时管理cpu温度和节电的方法和***
JP3580630B2 (ja) * 1996-02-26 2004-10-27 インターナショナル・ビジネス・マシーンズ・コーポレーション 消費電力を管理するシステム及び電源を管理する方法
US5822600A (en) * 1996-07-19 1998-10-13 Compaq Computer Corporation Dynamic hibernation time in a computer system
US5944829A (en) * 1996-09-30 1999-08-31 Intel Corporation Adjusting software characteristics by user interface based upon battery level and the amount of time the user wants the battery to last
US6530026B1 (en) * 1997-10-17 2003-03-04 Intel Corporation Circuit and method for power distribution management
US6715071B2 (en) * 1998-06-26 2004-03-30 Canon Kabushiki Kaisha System having devices connected via communication lines
US6594771B1 (en) * 2000-04-13 2003-07-15 Hewlett-Packard Development Company, L.P. Method and apparatus for managing power in an electronic device
US7849463B2 (en) * 2000-06-02 2010-12-07 Microsoft Corporation Dynamically variable idle time thread scheduling
EP1363179A1 (en) 2002-05-17 2003-11-19 STMicroelectronics S.A. Architecture for controlling dissipated power in a system on a chip and related system
US7350087B2 (en) * 2003-03-31 2008-03-25 Intel Corporation System and method of message-based power management
US7155623B2 (en) * 2003-12-03 2006-12-26 International Business Machines Corporation Method and system for power management including local bounding of device group power consumption
US20060047880A1 (en) * 2004-08-27 2006-03-02 Imation Corp. Memory device with HUB capability
GB0516447D0 (en) * 2005-08-10 2005-09-14 Symbian Software Ltd Controlling multilevel shared resources in a computing device
KR100771444B1 (ko) * 2005-11-08 2007-10-30 성균관대학교산학협력단 웹기반 능동 데이터베이스를 이용한 전력 제어 시스템 및그 제어 방법
DE102006036770A1 (de) * 2006-08-07 2008-02-14 Siemens Ag Verfahren zur Inbetriebnahme von mindestens einem Feldgerät
US8296121B2 (en) * 2007-04-25 2012-10-23 Cadence Design Systems, Inc. Method and apparatus for controlling power in an emulation system
US7877620B2 (en) * 2007-08-17 2011-01-25 International Business Machines Corporation Managing power in a parallel computer
KR100951532B1 (ko) * 2008-04-11 2010-04-08 인제대학교 산학협력단 홈 네트워크 시스템의 활성/비활성 선택 장치 및 방법
CN101651558B (zh) * 2008-08-15 2012-06-06 中兴通讯股份有限公司 节电管理方法和***
US20100043865A1 (en) * 2008-08-25 2010-02-25 Mordechai Nisenson System and Method of Utilizing Energetic Radiation in an Enclosed Space
CN102445980A (zh) * 2011-09-19 2012-05-09 浪潮电子信息产业股份有限公司 一种基于bp神经网络的节能控制***
US10168752B2 (en) 2016-03-08 2019-01-01 Qualcomm Incorporated Systems and methods for determining a sustained thermal power envelope comprising multiple heat sources

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1536046A (en) * 1976-06-30 1978-12-20 Ibm Data processing system power control
US4748559A (en) * 1979-08-09 1988-05-31 Motorola, Inc. Apparatus for reducing power consumed by a static microprocessor
FR2497373B1 (fr) * 1980-12-30 1986-09-05 Bull Sa Systeme d'alimentation microprogrammable pour systeme de traitement de donnees comportant un panneau de service destine aux operations de maintenance et procedes d'exploitation de ce panneau de service
US4747041A (en) * 1983-06-27 1988-05-24 Unisys Corporation Automatic power control system which automatically activates and deactivates power to selected peripheral devices based upon system requirement
US4611289A (en) * 1983-09-29 1986-09-09 Coppola Anthony F Computer power management system
US4677566A (en) * 1984-10-18 1987-06-30 Burroughs Corporation Power control network for multiple digital modules
US5019996A (en) * 1988-08-29 1991-05-28 Advanced Micro Devices, Inc. Programmable power supply level detection and initialization circuitry
US5142684A (en) * 1989-06-23 1992-08-25 Hand Held Products, Inc. Power conservation in microprocessor controlled devices
AU629019B2 (en) * 1989-09-08 1992-09-24 Apple Computer, Inc. Power management for a laptop computer
US5167024A (en) * 1989-09-08 1992-11-24 Apple Computer, Inc. Power management for a laptop computer with slow and sleep modes
US5291607A (en) * 1990-09-05 1994-03-01 Motorola, Inc. Microprocessor having environmental sensing capability
US5230055A (en) * 1991-01-25 1993-07-20 International Business Machines Corporation Battery operated computer operation suspension in response to environmental sensor inputs
US5404543A (en) * 1992-05-29 1995-04-04 International Business Machines Corporation Method and system for reducing an amount of power utilized by selecting a lowest power mode from a plurality of power modes
JPH06119090A (ja) * 1992-10-07 1994-04-28 Hitachi Ltd 省電力制御方式

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8948822B2 (en) 2008-04-23 2015-02-03 Qualcomm Incorporated Coordinating power management functions in a multi-media device
US8908763B2 (en) 2008-06-25 2014-12-09 Qualcomm Incorporated Fragmented reference in temporal compression for video coding
US8948270B2 (en) 2008-08-19 2015-02-03 Qualcomm Incorporated Power and computational load management techniques in video processing
US8964828B2 (en) 2008-08-19 2015-02-24 Qualcomm Incorporated Power and computational load management techniques in video processing
US9462326B2 (en) 2008-08-19 2016-10-04 Qualcomm Incorporated Power and computational load management techniques in video processing
US9565467B2 (en) 2008-08-19 2017-02-07 Qualcomm Incorporated Power and computational load management techniques in video processing
CN101615065B (zh) * 2009-07-29 2011-07-20 浪潮电子信息产业股份有限公司 一种基于策略的计算机电源功率动态分配的方法

Also Published As

Publication number Publication date
DE69529310D1 (de) 2003-02-13
KR0163233B1 (ko) 1999-01-15
EP0676685A2 (en) 1995-10-11
US5535401A (en) 1996-07-09
CA2145162C (en) 2000-05-02
JPH0887359A (ja) 1996-04-02
CA2145162A1 (en) 1995-10-06
EP0676685A3 (en) 1997-03-26
KR950029909A (ko) 1995-11-24
CN1115883A (zh) 1996-01-31
TW310390B (zh) 1997-07-11
JP3453451B2 (ja) 2003-10-06
DE69529310T2 (de) 2003-10-16
EP0676685B1 (en) 2003-01-08

Similar Documents

Publication Publication Date Title
CN1122908C (zh) 数据处理***用的电能管理***
CN1252618C (zh) 故障预测***和方法及设备、打印机和管理服务器
CN1741005A (zh) 信息处理***、信息处理方法和其使用的计算机程序
CN1287282C (zh) 执行实时操作的方法和***
CN1280714C (zh) 独立处理多个指令流、软式控制各指令流的处理功能的多线程处理器
CN1828642A (zh) 传感器网络***、传感器数据的处理方法及程序
CN1295583C (zh) 实现实时操作的方法和***
CN1760804A (zh) 信息处理设备,信息处理方法,及计算机程序
CN1266615C (zh) 微处理器
CN1601474A (zh) 执行实时操作的方法和***
CN101036393A (zh) 信息处理***、信息处理方法和计算机程序
CN1276575A (zh) 数据库存取***
CN1201242C (zh) 数据传送控制装置和电子装置
CN1993674A (zh) 多芯架构中的资源管理
CN1577311A (zh) 调度方法和实时处理***
CN1703701A (zh) 用于管理门户服务器中的门户构件集合的方法和装置
CN1632749A (zh) 构建智能用户辅助设备的方法
CN1612088A (zh) 处理器***、指令序列优化装置和指令序列优化程序
CN1655145A (zh) 最优化行级别数据库安全的***和方法
CN1777107A (zh) 高性能计算(hpc)***中的按需式例示
CN1577281A (zh) 调度方法和信息处理***
CN1647082A (zh) 集成电路的开发方法和存储了集成电路的开发方法的程序存储媒体、以及asic和可编程逻辑器件同时开发***、开发程序和开发方法
CN1734438A (zh) 信息处理设备、信息处理方法和程序
CN1273893C (zh) 模块化计算机***以及相关方法
CN101057464A (zh) 数据递送***和数据递送方法

Legal Events

Date Code Title Description
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C06 Publication
PB01 Publication
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CX01 Expiry of patent term

Expiration termination date: 20150322

Granted publication date: 20031001