欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

管理計算機(jī)系統(tǒng)中電源的裝置和方法

文檔序號:6420140閱讀:147來源:國知局
專利名稱:管理計算機(jī)系統(tǒng)中電源的裝置和方法
背景技術(shù)
發(fā)明領(lǐng)域本發(fā)明涉及安裝有多個設(shè)備的計算機(jī)系統(tǒng),尤其涉及管理計算機(jī)系統(tǒng)中電源的一種裝置和方法。
現(xiàn)有技術(shù)的背景

圖1示出用于管理計算機(jī)系統(tǒng)中的電源的一種裝置的配置。在下面的說明中,‘掉電模式’是指除了加電模式(例如,正常操作模式)之外的所有種類的電源模式(即,等待、暫?;蚯袛嚯娫吹?。計算機(jī)系統(tǒng)包括操作系統(tǒng)10、設(shè)備驅(qū)動器20、總線驅(qū)動器30以及設(shè)備40。根據(jù)操作系統(tǒng)10設(shè)置的系統(tǒng)電源模式共同地確定包括網(wǎng)絡(luò)適配器、顯示適配器、鼠標(biāo)、監(jiān)視器、盤驅(qū)動器、數(shù)字?jǐn)z像機(jī)、掃描儀以及聲卡等的各個設(shè)備40的電源模式。
例如,假設(shè)操作系統(tǒng)10設(shè)置系統(tǒng)電源模式為掉電模式。則設(shè)備驅(qū)動器20把已經(jīng)操作和控制的設(shè)備的電源模式設(shè)置為掉電模式。另一方面,如果操作系統(tǒng)10把系統(tǒng)電源模式設(shè)置為操作模式,則設(shè)備驅(qū)動器20把已經(jīng)操作和控制的設(shè)備的電源模式設(shè)置為操作模式,并按正常的方式供電。因此,設(shè)備驅(qū)動器20改變設(shè)備的電源模式,使之相應(yīng)于通過操作系統(tǒng)10設(shè)置為操作模式(例如,D0)或掉電模式(例如,D1、D2、D3)的系統(tǒng)電源模式。
例如,操作系統(tǒng)10可以產(chǎn)生相應(yīng)于它已經(jīng)設(shè)置的系統(tǒng)電源模式的輸入/輸出(I/O)請求數(shù)據(jù)包(IRP),并把IRP輸出到設(shè)備驅(qū)動器20。然后,設(shè)備驅(qū)動器20識別IRP,并產(chǎn)生設(shè)備電源模式數(shù)據(jù)包(DPMP),使目標(biāo)(例如相應(yīng)的)設(shè)備40的電源模式成為操作模式或掉電模式,并把DPMP輸出到驅(qū)動器堆棧的最上端,把設(shè)備電源模式已經(jīng)改變通知每個驅(qū)動器。
設(shè)備40根據(jù)DPMP操作它的硬件和把電源模式改變到掉電模式或操作模式,并把電源模式數(shù)據(jù)包發(fā)送到總線驅(qū)動器30。當(dāng)在相應(yīng)總線(例如,PCI、USB、IEEE1394等)下的每個設(shè)備都處于掉電模式中時,總線驅(qū)動器30把總線電源模式改變成掉電模式。因此,當(dāng)操作系統(tǒng)10把系統(tǒng)電源模式設(shè)置成掉電模式時,每個設(shè)備的電源模式改變成掉電模式。換言之,現(xiàn)在整個計算機(jī)系統(tǒng)進(jìn)入掉電模式。
如上所述,現(xiàn)有技術(shù)具有多個缺點(diǎn)。在現(xiàn)有技術(shù)中,根據(jù)系統(tǒng)電源模式共同設(shè)置每個設(shè)備的電源模式。換言之,一旦當(dāng)前的系統(tǒng)電源模式處于操作模式,則每個設(shè)備都處于操作模式。因此,雖然某些設(shè)備在規(guī)定的時間周期中可能處于空閑狀態(tài),但是這些設(shè)備的電源模式都處于操作模式。這時,不必要地消耗了許多電源,而且系統(tǒng)負(fù)載不起作用。
發(fā)明概要本發(fā)明的一個目的是解決至少上述問題和/或缺點(diǎn),并提供至少這里下面所描述的優(yōu)點(diǎn)。
本發(fā)明的另一個目的是提供用于計算機(jī)系統(tǒng)的一種裝置和方法,所述裝置和方法可以把計算機(jī)系統(tǒng)中的多個設(shè)備或每個設(shè)備的電源模式改變成第一和第二電源條件中的每一個。
本發(fā)明的另一個目的是提供計算機(jī)系統(tǒng)中管理電源的一種裝置和方法,所述裝置和方法可以把計算機(jī)系統(tǒng)中每個設(shè)備的電源模式改變成獨(dú)立于計算機(jī)操作系統(tǒng)(OS)設(shè)置的系統(tǒng)電源模式的加電模式(正常模式)或掉電模式。
通過提供管理計算機(jī)系統(tǒng)中的電源的一種裝置可以全部或部分地實(shí)現(xiàn)上述的和其它的目的和優(yōu)點(diǎn),所述裝置包括為設(shè)置計算機(jī)系統(tǒng)的操作模式而配置的操作系統(tǒng),其中,電源模式包括操作模式和掉電模式中的至少一個模式,配置成執(zhí)行特定功能和操作的至少一種設(shè)備,配置成控制相應(yīng)設(shè)備上的操作的至少一個設(shè)備驅(qū)動器,其中,把設(shè)備驅(qū)動器配置成在操作模式和掉電模式的至少一個模式中間改變相應(yīng)設(shè)備的電源模式,以及耦合到操作系統(tǒng)的濾波器驅(qū)動器,其中,當(dāng)計算機(jī)系統(tǒng)處于操作模式中時,把濾波器驅(qū)動器配置成獨(dú)立地控制所選擇的設(shè)備使之在掉電模式中操作。
通過提供一種方法可以全部或部分地實(shí)現(xiàn)上述的和其它的目的和優(yōu)點(diǎn),所述方法包括在第一和第二電源模式中操作計算機(jī)系統(tǒng),在第一和第二電源模式中操作計算機(jī)系統(tǒng)中的設(shè)備,以及當(dāng)計算機(jī)系統(tǒng)處于第一電源模式中時,控制所選擇的設(shè)備處于第二電源模式中。
通過提供管理計算機(jī)系統(tǒng)中的電源的一種方法可以全部或部分地實(shí)現(xiàn)上述的和其它的目的和優(yōu)點(diǎn),所述方法包括當(dāng)計算機(jī)系統(tǒng)的電源模式處于操作模式時,檢測處于空閑狀態(tài)的至少一個設(shè)備,確定所檢測的處于空閑狀態(tài)的設(shè)備的空閑時間,以及當(dāng)沒有重置空閑狀態(tài)達(dá)預(yù)定時間時,把相應(yīng)設(shè)備的電源模式從操作模式改變成掉電模式。
通過提供管理計算機(jī)系統(tǒng)中的電源的一種方法可以全部或部分地實(shí)現(xiàn)上述的和其它的目的和優(yōu)點(diǎn),所述方法包括把相應(yīng)設(shè)備的電源狀態(tài)設(shè)置成掉電狀態(tài),在把關(guān)于相應(yīng)設(shè)備的所接收消息傳送到設(shè)備驅(qū)動器之前,把改變相應(yīng)設(shè)備到操作狀態(tài)的電源控制消息傳送到設(shè)備驅(qū)動器,在把相應(yīng)設(shè)備改變成操作狀態(tài)之后,把所接收消息傳送到設(shè)備驅(qū)動器,以及在設(shè)備驅(qū)動器完成消息處理之后,把相應(yīng)設(shè)備設(shè)置為掉電狀態(tài)。
通過提供管理計算機(jī)系統(tǒng)中的電源的一種方法可以全部或部分地實(shí)現(xiàn)上述的和其它的目的和優(yōu)點(diǎn),所述方法包括當(dāng)計算機(jī)系統(tǒng)的電源模式處于操作模式時,檢測設(shè)備是否處于空閑狀態(tài),對所檢測的處于空閑狀態(tài)的設(shè)備的空閑時間進(jìn)行計數(shù),以及當(dāng)已經(jīng)計數(shù)的空閑時間大于預(yù)定時間時,把設(shè)備的電源模式從操作模式改變成掉電模式。
通過提供濾波器驅(qū)動器可以全部或部分地實(shí)現(xiàn)上述的和其它的目的和優(yōu)點(diǎn),所述濾波器驅(qū)動器配備數(shù)據(jù)包監(jiān)測功能,檢測安裝在計算機(jī)系統(tǒng)中的設(shè)備是否處于空閑狀態(tài)。如果設(shè)備處于空閑狀態(tài),則把相應(yīng)設(shè)備的電源模式改變成掉電模式,與計算機(jī)系統(tǒng)中的操作系統(tǒng)已經(jīng)設(shè)置的系統(tǒng)電源模式狀態(tài)無關(guān)。如此,不需把不必要的電源提供給處于空閑狀態(tài)的設(shè)備,變成有可能對計算機(jī)系統(tǒng)的負(fù)載進(jìn)行更有效的控制??偟膩碚f,可以有利地使用本發(fā)明,通過把濾波器驅(qū)動器添加到系統(tǒng),可以更簡單地開發(fā)和擴(kuò)展計算機(jī)系統(tǒng)而無需改變計算機(jī)系統(tǒng)中的設(shè)備驅(qū)動器。
在下述說明中將部分地陳述本發(fā)明另外的優(yōu)點(diǎn)、目的和特征,熟悉本技術(shù)領(lǐng)域普通技術(shù)的人員根據(jù)對下述說明的研究或可以學(xué)習(xí)本發(fā)明的實(shí)踐而會有幾分明白。如在所附的權(quán)利要求書中特別指出,本發(fā)明的目的和優(yōu)點(diǎn)是可以實(shí)現(xiàn)和達(dá)到的。
附圖簡述將參考下面的附圖詳細(xì)描述本發(fā)明,在所有的附圖中,相同的標(biāo)記所表示的意義相同,其中圖1是方框圖,示出在計算機(jī)系統(tǒng)中管理電源的現(xiàn)有技術(shù)裝置;圖2是方框圖,示出根據(jù)本發(fā)明在計算機(jī)系統(tǒng)中管理電源的裝置的較佳實(shí)施例;圖3是流程圖,示出濾波器驅(qū)動器的示例裝載過程,以及當(dāng)引導(dǎo)計算機(jī)系統(tǒng)時起動定時器;圖4是示意圖,示出用戶模式、Kernel模式、濾波器驅(qū)動器和功能驅(qū)動器之間的交互作用;圖5是流程圖,示出根據(jù)本發(fā)明的較佳實(shí)施例的濾波器驅(qū)動器方法,用于管理設(shè)備的操作模式和掉電模式;圖6是示出產(chǎn)生FIRP的過程的示圖;圖7是示出根據(jù)本發(fā)明的另一個實(shí)施例的一個過程的示圖,所述過程用于設(shè)置空閑檢測的定時器,以及用于管理其中的電源模式;圖8是流程圖,示出一種方法的另一個較佳實(shí)施例,用于在從用戶模式(應(yīng)用程序)到操作系統(tǒng)接收分組數(shù)據(jù)時改變目標(biāo)設(shè)備的電源模式,以及從IO管理器發(fā)送IRP;圖9是流程圖,示出在濾波器驅(qū)動器處處理所發(fā)送的IP請求數(shù)據(jù)包的過程;以及圖10是方框圖,示出根據(jù)本發(fā)明的裝置的較佳實(shí)施例,用于管理計算機(jī)系統(tǒng)中的電源。
較佳實(shí)施例的詳述圖2是方框圖,示出根據(jù)本發(fā)明的較佳實(shí)施例的一種裝置,用于管理計算機(jī)系統(tǒng)中的電源。如在圖2中所描繪,計算機(jī)系統(tǒng)可以包括操作系統(tǒng)(OS)10、設(shè)備驅(qū)動器20、總線驅(qū)動器30、設(shè)備40、以及濾波器驅(qū)動器100。濾波器驅(qū)動器100可以起的作用是擴(kuò)展(例如,添加或修改)設(shè)備驅(qū)動器20的功能。
最好驅(qū)動器堆棧中包括至少一個濾波器驅(qū)動器100,以擴(kuò)展設(shè)備驅(qū)動器20的功能。例如,當(dāng)把濾波器驅(qū)動器100添加到設(shè)備驅(qū)動器20的頂上層和操作系統(tǒng)10設(shè)置的系統(tǒng)電源模式處于操作模式時,濾波器驅(qū)動器100可以把這個通知設(shè)備驅(qū)動器20。然而,不打算把本發(fā)明如此地限制于濾波器驅(qū)動器的位置或相應(yīng)的功能。濾波器驅(qū)動器100可以進(jìn)一步把設(shè)備40中已經(jīng)產(chǎn)生的數(shù)據(jù)經(jīng)由設(shè)備驅(qū)動器20發(fā)送或轉(zhuǎn)發(fā)到操作系統(tǒng)10。
圖3示出流程圖,該流程圖示出裝載到濾波器驅(qū)動器的示例裝載過程以及起動定時器,最好在對計算機(jī)系統(tǒng)進(jìn)行初始化和引導(dǎo)時。圖4是示意圖,示出根據(jù)較佳實(shí)施例的用戶模式、Kernel模式(例如,在操作系統(tǒng)中的處理)、濾波器驅(qū)動器100和功能驅(qū)動器45中間的交互作用。
當(dāng)系統(tǒng)受到引導(dǎo)時,首先把設(shè)備驅(qū)動器(例如,設(shè)備驅(qū)動器20),然后把波器驅(qū)動器(例如,濾波器驅(qū)動器100)裝載到存儲器中,隨后是一個初始化過程,如在圖3中所示。在圖3中的過程開始之后,控制傳送到步驟S31。首先讀出(步驟S31)最好是通過用戶設(shè)置的超時值。
然后,最好接著出現(xiàn)操作濾波器驅(qū)動器的其它基本工作或功能。即,可以分配臨時存儲I/O請求數(shù)據(jù)包(IRP)的一個空間,可以設(shè)置事件調(diào)用返回例行程序,可以使一個序列初始化,然后可以初始化要使用的一個可變暫停時間間隔(例如,‘暫?!瘶?biāo)志)(步驟S32、S33和S34)。
進(jìn)一步,可以設(shè)置一個定時器。然后,可以起動定時器(步驟S35)。在步驟S35之后,完成過程。
如在圖4中所示,在用戶模式中執(zhí)行或調(diào)度的示例應(yīng)用程序可以產(chǎn)生各種聲音流,并且可以通過IO管理器把圖4的聲音數(shù)據(jù)轉(zhuǎn)換成IP請求數(shù)據(jù)包(IRP),并且最后傳送到聲音設(shè)備驅(qū)動器。聲音設(shè)備驅(qū)動器(例如,功能驅(qū)動器45)可以由多個調(diào)度例行程序所組成,這些調(diào)度例行程序包括CREAT Dispatch(IOC)(創(chuàng)建調(diào)度)),用于處理當(dāng)使用聲音設(shè)備驅(qū)動器時產(chǎn)生的IRP;電源調(diào)度,用于處理設(shè)備的修改或詢問的電源IRP;或PnP調(diào)度,用于處理包括在除去和操作設(shè)備的安裝中的IRP。
現(xiàn)在將討論管理相應(yīng)設(shè)備的操作模式和掉電模式的濾波器驅(qū)動器的三種示例方法。然而,本發(fā)明并不受此限制。
圖5示出用于操作濾波器驅(qū)動器的一種方法的第一較佳實(shí)施例。濾波器驅(qū)動器100最好連續(xù)監(jiān)測設(shè)備40的操作模式(步驟S51)。如果設(shè)備40的目標(biāo)設(shè)備40的操作時間不長于預(yù)定時間,并且進(jìn)入了空閑狀態(tài),則累加設(shè)備40空閑時間(步驟S52、S53)。
如果經(jīng)累加的空閑時間大于預(yù)定的(例如,基本的)時間(步驟S53),則濾波器驅(qū)動器100產(chǎn)生一個控制信號,例如,F(xiàn)IRP(假IRP),該控制信號可以與操作系統(tǒng)10產(chǎn)生和輸出的IRP相似,最好,即使操作系統(tǒng)10設(shè)置的系統(tǒng)電源模式處于操作模式,也使目標(biāo)設(shè)備40的電源模式從操作模式轉(zhuǎn)變成所要求的電源模式(例如,掉電模式)。濾波器驅(qū)動器100可以把FIRP傳送到相應(yīng)的設(shè)備驅(qū)動器20(步驟S55)。
接收到FIRP,設(shè)備驅(qū)動器20推斷出目標(biāo)設(shè)備的電源模式已經(jīng)改變(例如,最好與響應(yīng)于從操作系統(tǒng)10產(chǎn)生和輸出的IRP相似)。因此,設(shè)備驅(qū)動器20可以把空閑狀態(tài)中的目標(biāo)設(shè)備的電源模式設(shè)置為掉電模式,所述掉電模式可以減少或阻止向空閑狀態(tài)中的設(shè)備提供不必要的電源(步驟S56)。
如果經(jīng)累加的空閑時間值不大于預(yù)定值(步驟S53),則最好繼續(xù)進(jìn)行空閑時間的累加。因此,控制最好轉(zhuǎn)移回步驟S52。如果判定目標(biāo)設(shè)備沒有處于空閑狀態(tài)(步驟S53),則最好在預(yù)定的電源模式中操作設(shè)備(步驟S54)。
圖6是示圖,示出產(chǎn)生FIRP的控制消息的示例過程。如在圖6中所示,操作系統(tǒng)產(chǎn)生相應(yīng)于它所設(shè)置的系統(tǒng)電源模式的IRP,并把IRP輸出到目標(biāo)設(shè)備(PoRequestPowerIrp,PDEVICE_OBJECT)。
根據(jù)電源IRP(Power IRP)的種類,改變設(shè)備的電源狀態(tài)或詢問而設(shè)置所要求的電源狀態(tài)(例如,D0、D1、D2和D3)(MinorFunction,Powerstate)。每個數(shù)字表示不同的電源狀態(tài)。例如,D0表示‘加電(Power ON)’;D1表示‘等待(Standby)’;D2表示‘暫停(Suspend)’;而D3表示‘切斷電源(Poweroff)’。
在設(shè)置電源狀態(tài)之后可以根據(jù)新的狀態(tài)執(zhí)行系統(tǒng)(CompletionFunction)。在系統(tǒng)加電達(dá)預(yù)定時間周期的情況中,輸出FIRP。
在圖6中,術(shù)語‘DeviceObject’(設(shè)備目標(biāo))表明目標(biāo)設(shè)備的物理驅(qū)動器,而‘MinorFunction’(次要功能)是改變或詢問設(shè)備的電源的電源IRP的一個例子。此外,‘PowerState’(電源狀態(tài))是指諸如D0、D1、D3和D4之類的電源狀態(tài)?!瓹ompletionFunction’(完成功能)是回調(diào)例行程序(callback routine),該例行程序在改變電源狀態(tài)之后進(jìn)行調(diào)度。最后,‘Context’(上下文)是要發(fā)送到回調(diào)例行程序的一個因子。
現(xiàn)在將描述管理設(shè)備的操作模式和掉電模式的濾波器驅(qū)動器的第二種方法。濾波器驅(qū)動器(例如,與圖4相似的,圖2的濾波器驅(qū)動器100)可以操作在操作系統(tǒng)中的電源管理器70的空閑檢測功能,如果直到預(yù)定時間已過才重置定時器,則改變目標(biāo)設(shè)備或設(shè)備的電源狀態(tài)。下面將參考圖7到圖9提供進(jìn)一步的說明。
圖7是濾波器驅(qū)動器管理多個設(shè)備的電源模式的一種方法的第二較佳實(shí)施例。如在圖7中所示,為了空閑檢測和為了管理其電源模式,所述方法可以重置定時器。
電源管理器(例如,濾波器驅(qū)動器)提供一種功能,用于在預(yù)定的(或預(yù)登記的)時間之后重置定時器以及改變設(shè)備的狀態(tài)以致在每個設(shè)備上執(zhí)行空閑檢測,并管理各個設(shè)備的電源(例如,PoRegisterDeviceForIdleDetection)。在該功能中,最好存在電池模式中的超時值、性能模式中的超時值以及當(dāng)時間已過時的設(shè)備電源狀態(tài)。即,當(dāng)指定目標(biāo)設(shè)備時,在預(yù)登記時間過去之后,電源管理器產(chǎn)生電源IRP,用于在目標(biāo)設(shè)備上把電源狀態(tài)改變成登記的電源狀態(tài)。
這里,‘DeviceObject’(設(shè)備目標(biāo))表示目標(biāo)設(shè)備;‘ConversationIdleTime’(通話空閑時間)表示電池模式中的超時;‘PerformanceIdleTime’(性能空閑時間)表示AC模式中的超時;以及‘State’(狀態(tài))表示時間超過之后的設(shè)備電源狀態(tài)。另一方面,當(dāng)設(shè)備處于操作中時,應(yīng)該使用電源管理器提供的功能重置和再初始化內(nèi)部時間(例如,PoSetDeviceBusy)。
圖8是根據(jù)第二實(shí)施例的流程圖,示出改變目標(biāo)設(shè)備的電源模式的一種方法。在圖8中,在圖4中從用戶模式到Kernel模式接收到數(shù)據(jù)包數(shù)據(jù)的情況中,過程改變目標(biāo)設(shè)備的電源模式,并且從IO管理器發(fā)送IRP。
在開始圖8中的過程之后,當(dāng)把數(shù)據(jù)包輸入到一個隊(duì)列中時,自動地進(jìn)行調(diào)度(步驟S81)。上述例行程序在操作系統(tǒng)中具有低優(yōu)先級,所以在操作系統(tǒng)完成具有較高優(yōu)先級的其它工作之后才進(jìn)行調(diào)度。因此,在隊(duì)列中可能有許多IRP。如果系統(tǒng)剛好處于比暫停模式(例如,暫停標(biāo)志=1)優(yōu)先的狀態(tài),則因?yàn)殛?duì)列中沒有IRP而不調(diào)度例行程序。
如果根據(jù)步驟S81設(shè)備處于掉電模式,則設(shè)備的電源最好轉(zhuǎn)向操作模式(例如,使用濾波器驅(qū)動器)(步驟S82),然后從隊(duì)列取得數(shù)據(jù)包(步驟S83),然后在下一個步驟的設(shè)備驅(qū)動器上傳送數(shù)據(jù)包(步驟S84)。現(xiàn)在,正在使用設(shè)備,重置了相應(yīng)的定時器,并且設(shè)備不返回到掉電模式(步驟S85)。
如果在隊(duì)列中還留下任何數(shù)據(jù)包,則重復(fù)從步驟S83開始的過程。然而,如果不再有數(shù)據(jù)包,則完成了例行程序。當(dāng)直到定時器超時才再次調(diào)度例行程序時,電源管理器(例如,使用濾波器驅(qū)動器)發(fā)送掉電IRP、設(shè)置掉電模式中的設(shè)備(步驟S86)。
一般,如在圖9中所示,當(dāng)從Kernel模式中的IO管理器(例如,IO管理器50)接收到IRP時,例行程序用接收所有種類的數(shù)據(jù)包的調(diào)度例行程序開始(步驟S91)。在圖9中的過程可應(yīng)用于根據(jù)本發(fā)明的系統(tǒng)、方法和濾波器驅(qū)動器的每個較佳實(shí)施例。首先,判定所接收IRP是否為電源IRP(步驟S92),如果不是,則比較內(nèi)部變量,即,暫停標(biāo)志=1。換言之,比較系統(tǒng)是否處于剛好比暫停模式優(yōu)先的狀態(tài)(步驟S93)。
根據(jù)比較結(jié)果(步驟S92和S93),如果判定所接收IRP不是電源IRP以及內(nèi)部變量是暫停標(biāo)志=0,則把數(shù)據(jù)包放在隊(duì)列中以促進(jìn)濾波器驅(qū)動器進(jìn)行正常操作(步驟S94)。一旦把數(shù)據(jù)包放在隊(duì)列中,就在操作系統(tǒng)(OS)下執(zhí)行隊(duì)列處理例行程序。
如果在步驟S92中判定所接收IRP是電源IRP,則進(jìn)行另一個比較,判定數(shù)據(jù)包是否為用于改變電源狀態(tài)的系統(tǒng)電源IRP(步驟S95)。如果判定所接收數(shù)據(jù)包與系統(tǒng)電源IRP毫無關(guān)系,則繼續(xù)進(jìn)行下一個步驟(例如,濾波器驅(qū)動器)(步驟S96)。
然而,如果在步驟S95中所接收電源IRP是系統(tǒng)電源IRP,則比較IRP是否處于新的狀態(tài)或S0(步驟S97)。
如果是處于新的狀態(tài)S0,則這意味著正在喚醒系統(tǒng),所以應(yīng)該使內(nèi)部變量清零,即暫停標(biāo)志=0。這表示濾波器驅(qū)動器返回到正常操作模式(步驟S98)。
如果IRP不處于S0的狀態(tài)(步驟S97),則這意味著系統(tǒng)正在進(jìn)入掉電模式。在這種情況中,把內(nèi)部變量設(shè)置成暫停標(biāo)志=1,并且不允許再有IRP進(jìn)入隊(duì)列(步驟S99)。除去或壓縮余留在隊(duì)列中的任何IRP,并完成例行程序(步驟S100)。
過程從步驟S98和S100繼續(xù)進(jìn)行到步驟S96。從步驟S94和S96,過程結(jié)束。
濾波器驅(qū)動器的第三較佳實(shí)施例可以管理設(shè)備的操作模式和掉電模式而無需定時器。在濾波器驅(qū)動器(例如,濾波器驅(qū)動器100)中,設(shè)備40或每個設(shè)備的初始電源狀態(tài)處于掉電模式。然后,在根據(jù)濾波器驅(qū)動器的調(diào)度例行程序中,使用IRP處理例行程序作為設(shè)備,在把IRP傳送到設(shè)備驅(qū)動器20之前,產(chǎn)生用于把目標(biāo)設(shè)備轉(zhuǎn)變到操作狀態(tài)中的電源IRP。一旦目標(biāo)設(shè)備處于操作狀態(tài),就把所接收IRP傳送到設(shè)備驅(qū)動器20。
最好,直到濾波器驅(qū)動器完成IRP處理,目標(biāo)設(shè)備才返回掉電模式。因此,當(dāng)連續(xù)接收到IRP時,當(dāng)接收到第一IRP時對設(shè)備加電,并在最后IRP處切斷電源。換言之,相應(yīng)于從隊(duì)列取得的第一相關(guān)聯(lián)IRP,使設(shè)備加電,而當(dāng)隊(duì)列出空或清除時,切斷電源。
此外,上述每種方法可以使用或可以不使用隊(duì)列。如果不使用隊(duì)列,特別當(dāng)要在用戶模式中的應(yīng)用程序中使用的設(shè)備從掉電模式喚醒成為操作模式時,則設(shè)備可能臨時停止它的操作,并且當(dāng)正在處理IRP時重新開始。
圖10示出根據(jù)本發(fā)明用于管理計算機(jī)系統(tǒng)中的電源的裝置的較佳實(shí)施例。例如,在圖10中,設(shè)備驅(qū)動器20是聲音驅(qū)動器200,而設(shè)備40是聲卡400,如上參考圖2所述。然而,不打算如此地限制本發(fā)明。在從操作系統(tǒng)10接收到聲卡400的隨機(jī)數(shù)據(jù)的情況中,管理電源的裝置(例如,濾波器驅(qū)動器100)檢查聲卡400的電源模式。
如果聲卡400的電源模式是操作模式,則在保持操作模式的同時,根據(jù)在其中執(zhí)行與之相應(yīng)的一系列功能和操作的濾波器驅(qū)動器,從操作系統(tǒng)100接收到的數(shù)據(jù)通過聲音驅(qū)動器200,并傳送到聲卡400。
然而,如果聲卡400的電源模式是掉電模式,則臨時存儲來自操作系統(tǒng)的數(shù)據(jù),并且產(chǎn)生諸如FIRP之類的控制信號,用于使聲卡的電源模式從掉電模式到操作模式,并且稍后把FIRP傳送到聲音驅(qū)動器200。如此,在傳送所接收數(shù)據(jù)之前,聲卡的電源模式從掉電模式變化到操作模式。
在把聲卡的電源模式改變到操作模式之后,接著上述過程,把臨時存儲的數(shù)據(jù)經(jīng)由聲音驅(qū)動器200發(fā)送到聲卡400,并在聲卡中執(zhí)行與之相應(yīng)的一系列功能和操作。
同時,濾波器驅(qū)動器100繼續(xù)監(jiān)測聲卡的操作狀態(tài),如果它處于空閑狀態(tài)的時間大于指定的時間,則累加空閑時間。在經(jīng)累加的空閑時間超過預(yù)定基本時間的情況中,獨(dú)立于操作系統(tǒng)10設(shè)置的系統(tǒng)電源模式而產(chǎn)生FIRP,并傳送到聲音驅(qū)動器200,以便使聲卡400的電源模式成為掉電模式。根據(jù)FIRP,聲音驅(qū)動器200把在空閑狀態(tài)中的聲卡400的電源模式改變成為掉電模式,這可以減少或阻止向空閑狀態(tài)中的聲卡提供任何不必要的電源。
簡短地說,通過添加上述濾波器驅(qū)動器100,無需改變安裝在計算機(jī)系統(tǒng)中的聲音驅(qū)動器200,就可以獨(dú)立于系統(tǒng)電源模式而改變在空閑模式中的每個聲卡的電源模式(例如,從操作模式到掉電模式)。另一方面,如果當(dāng)聲卡400正處于掉電模式時把數(shù)據(jù)從操作系統(tǒng)10發(fā)送到聲卡400,則濾波器驅(qū)動器100臨時存儲數(shù)據(jù),并產(chǎn)生FIRP,請求使聲卡的電源模式從掉電模式到操作模式,并把FIRP傳送到聲音驅(qū)動器200。當(dāng)使聲卡400的電源模式從掉電模式改變到操作模式時,濾波器驅(qū)動器100把臨時存儲的數(shù)據(jù)經(jīng)由聲音驅(qū)動器200發(fā)送到聲卡400,并在聲卡400中執(zhí)行與之相應(yīng)的一系列功能和操作。
概括地說,通過把較佳方法和濾波器驅(qū)動器100的較佳實(shí)施例添加到系統(tǒng),無需修改計算機(jī)系統(tǒng)中的傳統(tǒng)設(shè)備驅(qū)動器20,就有可能獨(dú)立于系統(tǒng)電源模式而使空閑狀態(tài)中的設(shè)備的電源模式成為掉電模式,例如,使用數(shù)據(jù)包監(jiān)測功能的濾波器驅(qū)動器100連續(xù)監(jiān)測到包括網(wǎng)絡(luò)適配器、顯示適配器、鼠標(biāo)、監(jiān)視器、盤驅(qū)動器、數(shù)字?jǐn)z像機(jī)、掃描儀或聲卡等不同設(shè)備的所收發(fā)的數(shù)據(jù)包,并監(jiān)測相應(yīng)的設(shè)備是否處于空閑狀態(tài),如果是的,則對空閑時間進(jìn)行計數(shù)。
上述實(shí)施例和優(yōu)點(diǎn)只是作為例子,不是解釋為限制本發(fā)明。可以容易地把本原理應(yīng)用于其它類型的裝置。上述本發(fā)明的說明是示意的,而不是限制權(quán)利要求書的范圍。熟悉本技術(shù)領(lǐng)域的人員會明白許多變化、修改和變更。在權(quán)利要求書中,打算用意義-加-功能的條款來包括這里描述的結(jié)構(gòu)作為執(zhí)行所引用的功能,不但是結(jié)構(gòu)的等效,而且還是等效的結(jié)構(gòu)。
權(quán)利要求
1.一種管理計算機(jī)系統(tǒng)中的電源的裝置,其特征在于,所述裝置包括操作系統(tǒng),配置成設(shè)置計算機(jī)系統(tǒng)的電源模式,其中,所述電源模式包括操作模式和掉電模式中至少一種模式;至少一個設(shè)備,配置成執(zhí)行特定的功能和操作;至少一個設(shè)備驅(qū)動器,配置成控制相應(yīng)設(shè)備上的操作,其中,配置所述設(shè)備驅(qū)動器,用以在操作模式和掉電模式中至少一種模式中間改變相應(yīng)設(shè)備的電源模式;以及耦合到所述操作系統(tǒng)的濾波器驅(qū)動器,其中,配置所述濾波器驅(qū)動器使之當(dāng)所述計算機(jī)系統(tǒng)處于操作模式時,獨(dú)立地控制所選擇的設(shè)備在掉電模式下進(jìn)行操作。
2.如權(quán)利要求1所述的裝置,其特征在于,當(dāng)所選擇的設(shè)備處于空閑狀態(tài)的時間長于預(yù)定時間或所選擇的設(shè)備的空閑狀態(tài)的時間未被設(shè)置成長于所述的預(yù)定時間時,在所選擇的設(shè)備處接收到操作信號之后,由所述濾波器驅(qū)動器在掉電模式下操作所選擇的設(shè)備。
3.如權(quán)利要求1所述的裝置,其特征在于,所述濾波器驅(qū)動器監(jiān)測所述操作系統(tǒng)和設(shè)備驅(qū)動器之間收發(fā)的數(shù)據(jù)包,并檢測每個設(shè)備處于空閑狀態(tài)。
4.如權(quán)利要求1所述的裝置,其特征在于,所述濾波器驅(qū)動器產(chǎn)生和輸出FIRP(假I/O(輸入/輸出)請求數(shù)據(jù)包),配置成使相應(yīng)設(shè)備的電源模式從所述操作模式改變成所述掉電模式。
5.如權(quán)利要求1所述的裝置,其特征在于,所述的設(shè)備和所述的設(shè)備驅(qū)動器包括聲卡和聲音驅(qū)動器。
6.一種方法,包括下列步驟在第一和第二電源模式下操作計算機(jī)系統(tǒng);在第一和第二電源模式下操作所述計算機(jī)系統(tǒng)中的設(shè)備;以及當(dāng)所述計算機(jī)系統(tǒng)處于第一電源模式時,把所選擇的設(shè)備控制在第二電源模式下。
7.如權(quán)利要求6所述的方法,其特征在于,所述第一電源模式是操作模式,而所述第二電源模式是掉電模式。
8.如權(quán)利要求7所述的方法,其特征在于,所述控制步驟包括下列步驟檢測至少一個處于所述空閑狀態(tài)的設(shè)備;對每個檢查到處于所述空閑狀態(tài)的設(shè)備的空閑時間進(jìn)行計數(shù);以及當(dāng)相應(yīng)設(shè)備的經(jīng)計數(shù)的空閑時間長于預(yù)定量時,使相應(yīng)設(shè)備的電源模式從所述操作模式改變到掉電模式。
9.如權(quán)利要求8所述的方法,其特征在于,同時執(zhí)行所述檢測和所述計數(shù)。
10.如權(quán)利要求8所述的方法,其特征在于,所述檢測步驟包括下列步驟監(jiān)測計算機(jī)系統(tǒng)中操作系統(tǒng)和設(shè)備驅(qū)動器之間的收發(fā)數(shù)據(jù)包;以及檢測所述設(shè)備的空閑狀態(tài)。
11.如權(quán)利要求8所述的方法,其特征在于,所述改變步驟包括下列步驟在所述濾波器驅(qū)動器處產(chǎn)生控制消息;以及把所述控制消息傳送到相應(yīng)設(shè)備。
12.如權(quán)利要求8所述的方法,其特征在于,所述改變步驟包括下列步驟當(dāng)經(jīng)計數(shù)的空閑時間長于所述指定量時,在所述濾波器驅(qū)動器處產(chǎn)生與所述計算機(jī)系統(tǒng)的I/O請求數(shù)據(jù)包相似的假I/O請求數(shù)據(jù)包(FIRP);以及把所述FIRP傳送到所述相應(yīng)的設(shè)備。
13.如權(quán)利要求8所述的方法,其特征在于,所述改變步驟包括如果已經(jīng)計數(shù)的經(jīng)累加的空閑時間不長于所述指定量,則在所述操作模式下操作所述設(shè)備。
14.如權(quán)利要求8所述的方法,其特征在于,所述指定量具有處于電池模式下的第一超時值、處于性能模式下的第二超時值,并且所述指定量根據(jù)目標(biāo)設(shè)備而變化,其中,通過用戶或預(yù)置來設(shè)置所述指定量或所述至少一個設(shè)備。
15.如權(quán)利要求6所述的方法,其特征在于,所述控制包括下列步驟在操作系統(tǒng)處產(chǎn)生相應(yīng)于所述系統(tǒng)電源模式的電源控制消息,并把所述電源控制消息輸出到相應(yīng)的設(shè)備;改變或確定所述相應(yīng)設(shè)備的電源狀態(tài),以根據(jù)所述電源控制消息的種類,設(shè)置所要求的電源狀態(tài);以及根據(jù)新的電源狀態(tài),調(diào)度所述計算機(jī)系統(tǒng)。
16.如權(quán)利要求6所述的方法,其特征在于,所述控制步驟包括當(dāng)所述計算機(jī)系統(tǒng)處于所述第一模式時,獨(dú)立地控制多個設(shè)備中的兩個設(shè)備或每個所述設(shè)備,使之在所述第二模式下操作。
17.一種管理計算機(jī)系統(tǒng)中電源的方法,其特征在于,所述方法包括下列步驟當(dāng)所述計算機(jī)系統(tǒng)的電源模式處于操作模式時,檢測至少一個處于空閑狀態(tài)的設(shè)備;確定所檢測的處于空閑狀態(tài)的設(shè)備的空閑時間;以及當(dāng)在預(yù)定的時間內(nèi)未重置所述空閑狀態(tài)時,把相應(yīng)的設(shè)備的電源模式從操作模式改變成掉電模式。
18.如權(quán)利要求17所述的方法,其特征在于,電源管理器提供一個定時器,用于檢查各個設(shè)備處于空閑狀態(tài)以及管理電源,并且在經(jīng)過預(yù)定時間之后,一個濾波器驅(qū)動器改變所述設(shè)備的狀態(tài)。
19.如權(quán)利要求18所述的方法,其特征在于,所述預(yù)定時間具有處于電池模式下的第一超時值、處于性能模式下的第二超時值,并且所述預(yù)定時間根據(jù)目標(biāo)設(shè)備而變化,其中,通過用戶或預(yù)置來設(shè)置所述預(yù)定時間或所述至少一個設(shè)備。
20.如權(quán)利要求18所述的方法,其特征在于,當(dāng)操作一個設(shè)備時,使用所述電源管理器來再啟動相應(yīng)的定時器。
21.一種管理計算機(jī)系統(tǒng)中的電源的方法,其特征在于,所述方法包括下列步驟把相應(yīng)設(shè)備的電源狀態(tài)設(shè)置成掉電狀態(tài);在傳送相應(yīng)設(shè)備到設(shè)備驅(qū)動器的所接收的消息之前,把改變相應(yīng)設(shè)備到操作狀態(tài)的電源控制消息傳送到設(shè)備驅(qū)動器;在把相應(yīng)設(shè)備改變到操作狀態(tài)之后,把所接收的消息傳送到設(shè)備驅(qū)動器;以及在設(shè)備驅(qū)動器完成消息的處理之后,把相應(yīng)的設(shè)備設(shè)置成掉電狀態(tài)。
22.如權(quán)利要求21所述的方法,其特征在于,如果連續(xù)接收消息,則在第一條消息處對相應(yīng)設(shè)備加電,并在最后消息處斷電。
23.如權(quán)利要求22所述的方法,其特征在于,當(dāng)從一個隊(duì)列取出第一I/O請求數(shù)據(jù)包時,對相應(yīng)設(shè)備加電,而當(dāng)隊(duì)列出空或被清除時斷電。
24.如權(quán)利要求23所述的方法,其特征在于,包括下列步驟如果從處于Kernal模式下的IO管理器接收到IRP,則通過調(diào)度例行程序?qū)谐绦蜻M(jìn)行調(diào)度,并接收所有種類的數(shù)據(jù)包;以及檢查所接收的IRP是否為電源IRP,并且如果所接收的IRP不是電源IRP但是內(nèi)部變量暫停標(biāo)志=0,則把數(shù)據(jù)包放到正常濾波器驅(qū)動器操作的隊(duì)列中。
25.如權(quán)利要求21所述的方法,其特征在于,包括下列步驟如果數(shù)據(jù)包進(jìn)入一個隊(duì)列,則自動地調(diào)度相關(guān)聯(lián)的第一設(shè)備;如果所述第一設(shè)備已經(jīng)處于掉電模式,則對所述第一設(shè)備加電;把一個數(shù)據(jù)包從所述隊(duì)列傳送到相關(guān)聯(lián)的下一個濾波器驅(qū)動器;并且如果所述隊(duì)列是空的,則完成一例行程序,如果直到第一定時器超時才對例行程序再次進(jìn)行調(diào)度,則在電源管理器處把掉電IRP傳送到第一設(shè)備,使所述第一設(shè)備改變成掉電模式。
26.如權(quán)利要求25所述的方法,其特征在于,如果正在使用所述第一設(shè)備,則重置所述第一定時器,以防止所述第一設(shè)備處于掉電模式。
27.如權(quán)利要求25所述的方法,其特征在于,在所述操作系統(tǒng)中使所述數(shù)據(jù)包具有較低優(yōu)先級,并且因此在操作系統(tǒng)首先處理具有較高優(yōu)先級的數(shù)據(jù)包之后進(jìn)行調(diào)度,使所述隊(duì)列裝載有多個數(shù)據(jù)包IRP。
28.如權(quán)利要求27所述的方法,其特征在于,進(jìn)一步包括下列步驟如果所接收的數(shù)據(jù)包是電源IRP,則檢查所接收的數(shù)據(jù)包是否為用于改變所述計算機(jī)系統(tǒng)的電源狀態(tài)的系統(tǒng)電源IRP;如果所接收的數(shù)據(jù)包是系統(tǒng)電源IRP,則檢查所接收的數(shù)據(jù)包是否為IRP數(shù)據(jù)中的新狀態(tài)S0;如果所接收的數(shù)據(jù)包不是S0,則由于現(xiàn)在計算機(jī)系統(tǒng)進(jìn)入掉電模式,設(shè)置內(nèi)部變量為暫停標(biāo)志=1,并阻止所有其他的IRP進(jìn)入所述隊(duì)列;以及清除當(dāng)前保留在所述隊(duì)列中的所有IRP。
29.如權(quán)利要求25所述的方法,其特征在于,進(jìn)一步包括下列步驟如果所接收數(shù)據(jù)包是電源IRP,則檢查所接收的數(shù)據(jù)包是否是用于改變所述系統(tǒng)電源狀態(tài)的系統(tǒng)電源IRP;并且如果所接收的數(shù)據(jù)包是系統(tǒng)電源IRP,則進(jìn)行到下一個設(shè)備驅(qū)動器。
30.如權(quán)利要求30所述的方法,其特征在于,進(jìn)一步包括下列步驟如果所接收的數(shù)據(jù)包是電源IRP,則檢查所接收的數(shù)據(jù)包是否是用于改變所述系統(tǒng)電源狀態(tài)的系統(tǒng)電源IRP;如果所接收的數(shù)據(jù)包是系統(tǒng)電源IRP,則檢查所接收的數(shù)據(jù)包是否是IRP數(shù)據(jù)中的新的狀態(tài)S0;以及如果所接收的數(shù)據(jù)包是S0,則自啟動所述系統(tǒng)起,設(shè)置內(nèi)部變量為暫停標(biāo)志=0。
31.一種管理計算機(jī)系統(tǒng)中電源的方法,其特征在于,所述方法包括下列步驟當(dāng)所述計算機(jī)系統(tǒng)處于操作模式時,檢測設(shè)備是否處于空閑狀態(tài);對檢測到處于空閑狀態(tài)的設(shè)備的空閑時間進(jìn)行計數(shù);以及當(dāng)已經(jīng)計數(shù)的空閑時間長于預(yù)定時間時,使所述設(shè)備的電源模式從操作模式改變成掉電模式。
32.如權(quán)利要求31所述的方法,其特征在于,所述設(shè)備是聲卡。
33.如權(quán)利要求32所述的方法,其特征在于,所述預(yù)定時間具有處于電池模式下的第一超時值、處于性能模式下的第二超時值,其中,所述預(yù)定時間根據(jù)所述設(shè)備而變化,并且其中,通過用戶或預(yù)置來設(shè)置所述預(yù)定時間或設(shè)備。
全文摘要
本發(fā)明涉及計算機(jī)系統(tǒng)中管理電源的一種裝置和方法。配備有數(shù)據(jù)包監(jiān)測功能等的濾波器驅(qū)動器檢測安裝在計算機(jī)系統(tǒng)中的設(shè)備是否處于空閑狀態(tài)。如果設(shè)備處于空閑狀態(tài),則把相應(yīng)設(shè)備的電源模式改變到掉電模式,該模式獨(dú)立于計算機(jī)系統(tǒng)中的操作系統(tǒng)已經(jīng)設(shè)置的系統(tǒng)電源模式狀態(tài)。如此,減少了提供給空閑狀態(tài)設(shè)備的電源,變成有可能對計算機(jī)系統(tǒng)的負(fù)載進(jìn)行更有效的控制??偟膩碚f,可以極有利地使用根據(jù)本發(fā)明的較佳實(shí)施例,通過把濾波器驅(qū)動器添加到系統(tǒng)中,可以更簡單地開發(fā)和擴(kuò)展計算機(jī)系統(tǒng)。
文檔編號G06F1/32GK1499339SQ20031010466
公開日2004年5月26日 申請日期2003年10月30日 優(yōu)先權(quán)日2002年10月31日
發(fā)明者金瑞光 申請人:Lg電子株式會社
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
牟定县| 桐乡市| 马鞍山市| 方城县| 喀喇| 平罗县| 额济纳旗| 海南省| 额济纳旗| 德安县| 徐汇区| 平江县| 汉川市| 日照市| 珲春市| 老河口市| 宁波市| 绥滨县| 朝阳区| 岑溪市| 元江| 马鞍山市| 永嘉县| 敦化市| 琼中| 马边| 方城县| 东台市| 奉贤区| 贵德县| 成武县| 临湘市| 奉新县| 河西区| 宁都县| 桐城市| 中超| 梧州市| 四子王旗| 准格尔旗| 白朗县|