本發(fā)明涉及一種服務(wù)器裝置,特別是有關(guān)于計(jì)算裝置的管理基本輸入輸出系統(tǒng)(BIOS)設(shè)定配置的方法。
背景技術(shù):
許多技術(shù)已經(jīng)發(fā)展到以提供易存取性、一致性、以及有效率的方式來遠(yuǎn)程管理計(jì)算機(jī)服務(wù)器的操作。遠(yuǎn)程管理允許移除該等服務(wù)器的輸入/輸出接口(例如,屏幕、鍵盤、以及鼠標(biāo))。舉例來說,大型數(shù)據(jù)中心包含眾多服務(wù)器,且使用各種遠(yuǎn)程管理工具,像是簡單終端連接、遠(yuǎn)程桌面應(yīng)用、以及其它軟件工具,以配置、監(jiān)控、和排解服務(wù)器硬件和軟件的疑難而共同地管理該等服務(wù)器。
在典型的計(jì)算機(jī)系統(tǒng)中(例如,數(shù)據(jù)中心的機(jī)架式服務(wù)器),BIOS軟件應(yīng)用程序被儲存在BIOS芯片上,該BIOS芯片位于該計(jì)算機(jī)系統(tǒng)的一主機(jī)板上。當(dāng)該計(jì)算機(jī)系統(tǒng)隨著一組指定用于該BIOS的設(shè)定而第一次被開機(jī)時(shí),于加載該操作系統(tǒng)之前,藉由該計(jì)算機(jī)系統(tǒng)的中央處理器(CPU)而執(zhí)行該BIOS儲存的固件。該BIOS固件和BIOS設(shè)定通常被儲存在一非揮發(fā)性內(nèi)存,像是一非揮發(fā)性隨機(jī)存取內(nèi)存(NVRAM)或一只讀存儲器(ROM)?;谠揃IOS,該CPU將基于該組設(shè)定接著執(zhí)行一系列的工作去辨識、初始化、以及測試在該計(jì)算機(jī)系統(tǒng)中的硬件。然后該BIOS允許該計(jì)算機(jī)系統(tǒng)的該CPU去加載一操作系統(tǒng)(OS)。
該BIOS軟件提供一接口,該接口允許各種不同的參數(shù)被設(shè)定。舉例來說,該接口可被用來設(shè)定時(shí)鐘和總線速度、設(shè)定依附該計(jì)算機(jī)系統(tǒng)的接口設(shè)備、設(shè)定健康監(jiān)視(例如,風(fēng)扇轉(zhuǎn)速和CPU溫度范圍)、以及設(shè)定各種其它影響該計(jì)算機(jī)系統(tǒng)的整體性能和電源使用的參數(shù)。
服務(wù)器可被具有不同計(jì)算需求之不同數(shù)據(jù)中心所使用。然而,典型的服 務(wù)器被預(yù)載單一BIOS預(yù)設(shè)配置,該單一BIOS預(yù)設(shè)配置對于該用戶的不同需求可能不是最佳的選擇。此外,針對服務(wù)器的BIOS配置往往復(fù)雜而且可能被緊緊連結(jié)到在各個機(jī)架式服務(wù)器中的硬件組合。傳統(tǒng)上,該管理員需要一人機(jī)接口和一OS應(yīng)用程序去改變針對機(jī)架式服務(wù)器的該BIOS配置,這會限制了該機(jī)架式服務(wù)器的該初始配置。
技術(shù)實(shí)現(xiàn)要素:
為了提供對本技術(shù)一基本的理解,以下介紹的是一個或多個實(shí)施例的一簡要概述。此概述不是本技術(shù)所有預(yù)期的實(shí)施例的廣泛綜述,并且既不旨在標(biāo)示所有范例的關(guān)鍵或重要元素,也不描繪本技術(shù)的任何或全部特征的范圍。其唯一的目的是用一簡化的形式作為后面更多實(shí)施方式的前奏,呈現(xiàn)一個或多個范例的一些概念。
根據(jù)在此處所述范例的一個或多個特征,提供用來管理計(jì)算機(jī)系統(tǒng)的基本輸入/輸出系統(tǒng)(BIOS)設(shè)定的系統(tǒng)和方法。在一特征中,系提供用來管理計(jì)算機(jī)系統(tǒng)的BIOS設(shè)定的方法。該方法包括接收一更改要求而修改該BIOS的設(shè)定。該方法包括判定該BIOS狀態(tài)是否是一解鎖態(tài),以及基于該判定、該更改要求而修改該BIOS。
在一相關(guān)特征中,該方法進(jìn)一步包括判定該BIOS狀態(tài)是否是一鎖態(tài)。該方法進(jìn)一步包括接收一認(rèn)證要求而從該鎖態(tài)更改至該解鎖態(tài),在此,接收到的該認(rèn)證要求包括認(rèn)證信息。該接收到的認(rèn)證信息和儲存在該BIOS之用于匹配的認(rèn)證信息進(jìn)行比對。根據(jù)判定該接受到的認(rèn)證信息是否匹配該儲存認(rèn)證信息,該BIOS狀態(tài)可被更改到該解鎖態(tài)。該方法進(jìn)一步包括基于該更改要求而修改該BIOS設(shè)定。該修改成功后,該BIOS設(shè)定可從該解鎖態(tài)被更改回該鎖態(tài)。
在另一個特征中,提供用來管理計(jì)算機(jī)系統(tǒng)的BIOS設(shè)定的裝置。該裝置包括至少一處理器用以接收一更改要求而修改該BIOS設(shè)定、判定一BIOS狀態(tài)、接收一認(rèn)證需求,該需求包括認(rèn)證信息、判定該接收到的認(rèn)證信息是否匹配儲存在該BIOS的認(rèn)證信息、以及將該BIOS狀態(tài)從該鎖態(tài)更改至該解鎖態(tài)。
在另一個特征中,提供非瞬時(shí)計(jì)算機(jī)可讀取媒體用來管理計(jì)算機(jī)系統(tǒng)的BIOS設(shè)定。該非瞬時(shí)計(jì)算機(jī)可讀取媒體儲存可執(zhí)行指令,該可執(zhí)行指令促 使一數(shù)據(jù)處理裝置接收一更改要求而修改該BIOS設(shè)定、判定一BIOS狀態(tài)、接收該認(rèn)證需求,該認(rèn)證需求包括認(rèn)證信息、判定該接受到的認(rèn)證信息是否匹配儲存在該BIOS的認(rèn)證信息、以及將該BIOS狀態(tài)從該鎖態(tài)更改至該解鎖態(tài)。
附圖說明
本技術(shù)的這些和其它樣本特征將在實(shí)施方式中以及隨后所附請求項(xiàng)、和在隨同的圖式中被描述,其中:
第1A、1B和1C圖顯示一框圖,該框圖有益于對本技術(shù)各個特征的理解;
第2圖顯示在一計(jì)算機(jī)系統(tǒng)中,BIOS設(shè)定配置的認(rèn)證程序之示范方法的流程圖;
第3圖顯示用于一計(jì)算機(jī)系統(tǒng)中的BIOS管理設(shè)定之示范方案的框圖;以及
第4圖顯示一示范計(jì)算機(jī)系統(tǒng)的框圖。
附圖標(biāo)記說明
101~操作系統(tǒng);
102~BIOS設(shè)定;
103~BIOS認(rèn)證機(jī)制;
200、300~方法;
210-270~方法200的步驟;
301-309~方法300的步驟;
400~計(jì)算機(jī)系統(tǒng);
410~BIOS;
412~NVRAM;
420~內(nèi)存;
430~儲存體;
440~處理器;
450~網(wǎng)絡(luò)接口;
460~BMC;
470~總線。
具體實(shí)施方式
本技術(shù)的各種特征將參照附圖進(jìn)行說明。在以下的描述中,出于解釋的目的,許多具體的細(xì)節(jié)被用來闡述對一個或多個特征有一透徹的理解。它可以是顯而易見的,然而,本技術(shù)可以在沒有這些具體細(xì)節(jié)的情況下被實(shí)施。在其它實(shí)例中,公知的結(jié)構(gòu)和裝置以框圖的形式顯示,使得描述這些特征更加容易。“示范”這個詞在這里是指“用作一范例、實(shí)例、或說明”。在這里被描述為“示范”的任意實(shí)施例不一定作較優(yōu)或者優(yōu)于其它實(shí)施例之解釋。
本揭露提供根據(jù)本技術(shù)之技巧用于管理BIOS設(shè)定配置。一計(jì)算機(jī)系統(tǒng)(例如,一機(jī)架式服務(wù)器)的一BIOS可被預(yù)載一BIOS預(yù)設(shè)配置。該計(jì)算機(jī)系統(tǒng)可使用一預(yù)設(shè)配置的BIOS來啟動或可由使用者(例如,一管理員)特定的一客制BIOS設(shè)定配置來啟動。
首先,該揭露參照第1A圖,該第1A圖顯示一存取該BIOS設(shè)定的傳統(tǒng)方法和隨其連帶的問題。特別是,第1A圖顯示一配置,該配置提供存取BIOS設(shè)定102給在該操作系統(tǒng)(OS)101下之目前正在運(yùn)作的任意程序。通常情況下,一管理員或其它被授權(quán)的使用者可根據(jù)需求,經(jīng)常存取該BIOS設(shè)定102做修改。然而,這種情況的問題是,惡意程序也可通過該操作系統(tǒng)101存取該BIOS設(shè)定102。本文所用的術(shù)語“惡意程序”指的是任何型式的惡意軟件,像是病毒。因此,在第1A圖中的該配置不僅可讓該計(jì)算機(jī)系統(tǒng)中被授權(quán)的使用者(例如,管理員)存取該BIOS設(shè)定102,也可讓該惡意程序存取該BIOS設(shè)定102。這可能導(dǎo)致對該計(jì)算機(jī)系統(tǒng)的傷害。
已被提出的解決方案只是防止存取該BIOS設(shè)定。這在第1B圖顯示。第1B圖顯示任何從操作系統(tǒng)101請求來存取的程序不會獲得BIOS存取許可,以防止未經(jīng)授權(quán)存取的情況。這些設(shè)定超越BIOS存取許可,不只防止該惡毒的惡意程序,但是也會使該計(jì)算機(jī)系統(tǒng)的合法使用者無法存取該BIOS設(shè)定102。因此,該管理員在需要時(shí),像是經(jīng)由一遠(yuǎn)程訪問通過該操作系統(tǒng)101時(shí),可能無法修改該BIOS設(shè)定102。當(dāng)該管理員需要管理成千上萬的計(jì)算機(jī)系統(tǒng),像是在一數(shù)據(jù)中心,這可能是特別不方便的。此外,這可能也影響該計(jì)算機(jī)系統(tǒng)的安全性。舉例來說,如果需要通過BIOS設(shè)定來修改該計(jì)算機(jī)系統(tǒng)的一些安全性功能,該限制存取的不便性可能延遲更新以及讓該計(jì)算機(jī)系統(tǒng)易受到攻擊。另外,如果需要通過BIOS設(shè)定來修改該計(jì)算機(jī)系統(tǒng)的一些其它功能用以支持新功能,該限制存取的不便性可能延遲更新和這些新功 能的配置。
有鑒于上述的情況,本揭露針對管理BIOS更新提供一種新方法。這在第1C圖顯示。特別是,第1C圖顯示通過一BIOS認(rèn)證機(jī)制103來存取該BIOS設(shè)定102的方法。亦即,當(dāng)提供有效的認(rèn)證信息時(shí),該BIOS認(rèn)證機(jī)制103被配置為允許在該操作系統(tǒng)101上的一程序(例如,一管理員控制程序)來修改該BIOS設(shè)定102。特別是,藉由“解鎖”該BIOS設(shè)定102。因此,為了管理該BIOS設(shè)定,該管理員將需要有準(zhǔn)確的認(rèn)證信息,該準(zhǔn)確的認(rèn)證信息將與儲存在該BIOS的內(nèi)部認(rèn)證信息或其它安全信息進(jìn)行匹配。
本揭露設(shè)想,該BIOS認(rèn)證機(jī)制103可以是任何授權(quán)機(jī)制,以確認(rèn)可存取該BIOS設(shè)定的經(jīng)授權(quán)使用者的憑證。這樣的機(jī)制可到該操作系統(tǒng)101內(nèi)部或外部操作。進(jìn)一步,這樣的機(jī)制可在該計(jì)算機(jī)系統(tǒng)的該CPU上操作或/和該計(jì)算機(jī)系統(tǒng)的其它控制器,像是一管理控制器。舉例來說,在一些實(shí)施例里,該管理控制器(例如,基板管理控制器,BMC)被配置為與該中央處理器(CPU)一起工作,以提供該BIOS認(rèn)證機(jī)制來允許在CPU的該操作系統(tǒng)101之該程序存取該BIOS。
本揭露還設(shè)想,一類似的程序可被用于管理和控制該BIOS設(shè)定102。在這樣的配置下,該管理控制器可坐落在該CPU與該BIOS之間,以允許該BIOS一遠(yuǎn)程頻外程序(remote out-of-band process)來判定該接收到的認(rèn)證信息是否正確。BIOS可從BMC收到該儲存的認(rèn)證信息。BMC可為該所有者以控制該正確認(rèn)證信息的定義。在一些實(shí)施例里,BMC可控制和儲存該BIOS設(shè)定(例如,鎖態(tài)/解鎖態(tài)),以及當(dāng)從OS接收到BIOS設(shè)定更改要求時(shí),BIOS可從BMC查驗(yàn)該當(dāng)前狀態(tài)。該BIOS認(rèn)證機(jī)制103可被用以管理認(rèn)證程序,該認(rèn)證程序使用在不同型式的認(rèn)證上。這樣的信息可包括密碼、生物特征信息、識別(ID)程序、加密方法、數(shù)字簽章、遠(yuǎn)程控制、或它們的任意組合。這份針對BIOS認(rèn)證機(jī)制103的認(rèn)證程序窗體并非唯一的窗體,而且有其它認(rèn)證的方式。應(yīng)當(dāng)理解的是所述范例并非詳盡,而且并不限制該認(rèn)證程序達(dá)到所揭露的精確形式。
根據(jù)在所述之實(shí)施例的一個或多個特征,第2圖顯示一針對在一計(jì)算機(jī)系統(tǒng)的該解鎖BIOS設(shè)定之該認(rèn)證程序的一示范方法之流程圖。當(dāng)該BIOS設(shè)定是在一鎖態(tài)時(shí),該方法200可在步驟210啟動。本揭露設(shè)想的是該鎖態(tài)可以是一預(yù)設(shè)BIOS狀態(tài)以防止未經(jīng)授權(quán)的實(shí)體存取該BIOS設(shè)定。這種預(yù)設(shè)BIOS 設(shè)定可由一使用者(例如,管理員)來指定。在一些實(shí)施例里,這種狀態(tài)指定可被儲存在系統(tǒng)管理隨機(jī)存取內(nèi)存(SMRAM)上。
在步驟220中,該BIOS認(rèn)證機(jī)制可接收一認(rèn)證要求。該認(rèn)證要求可以是一BIOS狀態(tài)更改要求,以使該BIOS狀態(tài)從該鎖態(tài)更改至該解鎖態(tài)來進(jìn)行必要的BIOS設(shè)定修改。該認(rèn)證要求可通過OS應(yīng)用軟件從該管理員接收。該認(rèn)證要求可包括針對該狀態(tài)更改要求的認(rèn)證之認(rèn)證信息。該認(rèn)證信息包括任何認(rèn)證程序,像是認(rèn)證密碼、生物特征信息、識別(ID)程序、加密方法、數(shù)字簽章、遠(yuǎn)程控制等等。上述的BIOS認(rèn)證程序窗體并非唯一的窗體,而且有其它認(rèn)證的方式。
在一些實(shí)施例里,舉例來說,該認(rèn)證信息可以是藉由該計(jì)算機(jī)系統(tǒng)的該周邊裝置接收到的生物特征(biometric)信息。在一些實(shí)施例里,舉例來說,該認(rèn)證信息可以是藉由該計(jì)算機(jī)系統(tǒng)的各種感應(yīng)器偵測到的視聽內(nèi)容信息。在一些實(shí)施例里,舉例來說,該認(rèn)證信息可以是藉由該計(jì)算機(jī)系統(tǒng)產(chǎn)生或客制之含有字符串變量的密碼。
在步驟230中,該BIOS認(rèn)證機(jī)制可捕獲被儲存的認(rèn)證信息。在一些實(shí)施例里,舉例來說,一認(rèn)證密碼可以被儲存在系統(tǒng)管理隨機(jī)存取內(nèi)存(SMRAM),以及該BIOS認(rèn)證機(jī)制可以從該SMRAM捕獲該密碼。然而,在其它實(shí)施例里,為了進(jìn)一步使該密碼安全,僅在一系統(tǒng)管理模式(SMM)運(yùn)行的BIOS軟件編碼可被準(zhǔn)許存取儲存在SMRAM的該密碼。因此,任何運(yùn)行于在該操作系統(tǒng)上的一正常模式之其它軟件可能無法存取在該SMRAM上的任何數(shù)據(jù)。因此,該密碼可被安全的保護(hù)。
在步驟240中,該被儲存的認(rèn)證信息與從該管理員接收到的該認(rèn)證信息可被比對來做一判定,判定該接收到的認(rèn)證信息是否與被儲存的認(rèn)證信息匹配。
本揭露設(shè)想的是在步驟220中從該管理員接收到的該認(rèn)證信息,或在步驟230中被捕獲的該認(rèn)證信息可被加密。如前所說,本揭露設(shè)想的是任何步驟220、230、以及240可包括加密程序。
在一些實(shí)施例里,該BIOS認(rèn)證機(jī)制用以判定在步驟240中,該接收到的認(rèn)證信息是否恰好匹配該被儲存的認(rèn)證信息。然而,在其它實(shí)施例里,BIOS認(rèn)證機(jī)制用以判定在步驟240中,該接收到的認(rèn)證信息和該被儲存的認(rèn)證信息之間相似性的層級。該相似性的層級說明該接收到的認(rèn)證信息與該被儲存 的認(rèn)證信息相似程度有多高。在這樣配置下,若該相似性的層級高于相似性的一臨界層級,該BIOS認(rèn)證機(jī)制可判定該接收到的認(rèn)證信息匹配該被儲存的認(rèn)證信息。該臨界層級是以判定該接收到的認(rèn)證信息匹配該被儲存的認(rèn)證信息為目的之相似性層級。
在一些實(shí)施例里,該相似性的臨界層級可藉由該計(jì)算機(jī)系統(tǒng)而被判定。舉例來說,該輸入裝置的型式可能限制該認(rèn)證信息的再現(xiàn)性,因而臨界可基于被偵測而得的該輸入裝置的型式而被調(diào)整。同樣地,該認(rèn)證信息的型式可要求一該臨界的調(diào)整。舉例來說,生物特征信息可要求一相較于一文字密碼較低的臨界。仍然在其它實(shí)施例里,該相似性的臨界層級可由該使用者客制。
在步驟250中,緊接在判定該接收到的認(rèn)證信息匹配該被儲存的認(rèn)證信息于步驟240后,該BIOS狀態(tài)可從該鎖態(tài)更改至該解鎖態(tài)以允許任何必要的BIOS設(shè)定更改。二者擇一地,在步驟260中,緊接在判定該接收到的認(rèn)證信息不匹配該被儲存的認(rèn)證信息于步驟240后,該BIOS狀態(tài)維持在該鎖態(tài)。因而,存取該BIOS設(shè)定的路徑被屏蔽。其后,該BIOS機(jī)制可在步驟270中恢復(fù)先前的處理,并包括重復(fù)方法200。
在一些實(shí)施例里,統(tǒng)一可延伸固件接口(UEFI)BIOS設(shè)定可被儲存于一BIOS內(nèi)存裝置(例如,閃存)在NVRAM作為一可延伸固件接口(EFI)變量。在一些實(shí)施例里,舉例來說,該認(rèn)證密碼可被儲存在NVRAM作為一可延伸固件接口變量。該密碼可在沒有設(shè)定運(yùn)行時(shí),存取指示旗標(biāo)下被儲存于NVRAM,所以當(dāng)該計(jì)算機(jī)系統(tǒng)被重新啟動或關(guān)機(jī)時(shí),該密碼是可讀的。
在一相關(guān)特征中,該BIOS認(rèn)證機(jī)制使該BIOS設(shè)定在運(yùn)行時(shí)被更改。舉例來說,該EFI變數(shù)為運(yùn)行時(shí)可存取。藉由執(zhí)行該BIOS認(rèn)證機(jī)制,一針對該EFI變數(shù)的運(yùn)行時(shí)可存取指示旗標(biāo)可被加入,以接受該BIOS設(shè)定更改要求于該正常OS下。此特征使該BIOS軟件編碼能夠運(yùn)行在SMM以存取該BIOS設(shè)定,以及防止操作于該OS的正常模式的該惡意程序存取該BIOS設(shè)定。
當(dāng)該BIOS狀態(tài)更改要求被接收,該BIOS將檢查該BIOS狀態(tài)以確認(rèn)該BIOS狀態(tài)更改要求是否可被接受。緊接著判定該BIOS狀態(tài)需要被更改而接受該更改要求(例如,該BIOS狀態(tài)是一鎖態(tài)),該BIOS可在SMM修改設(shè)定變量“SetVariable()”服務(wù)執(zhí)行。為了更改有關(guān)于該BIOS設(shè)定的該EFI變量,該BIOS可更改儲存在NVRAM的該EFI變量。
在一些實(shí)施例里,舉例來說,當(dāng)此預(yù)先定義的EFI設(shè)定變量名稱輸入是 一指定用于驗(yàn)證的EFI變量,該BIOS可呼叫EFI SetVariable()服務(wù),以預(yù)先定義的名稱輸入。SetVariable()服務(wù)是BIOS可提供的一EFI規(guī)范定義的服務(wù)。該設(shè)定變量可被用于從該OS接收該認(rèn)證信息。設(shè)定變量包括輸入關(guān)于EFI變量的名稱及其數(shù)據(jù)之參數(shù)。通常,BIOS將被標(biāo)記為一預(yù)先定義名稱的該EFI變量的數(shù)據(jù)儲存進(jìn)入NVRAM。在一些實(shí)施例里,SetVariable()服務(wù)可被修改以及儲存進(jìn)入NVRAM。該修改的SetVariable()服務(wù)的一呼叫功能可被視為發(fā)送該認(rèn)證信息,如第2圖所示之220。因此,在該輸入?yún)?shù)上的該數(shù)據(jù)將被視為用于驗(yàn)證的該認(rèn)證信息。
在一些實(shí)施例里,該BIOS設(shè)定配置可從任何儲存裝置取得,前述儲存裝置像是計(jì)算機(jī)系統(tǒng)可存取之一BMC、一硬盤驅(qū)動器、一電子式可抹除可程序只讀存儲器(EEPROM)、或一非揮發(fā)性隨機(jī)存取內(nèi)存(NVRAM)。在一相關(guān)的特征里,該BIOS任何的設(shè)定配置可被一使用者指定。
第3圖顯示一針對在一計(jì)算機(jī)系統(tǒng)中,用于管理BIOS設(shè)定配置之一示范方法300的步驟流程圖。該方法300可從步驟301開始,一計(jì)算機(jī)系統(tǒng)被啟動到該操作系統(tǒng)。與步驟301同時(shí)地,于步驟303該BIOS設(shè)定被配置在一鎖態(tài)。如上所述,該BIOS設(shè)定可預(yù)設(shè)被鎖定。二者擇一地,該BIOS設(shè)定可在該啟動程序中被鎖定。從步驟303開始,該方法300可前往到步驟302、304、或306其中之一。
如上所述,本揭露設(shè)想的是為了授予存取該BIOS設(shè)定,正確的認(rèn)證信息需被提供來讓該BIOS認(rèn)證機(jī)制可以解鎖該BIOS設(shè)定,如上面關(guān)于第2圖所討論。因此,步驟302顯示只要不正確的認(rèn)證信息被提供給該BIOD認(rèn)證機(jī)制,該BIOS設(shè)定將藉由該BIOS認(rèn)證機(jī)制被維持在該鎖態(tài)303。
步驟304和305顯示在沒有解鎖該BIOS設(shè)定下,一計(jì)算機(jī)系統(tǒng)接收到一BIOS設(shè)定更改請求時(shí)的方案。舉例來說,此一方案下可以被預(yù)期會有惡意程序試圖使一BIOS設(shè)定更改,雖然該惡意程序能夠解鎖該BIOS設(shè)定將是不可能的。在此方案下,于步驟304接收到該BIOS設(shè)定更改請求時(shí),該計(jì)算機(jī)系統(tǒng)將判定該BIOS態(tài)仍是在該鎖態(tài)以及使該BIOS設(shè)定將不會在步驟305被更改。當(dāng)該計(jì)算機(jī)系統(tǒng)被判定使該BIOS設(shè)定將不會被更改,該計(jì)算機(jī)系統(tǒng)恢復(fù)先前的處理,并且該BIOS設(shè)定于步驟303仍鎖在該態(tài)上。
步驟306-309顯示該方案是當(dāng)該BIOS認(rèn)證機(jī)制先于或在一更改請求期間,解鎖該BIOS設(shè)定。首先,如第3圖所示,該正確的認(rèn)證信息于步驟306 被接收。在判定該接收到認(rèn)證信息與該被儲存的認(rèn)證信息相匹配下,該BIOS狀態(tài)將被更改到該解鎖態(tài)307。此程序可如上面關(guān)于第2圖所述來執(zhí)行。
如前面所討論的,該認(rèn)證信息可以是任意數(shù)據(jù)來認(rèn)證如上面所述的一被授權(quán)使用者。該使用者可利用任何輸入方法來輸入該認(rèn)證信息。該計(jì)算機(jī)系統(tǒng)的該BIOS認(rèn)證機(jī)制將接著捕獲被儲存在該BIOS的該內(nèi)部認(rèn)證信息來做出一判定。在判定該接收到的認(rèn)證信息匹配該被儲存的認(rèn)證信息,該BIOS狀態(tài)可藉由該BIOS認(rèn)證機(jī)制被更改到該解鎖態(tài)。
與步驟306和307晚于或同時(shí)地,BIOS設(shè)定更改請求可被接收(步驟308)。其后,因?yàn)樵揃IOS設(shè)定是在一解鎖態(tài),該BIOS設(shè)定可基于該更改要求在步驟309而被更改。一旦該BIOS設(shè)定更改被完成,該BIOS狀態(tài)可更改回到該鎖態(tài)303來防止非授權(quán)程序隨后地存取以及更改該BIOS設(shè)定。
第4圖顯示一示范計(jì)算機(jī)系統(tǒng)400的框圖。該計(jì)算機(jī)系統(tǒng)400可包括一處理器440、一網(wǎng)絡(luò)接口450、一基板管理控制器(BMC)460、一內(nèi)存420、一儲存體430、一BIOS 410、以及一總線470。
舉例來說,該計(jì)算機(jī)系統(tǒng)400可以是一服務(wù)器(例如,在一數(shù)據(jù)中心的許多機(jī)架式服務(wù)器中的一個)或一個人計(jì)算機(jī)。該處理器(例如,中央處理器)440可捕獲和執(zhí)行被儲存在該內(nèi)存420(例如,隨機(jī)存取內(nèi)存)的程序指令。該處理器440可以是一具有單個處理核心的單一CPU、一具有多個處理核心的單一CPU、或多個CPU。該儲存體430可包括數(shù)據(jù)儲存體的任意非揮發(fā)性形式,像是一HDD或一閃存驅(qū)動器。該總線470可傳輸計(jì)算機(jī)組件之間的指令和應(yīng)用數(shù)據(jù),像是該處理器440、內(nèi)存420、儲存體430、以及網(wǎng)絡(luò)接口450。
該BIOS 410可包括一基本輸入/輸出系統(tǒng)或其繼承者或同等者,像是一可延伸固件接口(EFI)或統(tǒng)一可延伸固件接口(UEFI)。該BIOS 410可包括一BIOS芯片,該BIOS芯片位于該計(jì)算機(jī)系統(tǒng)400的一主機(jī)板上,用來儲存一BIOS軟件程序。當(dāng)該計(jì)算機(jī)系統(tǒng)和指定用于該BIOS 410的一組設(shè)定第一次被開機(jī),該BIOS 410可儲存被執(zhí)行的固件。該BIOS固件和BIOS設(shè)定可被儲存在非揮發(fā)性內(nèi)存(例如,NVRAM)412或一ROM。
每一次該計(jì)算機(jī)系統(tǒng)400被啟動,該BIOS 410可作為一序列程序而被加載和執(zhí)行?;谠摻M設(shè)定,該BIOS 410可辨識、初始化、以及測試一給定計(jì)算機(jī)系統(tǒng)中的硬件。該BIOS 410可尋址和分配在該內(nèi)存420的一區(qū)域,用來儲存一操作系統(tǒng)(OS)。該BIOS 410可接著將該計(jì)算機(jī)系統(tǒng)的控制轉(zhuǎn)移給該 OS。
該計(jì)算機(jī)系統(tǒng)400的該BIOS 410可包括一BIOS配置,該BIOS配置定義該BIOS 410如何控制在該計(jì)算機(jī)系統(tǒng)400中的各種硬件。該BIOS設(shè)定可判定在該計(jì)算機(jī)系統(tǒng)400中的該等硬件被啟動時(shí)的次序。該BIOS 410可提供一接口,該接口允許各種不同的參數(shù)被設(shè)定,該等參數(shù)不同于在一BIOS預(yù)設(shè)配置的參數(shù)。舉例來說,一使用者(例如,一管理員)可使用該BIOS 410來特定時(shí)鐘和總線速度、特定什么周邊被裝在該計(jì)算機(jī)系統(tǒng)400、特定健康監(jiān)視(例如,風(fēng)扇轉(zhuǎn)速和CPU溫度范圍)、以及特定各種其它參數(shù),該等其它參數(shù)影響該計(jì)算機(jī)系統(tǒng)400的整體性能和電源使用。
該BMC 460可以是一嵌入在一計(jì)算機(jī)的該主機(jī)板上之專門微控制器,例如一服務(wù)器。該BMC 460可管理系統(tǒng)管理軟件和平臺硬件之間的接口。內(nèi)建在該計(jì)算機(jī)系統(tǒng)400上的不同類型的感應(yīng)器可將像是溫度、冷卻風(fēng)扇轉(zhuǎn)速、電源狀態(tài)、操作系統(tǒng)(OS)狀態(tài)等的參數(shù)向該BMC 460反映。該BMC 460可監(jiān)視該感應(yīng)器以及如果任何該參數(shù)沒有待在預(yù)設(shè)范圍內(nèi),意味著該系統(tǒng)有一潛在性故障時(shí),該BMC 460有能力經(jīng)由該網(wǎng)絡(luò)接口450傳送警報(bào)給一管理員。該管理員也可與該BMC 460進(jìn)行遠(yuǎn)程通信來采取一些正確的作為,像是重置或者或電源循環(huán)該系統(tǒng)來恢復(fù)功能。
機(jī)架式服務(wù)器可為基于不同計(jì)算需求的不同的數(shù)據(jù)中心所使用。然而,典型的機(jī)架式服務(wù)器被預(yù)載一單一BIOS預(yù)設(shè)配置,該單一BIOS預(yù)設(shè)配置對于不同用戶的各種需求可能不是最佳的選擇。此外,針對機(jī)架式服務(wù)器的BIOS配置往往復(fù)雜而且可能被緊緊連結(jié)到在各個機(jī)架式服務(wù)器中的硬件組合。傳統(tǒng)上,該管理員需要一人機(jī)接口和一OS應(yīng)用程序去選擇針對機(jī)架式服務(wù)器的該BIOS配置,這會限制了該機(jī)架式服務(wù)器的該初始配置。
在一示例性實(shí)施方式中,該計(jì)算機(jī)系統(tǒng)400可寫入復(fù)數(shù)個BIOS預(yù)設(shè)配置到該BIOS 410。在一相關(guān)特征中,該BMC 460可不使用一OS來寫入該等BIOS預(yù)設(shè)配置。在另一相關(guān)特征中,一運(yùn)行在OS上的應(yīng)用程序可寫入該等BIOS預(yù)設(shè)配置。在一示例性實(shí)施方式中,該計(jì)算機(jī)系統(tǒng)400的該BIOS 410可選擇特定的BIOS預(yù)設(shè)配置。在一示例性實(shí)施方式中,該BIOS 410可加載該特定的BIOS預(yù)設(shè)配置進(jìn)入到該BIOS 410的該NVRAM 412。
在一些實(shí)施例里,在一數(shù)據(jù)中心的一服務(wù)器機(jī)架上,通常容納大量的機(jī)架式服務(wù)器。該機(jī)架式服務(wù)器可具有不同的硬件配置或可針對不同的目的而 被使用。舉例來說,一些機(jī)架式服務(wù)器可具有比其它服務(wù)器更多的HDD、內(nèi)存容量、或CPU核心。在另一范例中,某些機(jī)架式服務(wù)器可針對云端儲存而被使用,因此需要較少的處理電源,而其它服務(wù)器可用以服務(wù)在線游戲,因此需要較多的處理電源。因而,該機(jī)架式服務(wù)器可能需要不同的BIOS預(yù)設(shè)配置,該BIOS預(yù)設(shè)配置是針對不同硬件配置以及針對該機(jī)架式服務(wù)器的不同功能之最佳選擇。一使用者,例如一信息科技(IT)研發(fā)人員,可準(zhǔn)備針對不同的機(jī)架式服務(wù)器而提供不同的固件設(shè)定(包括例如,BIOS預(yù)設(shè)配置)的腳本。通常,該固件設(shè)定經(jīng)由一OS應(yīng)用程序被安裝。這意味著該OS必須在該固件設(shè)定能被安裝之前,被加載到各個機(jī)架式服務(wù)器上。
針對本揭露所述的各種說明性邏輯區(qū)塊、模塊、以及電路,于此處可與被設(shè)計(jì)用來執(zhí)行在此處所述的功能之一通用處理器、數(shù)字訊號處理器(DSP)、一特定應(yīng)用整合式電路(ASIC)、一場效可程序化邏輯門陣列(FPGA)、或其它可程序化邏輯裝置、離散門極或晶體管邏輯、離散硬件組件、或它們的任意組合一起被實(shí)施或執(zhí)行。一通用處理器可以是一微處理器,但在替代方案中,該處理器可以是任意常規(guī)處理器、控制器、微控制器、或狀態(tài)機(jī)。一處理器也可作為一計(jì)算裝置的組合而被實(shí)施,例如一DSP和一微處理器的組合、復(fù)數(shù)個微處理器、一個或多個微處理器與一DSP核心連結(jié)、或其它這樣的配置。
針對本揭露所述的一方法或算法的作業(yè)于此處可以直接在硬件、在藉由一處理器而被執(zhí)行的一軟件模塊、或在上述兩者的組合中被實(shí)施。一軟件模塊可駐留在RAM、閃存內(nèi)存、ROM、EPROM、EEPROM、緩存器、硬盤、一可移動式硬盤、一CD-ROM、或在所屬技術(shù)領(lǐng)域已習(xí)知的任何其它型式的儲存媒體。一示范性儲存媒體被耦接到該處理器,使得該處理器可讀取信息型式,以及寫入信息到該儲存媒體。在替代方案中,該儲存媒體可以是該處理器的部分組成。該處理器和該儲存媒體可駐留在一ASIC。該ASIC可駐留在一使用者終端。在替代方案中,該處理器和該儲存媒體可作為離散組成而駐留在一使用者終端。
在一個或多個示范性設(shè)計(jì)中,所述功能可以在硬件、軟件、固件、或它們的任意組合中被實(shí)現(xiàn)。如果是在軟件中被實(shí)現(xiàn),該功能可以作為一個或多個指令或編碼在一非瞬時(shí)計(jì)算機(jī)可讀取媒體上被儲存或傳輸。該非瞬時(shí)計(jì)算機(jī)可讀取媒體包括計(jì)算機(jī)儲存媒體和通信媒體兩者,該通信媒體包括使一計(jì)算機(jī)程序容易從一位置傳輸?shù)搅硪晃恢玫拿襟w。一儲存媒體可以是任何可用 的媒體,該可用的媒體可以藉由一通用或特定計(jì)算機(jī)而被存取。以舉例的方式,而且不設(shè)限,這樣的計(jì)算機(jī)可讀取媒體包括RAM、ROM、EEPROM、CD-ROM或其它光盤儲存、磁盤儲存或其它磁性儲存裝置、或任何其它媒體,該媒體可被以指令或數(shù)據(jù)結(jié)構(gòu)的形式利用來傳送或儲存所需程序編碼方法以及可藉由一通用或特定計(jì)算機(jī)、或一通用或特定處理器而被存取。在這里被使用的磁盤和光盤包括光盤片(CD)、雷射影碟、光盤、數(shù)字多功能光盤(DVD)、軟盤以及藍(lán)光光盤,其中磁盤通常磁性地再現(xiàn)數(shù)據(jù),而光盤則以雷射光學(xué)地再現(xiàn)數(shù)據(jù)。上述的組合也應(yīng)該被包括在該非瞬時(shí)計(jì)算機(jī)可讀取媒體的范圍之內(nèi)。
本揭露先前的描述是提供給所屬技術(shù)領(lǐng)域的專業(yè)人員來制造或使用本揭露。各種修改本揭露對所屬技術(shù)領(lǐng)域的專業(yè)人員將是顯而易見的,以及本文定義的一般原理可在不脫離本揭露的范圍下被應(yīng)用在其它變動。因此,本揭露沒有打算被限制在本文范例和所述設(shè)計(jì),但要與本揭露于本文所述的原理及新穎特征之最廣范圍是符合的。