CN1499339A - 管理计算机系统中电源的装置和方法 - Google Patents

管理计算机系统中电源的装置和方法 Download PDF

Info

Publication number
CN1499339A
CN1499339A CNA200310104663XA CN200310104663A CN1499339A CN 1499339 A CN1499339 A CN 1499339A CN A200310104663X A CNA200310104663X A CN A200310104663XA CN 200310104663 A CN200310104663 A CN 200310104663A CN 1499339 A CN1499339 A CN 1499339A
Authority
CN
China
Prior art keywords
equipment
power supply
power
irp
computer system
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.)
Granted
Application number
CNA200310104663XA
Other languages
English (en)
Other versions
CN100541393C (zh
Inventor
金瑞光
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.)
LG Electronics Inc
Original Assignee
LG Electronics Inc
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
Priority claimed from KR10-2002-0066828A external-priority patent/KR100499611B1/ko
Application filed by LG Electronics Inc filed Critical LG Electronics Inc
Publication of CN1499339A publication Critical patent/CN1499339A/zh
Application granted granted Critical
Publication of CN100541393C publication Critical patent/CN100541393C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related 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/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3215Monitoring of peripheral devices
    • 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/325Power saving in peripheral device

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Power Sources (AREA)

Abstract

本发明涉及计算机系统中管理电源的一种装置和方法。配备有数据包监测功能等的滤波器驱动器检测安装在计算机系统中的设备是否处于空闲状态。如果设备处于空闲状态,则把相应设备的电源模式改变到掉电模式,该模式独立于计算机系统中的操作系统已经设置的系统电源模式状态。如此,减少了提供给空闲状态设备的电源,变成有可能对计算机系统的负载进行更有效的控制。总的来说,可以极有利地使用根据本发明的较佳实施例,通过把滤波器驱动器添加到系统中,可以更简单地开发和扩展计算机系统。

Description

