專利名稱:最大化虛擬機(jī)平臺(tái)的降低功率狀態(tài)的電源管理的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及包括多個(gè)虛擬機(jī)的虛擬機(jī)平臺(tái),各虛擬機(jī)分別連接到多個(gè)單獨(dú)計(jì)算機(jī)中的每個(gè)計(jì)算機(jī),本發(fā)明尤其涉及此類虛擬機(jī)平臺(tái)的電源管理。
背景技術(shù):
過去十年中,隨著萬維網(wǎng)(網(wǎng)站)系統(tǒng)大幅增加,組織所需的計(jì)算機(jī)處理功率每年按指數(shù)方式增長(zhǎng),因此如今需要使用上百個(gè)及甚至上千個(gè)服務(wù)器。這導(dǎo)致越來越大的主機(jī)計(jì)算機(jī)的復(fù)蘇。尤其是在虛擬機(jī)(VM)模式中工作的主機(jī)及類似的大型計(jì)算機(jī),在VM模式中,操作系統(tǒng)的多個(gè)實(shí)例及相關(guān)的應(yīng)用程序駐留在相同的物理硬件中。此類虛擬機(jī)一直在滿足通常配置為虛擬機(jī)服務(wù)器場(chǎng)的大量服務(wù)器的需求。有關(guān)更多背景,請(qǐng)參考論文“z/VM 下的虛擬Linux服務(wù)器安全性、性能、及管理問題(Virtual Linux servers under z/VM security,performance, and administrative issues),,,作者D. Turk,發(fā)表于 IBM系統(tǒng)期干Ij (IBM Systems Journal), 2005年7月;及請(qǐng)參考論文“更多功率,擴(kuò)展虛擬化管理器能力幫助客戶成長(zhǎng)及管理虛擬化環(huán)境(More POWER to Ya,Expanded Visualization Manager capabilities help customers grow and manage virtualized environments),,,作者 Jim Fall,發(fā)表于 IBM 系統(tǒng)雜志(IBM Systems Magazine),2007 年 9 月。在此類虛擬機(jī)環(huán)境中(其中多個(gè)用戶計(jì)算機(jī)連接到每個(gè)虛擬機(jī)平臺(tái),每個(gè)平臺(tái)提供分別連接到這些多個(gè)用戶的多個(gè)虛擬機(jī)),很難控制電源管理。在啟動(dòng)虛擬機(jī)會(huì)話之前, 每個(gè)虛擬機(jī)平臺(tái)均需要使用全功率。由于虛擬機(jī)平臺(tái)對(duì)于需要訪問適當(dāng)虛擬機(jī)的遠(yuǎn)程用戶計(jì)算機(jī)必須始終可供使用,以全功率模式持續(xù)操作任何在線平臺(tái)已司空見慣。在虛擬機(jī)平臺(tái)被配置為虛擬機(jī)服務(wù)器場(chǎng)時(shí),浪費(fèi)功耗變得特別嚴(yán)重。
發(fā)明內(nèi)容
本發(fā)明在第一方面中相應(yīng)地提供了一種在虛擬機(jī)環(huán)境中的電源管理系統(tǒng),包含 虛擬機(jī)平臺(tái),所述虛擬機(jī)平臺(tái)提供多個(gè)虛擬機(jī);多個(gè)單獨(dú)客戶端設(shè)備,每個(gè)客戶端設(shè)備都連接到所述虛擬機(jī)中的一個(gè)相應(yīng)虛擬機(jī);判定裝置,用于獨(dú)立于所述客戶端設(shè)備至所述虛擬機(jī)的連接而判定連接到所述虛擬機(jī)的所述客戶端設(shè)備中的每個(gè)客戶端設(shè)備是否處于活動(dòng)狀態(tài);及切換裝置,用于在連接到所述虛擬機(jī)的所述客戶端設(shè)備中的所有客戶端設(shè)備均處于非活動(dòng)狀態(tài)時(shí),將所述虛擬機(jī)平臺(tái)切換至降低功耗狀態(tài)。優(yōu)選地,所述多個(gè)客戶端設(shè)備遠(yuǎn)離所述虛擬機(jī)平臺(tái);及還包括用于將所述多個(gè)客戶端設(shè)備分別連接到所述虛擬機(jī)平臺(tái)的網(wǎng)絡(luò)裝置。優(yōu)選地,所述網(wǎng)絡(luò)裝置是萬維網(wǎng)網(wǎng)絡(luò)裝置。所述系統(tǒng)優(yōu)選地還包括多個(gè)所述虛擬機(jī)平臺(tái),每個(gè)平臺(tái)分別提供多個(gè)虛擬機(jī);及多個(gè)集合,每個(gè)集合包括分別連接到所述多個(gè)虛擬機(jī)平臺(tái)之一中的虛擬機(jī)的多個(gè)客戶端設(shè)備;其中當(dāng)連接到所述虛擬機(jī)平臺(tái)中的一個(gè)相應(yīng)平臺(tái)中的虛擬機(jī)的所有所述客戶端設(shè)備均處于非活動(dòng)狀態(tài)時(shí),所述切換裝置將所述一個(gè)相應(yīng)平臺(tái)切換至降低功耗狀態(tài)。優(yōu)選地,所述多個(gè)虛擬機(jī)平臺(tái)是布置為虛擬服務(wù)器場(chǎng)的服務(wù)器;及所述多個(gè)客戶端設(shè)備集合中的每個(gè)客戶端設(shè)備集合是連接到相應(yīng)服務(wù)器中的虛擬機(jī)的客戶端計(jì)算機(jī)。優(yōu)選地,用于將所述虛擬機(jī)平臺(tái)切換至所述降低功率狀態(tài)的所述切換裝置在所述虛擬機(jī)平臺(tái)中;及還包括通信裝置,用于通過獨(dú)立于所述虛擬機(jī)平臺(tái)的操作系統(tǒng)的路徑,告知所述切換裝置所述客戶端設(shè)備中的每個(gè)客戶端設(shè)備是否處于非活動(dòng)狀態(tài)。優(yōu)選地,所述虛擬機(jī)平臺(tái)包括系統(tǒng)管理程序和BIOS ;及用于告知非活動(dòng)狀態(tài)的所述路徑獨(dú)立于所述系統(tǒng)管理程序而連接到所述BIOS。優(yōu)選地,所述虛擬機(jī)平臺(tái)包括底板管理控制器(BMC),所述BMC具有用于追蹤所述客戶端設(shè)備的非活動(dòng)狀態(tài)的裝置;及用于告知非活動(dòng)狀態(tài)的所述路徑通過所述 BMC而連接到所述BIOS。在第二方面中,提供了一種在虛擬機(jī)平臺(tái)中的電源管理方法,所述虛擬機(jī)平臺(tái)包括多個(gè)虛擬機(jī),每個(gè)虛擬機(jī)分別連接到多個(gè)單獨(dú)客戶端設(shè)備中的每個(gè)客戶端設(shè)備,所述方法包含獨(dú)立于所述客戶端設(shè)備至所述虛擬機(jī)的連接,判定連接到所述虛擬機(jī)的所述客戶端設(shè)備中的每個(gè)客戶端設(shè)備是否處于活動(dòng)狀態(tài);及在連接到所述虛擬機(jī)的所述客戶端設(shè)備中的所有客戶端設(shè)備均處于非活動(dòng)狀態(tài)時(shí),將所述虛擬機(jī)平臺(tái)切換至降低功耗狀態(tài)。優(yōu)選地,所述多個(gè)客戶端設(shè)備遠(yuǎn)離所述虛擬機(jī)平臺(tái);及通過網(wǎng)絡(luò)將所述多個(gè)客戶端設(shè)備分別連接到所述虛擬機(jī)平臺(tái)。優(yōu)選地,所述網(wǎng)絡(luò)是萬維網(wǎng)。優(yōu)選地,所述電源管理用于多個(gè)所述虛擬機(jī)平臺(tái),每個(gè)平臺(tái)分別提供多個(gè)虛擬機(jī),并且所述方法包括將每個(gè)集合都包括多個(gè)客戶端設(shè)備的多個(gè)集合分別連接到所述多個(gè)虛擬機(jī)平臺(tái)之一中的虛擬機(jī);其中當(dāng)連接到所述虛擬機(jī)平臺(tái)中的一個(gè)相應(yīng)平臺(tái)中的虛擬機(jī)的所有所述客戶端設(shè)備均處于非活動(dòng)狀態(tài)時(shí),將所述一個(gè)相應(yīng)平臺(tái)切換至降低功耗狀態(tài)。優(yōu)選地,在所述虛擬機(jī)平臺(tái)中控制所述虛擬機(jī)平臺(tái)至所述降低功耗狀態(tài)的切換;及還包括用于通過獨(dú)立于所述虛擬機(jī)平臺(tái)的操作系統(tǒng)的路徑,告知所述虛擬機(jī)平臺(tái)所述客戶端設(shè)備中的每個(gè)客戶端設(shè)備是否處于非活動(dòng)狀態(tài)的步驟。優(yōu)選地,用于告知非活動(dòng)狀態(tài)的所述路徑獨(dú)立于所述虛擬機(jī)平臺(tái)的系統(tǒng)管理程序而連接到所述虛擬機(jī)平臺(tái)的BIOS。在第三方面中,提供了一種包括計(jì)算機(jī)程序代碼的計(jì)算機(jī)程序,當(dāng)所述計(jì)算機(jī)程序代碼被加載到計(jì)算機(jī)中并在其上執(zhí)行時(shí),將導(dǎo)致所述計(jì)算機(jī)執(zhí)行第二方面所述的方法的所有步驟。所述第三方面的計(jì)算機(jī)程序的形式可以體現(xiàn)為其上存儲(chǔ)有計(jì)算機(jī)可讀程序的計(jì)算機(jī)可用介質(zhì),所述計(jì)算機(jī)可讀程序用于虛擬機(jī)平臺(tái)中的電源管理,所述虛擬機(jī)平臺(tái)包括多個(gè)虛擬機(jī),每個(gè)虛擬機(jī)分別連接到多個(gè)單獨(dú)客戶端設(shè)備中的每個(gè)客戶端設(shè)備,其中所述計(jì)算機(jī)可讀程序,當(dāng)在計(jì)算機(jī)上執(zhí)行時(shí),導(dǎo)致所述計(jì)算機(jī)執(zhí)行以下操作獨(dú)立于所述客戶端設(shè)備至所述虛擬機(jī)的連接,判定連接到所述虛擬機(jī)的所述客戶端設(shè)備中的每個(gè)客戶端設(shè)備是否處于活動(dòng)狀態(tài);及在連接到所述虛擬機(jī)的所述客戶端設(shè)備中的所有客戶端設(shè)備均處于非活動(dòng)狀態(tài)時(shí),將所述虛擬機(jī)平臺(tái)切換至降低功耗狀態(tài)。優(yōu)選地,所述多個(gè)客戶端設(shè)備遠(yuǎn)離所述虛擬機(jī)平臺(tái);及通過網(wǎng)絡(luò)將所述多個(gè)客戶端設(shè)備分別連接到所述虛擬機(jī)平臺(tái)。優(yōu)選地,所述網(wǎng)絡(luò)是萬維網(wǎng)。優(yōu)選地,所述電源管理用于多個(gè)所述虛擬機(jī)平臺(tái),每個(gè)平臺(tái)分別提供多個(gè)虛擬機(jī),并且所述計(jì)算機(jī)程序在執(zhí)行時(shí)將每個(gè)集合都包括多個(gè)客戶端設(shè)備的多個(gè)集合分別連接到所述多個(gè)虛擬機(jī)平臺(tái)之一中的虛擬機(jī);并且當(dāng)連接到所述虛擬機(jī)平臺(tái)中的一個(gè)相應(yīng)平臺(tái)中的虛擬機(jī)的所有所述客戶端設(shè)備均處于非活動(dòng)狀態(tài)時(shí),將所述一個(gè)相應(yīng)平臺(tái)切換至降低功耗狀態(tài)。
優(yōu)選地,所述計(jì)算機(jī)程序在執(zhí)行時(shí)將導(dǎo)致所述計(jì)算機(jī)在所述虛擬機(jī)平臺(tái)中控制所述虛擬機(jī)平臺(tái)至所述降低功耗狀態(tài)的切換;及通過獨(dú)立于所述虛擬機(jī)平臺(tái)的操作系統(tǒng)的路徑,告知所述虛擬機(jī)平臺(tái)所述客戶端設(shè)備中的每個(gè)客戶端設(shè)備是否處于非活動(dòng)狀態(tài)。優(yōu)選地,所述計(jì)算機(jī)程序在執(zhí)行時(shí)將導(dǎo)致所述計(jì)算機(jī)獨(dú)立于所述虛擬機(jī)平臺(tái)的系統(tǒng)管理程序而向所述虛擬機(jī)平臺(tái)的BIOS告知非活動(dòng)狀態(tài)。本發(fā)明解決即使在沒有任何連接到虛擬機(jī)平臺(tái)的用戶計(jì)算機(jī)處于活動(dòng)模式時(shí)仍維持每個(gè)虛擬機(jī)平臺(tái)處于全功率模式的功耗問題。為此目的,本發(fā)明的各實(shí)施例提供一種在虛擬機(jī)環(huán)境中進(jìn)行電源管理的系統(tǒng)、方法、及計(jì)算機(jī)程序,所述虛擬機(jī)環(huán)境包括提供多個(gè)虛擬機(jī)的至少一個(gè)物理虛擬機(jī)平臺(tái);及多個(gè)單獨(dú)(用戶)客戶端設(shè)備,每個(gè)客戶端設(shè)備連接到典型虛擬機(jī)分布環(huán)境中的虛擬機(jī)中的一個(gè)相應(yīng)虛擬機(jī)。已知客戶端設(shè)備包括用戶計(jì)算機(jī)及計(jì)算機(jī)子系統(tǒng),其包括打印機(jī)、盤驅(qū)動(dòng)器及串行端口等。在本發(fā)明的以下描述中,在使用術(shù)語(yǔ)“用戶計(jì)算機(jī)”時(shí),旨在包括所有此類客戶端設(shè)備。本發(fā)明還提供用于獨(dú)立于用戶計(jì)算機(jī)或客戶端設(shè)備至虛擬機(jī)的連接,判定連接到所述虛擬機(jī)的客戶端設(shè)備中的每個(gè)客戶端設(shè)備是否處于活動(dòng)狀態(tài)的功能;以及用于在連接到所述虛擬機(jī)的所有用戶計(jì)算機(jī)均處于非活動(dòng)狀態(tài)時(shí),將所述虛擬機(jī)平臺(tái)切換至平臺(tái)中的降低功耗狀態(tài)的功能。在優(yōu)選操作中,本發(fā)明實(shí)施于多個(gè)用戶計(jì)算機(jī)遠(yuǎn)離虛擬機(jī)平臺(tái)時(shí),及其中存在網(wǎng)絡(luò)(通常為因特網(wǎng)或網(wǎng)站,這兩個(gè)術(shù)語(yǔ)在本說明中可交換使用)用于分別將多個(gè)用戶計(jì)算機(jī)連接到虛擬機(jī)平臺(tái)時(shí)。如上文所提,本發(fā)明的優(yōu)選實(shí)施例在例如虛擬服務(wù)器場(chǎng)的系統(tǒng)中尤其有利,所述系統(tǒng)中具有多個(gè)虛擬機(jī)平臺(tái),每個(gè)平臺(tái)分別提供多個(gè)虛擬機(jī);及多個(gè)用戶集合,每個(gè)用戶集合包括多個(gè)用戶計(jì)算機(jī)或設(shè)備,其分別連接到多個(gè)虛擬機(jī)平臺(tái)之一中的虛擬機(jī);使得切換裝置在連接到所述虛擬機(jī)平臺(tái)中的一個(gè)相應(yīng)平臺(tái)中的虛擬機(jī)的所有用戶計(jì)算機(jī)或客戶端設(shè)備處于非活動(dòng)狀態(tài)時(shí),將所述一個(gè)相應(yīng)平臺(tái)切換至降低功耗狀態(tài)。此類實(shí)施可有效用于多個(gè)虛擬機(jī)平臺(tái)提供布置為虛擬服務(wù)器場(chǎng)的服務(wù)器時(shí),及多個(gè)用戶計(jì)算機(jī)集合中的每個(gè)集合為連接到相應(yīng)服務(wù)器中的虛擬機(jī)的客戶端設(shè)備或用戶計(jì)算機(jī)時(shí)。如將于下文所詳細(xì)說明的,在本發(fā)明的一個(gè)優(yōu)選實(shí)施例中,將虛擬機(jī)平臺(tái)切換至降低功率狀態(tài)的實(shí)施是在虛擬機(jī)平臺(tái)中,及用于傳達(dá)所述計(jì)算機(jī)中的每個(gè)計(jì)算機(jī)是否處于非活動(dòng)狀態(tài)的裝置通過獨(dú)立于虛擬機(jī)平臺(tái)的操作系統(tǒng)的路徑而連接到用于切換的裝置。此用于傳達(dá)非活動(dòng)狀態(tài)的路徑通過獨(dú)立于平臺(tái)的系統(tǒng)管理程序的路線而連接到虛擬機(jī)平臺(tái)的基本輸入輸出系統(tǒng)¢10 固件。在此類布置中,虛擬機(jī)平臺(tái)包括具有追蹤所連接用戶計(jì)算機(jī)的非活動(dòng)狀態(tài)的功能的底板管理控制器(BMC),及用于傳達(dá)非活動(dòng)狀態(tài)的路徑通過所述BMC而連接到所述BIOS。
現(xiàn)在將僅通過實(shí)例的方式參考附圖描述本發(fā)明的優(yōu)選實(shí)施例,這些附圖是圖1是網(wǎng)絡(luò)部分的總體示意圖,其包括單個(gè)代表性虛擬機(jī)平臺(tái)及連接到平臺(tái)中的虛擬機(jī)的遠(yuǎn)程用戶計(jì)算機(jī)集合或客戶端設(shè)備集合,用以圖示用戶計(jì)算機(jī)的非活動(dòng)狀態(tài)監(jiān)視;圖2是與圖1的示意圖相似的示意圖,其顯示分別連接到多個(gè)用戶計(jì)算機(jī)集合的多個(gè)虛擬機(jī)平臺(tái);圖3是設(shè)定為可實(shí)施本發(fā)明的一個(gè)優(yōu)選實(shí)施例以在虛擬機(jī)環(huán)境中進(jìn)行電源管理的程序的總體流程圖;及圖4是圖3中設(shè)定的程序的示例性運(yùn)行的流程圖。
具體實(shí)施例方式參考圖1,其中顯示網(wǎng)絡(luò)部分的總體示意圖,包括單個(gè)代表性虛擬機(jī)平臺(tái)20,及遠(yuǎn)程用戶計(jì)算機(jī)(即,客戶端設(shè)備)集合桌上型計(jì)算機(jī)1、2及n,它們經(jīng)由網(wǎng)絡(luò)10(如網(wǎng)站)和相應(yīng)服務(wù)器Si、S2及Sn而連接到平臺(tái)中使用操作系統(tǒng)0S1、0S2及OSn的虛擬機(jī) VMU VM2 及 VMn0特定虛擬機(jī)VM到特定用戶計(jì)算機(jī)(桌上型計(jì)算機(jī)1至η)的指派由系統(tǒng)管理程序 21 (虛擬機(jī)平臺(tái)管理程序)分配。系統(tǒng)管理程序管理多個(gè)操作系統(tǒng)OSl-OSn,以及視需要管理平臺(tái)的處理器、BIOS 22、存儲(chǔ)器及其它資源。由于這是虛擬機(jī)平臺(tái),因此可將系統(tǒng)管理程序視為虛擬化管理器。當(dāng)前常規(guī)VM連接代理(未顯示)可操作以將當(dāng)前在平臺(tái)20上運(yùn)行的虛擬機(jī)指派給特定客戶端設(shè)備(如用戶桌上型計(jì)算機(jī)1至η所示)。然而,此類連接代理僅在登錄及中斷連接過程中使用。因此,如果特定的桌上型計(jì)算機(jī)1、2或η登錄并且然后閑置,則虛擬機(jī)平臺(tái)20中特定的被指派VM及其相關(guān)資源仍維持全功率,而與指派的用戶桌上型計(jì)算機(jī)1至η計(jì)算機(jī)的非活動(dòng)狀態(tài)無關(guān)。據(jù)此,本發(fā)明提供一種獨(dú)立于平臺(tái)20的操作系統(tǒng)及系統(tǒng)管理程序21而檢測(cè)分配的用戶桌上型計(jì)算機(jī)l-η等計(jì)算機(jī)的非活動(dòng)狀態(tài)的實(shí)施方式。因此,在圖1的環(huán)境中,系統(tǒng)管理程序(可購(gòu)自VMWare、CitriX或Calista環(huán)境)具有配合硬件壓縮引擎工作的個(gè)體軟件組件,以允許多個(gè)用戶(桌上型計(jì)算機(jī)l-η)訪問同一平臺(tái)20。因此,當(dāng)平臺(tái)硬件接通電源時(shí),系統(tǒng)管理程序分配用戶專用的存儲(chǔ)器資源。當(dāng)用戶不再需要使用資源時(shí),如注銷時(shí), 資源被釋放回平臺(tái)池中。然而,盡管不再需要使用平臺(tái),平臺(tái)20仍維持完全電源開啟及完全工作。如以下所詳細(xì)說明的,本發(fā)明提供用于當(dāng)用戶計(jì)算機(jī)或客戶端設(shè)備不再需要使用虛擬機(jī)資源(處理器、存儲(chǔ)器、操作系統(tǒng)及應(yīng)用軟件)時(shí),即,所有用戶計(jì)算機(jī)或客戶端設(shè)備處于非活動(dòng)狀態(tài)時(shí),將平臺(tái)置于較低功耗狀態(tài);但當(dāng)用戶計(jì)算機(jī)或客戶端設(shè)備確實(shí)需要使用平臺(tái)所支持的VM時(shí),即,用戶計(jì)算機(jī)變成活動(dòng)時(shí),平臺(tái)20將退出低功率狀態(tài)并變成完全工作。本發(fā)明的實(shí)施方式利用現(xiàn)有設(shè)備來改變虛擬機(jī)平臺(tái)20的功率狀態(tài)。BIOS 22提供能夠從平臺(tái)20的不同部分移除電源的工業(yè)標(biāo)準(zhǔn)高級(jí)配置與電源接口(ACPI)狀態(tài)。在本發(fā)明的實(shí)施方式中,存在通過網(wǎng)絡(luò)10(可為因特網(wǎng)或網(wǎng)站)經(jīng)由連接11且通過ASIC (專用集成電路)壓縮核心12的路徑,其中用戶桌上型計(jì)算機(jī)l-η可分別連接到它們被分配的VM l-η及操作系統(tǒng)OSl-n。這由系統(tǒng)管理程序21控制。ASIC壓縮核心使得來自用戶計(jì)算機(jī)(桌上型計(jì)算機(jī)l-η)的數(shù)據(jù)能夠被適當(dāng)?shù)貕嚎s,從而以最有效率且與虛擬機(jī)平臺(tái)相關(guān)聯(lián)的方式存儲(chǔ)數(shù)據(jù)以供虛擬機(jī)使用;圖中所示經(jīng)由連接13、14及15而施加數(shù)據(jù)。標(biāo)準(zhǔn)ASIC核心在以下刊物中描述“ASIC核心中的數(shù)據(jù)壓縮技術(shù)(Data compression technology in ASIC cores) ”,作者 S. H. Burroughs 等人,IBM 研發(fā)期刊(IBM Journal of Research and Development),第 42 卷,第 6 號(hào),1998 年。定制ASIC核心具有充分靈活性,致使可形成從ASIC壓縮核心12通過平臺(tái)20中的底板管理控制器(BMC) 17直接進(jìn)入BIOS 22的連接16。BMC是嵌入常規(guī)服務(wù)器計(jì)算機(jī)底板的常規(guī)專用微型控制器,其可用作使用常規(guī)智能平臺(tái)管理接口(IPMI)的智能單元。因此, BMC可用于管理在系統(tǒng)管理軟件與平臺(tái)硬件之間的接口。如以下關(guān)于本發(fā)明的程序(可存儲(chǔ)在系統(tǒng)管理程序21中)所詳細(xì)說明的,BMC 17 追蹤在虛擬機(jī)平臺(tái)20的環(huán)境中的用戶數(shù)。當(dāng)追蹤到在客戶端設(shè)備(用戶桌上型計(jì)算機(jī)) 及其被分配的VM之間的會(huì)話已在一段預(yù)定時(shí)間內(nèi)處于非活動(dòng)狀態(tài)時(shí),BMC將用戶計(jì)算機(jī)自活動(dòng)池中移除。每個(gè)客戶端設(shè)備或用戶計(jì)算機(jī)每次進(jìn)入或離開非活動(dòng)狀態(tài)時(shí),均被記錄下來。在參考圖4所說明的一個(gè)實(shí)施例中,利用標(biāo)準(zhǔn)ASIC核心中所提供的嵌入活動(dòng)定時(shí)器。 BMC在特定用戶計(jì)算機(jī)的活動(dòng)停止時(shí)設(shè)定定時(shí)器。然后,在時(shí)間期滿后,從位于BMC中的活動(dòng)追蹤表,通過對(duì)BIOS 22的輸入來移除不活動(dòng)的用戶計(jì)算機(jī)。以此實(shí)施方式,用戶計(jì)算機(jī)或客戶端設(shè)備的活動(dòng)狀態(tài)及非活動(dòng)狀態(tài)的追蹤及傳達(dá)獨(dú)立于虛擬機(jī)平臺(tái)的操作系統(tǒng)和系統(tǒng)管理程序而實(shí)行,因而允許獨(dú)立控制虛擬機(jī)平臺(tái)的低功率狀態(tài)?,F(xiàn)在參考圖2,其中顯示電源管理的實(shí)施方式,所述實(shí)施方式應(yīng)用于多個(gè)虛擬機(jī)平臺(tái)(A-N)分別連接到多個(gè)用戶計(jì)算機(jī)(客戶端設(shè)備)集合的系統(tǒng)。此類布置用在虛擬服務(wù)器場(chǎng)所使用的虛擬機(jī)環(huán)境中。在此類布置中,每個(gè)平臺(tái)A-N均可按照針對(duì)圖1的虛擬機(jī)平臺(tái)所描述的方式獨(dú)立工作。為了便于圖示,平臺(tái)N中的組件111至117和120至122對(duì)應(yīng)于平臺(tái)A中的組件11至17和20至22,且與以上針對(duì)平臺(tái)A中的組件11至17和20至22 所述的相同方式工作。圖3是顯示根據(jù)本發(fā)明的在虛擬機(jī)環(huán)境中進(jìn)行電源管理的過程發(fā)展的流程圖。在多虛擬機(jī)平臺(tái)環(huán)境中,提供其中每個(gè)虛擬機(jī)平臺(tái)具有多個(gè)虛擬機(jī)的實(shí)施方式,虛擬機(jī)中的每個(gè)虛擬機(jī)均適于連接到多個(gè)用戶計(jì)算機(jī)(客戶端設(shè)備)之一,步驟71。提供以經(jīng)由網(wǎng)絡(luò)將步驟71的用戶計(jì)算機(jī)連接到虛擬機(jī),步驟72。提供以監(jiān)視(獨(dú)立于步驟71的任何連接) 多個(gè)計(jì)算機(jī)中的每個(gè)計(jì)算機(jī)是否處于活動(dòng)狀態(tài),步驟73。提供以判定多個(gè)連接的計(jì)算機(jī)中的所有計(jì)算機(jī)是否均處于非活動(dòng)狀態(tài),步驟74。提供以響應(yīng)于步驟74中所有連接的計(jì)算機(jī)均處于非活動(dòng)狀態(tài)的判定,將虛擬機(jī)平臺(tái)切換至降低功耗狀態(tài),步驟75。提供以在虛擬機(jī)平臺(tái)內(nèi)控制步驟75的切換,其中連接的計(jì)算機(jī)是否處于非活動(dòng)狀態(tài)的傳達(dá)是通過獨(dú)立于虛擬機(jī)平臺(tái)的操作系統(tǒng)的路徑,步驟76。提供以將在步驟76中判定的非活動(dòng)狀態(tài)直接傳達(dá)至虛擬機(jī)平臺(tái)的BIOS,步驟77。參考圖4的流程圖,其說明圖3中設(shè)定的過程的運(yùn)行。初始地,步驟81,系統(tǒng)已接通電源。相應(yīng)地,存在連接的遠(yuǎn)程用戶計(jì)算機(jī)(客戶端設(shè)備),步驟82。設(shè)定計(jì)數(shù)器(步驟 83)活動(dòng)用戶=遠(yuǎn)程用戶+1然后在步驟84判定遠(yuǎn)程用戶計(jì)算機(jī)活動(dòng)中是否存在改變,步驟84。如果是,則在步驟85判定遠(yuǎn)程用戶活動(dòng)是否中斷(或變更),步驟85。在此步驟中,用戶可連接、中斷連接或變成不活動(dòng)(如果用戶的活動(dòng)定時(shí)器已經(jīng)逾時(shí))。如果是,則用戶活動(dòng)中斷,遠(yuǎn)程用戶已從活動(dòng)狀態(tài)中斷連接,步驟86。然后變更計(jì)數(shù)器(步驟87)活動(dòng)用戶=活動(dòng)用戶-1然后判定(步驟88)活動(dòng)用戶=0,步驟88如果否,則流程分支返回步驟84,然后過程繼續(xù)。如果是,則步驟89,虛擬機(jī)平臺(tái)中存在BI0S/ACIP中斷,以允許系統(tǒng)進(jìn)入低功率的“S3休眠”狀態(tài)。BIOS接著建議平臺(tái)的系統(tǒng)管理程序保存上下文,步驟90。在此低功耗休眠狀態(tài)中,繼續(xù)監(jiān)視遠(yuǎn)程用戶計(jì)算機(jī)的活動(dòng)以查看是否變更回遠(yuǎn)程用戶活動(dòng)狀態(tài),步驟90。如果是,則在步驟91,虛擬機(jī)平臺(tái)中存在 BI0S/ACIP變更,從而進(jìn)入高活動(dòng)電源接通“S5”全功率狀態(tài)。BIOS接著建議平臺(tái)的系統(tǒng)管理程序恢復(fù)上下文,步驟92。雖已顯示及說明特定優(yōu)選實(shí)施例,但是本領(lǐng)域的技術(shù)人員將理解,可以在其中做出許多變更和修改。
權(quán)利要求
1.一種在虛擬機(jī)環(huán)境中的電源管理系統(tǒng),包含虛擬機(jī)平臺(tái),所述虛擬機(jī)平臺(tái)提供多個(gè)虛擬機(jī);多個(gè)單獨(dú)客戶端設(shè)備,每個(gè)客戶端設(shè)備都連接到所述虛擬機(jī)中的一個(gè)相應(yīng)虛擬機(jī);判定裝置,用于獨(dú)立于所述客戶端設(shè)備至所述虛擬機(jī)的連接而判定連接到所述虛擬機(jī)的所述客戶端設(shè)備中的每個(gè)客戶端設(shè)備是否處于活動(dòng)狀態(tài);及切換裝置,用于在連接到所述虛擬機(jī)的所述客戶端設(shè)備中的所有客戶端設(shè)備均處于非活動(dòng)狀態(tài)時(shí),將所述虛擬機(jī)平臺(tái)切換至降低功耗狀態(tài)。
2.如權(quán)利要求1所述的電源管理系統(tǒng),其中所述多個(gè)客戶端設(shè)備遠(yuǎn)離所述虛擬機(jī)平臺(tái);及還包括用于將所述多個(gè)客戶端設(shè)備分別連接到所述虛擬機(jī)平臺(tái)的網(wǎng)絡(luò)裝置。
3.如權(quán)利要求2所述的電源管理系統(tǒng),其中所述網(wǎng)絡(luò)裝置是萬維網(wǎng)網(wǎng)絡(luò)裝置。
4.如權(quán)利要求2所述的電源管理系統(tǒng),還包括多個(gè)所述虛擬機(jī)平臺(tái),每個(gè)平臺(tái)分別提供多個(gè)虛擬機(jī);及多個(gè)集合,每個(gè)集合包括分別連接到所述多個(gè)虛擬機(jī)平臺(tái)之一中的虛擬機(jī)的多個(gè)客戶端設(shè)備;其中當(dāng)連接到所述虛擬機(jī)平臺(tái)中的一個(gè)相應(yīng)平臺(tái)中的虛擬機(jī)的所有所述客戶端設(shè)備均處于非活動(dòng)狀態(tài)時(shí),所述切換裝置將所述一個(gè)相應(yīng)平臺(tái)切換至降低功耗狀態(tài)。
5.如權(quán)利要求4所述的電源管理系統(tǒng),其中所述多個(gè)虛擬機(jī)平臺(tái)是布置為虛擬服務(wù)器場(chǎng)的服務(wù)器;及所述多個(gè)客戶端設(shè)備集合中的每個(gè)客戶端設(shè)備集合是連接到相應(yīng)服務(wù)器中的虛擬機(jī)的客戶端計(jì)算機(jī)。
6.如權(quán)利要求2所述的電源管理系統(tǒng),其中用于將所述虛擬機(jī)平臺(tái)切換至所述降低功率狀態(tài)的所述切換裝置在所述虛擬機(jī)平臺(tái)中;及還包括通信裝置,用于通過獨(dú)立于所述虛擬機(jī)平臺(tái)的操作系統(tǒng)的路徑,告知所述切換裝置所述客戶端設(shè)備中的每個(gè)客戶端設(shè)備是否處于非活動(dòng)狀態(tài)。
7.如權(quán)利要求6所述的電源管理系統(tǒng),其中所述虛擬機(jī)平臺(tái)包括系統(tǒng)管理程序和 BIOS ’及用于告知非活動(dòng)狀態(tài)的所述路徑獨(dú)立于所述系統(tǒng)管理程序而連接到所述BIOS。
8.如權(quán)利要求7所述的電源管理系統(tǒng),其中所述虛擬機(jī)平臺(tái)包括底板管理控制器 (BMC),所述BMC具有用于追蹤所述客戶端設(shè)備的非活動(dòng)狀態(tài)的裝置;及用于告知非活動(dòng)狀態(tài)的所述路徑通過所述BMC而連接到所述BIOS。
9.一種在虛擬機(jī)平臺(tái)中的電源管理方法,所述虛擬機(jī)平臺(tái)包括多個(gè)虛擬機(jī),每個(gè)虛擬機(jī)分別連接到多個(gè)單獨(dú)客戶端設(shè)備中的每個(gè)客戶端設(shè)備,所述方法包含獨(dú)立于所述客戶端設(shè)備至所述虛擬機(jī)的連接,判定連接到所述虛擬機(jī)的所述客戶端設(shè)備中的每個(gè)客戶端設(shè)備是否處于活動(dòng)狀態(tài);及在連接到所述虛擬機(jī)的所述客戶端設(shè)備中的所有客戶端設(shè)備均處于非活動(dòng)狀態(tài)時(shí),將所述虛擬機(jī)平臺(tái)切換至降低功耗狀態(tài)。
10.如權(quán)利要求9所述的方法,其中所述多個(gè)客戶端設(shè)備遠(yuǎn)離所述虛擬機(jī)平臺(tái);及通過網(wǎng)絡(luò)將所述多個(gè)客戶端設(shè)備分別連接到所述虛擬機(jī)平臺(tái)。
11.如權(quán)利要求10所述的方法,其中所述網(wǎng)絡(luò)是萬維網(wǎng)。
12.如權(quán)利要求10所述的方法,其中所述電源管理用于多個(gè)所述虛擬機(jī)平臺(tái),每個(gè)平臺(tái)分別提供多個(gè)虛擬機(jī),并且所述方法包括將每個(gè)集合都包括多個(gè)客戶端設(shè)備的多個(gè)集合分別連接到所述多個(gè)虛擬機(jī)平臺(tái)之一中的虛擬機(jī);當(dāng)連接到所述虛擬機(jī)平臺(tái)中的一個(gè)相應(yīng)平臺(tái)中的虛擬機(jī)的所有所述客戶端設(shè)備均處于非活動(dòng)狀態(tài)時(shí),將所述一個(gè)相應(yīng)平臺(tái)切換至降低功耗狀態(tài)。
13.如權(quán)利要求10所述的方法,其中在所述虛擬機(jī)平臺(tái)中控制所述虛擬機(jī)平臺(tái)至所述降低功耗狀態(tài)的切換;及還包括用于通過獨(dú)立于所述虛擬機(jī)平臺(tái)的操作系統(tǒng)的路徑,告知所述虛擬機(jī)平臺(tái)所述客戶端設(shè)備中的每個(gè)客戶端設(shè)備是否處于非活動(dòng)狀態(tài)的步驟。
14.如權(quán)利要求13所述的方法,其中用于告知非活動(dòng)狀態(tài)的所述路徑獨(dú)立于所述虛擬機(jī)平臺(tái)的系統(tǒng)管理程序而連接到所述虛擬機(jī)平臺(tái)的BIOS。
15.一種包括計(jì)算機(jī)程序代碼的計(jì)算機(jī)程序,當(dāng)所述計(jì)算機(jī)程序代碼被加載到計(jì)算機(jī)中并在其上執(zhí)行時(shí),將導(dǎo)致所述計(jì)算機(jī)執(zhí)行如權(quán)利要求9至14中的任一權(quán)利要求所述的方法的所有步驟。
全文摘要
本發(fā)明揭示虛擬機(jī)環(huán)境中的電源管理,所述虛擬機(jī)環(huán)境包括提供多個(gè)虛擬機(jī)的至少一個(gè)虛擬機(jī)平臺(tái)以及多個(gè)單獨(dú)(用戶)計(jì)算機(jī),每個(gè)單獨(dú)計(jì)算機(jī)連接到典型虛擬機(jī)分布環(huán)境內(nèi)的虛擬機(jī)中的一個(gè)相應(yīng)虛擬機(jī)。本發(fā)明還提供用于獨(dú)立于用戶計(jì)算機(jī)至虛擬機(jī)的連接,判定連接到所述虛擬機(jī)的計(jì)算機(jī)中的每個(gè)計(jì)算機(jī)是否處于活動(dòng)狀態(tài)的功能;以及用于在連接到所述虛擬機(jī)的所有計(jì)算機(jī)均處于非活動(dòng)狀態(tài)時(shí),將所述虛擬機(jī)平臺(tái)切換至平臺(tái)中的降低功耗狀態(tài)的功能。
文檔編號(hào)G06F1/32GK102326132SQ201080008247
公開日2012年1月18日 申請(qǐng)日期2010年2月15日 優(yōu)先權(quán)日2009年2月26日
發(fā)明者E·蘇費(fèi)爾, J·伍爾德里奇, J·博策克 申請(qǐng)人:國(guó)際商業(yè)機(jī)器公司