管理计算机系统中电源的装置和方法
发明背景
发明领域
本发明涉及安装有多个设备的计算机系统,尤其涉及管理计算机系统中电源的一种装置和方法。
现有技术的背景
图1示出用于管理计算机系统中的电源的一种装置的配置。在下面的说明中,‘掉电模式’是指除了加电模式(例如,正常操作模式)之外的所有种类的电源模式(即,等待、暂停或切断电源等)。计算机系统包括操作系统10、设备驱动器20、总线驱动器30以及设备40。根据操作系统10设置的系统电源模式共同地确定包括网络适配器、显示适配器、鼠标、监视器、盘驱动器、数字摄像机、扫描仪以及声卡等的各个设备40的电源模式。
例如,假设操作系统10设置系统电源模式为掉电模式。则设备驱动器20把已经操作和控制的设备的电源模式设置为掉电模式。另一方面,如果操作系统10把系统电源模式设置为操作模式,则设备驱动器20把已经操作和控制的设备的电源模式设置为操作模式,并按正常的方式供电。因此,设备驱动器20改变设备的电源模式,使之相应于通过操作系统10设置为操作模式(例如,D0)或掉电模式(例如,D1、D2、D3)的系统电源模式。
例如,操作系统10可以产生相应于它已经设置的系统电源模式的输入/输出(I/O)请求数据包(IRP),并把IRP输出到设备驱动器20。然后,设备驱动器20识别IRP,并产生设备电源模式数据包(DPMP),使目标(例如相应的)设备40的电源模式成为操作模式或掉电模式,并把DPMP输出到驱动器堆栈的最上端,把设备电源模式已经改变通知每个驱动器。
设备40根据DPMP操作它的硬件和把电源模式改变到掉电模式或操作模式,并把电源模式数据包发送到总线驱动器30。当在相应总线(例如,PCI、USB、IEEE1394等)下的每个设备都处于掉电模式中时,总线驱动器30把总线电源模式改变成掉电模式。因此,当操作系统10把系统电源模式设置成掉电模式时,每个设备的电源模式改变成掉电模式。换言之,现在整个计算机系统进入掉电模式。
如上所述,现有技术具有多个缺点。在现有技术中,根据系统电源模式共同设置每个设备的电源模式。换言之,一旦当前的系统电源模式处于操作模式,则每个设备都处于操作模式。因此,虽然某些设备在规定的时间周期中可能处于空闲状态,但是这些设备的电源模式都处于操作模式。这时,不必要地消耗了许多电源,而且系统负载不起作用。
发明概要
本发明的一个目的是解决至少上述问题和/或缺点,并提供至少这里下面所描述的优点。
本发明的另一个目的是提供用于计算机系统的一种装置和方法,所述装置和方法可以把计算机系统中的多个设备或每个设备的电源模式改变成第一和第二电源条件中的每一个。
本发明的另一个目的是提供计算机系统中管理电源的一种装置和方法,所述装置和方法可以把计算机系统中每个设备的电源模式改变成独立于计算机操作系统(OS)设置的系统电源模式的加电模式(正常模式)或掉电模式。
通过提供管理计算机系统中的电源的一种装置可以全部或部分地实现上述的和其它的目的和优点,所述装置包括为设置计算机系统的操作模式而配置的操作系统,其中,电源模式包括操作模式和掉电模式中的至少一个模式,配置成执行特定功能和操作的至少一种设备,配置成控制相应设备上的操作的至少一个设备驱动器,其中,把设备驱动器配置成在操作模式和掉电模式的至少一个模式中间改变相应设备的电源模式,以及耦合到操作系统的滤波器驱动器,其中,当计算机系统处于操作模式中时,把滤波器驱动器配置成独立地控制所选择的设备使之在掉电模式中操作。
通过提供一种方法可以全部或部分地实现上述的和其它的目的和优点,所述方法包括在第一和第二电源模式中操作计算机系统,在第一和第二电源模式中操作计算机系统中的设备,以及当计算机系统处于第一电源模式中时,控制所选择的设备处于第二电源模式中。
通过提供管理计算机系统中的电源的一种方法可以全部或部分地实现上述的和其它的目的和优点,所述方法包括当计算机系统的电源模式处于操作模式时,检测处于空闲状态的至少一个设备,确定所检测的处于空闲状态的设备的空闲时间,以及当没有重置空闲状态达预定时间时,把相应设备的电源模式从操作模式改变成掉电模式。
通过提供管理计算机系统中的电源的一种方法可以全部或部分地实现上述的和其它的目的和优点,所述方法包括把相应设备的电源状态设置成掉电状态,在把关于相应设备的所接收消息传送到设备驱动器之前,把改变相应设备到操作状态的电源控制消息传送到设备驱动器,在把相应设备改变成操作状态之后,把所接收消息传送到设备驱动器,以及在设备驱动器完成消息处理之后,把相应设备设置为掉电状态。
通过提供管理计算机系统中的电源的一种方法可以全部或部分地实现上述的和其它的目的和优点,所述方法包括当计算机系统的电源模式处于操作模式时,检测设备是否处于空闲状态,对所检测的处于空闲状态的设备的空闲时间进行计数,以及当已经计数的空闲时间大于预定时间时,把设备的电源模式从操作模式改变成掉电模式。
通过提供滤波器驱动器可以全部或部分地实现上述的和其它的目的和优点,所述滤波器驱动器配备数据包监测功能,检测安装在计算机系统中的设备是否处于空闲状态。如果设备处于空闲状态,则把相应设备的电源模式改变成掉电模式,与计算机系统中的操作系统已经设置的系统电源模式状态无关。如此,不需把不必要的电源提供给处于空闲状态的设备,变成有可能对计算机系统的负载进行更有效的控制。总的来说,可以有利地使用本发明,通过把滤波器驱动器添加到系统,可以更简单地开发和扩展计算机系统而无需改变计算机系统中的设备驱动器。
在下述说明中将部分地陈述本发明另外的优点、目的和特征,熟悉本技术领域普通技术的人员根据对下述说明的研究或可以学习本发明的实践而会有几分明白。如在所附的权利要求书中特别指出,本发明的目的和优点是可以实现和达到的。
附图简述
将参考下面的附图详细描述本发明,在所有的附图中,相同的标记所表示的意义相同,其中:
图1是方框图,示出在计算机系统中管理电源的现有技术装置;
图2是方框图,示出根据本发明在计算机系统中管理电源的装置的较佳实施例;
图3是流程图,示出滤波器驱动器的示例装载过程,以及当引导计算机系统时起动定时器;
图4是示意图,示出用户模式、Kernel模式、滤波器驱动器和功能驱动器之间的交互作用;
图5是流程图,示出根据本发明的较佳实施例的滤波器驱动器方法,用于管理设备的操作模式和掉电模式;
图6是示出产生FIRP的过程的示图;
图7是示出根据本发明的另一个实施例的一个过程的示图,所述过程用于设置空闲检测的定时器,以及用于管理其中的电源模式;
图8是流程图,示出一种方法的另一个较佳实施例,用于在从用户模式(应用程序)到操作系统接收分组数据时改变目标设备的电源模式,以及从IO管理器发送IRP;
图9是流程图,示出在滤波器驱动器处处理所发送的IP请求数据包的过程;以及
图10是方框图,示出根据本发明的装置的较佳实施例,用于管理计算机系统中的电源。
较佳实施例的详述
图2是方框图,示出根据本发明的较佳实施例的一种装置,用于管理计算机系统中的电源。如在图2中所描绘,计算机系统可以包括操作系统(OS)10、设备驱动器20、总线驱动器30、设备40、以及滤波器驱动器100。滤波器驱动器100可以起的作用是扩展(例如,添加或修改)设备驱动器20的功能。
最好驱动器堆栈中包括至少一个滤波器驱动器100,以扩展设备驱动器20的功能。例如,当把滤波器驱动器100添加到设备驱动器20的顶上层和操作系统10设置的系统电源模式处于操作模式时,滤波器驱动器100可以把这个通知设备驱动器20。然而,不打算把本发明如此地限制于滤波器驱动器的位置或相应的功能。滤波器驱动器100可以进一步把设备40中已经产生的数据经由设备驱动器20发送或转发到操作系统10。
图3示出流程图,该流程图示出装载到滤波器驱动器的示例装载过程以及起动定时器,最好在对计算机系统进行初始化和引导时。图4是示意图,示出根据较佳实施例的用户模式、Kernel模式(例如,在操作系统中的处理)、滤波器驱动器100和功能驱动器45中间的交互作用。
当系统受到引导时,首先把设备驱动器(例如,设备驱动器20),然后把波器驱动器(例如,滤波器驱动器100)装载到存储器中,随后是一个初始化过程,如在图3中所示。在图3中的过程开始之后,控制传送到步骤S31。首先读出(步骤S31)最好是通过用户设置的超时值。
然后,最好接着出现操作滤波器驱动器的其它基本工作或功能。即,可以分配临时存储I/O请求数据包(IRP)的一个空间,可以设置事件调用返回例行程序,可以使一个序列初始化,然后可以初始化要使用的一个可变暂停时间间隔(例如,‘暂停’标志)(步骤S32、S33和S34)。
进一步,可以设置一个定时器。然后,可以起动定时器(步骤S35)。在步骤S35之后,完成过程。
如在图4中所示,在用户模式中执行或调度的示例应用程序可以产生各种声音流,并且可以通过IO管理器把图4的声音数据转换成IP请求数据包(IRP),并且最后传送到声音设备驱动器。声音设备驱动器(例如,功能驱动器45)可以由多个调度例行程序所组成,这些调度例行程序包括:CREAT Dispatch(IOC)(创建调度)),用于处理当使用声音设备驱动器时产生的IRP;电源调度,用于处理设备的修改或询问的电源IRP;或PnP调度,用于处理包括在除去和操作设备的安装中的IRP。
现在将讨论管理相应设备的操作模式和掉电模式的滤波器驱动器的三种示例方法。然而,本发明并不受此限制。
图5示出用于操作滤波器驱动器的一种方法的第一较佳实施例。滤波器驱动器100最好连续监测设备40的操作模式(步骤S51)。如果设备40的目标设备40的操作时间不长于预定时间,并且进入了空闲状态,则累加设备40空闲时间(步骤S52、S53)。
如果经累加的空闲时间大于预定的(例如,基本的)时间(步骤S53),则滤波器驱动器100产生一个控制信号,例如,FIRP(假IRP),该控制信号可以与操作系统10产生和输出的IRP相似,最好,即使操作系统10设置的系统电源模式处于操作模式,也使目标设备40的电源模式从操作模式转变成所要求的电源模式(例如,掉电模式)。滤波器驱动器100可以把FIRP传送到相应的设备驱动器20(步骤S55)。
接收到FIRP,设备驱动器20推断出目标设备的电源模式已经改变(例如,最好与响应于从操作系统10产生和输出的IRP相似)。因此,设备驱动器20可以把空闲状态中的目标设备的电源模式设置为掉电模式,所述掉电模式可以减少或阻止向空闲状态中的设备提供不必要的电源(步骤S56)。
如果经累加的空闲时间值不大于预定值(步骤S53),则最好继续进行空闲时间的累加。因此,控制最好转移回步骤S52。如果判定目标设备没有处于空闲状态(步骤S53),则最好在预定的电源模式中操作设备(步骤S54)。
图6是示图,示出产生FIRP的控制消息的示例过程。如在图6中所示,操作系统产生相应于它所设置的系统电源模式的IRP,并把IRP输出到目标设备(PoRequestPowerIrp,PDEVICE_OBJECT)。
根据电源IRP(Power IRP)的种类,改变设备的电源状态或询问而设置所要求的电源状态(例如,D0、D1、D2和D3)(MinorFunction,Powerstate)。每个数字表示不同的电源状态。例如,D0表示‘加电(Power ON)’;D1表示‘等待(Standby)’;D2表示‘暂停(Suspend)’;而D3表示‘切断电源(Poweroff)’。
在设置电源状态之后可以根据新的状态执行系统(CompletionFunction)。在系统加电达预定时间周期的情况中,输出FIRP。
在图6中,术语‘DeviceObject’(设备目标)表明目标设备的物理驱动器,而‘MinorFunction’(次要功能)是改变或询问设备的电源的电源IRP的一个例子。此外,‘PowerState’(电源状态)是指诸如D0、D1、D3和D4之类的电源状态。‘CompletionFunction’(完成功能)是回调例行程序(callback routine),该例行程序在改变电源状态之后进行调度。最后,‘Context’(上下文)是要发送到回调例行程序的一个因子。
现在将描述管理设备的操作模式和掉电模式的滤波器驱动器的第二种方法。滤波器驱动器(例如,与图4相似的,图2的滤波器驱动器100)可以操作在操作系统中的电源管理器70的空闲检测功能,如果直到预定时间已过才重置定时器,则改变目标设备或设备的电源状态。下面将参考图7到图9提供进一步的说明。
图7是滤波器驱动器管理多个设备的电源模式的一种方法的第二较佳实施例。如在图7中所示,为了空闲检测和为了管理其电源模式,所述方法可以重置定时器。
电源管理器(例如,滤波器驱动器)提供一种功能,用于在预定的(或预登记的)时间之后重置定时器以及改变设备的状态以致在每个设备上执行空闲检测,并管理各个设备的电源(例如,PoRegisterDeviceForIdleDetection)。在该功能中,最好存在电池模式中的超时值、性能模式中的超时值以及当时间已过时的设备电源状态。即,当指定目标设备时,在预登记时间过去之后,电源管理器产生电源IRP,用于在目标设备上把电源状态改变成登记的电源状态。
这里,‘DeviceObject’(设备目标)表示目标设备;‘ConversationIdleTime’(通话空闲时间)表示电池模式中的超时;‘PerformanceIdleTime’(性能空闲时间)表示AC模式中的超时;以及‘State’(状态)表示时间超过之后的设备电源状态。另一方面,当设备处于操作中时,应该使用电源管理器提供的功能重置和再初始化内部时间(例如,PoSetDeviceBusy)。
图8是根据第二实施例的流程图,示出改变目标设备的电源模式的一种方法。在图8中,在图4中从用户模式到Kernel模式接收到数据包数据的情况中,过程改变目标设备的电源模式,并且从IO管理器发送IRP。
在开始图8中的过程之后,当把数据包输入到一个队列中时,自动地进行调度(步骤S81)。上述例行程序在操作系统中具有低优先级,所以在操作系统完成具有较高优先级的其它工作之后才进行调度。因此,在队列中可能有许多IRP。如果系统刚好处于比暂停模式(例如,暂停标志=1)优先的状态,则因为队列中没有IRP而不调度例行程序。
如果根据步骤S81设备处于掉电模式,则设备的电源最好转向操作模式(例如,使用滤波器驱动器)(步骤S82),然后从队列取得数据包(步骤S83),然后在下一个步骤的设备驱动器上传送数据包(步骤S84)。现在,正在使用设备,重置了相应的定时器,并且设备不返回到掉电模式(步骤S85)。
如果在队列中还留下任何数据包,则重复从步骤S83开始的过程。然而,如果不再有数据包,则完成了例行程序。当直到定时器超时才再次调度例行程序时,电源管理器(例如,使用滤波器驱动器)发送掉电IRP、设置掉电模式中的设备(步骤S86)。
一般,如在图9中所示,当从Kernel模式中的IO管理器(例如,IO管理器50)接收到IRP时,例行程序用接收所有种类的数据包的调度例行程序开始(步骤S91)。在图9中的过程可应用于根据本发明的系统、方法和滤波器驱动器的每个较佳实施例。首先,判定所接收IRP是否为电源IRP(步骤S92),如果不是,则比较内部变量,即,暂停标志=1。换言之,比较系统是否处于刚好比暂停模式优先的状态(步骤S93)。
根据比较结果(步骤S92和S93),如果判定所接收IRP不是电源IRP以及内部变量是暂停标志=0,则把数据包放在队列中以促进滤波器驱动器进行正常操作(步骤S94)。一旦把数据包放在队列中,就在操作系统(OS)下执行队列处理例行程序。
如果在步骤S92中判定所接收IRP是电源IRP,则进行另一个比较,判定数据包是否为用于改变电源状态的系统电源IRP(步骤S95)。如果判定所接收数据包与系统电源IRP毫无关系,则继续进行下一个步骤(例如,滤波器驱动器)(步骤S96)。
然而,如果在步骤S95中所接收电源IRP是系统电源IRP,则比较IRP是否处于新的状态或S0(步骤S97)。
如果是处于新的状态S0,则这意味着正在唤醒系统,所以应该使内部变量清零,即暂停标志=0。这表示滤波器驱动器返回到正常操作模式(步骤S98)。
如果IRP不处于S0的状态(步骤S97),则这意味着系统正在进入掉电模式。在这种情况中,把内部变量设置成暂停标志=1,并且不允许再有IRP进入队列(步骤S99)。除去或压缩余留在队列中的任何IRP,并完成例行程序(步骤S100)。
过程从步骤S98和S100继续进行到步骤S96。从步骤S94和S96,过程结束。
滤波器驱动器的第三较佳实施例可以管理设备的操作模式和掉电模式而无需定时器。在滤波器驱动器(例如,滤波器驱动器100)中,设备40或每个设备的初始电源状态处于掉电模式。然后,在根据滤波器驱动器的调度例行程序中,使用IRP处理例行程序作为设备,在把IRP传送到设备驱动器20之前,产生用于把目标设备转变到操作状态中的电源IRP。一旦目标设备处于操作状态,就把所接收IRP传送到设备驱动器20。
最好,直到滤波器驱动器完成IRP处理,目标设备才返回掉电模式。因此,当连续接收到IRP时,当接收到第一IRP时对设备加电,并在最后IRP处切断电源。换言之,相应于从队列取得的第一相关联IRP,使设备加电,而当队列出空或清除时,切断电源。
此外,上述每种方法可以使用或可以不使用队列。如果不使用队列,特别当要在用户模式中的应用程序中使用的设备从掉电模式唤醒成为操作模式时,则设备可能临时停止它的操作,并且当正在处理IRP时重新开始。
图10示出根据本发明用于管理计算机系统中的电源的装置的较佳实施例。例如,在图10中,设备驱动器20是声音驱动器200,而设备40是声卡400,如上参考图2所述。然而,不打算如此地限制本发明。在从操作系统10接收到声卡400的随机数据的情况中,管理电源的装置(例如,滤波器驱动器100)检查声卡400的电源模式。
如果声卡400的电源模式是操作模式,则在保持操作模式的同时,根据在其中执行与之相应的一系列功能和操作的滤波器驱动器,从操作系统100接收到的数据通过声音驱动器200,并传送到声卡400。
然而,如果声卡400的电源模式是掉电模式,则临时存储来自操作系统的数据,并且产生诸如FIRP之类的控制信号,用于使声卡的电源模式从掉电模式到操作模式,并且稍后把FIRP传送到声音驱动器200。如此,在传送所接收数据之前,声卡的电源模式从掉电模式变化到操作模式。
在把声卡的电源模式改变到操作模式之后,接着上述过程,把临时存储的数据经由声音驱动器200发送到声卡400,并在声卡中执行与之相应的一系列功能和操作。
同时,滤波器驱动器100继续监测声卡的操作状态,如果它处于空闲状态的时间大于指定的时间,则累加空闲时间。在经累加的空闲时间超过预定基本时间的情况中,独立于操作系统10设置的系统电源模式而产生FIRP,并传送到声音驱动器200,以便使声卡400的电源模式成为掉电模式。根据FIRP,声音驱动器200把在空闲状态中的声卡400的电源模式改变成为掉电模式,这可以减少或阻止向空闲状态中的声卡提供任何不必要的电源。
简短地说,通过添加上述滤波器驱动器100,无需改变安装在计算机系统中的声音驱动器200,就可以独立于系统电源模式而改变在空闲模式中的每个声卡的电源模式(例如,从操作模式到掉电模式)。另一方面,如果当声卡400正处于掉电模式时把数据从操作系统10发送到声卡400,则滤波器驱动器100临时存储数据,并产生FIRP,请求使声卡的电源模式从掉电模式到操作模式,并把FIRP传送到声音驱动器200。当使声卡400的电源模式从掉电模式改变到操作模式时,滤波器驱动器100把临时存储的数据经由声音驱动器200发送到声卡400,并在声卡400中执行与之相应的一系列功能和操作。
概括地说,通过把较佳方法和滤波器驱动器100的较佳实施例添加到系统,无需修改计算机系统中的传统设备驱动器20,就有可能独立于系统电源模式而使空闲状态中的设备的电源模式成为掉电模式,例如,使用数据包监测功能的滤波器驱动器100连续监测到包括网络适配器、显示适配器、鼠标、监视器、盘驱动器、数字摄像机、扫描仪或声卡等不同设备的所收发的数据包,并监测相应的设备是否处于空闲状态,如果是的,则对空闲时间进行计数。
上述实施例和优点只是作为例子,不是解释为限制本发明。可以容易地把本原理应用于其它类型的装置。上述本发明的说明是示意的,而不是限制权利要求书的范围。熟悉本技术领域的人员会明白许多变化、修改和变更。在权利要求书中,打算用意义-加-功能的条款来包括这里描述的结构作为执行所引用的功能,不但是结构的等效,而且还是等效的结构。

Claims (33)

1.一种管理计算机系统中的电源的装置,其特征在于,所述装置包括:
操作系统,配置成设置计算机系统的电源模式,其中,所述电源模式包括操作模式和掉电模式中至少一种模式;
至少一个设备,配置成执行特定的功能和操作;
至少一个设备驱动器,配置成控制相应设备上的操作,其中,配置所述设备驱动器,用以在操作模式和掉电模式中至少一种模式中间改变相应设备的电源模式;以及
耦合到所述操作系统的滤波器驱动器,其中,配置所述滤波器驱动器使之当所述计算机系统处于操作模式时,独立地控制所选择的设备在掉电模式下进行操作。
2.如权利要求1所述的装置,其特征在于,当所选择的设备处于空闲状态的时间长于预定时间或所选择的设备的空闲状态的时间未被设置成长于所述的预定时间时,在所选择的设备处接收到操作信号之后,由所述滤波器驱动器在掉电模式下操作所选择的设备。
3.如权利要求1所述的装置,其特征在于,所述滤波器驱动器监测所述操作系统和设备驱动器之间收发的数据包,并检测每个设备处于空闲状态。
4.如权利要求1所述的装置,其特征在于,所述滤波器驱动器产生和输出FIRP(假I/O(输入/输出)请求数据包),配置成使相应设备的电源模式从所述操作模式改变成所述掉电模式。
5.如权利要求1所述的装置,其特征在于,所述的设备和所述的设备驱动器包括声卡和声音驱动器。
6.一种方法,包括下列步骤:
在第一和第二电源模式下操作计算机系统;
在第一和第二电源模式下操作所述计算机系统中的设备;以及
当所述计算机系统处于第一电源模式时,把所选择的设备控制在第二电源模式下。
7.如权利要求6所述的方法,其特征在于,所述第一电源模式是操作模式,而所述第二电源模式是掉电模式。
8.如权利要求7所述的方法,其特征在于,所述控制步骤包括下列步骤:
检测至少一个处于所述空闲状态的设备;
对每个检查到处于所述空闲状态的设备的空闲时间进行计数;以及
当相应设备的经计数的空闲时间长于预定量时,使相应设备的电源模式从所述操作模式改变到掉电模式。
9.如权利要求8所述的方法,其特征在于,同时执行所述检测和所述计数。
10.如权利要求8所述的方法,其特征在于,所述检测步骤包括下列步骤:
监测计算机系统中操作系统和设备驱动器之间的收发数据包;以及
检测所述设备的空闲状态。
11.如权利要求8所述的方法,其特征在于,所述改变步骤包括下列步骤:
在所述滤波器驱动器处产生控制消息;以及
把所述控制消息传送到相应设备。
12.如权利要求8所述的方法,其特征在于,所述改变步骤包括下列步骤:
当经计数的空闲时间长于所述指定量时,在所述滤波器驱动器处产生与所述计算机系统的I/O请求数据包相似的假I/O请求数据包(FIRP);以及
把所述FIRP传送到所述相应的设备。
13.如权利要求8所述的方法,其特征在于,所述改变步骤包括如果已经计数的经累加的空闲时间不长于所述指定量,则在所述操作模式下操作所述设备。
14.如权利要求8所述的方法,其特征在于,所述指定量具有处于电池模式下的第一超时值、处于性能模式下的第二超时值,并且所述指定量根据目标设备而变化,其中,通过用户或预置来设置所述指定量或所述至少一个设备。
15.如权利要求6所述的方法,其特征在于,所述控制包括下列步骤:
在操作系统处产生相应于所述系统电源模式的电源控制消息,并把所述电源控制消息输出到相应的设备;
改变或确定所述相应设备的电源状态,以根据所述电源控制消息的种类,设置所要求的电源状态;以及
根据新的电源状态,调度所述计算机系统。
16.如权利要求6所述的方法,其特征在于,所述控制步骤包括当所述计算机系统处于所述第一模式时,独立地控制多个设备中的两个设备或每个所述设备,使之在所述第二模式下操作。
17.一种管理计算机系统中电源的方法,其特征在于,所述方法包括下列步骤:
当所述计算机系统的电源模式处于操作模式时,检测至少一个处于空闲状态的设备;
确定所检测的处于空闲状态的设备的空闲时间;以及
当在预定的时间内未重置所述空闲状态时,把相应的设备的电源模式从操作模式改变成掉电模式。
18.如权利要求17所述的方法,其特征在于,电源管理器提供一个定时器,用于检查各个设备处于空闲状态以及管理电源,并且在经过预定时间之后,一个滤波器驱动器改变所述设备的状态。
19.如权利要求18所述的方法,其特征在于,所述预定时间具有处于电池模式下的第一超时值、处于性能模式下的第二超时值,并且所述预定时间根据目标设备而变化,其中,通过用户或预置来设置所述预定时间或所述至少一个设备。
20.如权利要求18所述的方法,其特征在于,当操作一个设备时,使用所述电源管理器来再启动相应的定时器。
21.一种管理计算机系统中的电源的方法,其特征在于,所述方法包括下列步骤:
把相应设备的电源状态设置成掉电状态;
在传送相应设备到设备驱动器的所接收的消息之前,把改变相应设备到操作状态的电源控制消息传送到设备驱动器;
在把相应设备改变到操作状态之后,把所接收的消息传送到设备驱动器;以及
在设备驱动器完成消息的处理之后,把相应的设备设置成掉电状态。
22.如权利要求21所述的方法,其特征在于,如果连续接收消息,则在第一条消息处对相应设备加电,并在最后消息处断电。
23.如权利要求22所述的方法,其特征在于,当从一个队列取出第一I/O请求数据包时,对相应设备加电,而当队列出空或被清除时断电。
24.如权利要求23所述的方法,其特征在于,包括下列步骤:
如果从处于Kernal模式下的IO管理器接收到IRP,则通过调度例行程序对例行程序进行调度,并接收所有种类的数据包;以及
检查所接收的IRP是否为电源IRP,并且如果所接收的IRP不是电源IRP但是内部变量暂停标志=0,则把数据包放到正常滤波器驱动器操作的队列中。
25.如权利要求21所述的方法,其特征在于,包括下列步骤:
如果数据包进入一个队列,则自动地调度相关联的第一设备;
如果所述第一设备已经处于掉电模式,则对所述第一设备加电;
把一个数据包从所述队列传送到相关联的下一个滤波器驱动器;并且
如果所述队列是空的,则完成一例行程序,如果直到第一定时器超时才对例行程序再次进行调度,则在电源管理器处把掉电IRP传送到第一设备,使所述第一设备改变成掉电模式。
26.如权利要求25所述的方法,其特征在于,如果正在使用所述第一设备,则重置所述第一定时器,以防止所述第一设备处于掉电模式。
27.如权利要求25所述的方法,其特征在于,在所述操作系统中使所述数据包具有较低优先级,并且因此在操作系统首先处理具有较高优先级的数据包之后进行调度,使所述队列装载有多个数据包IRP。
28.如权利要求27所述的方法,其特征在于,进一步包括下列步骤:
如果所接收的数据包是电源IRP,则检查所接收的数据包是否为用于改变所述计算机系统的电源状态的系统电源IRP;
如果所接收的数据包是系统电源IRP,则检查所接收的数据包是否为IRP数据中的新状态S0;
如果所接收的数据包不是S0,则由于现在计算机系统进入掉电模式,设置内部变量为暂停标志=1,并阻止所有其他的IRP进入所述队列;以及
清除当前保留在所述队列中的所有IRP。
29.如权利要求25所述的方法,其特征在于,进一步包括下列步骤:
如果所接收数据包是电源IRP,则检查所接收的数据包是否是用于改变所述系统电源状态的系统电源IRP;并且
如果所接收的数据包是系统电源IRP,则进行到下一个设备驱动器。
30.如权利要求30所述的方法,其特征在于,进一步包括下列步骤:
如果所接收的数据包是电源IRP,则检查所接收的数据包是否是用于改变所述系统电源状态的系统电源IRP;
如果所接收的数据包是系统电源IRP,则检查所接收的数据包是否是IRP数据中的新的状态S0;以及
如果所接收的数据包是S0,则自启动所述系统起,设置内部变量为暂停标志=0。
31.一种管理计算机系统中电源的方法,其特征在于,所述方法包括下列步骤:
当所述计算机系统处于操作模式时,检测设备是否处于空闲状态;
对检测到处于空闲状态的设备的空闲时间进行计数;以及
当已经计数的空闲时间长于预定时间时,使所述设备的电源模式从操作模式改变成掉电模式。
32.如权利要求31所述的方法,其特征在于,所述设备是声卡。
33.如权利要求32所述的方法,其特征在于,所述预定时间具有处于电池模式下的第一超时值、处于性能模式下的第二超时值,其中,所述预定时间根据所述设备而变化,并且其中,通过用户或预置来设置所述预定时间或设备。
CNB200310104663XA 2002-10-31 2003-10-30 管理计算机系统中电源的装置和方法 Expired - Fee Related CN100541393C (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR10-2002-0066828 2002-10-31
KR1020020066828 2002-10-31
KR10-2002-0066828A KR100499611B1 (ko) 2002-08-22 2002-10-31 컴퓨터 시스템의 전원 관리방법 및 장치

Publications (2)

Publication Number Publication Date
CN1499339A true CN1499339A (zh) 2004-05-26
CN100541393C CN100541393C (zh) 2009-09-16

Family

ID=32089775

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB200310104663XA Expired - Fee Related CN100541393C (zh) 2002-10-31 2003-10-30 管理计算机系统中电源的装置和方法

Country Status (4)

Country Link
US (2) US7376851B2 (zh)
EP (1) EP1416358A3 (zh)
JP (1) JP4636302B2 (zh)
CN (1) CN100541393C (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102692993A (zh) * 2011-02-17 2012-09-26 佳能株式会社 数据处理装置及其节电控制方法

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4217445B2 (ja) * 2002-09-06 2009-02-04 キヤノン株式会社 データ処理装置および電力制御方法およびコンピュータが読み取り可能な記憶媒体およびプログラム
KR101145542B1 (ko) * 2004-10-27 2012-05-15 엘지전자 주식회사 전원관리 장치 및 방법
KR20070013404A (ko) * 2005-07-26 2007-01-31 엘지전자 주식회사 저장 장치 전원 제어 장치 및 방법
US7714852B1 (en) * 2005-11-10 2010-05-11 Landesk Software Limited Systems and methods for blanking a display screen on a display device of a computer system
KR101282139B1 (ko) * 2006-09-11 2013-07-04 삼성전자주식회사 별도 버튼을 이용하여 성능모드 변경이 가능한컴퓨터시스템 및 그 제어방법
US8448003B1 (en) 2007-05-03 2013-05-21 Marvell Israel (M.I.S.L) Ltd. Method and apparatus for activating sleep mode
JP4996324B2 (ja) * 2007-05-07 2012-08-08 株式会社東芝 情報処理装置および省電力制御方法
JP5082965B2 (ja) * 2008-03-21 2012-11-28 セイコーエプソン株式会社 印刷装置および情報管理システム
US8458722B2 (en) * 2008-06-09 2013-06-04 International Business Machines Corporation Thread selection according to predefined power characteristics during context switching on compute nodes
US9182939B1 (en) * 2008-09-19 2015-11-10 Nvidia Corporation Method and system for managing the power state of an audio device integrated in a graphics device
US8347118B1 (en) 2008-09-19 2013-01-01 Nvidia Corporation Method and system for managing the power state of an audio device integrated in a graphics device
US8190937B1 (en) 2008-09-19 2012-05-29 Nvidia Corporation Method and system for managing the power state of an audio device integrated in a graphics device
KR20110021182A (ko) * 2009-08-25 2011-03-04 삼성전자주식회사 컴퓨터시스템 및 그 제어방법
US8856501B2 (en) * 2009-12-14 2014-10-07 Sandisk Technologies Inc. Method and system for controlling operation of interconnected devices by circulating host capability without a centralized manager
JP5556171B2 (ja) * 2009-12-29 2014-07-23 セイコーエプソン株式会社 制御装置、制御システム、及び、制御方法
US8595522B2 (en) 2010-09-30 2013-11-26 Intel Corporation Monitoring transaction requests using a policy engine within a storage drive driver to change power capability and latency settings for a storage drive
TW201227260A (en) * 2010-12-22 2012-07-01 Ralink Technology Corp Usb system and power management module and method thereof
US11301345B2 (en) * 2011-11-30 2022-04-12 Red Hat, Inc. Desktop sound source discovery
US9015510B2 (en) * 2012-06-29 2015-04-21 Intel Corporation Optimizing energy efficiency using device idle duration information and latency tolerance based on a pre-wake configuration of a platform associated to the device
US9170964B2 (en) * 2012-11-30 2015-10-27 Intel Corporation USB device interrupt signal
US20140173306A1 (en) * 2012-12-19 2014-06-19 Barnes Cooper System and method for providing for power savings in a processor environment
US10013039B2 (en) 2013-11-15 2018-07-03 Motorola Solutions, Inc. System and method of managing power at a universal bus (USB) port of a bluetooth-enabled mobile device
JP2015176214A (ja) * 2014-03-13 2015-10-05 株式会社東芝 通信装置
JP6533346B2 (ja) * 2016-10-18 2019-06-19 富士フイルム株式会社 電子機器、省電力制御方法及びプログラム
WO2018145201A1 (en) 2017-02-08 2018-08-16 Upstream Data Inc. Blockchain mine at oil or gas facility
WO2019139632A1 (en) 2018-01-11 2019-07-18 Lancium Llc Method and system for dynamic power delivery to a flexible datacenter using unutilized energy sources
US11016553B2 (en) 2018-09-14 2021-05-25 Lancium Llc Methods and systems for distributed power control of flexible datacenters
US10873211B2 (en) 2018-09-14 2020-12-22 Lancium Llc Systems and methods for dynamic power routing with behind-the-meter energy storage
US11031787B2 (en) 2018-09-14 2021-06-08 Lancium Llc System of critical datacenters and behind-the-meter flexible datacenters
US10367353B1 (en) 2018-10-30 2019-07-30 Lancium Llc Managing queue distribution between critical datacenter and flexible datacenter
US10452127B1 (en) * 2019-01-11 2019-10-22 Lancium Llc Redundant flexible datacenter workload scheduling
US11128165B2 (en) 2019-02-25 2021-09-21 Lancium Llc Behind-the-meter charging station with availability notification
WO2020227811A1 (en) 2019-05-15 2020-11-19 Upstream Data Inc. Portable blockchain mining system and methods of use
US11868106B2 (en) 2019-08-01 2024-01-09 Lancium Llc Granular power ramping
US11397999B2 (en) 2019-08-01 2022-07-26 Lancium Llc Modifying computing system operations based on cost and power conditions
US10608433B1 (en) 2019-10-28 2020-03-31 Lancium Llc Methods and systems for adjusting power consumption based on a fixed-duration power option agreement
US11042948B1 (en) 2020-02-27 2021-06-22 Lancium Llc Computing component arrangement based on ramping capabilities

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3034362B2 (ja) * 1990-11-22 2000-04-17 株式会社日立製作所 周辺制御装置およびscsiバス制御装置
EP0670539B1 (en) 1994-02-23 2000-04-12 Sun Microsystems, Inc. Method and apparatus for conserving power in a computer system using a power management pseudo-device driver
US6092209A (en) * 1994-10-04 2000-07-18 Intel Corporation Method and apparatus for managing power consumption of peripheral devices of personal computers
US5860125A (en) * 1995-11-08 1999-01-12 Advanced Micro Devices, Inc. Integrated circuit including a real time clock, configuration RAM, and memory controller in a core section which receives an asynchronous partial reset and an asynchronous master reset
US5784628A (en) * 1996-03-12 1998-07-21 Microsoft Corporation Method and system for controlling power consumption in a computer system
JP3344544B2 (ja) * 1996-10-22 2002-11-11 株式会社東芝 コンピュータシステム
US6065125A (en) * 1996-10-30 2000-05-16 Texas Instruments Incorporated SMM power management circuits, systems, and methods
US6314523B1 (en) * 1997-04-09 2001-11-06 Compaq Computer Corporation Apparatus for distributing power to a system of independently powered devices
US5925134A (en) * 1997-09-30 1999-07-20 Intel Corporation Method and apparatus for power management
US6128745A (en) * 1998-05-28 2000-10-03 Phoenix Technologies Ltd. Power management inactivity monitoring using software threads
US6446214B2 (en) * 1998-06-08 2002-09-03 Microsoft Corporation System and method for handling power state change requests initiated by peripheral devices
US6347377B2 (en) * 1998-11-04 2002-02-12 Phoenix Technologies Ltd. Method and apparatus for providing intelligent power management
JP2002247069A (ja) * 2001-02-21 2002-08-30 Ricoh Co Ltd ファクシミリメール装置、ルータ装置およびファクシミリメールシステム
US20030051179A1 (en) * 2001-09-13 2003-03-13 Tsirkel Aaron M. Method and apparatus for power management of displays
US7103788B1 (en) * 2001-10-31 2006-09-05 Microsoft Corporation Selective suspension of bus devices

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102692993A (zh) * 2011-02-17 2012-09-26 佳能株式会社 数据处理装置及其节电控制方法
US9377838B2 (en) 2011-02-17 2016-06-28 Canon Kabushiki Kaisha Data processing apparatus and power saving control method when transiting to a power saving state

Also Published As

Publication number Publication date
US20040117679A1 (en) 2004-06-17
US7707447B2 (en) 2010-04-27
US20070294554A1 (en) 2007-12-20
JP4636302B2 (ja) 2011-02-23
CN100541393C (zh) 2009-09-16
EP1416358A3 (en) 2009-04-08
JP2004152309A (ja) 2004-05-27
US7376851B2 (en) 2008-05-20
EP1416358A2 (en) 2004-05-06

Similar Documents

Publication Publication Date Title
CN1499339A (zh) 管理计算机系统中电源的装置和方法
CN1292586C (zh) 电子设备和电源控制方法
CN101308399B (zh) 通用串行总线设备选择休眠的实现方法及相关的装置
CN1129056C (zh) 节电操作的远程控制方法和信息处理设备
CN102541653B (zh) 一种多任务线程池调度方法和系统
CN1773399A (zh) 用于控制待机电源的设备
CN102096603B (zh) MapReduce系统中的作业分解控制方法及设备
CN1645955A (zh) Td-scdma手机系统电源管理及省电的方法
CN1881140A (zh) 多核处理器的处理器模式自动控制装置及其方法
CN1732447A (zh) 最低优先级中断的处理器功率状态知晓分配的机制
CN1601477A (zh) 用于自主自适应互斥体的方法和系统
CN1910553A (zh) 基于存储器要求在多处理器系统中进行任务调度的方法和设备
CN101051281A (zh) 多cpu对临界资源进行互斥访问的方法和装置
CN1349627A (zh) 处理器的省电控制方法、记录媒体、以及处理器的省电控制装置
JP2008077563A (ja) 電子機器およびcpu動作環境制御プログラム
CN104050137A (zh) 一种异构操作系统中内核运行的方法及装置
CN100336346C (zh) 并行计算集群电源的能耗控制方法
CN101051242A (zh) 用于一计算机系统的电源供应控制方法及装置
KR20140026308A (ko) 멀티 코어 시스템의 전력 관리 장치 및 방법
CN1303495C (zh) 检测单一不断电系统及多个服务器的电源监控管理方法
CN1245685C (zh) 基于构件的操作系统动态设备驱动的方法
CN1577289A (zh) 用于控制cpu速度转换的装置和方法
CN100340976C (zh) 一种实现计算机多线程控制的方法及装置
CN1716157A (zh) 自动调整电路工作频率的交换式供电系统及其方法
CN1825985A (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: 20090916

Termination date: 20191030

CF01 Termination of patent right due to non-payment of annual fee