可配置的計(jì)算機(jī)存儲器的制造方法
【專利摘要】用于配置計(jì)算機(jī)系統(tǒng)存儲器的方法,包括給計(jì)算機(jī)系統(tǒng)上電;獲取初始化所述計(jì)算機(jī)系統(tǒng)的選項(xiàng);將第一預(yù)定義設(shè)置指定給所述存儲器的第一段;將第二預(yù)定義設(shè)置指定給所述存儲器的第二段;以及引導(dǎo)所述計(jì)算機(jī)系統(tǒng)。
【專利說明】可配置的計(jì)算機(jī)存儲器
【背景技術(shù)】
[0001]計(jì)算機(jī)存儲器使用各種特征,以一方面增強(qiáng)性能,并且另一方面增強(qiáng)恢復(fù)力或可靠性。用于提高性能的特征會降低可靠性的恢復(fù)力,并且反之亦然。計(jì)算機(jī)可能不具有用于使這些性能以及恢復(fù)力特征改變的內(nèi)部程序。例如,計(jì)算機(jī)的基礎(chǔ)操作系統(tǒng)不會編程使性能以及恢復(fù)力特征修改,以引起計(jì)算機(jī)的運(yùn)行條件或計(jì)算機(jī)上執(zhí)行的應(yīng)用的需求的改變。
【專利附圖】
【附圖說明】
[0002]詳細(xì)的描述參照以下附圖,其中,相似的標(biāo)記指的是相似的項(xiàng)目,并且其中:
[0003]圖1示出支持可配置的計(jì)算機(jī)存儲器的計(jì)算機(jī)系統(tǒng)的實(shí)施例;
[0004]圖2是可配置的計(jì)算機(jī)存儲器示例的各元件的示意圖;
[0005]圖3是實(shí)現(xiàn)圖2的計(jì)算機(jī)存儲器的配置的數(shù)據(jù)結(jié)構(gòu)的示例;
[0006]圖4是讀取計(jì)算機(jī)存儲器配置的操作系統(tǒng)的指令的示例;以及
[0007]圖5和6是用于配置圖2的計(jì)算機(jī)存儲器的方法的示例。
【具體實(shí)施方式】
[0008]可增強(qiáng)計(jì)算機(jī)運(yùn)行及其安裝的存儲器,以一方面提高性能,或另一方面提高恢復(fù)力。由于提高恢復(fù)力通常要求保留存儲器以支持期望的提高的恢復(fù)力,因此提高恢復(fù)力會降低性能。此外,在某些情況下,提高的性能可能比提高的恢復(fù)力更好,而在其它情況下,相反的是對的。當(dāng)前的存儲器恢復(fù)力特征(例如,DRAM設(shè)備恢復(fù)、備用、鏡像以及鎖步)的靈活度、粒度以及復(fù)雜度已創(chuàng)建了場景,其中因最佳的或用戶和應(yīng)用期望的可靠性以及電源/性能而配置計(jì)算機(jī)系統(tǒng)是復(fù)雜的、困難的并且耗時(shí)的。由于總的存儲器或帶寬的影響,可靠性和性能的權(quán)衡會使計(jì)算機(jī)用戶忽略可能的存儲器配置選項(xiàng)。由于當(dāng)前的計(jì)算機(jī)系統(tǒng)可包括在各個(gè)處理節(jié)點(diǎn)或處理器通道配置存儲器的選項(xiàng),但除了對計(jì)算機(jī)操作系統(tǒng)的熱插拔外(hot-plugging),沒有傳遞存儲器恢復(fù)力設(shè)置和容量以及允許操作系統(tǒng)將這些設(shè)置控制在存儲器的特定范圍的方法,因此這樣的情況在當(dāng)前的計(jì)算機(jī)系統(tǒng)中會加劇。沒有這樣的能力,實(shí)現(xiàn)優(yōu)化的性能和恢復(fù)力設(shè)置是不可能的。
[0009]本文公開了允許計(jì)算機(jī)用戶建立性能和恢復(fù)力目標(biāo),向計(jì)算機(jī)的運(yùn)行環(huán)境傳遞該目標(biāo),以及使操作系統(tǒng)調(diào)整目標(biāo)的實(shí)現(xiàn)以使計(jì)算機(jī)的特定運(yùn)行條件適合那些條件變化的系統(tǒng)及方法。此外,在實(shí)施例中,各方法和系統(tǒng)允許操作系統(tǒng)不用任何特定的用戶輸入而進(jìn)行“智能的”存儲器配置選擇。
[0010]當(dāng)用戶或應(yīng)用向計(jì)算機(jī)發(fā)出引導(dǎo)命令時(shí),計(jì)算機(jī)CPU通過嘗試從計(jì)算機(jī)系統(tǒng)硬盤獲取操作系統(tǒng)文件來響應(yīng)。CUP還嘗試從B1S (基本輸入輸出系統(tǒng))獲取配置數(shù)據(jù)文件,以配置特定的硬件配置所需要的計(jì)算機(jī)參數(shù)。按照此引導(dǎo)過程,操作系統(tǒng)具有重新配置計(jì)算機(jī)的主存儲器的機(jī)會。因此,本文公開的系統(tǒng)及方法利用計(jì)算機(jī)正常的引導(dǎo)操作以允許計(jì)算機(jī)操作系統(tǒng)重新配置計(jì)算機(jī)存儲器性能和恢復(fù)力特征,以適合計(jì)算機(jī)用戶建立的特定的性能和恢復(fù)力目標(biāo)。但是,注意到,這些目標(biāo)可包括默認(rèn)值。
[0011]所公開的系統(tǒng)及方法通過數(shù)據(jù)結(jié)構(gòu)以及通信接口,例如基于地址范圍,向計(jì)算機(jī)操作系統(tǒng)傳遞恢復(fù)力和性能設(shè)置以及計(jì)算機(jī)存儲段的容量,使得操作系統(tǒng)可智能地管理及分配存儲器資源。例如,這允許操作系統(tǒng)將最大恢復(fù)力的存儲區(qū)域分配給最關(guān)鍵的數(shù)據(jù)/代碼/應(yīng)用,以及將最高性能存儲區(qū)域分配給最高性能敏感的數(shù)據(jù)/代碼/應(yīng)用。用戶可識別這些數(shù)據(jù)/代碼/應(yīng)用??商娲鼗虼送?,操作系統(tǒng)可從性能和恢復(fù)力的角度識別最重要的數(shù)據(jù)/代碼/系統(tǒng)。例如,操作系統(tǒng)可從恢復(fù)力的角度將操作系統(tǒng)內(nèi)核識別為最重要的,并且可嘗試將鏡像的存儲段指定給內(nèi)核。因此,可為特定的使用環(huán)境和應(yīng)用定制存儲器資源的分配和管理。所公開的系統(tǒng)和方法使操作系統(tǒng)能夠根據(jù)數(shù)據(jù)結(jié)構(gòu)中提供的信息設(shè)置存儲區(qū)域配置,這會影響之后的重新引導(dǎo)。可替代地,可不用重新引導(dǎo)操作系統(tǒng)進(jìn)行存儲區(qū)域配置。
[0012]在一種替代中,在需要重新引導(dǎo)以實(shí)現(xiàn)存儲器重新配置時(shí),在彈出窗中給計(jì)算機(jī)用戶呈現(xiàn)例如需要重新引導(dǎo)的警告。該警告可聲明將自動發(fā)生重新引導(dǎo),或可給出用于接受或拒絕重新引導(dǎo)(以及存儲器重新配置)的選項(xiàng)??商娲?,重新引導(dǎo)可不需要警告發(fā)生。最后,可呈現(xiàn)給用戶存儲器重新配置的概括,或可將存儲器配置保存在用戶可訪問的存儲器的文件中。
[0013]在操作中,計(jì)算機(jī)的引導(dǎo)系統(tǒng)固件初始化并評估具有支持的和可用的恢復(fù)力、性能和電源管理的存儲器特征的存儲器配置。固件在系統(tǒng)啟動期間提供數(shù)據(jù)結(jié)構(gòu),所提供的數(shù)據(jù)結(jié)構(gòu)傳遞存儲器容量/恢復(fù)力、權(quán)衡以及單個(gè)存儲區(qū)域的屬性,該屬性允許操作系統(tǒng)評估每個(gè)定義的存儲范圍或段,實(shí)現(xiàn)操作系統(tǒng)的存儲器資源智能的分配。例如,各數(shù)據(jù)結(jié)構(gòu)會告訴操作系統(tǒng)存儲區(qū)域2(四個(gè)中的一個(gè))配置用于鏡像,并且因此,存儲區(qū)域2中的一半將用于鏡像。各數(shù)據(jù)結(jié)構(gòu)可通過定義的接口暴露給引導(dǎo)的操作系統(tǒng)。各數(shù)據(jù)結(jié)構(gòu)可指示每個(gè)存儲區(qū)域的當(dāng)前容量以及每個(gè)存儲區(qū)域的支持的容量。然后,操作系統(tǒng)可重新配置存儲區(qū)域,以將當(dāng)前容量改變?yōu)槎x的支持的容量范圍內(nèi)的任意容量。
[0014]在一個(gè)實(shí)施例中,操作系統(tǒng)重新配置存儲段,以支持指定給該存儲段的數(shù)據(jù)/代碼/應(yīng)用。在另一個(gè)實(shí)施例中,操作系統(tǒng)基于存儲段當(dāng)前的配置將數(shù)據(jù)/代碼/應(yīng)用指定給存儲段。在每個(gè)實(shí)施例中,如果存儲段配置是不理想的或不適于特定的數(shù)據(jù)/代碼/應(yīng)用,則操作系統(tǒng)可重新配置存儲段。
[0015]圖1示出包含可配置存儲器的計(jì)算機(jī)系統(tǒng)的實(shí)施例的框圖。在圖1中,計(jì)算機(jī)系統(tǒng)100包括處理器120、輸入裝置130、輸出接口 140以及數(shù)據(jù)存儲118。處理器120執(zhí)行加載到計(jì)算機(jī)主存儲器210中的機(jī)器指令。
[0016]處理器120接收來自輸入裝置130的輸入。輸入裝置130可包括例如用戶接口,通過用戶接口,用戶可訪問在數(shù)據(jù)存儲118中存儲的數(shù)據(jù),例如對象、軟件以及應(yīng)用,并且還可訪問在數(shù)據(jù)存儲118中存儲的通過輸出接口 140輸出的各種版本的數(shù)據(jù)。此外或可替代地,用戶可與輸入裝置130交互,以將數(shù)據(jù)提供到數(shù)據(jù)存儲118中,和/或更新之前存儲在數(shù)據(jù)存儲118中的數(shù)據(jù)。
[0017]計(jì)算機(jī)系統(tǒng)100包括基本輸入/輸出系統(tǒng)(B1S) 160。B1S 160可實(shí)現(xiàn)為非易失性存儲器,例如閃存、EEPROM以及憶阻器。固件可提供作為B1S 160的一部分。如果計(jì)算機(jī)系統(tǒng)100重新引導(dǎo)或者重新啟動,作為固件存儲在B1S 160中的初始化指令允許統(tǒng)一的初始操作,或啟動以及計(jì)算機(jī)系統(tǒng)100的初始配置??苫谙到y(tǒng)及用戶偏好運(yùn)行并重新配置B1S 160。此外,默認(rèn)設(shè)置可編程并且并入B1S 160中。
[0018]圖2示出可配置計(jì)算機(jī)存儲器及相關(guān)的組件的示例。在圖2中,示出與B10S160及存儲控制器180連接的計(jì)算機(jī)主存儲器210,包括可用于應(yīng)用的四個(gè)存儲區(qū)域或段,即段211-214,控制操作系統(tǒng)內(nèi)核122的段215,以及控制數(shù)據(jù)結(jié)構(gòu)300的段216。存儲器210可為例如動態(tài)隨機(jī)存取存儲器(DRAM)。例如,B1S 160構(gòu)建結(jié)構(gòu)300,包含每個(gè)存儲段211-216的關(guān)于恢復(fù)力、性能以及功耗的當(dāng)前和可能的設(shè)置。如所提到的,數(shù)據(jù)結(jié)構(gòu)300可存儲在存儲器210中。B1S 160與計(jì)算機(jī)系統(tǒng)的處理器120通信,并例如提供數(shù)據(jù)結(jié)構(gòu)300中包含的信息。處理器120根據(jù)計(jì)算機(jī)的操作系統(tǒng)執(zhí)行,計(jì)算機(jī)的操作系統(tǒng)包括操作系統(tǒng)內(nèi)核122。內(nèi)核122包含運(yùn)行計(jì)算機(jī)系統(tǒng)100的核心指令。處理器120與存儲控制器180通信,存儲控制器180最終向存儲段211-216發(fā)布重新配置指令。
[0019]當(dāng)計(jì)算機(jī)系統(tǒng)100開機(jī)時(shí),B1S 160執(zhí)行系統(tǒng)引導(dǎo)(或重新引導(dǎo))。B1S 160確定存儲器210的各部分的容量,存儲器210的各部分的容量可基于預(yù)定義的設(shè)置已經(jīng)被設(shè)置。因此,存儲器210的第一段可具有X的恢復(fù)力設(shè)置,并且存儲器210的第二段可具有Y的恢復(fù)力設(shè)置,其中X和Y為預(yù)定義的設(shè)置??商娲?,預(yù)定義的設(shè)置可為之前基于來自B1S 160、操作系統(tǒng)或應(yīng)用處理的檢測到的數(shù)據(jù)的優(yōu)化。
[0020]各設(shè)置可以恢復(fù)力、可訪問性、可服務(wù)性(RAS)標(biāo)準(zhǔn)為基礎(chǔ)。因此,在存儲器210中,每個(gè)存儲段可基于用戶、操作系統(tǒng)或應(yīng)用確定的什么是優(yōu)化的,根據(jù)RAS標(biāo)準(zhǔn)的特定實(shí)現(xiàn)配置。在示例中,用戶可從恢復(fù)力的角度指定應(yīng)用A是最重要的,并且從性能的角度指定應(yīng)用B是最重要的。在本示例中,B1S 160的系統(tǒng)固件定義每個(gè)存儲段211-216可用的并且當(dāng)前調(diào)用的性能、恢復(fù)力以及功耗特征,并向操作系統(tǒng)170傳遞這些特征。操作系統(tǒng)170確定應(yīng)將哪個(gè)應(yīng)用映射到哪個(gè)段,以及是否哪些任意存儲段應(yīng)重新配置為映射的一部分。操作系統(tǒng)170向存儲控制器180提供合適的指令,實(shí)現(xiàn)操作系統(tǒng)170確定的存儲器配置。
[0021]如上面提到的,操作系統(tǒng)170可基于其內(nèi)部邏輯作出配置決定,并且不用任何(人類)用戶輸入;例如鏡像操作系統(tǒng)內(nèi)核??商娲?,操作系統(tǒng)170可接收來自關(guān)聯(lián)的應(yīng)用的信息,引導(dǎo)操作系統(tǒng)以特定方式配置某些存儲段。
[0022]如圖2中所示,存儲器210具有幾個(gè)不同的段211-216。段211當(dāng)前可配置用于優(yōu)化功耗,因此適當(dāng)?shù)腞AS設(shè)置可應(yīng)用段211。段212可針對恢復(fù)力優(yōu)化,并且可針對段212選擇合適的RAS設(shè)置。在一個(gè)段212針對恢復(fù)力分類的示例中,鏡像選項(xiàng)可以是可用的并且指定給段212。因此,如果鏡像被應(yīng)用于段212,段212中的可用存儲器中的一半被保留用于支持鏡像,并且因此,不可用此存儲段以及被配置用于最佳的性能的其它存儲段執(zhí)行要求高性能的應(yīng)用。
[0023]圖3示出用于向操作系統(tǒng)傳遞存儲段的存儲容量的計(jì)算機(jī)系統(tǒng)固件構(gòu)造的數(shù)據(jù)結(jié)構(gòu)300的示例。提供的代碼為專用于高級配置與電源接口(ACPI)標(biāo)準(zhǔn)的一種實(shí)現(xiàn)。但是,圖3中示出的數(shù)據(jù)結(jié)構(gòu)可用各種編碼語言和技術(shù)實(shí)現(xiàn),并且因此,不限于圖3中示出的示例。
[0024]在圖3中,數(shù)據(jù)結(jié)構(gòu)300指的是可由計(jì)算機(jī)存儲器使用的各種恢復(fù)力特征以及性能特征?;謴?fù)力特征包括雙設(shè)備數(shù)據(jù)校正(DDDC)和SDDC,DDDC提供多達(dá)兩個(gè)動態(tài)隨機(jī)存取存儲器(DRAM)錯(cuò)誤的自校正以及從另外致命系統(tǒng)錯(cuò)誤恢復(fù);SDDC提供一個(gè)DRAM錯(cuò)誤的自校正、復(fù)制數(shù)據(jù)的鏡像以及擱置或保留存儲器的備用??稍跀?shù)據(jù)結(jié)構(gòu)300中定義其它恢復(fù)力特征。
[0025]通過使用圖3的數(shù)據(jù)結(jié)構(gòu)300 (如下面解釋),操作系統(tǒng)可確定各種存儲段的最佳使用。例如,如果操作系統(tǒng)“被告知”或“確定”應(yīng)用或數(shù)據(jù)的部分為最重要的,操作系統(tǒng)可重新配置存儲段,使得與該數(shù)據(jù)的部分的應(yīng)用關(guān)聯(lián)的存儲段具有最高的可能的恢復(fù)力(例如,通過鏡像)。但是,如果操作系統(tǒng)170確定數(shù)據(jù)部分不太重要,并且更關(guān)注性能,操作系統(tǒng)可針對性能重新配置要優(yōu)化的存儲段。對于電源管理,可作出類似的決定。
[0026]在圖3中,數(shù)據(jù)結(jié)構(gòu)300包括三個(gè)存儲區(qū)域或段,通過例如起始地址和長度定義每個(gè)存儲區(qū)域或段。對于每個(gè)定義的存儲區(qū)域,數(shù)據(jù)結(jié)構(gòu)300可指示該區(qū)域與恢復(fù)力、性能、存儲器使用、功耗以及其它特征有關(guān)的當(dāng)前的設(shè)置。然后,由計(jì)算機(jī)的操作系統(tǒng)讀取這些值,計(jì)算機(jī)的操作系統(tǒng)可(在一種示例中,在重新引導(dǎo)時(shí))重新配置各存儲區(qū)域,以適應(yīng)計(jì)算機(jī)系統(tǒng)的運(yùn)行以及應(yīng)用的執(zhí)行。
[0027]如圖3中能夠看到的,由頭O指示的第一存儲段具有定義的基地址以及由長度指示的結(jié)束地址。第一存儲段還具有表示的當(dāng)前設(shè)置01,可通過參考四個(gè)可用條目[0]_[4]解釋表示的當(dāng)前設(shè)置。最后,各條目(在條目表中)定義第一存儲段的可用容量。例如,第一存儲段可用于針對鏡像(條目[3])配置,但根據(jù)條目[I],其當(dāng)前針對DDDC配置。注意到,條目[O]為(O, O, O, 100)//SDDC,具有最低恢復(fù)力值,但最高的性能。第一個(gè)“O”指的是恢復(fù)力水平-在這種情況下為SDDC ;第二個(gè)“O”指的是性能,并且越低的數(shù)意味著越高的性能;第三個(gè)“O”指的是針對恢復(fù)力存儲區(qū)域擱置的百分比-存儲器“成本”(在SDDC情況下為O);并且“100”指的是相對功耗,在這種情況下為最大。因此,上面提到的條目[3]可用于配置第一個(gè)存儲段,導(dǎo)致最高的恢復(fù)力水平,存儲段的50%擱置用于支持鏡像,并且有80%的相對功耗。
[0028]第二存儲段當(dāng)前設(shè)置用于鏡像(條目[2]),但可設(shè)置用于DDDC或SDDC+備用。第三存儲區(qū)域設(shè)置用于SDDC+備用,并且沒有可用的其它設(shè)置。
[0029]假設(shè)存儲器210為68GB,其中的48GB為操作系統(tǒng)可尋址作為可用存儲器(通常情況),存儲范圍0(0-16GB)當(dāng)前設(shè)置用于DDDC,存儲范圍1(16-32GB)當(dāng)前設(shè)置用于鏡像,并且存儲范圍2(32-48GB)當(dāng)前設(shè)置用于SDDC+備用。存儲段的性能將不同,對應(yīng)于范圍2 (SDDC+備用)的具有最高性能(以及最低恢復(fù)力)的存儲段以及對應(yīng)于范圍I (鏡像)的具有最低性能(以及最高恢復(fù)力)的存儲段。
[0030]上述示例的數(shù)據(jù)結(jié)構(gòu)300為操作系統(tǒng)對存儲區(qū)域的使用作出智能的決定提供了必須的信息。如上面所提到的,引導(dǎo)系統(tǒng)固件向數(shù)據(jù)結(jié)構(gòu)300提供列出每個(gè)存儲區(qū)域的當(dāng)前及可用的配置。通過讀取當(dāng)前設(shè)置以及每個(gè)條目的“值”,操作系統(tǒng)“理解”每個(gè)存儲區(qū)域的相對性能和恢復(fù)力,以及如何重新配置該存儲區(qū)域。數(shù)據(jù)結(jié)構(gòu)300允許操作系統(tǒng)將最有恢復(fù)力的存儲區(qū)域分配給最關(guān)鍵的代碼/數(shù)據(jù)/應(yīng)用(例如,操作系統(tǒng)內(nèi)核),并且允許操作系統(tǒng)將最高性能存儲區(qū)域分配給性能最敏感的代碼/數(shù)據(jù)/應(yīng)用。條目的這些元素目的在于用于使得操作系統(tǒng)能夠自動或經(jīng)由用戶干預(yù)作出如何重新配置存儲區(qū)域的智能的決定,重新配置對下一次系統(tǒng)重新引導(dǎo)有影響。
[0031]高級配置與電源接口(ACPI)方法允許B1S 160固件與操作系統(tǒng)通信,以將存儲段的配置和容量暴露給操作系統(tǒng)。圖4示出可向操作系統(tǒng)傳遞存儲器210的設(shè)置和容量的基于ACPI的方法的示例。
[0032]圖5是用于配置計(jì)算機(jī)存儲器的示例方法的流程圖。在圖5中,框401,計(jì)算機(jī)系統(tǒng)100上電或重新引導(dǎo)。用戶、操作系統(tǒng)或其它系統(tǒng)可主張切換或發(fā)布命令,指導(dǎo)計(jì)算機(jī)系統(tǒng)100上電或重新引導(dǎo)。
[0033]在框402,計(jì)算機(jī)系統(tǒng)100訪問B1S 160,并且獲取初始化計(jì)算機(jī)系統(tǒng)100的選項(xiàng)。根據(jù)本文公開的各方面,可提供基于RAS或其它設(shè)置改變存儲器210的各種段的選項(xiàng)。在框403,B1S 160固件初始化存儲器210。
[0034]在框404,固件基于初始化的存儲器210以及存儲器210的每個(gè)段的RAS設(shè)置的預(yù)定義或當(dāng)前的指定,創(chuàng)建數(shù)據(jù)結(jié)構(gòu)300。因此,例如,段211-216可每個(gè)具有各自的確定的設(shè)置。然后,B1S提供通信,以在操作系統(tǒng)啟動時(shí)向操作系統(tǒng)170提供數(shù)據(jù)結(jié)構(gòu)的內(nèi)容。
[0035]在框405,計(jì)算機(jī)系統(tǒng)100引導(dǎo)到運(yùn)行模式。在運(yùn)行模式,如果應(yīng)用訪問存儲器210,可基于創(chuàng)建的數(shù)據(jù)結(jié)構(gòu)300將應(yīng)用指向可應(yīng)用于其運(yùn)行的存儲器210的段。
[0036]例如,計(jì)算機(jī)系統(tǒng)100可配置用于支持幾個(gè)虛擬機(jī)(VM),虛擬機(jī)由虛擬機(jī)管理器(VMM)管理,為計(jì)算機(jī)操作系統(tǒng)的一部分。如果操作系統(tǒng)被提示執(zhí)行VM,操作系統(tǒng)可基于初始化的存儲器210作出將VM存儲到已初始化具有冗余(例如,鏡像的段)的存儲器210的段中的決定。因此,如果段212與鏡像的配置關(guān)聯(lián),操作系統(tǒng)可確定段212用于與VM結(jié)合使用是理想的。
[0037]在另一種實(shí)施例中,如果操作系統(tǒng)被提示執(zhí)行后臺電子郵件程序,操作系統(tǒng)可確定后臺的電子郵件程序?yàn)殪o態(tài)的,并且不頻繁更新。因此,基于此,操作系統(tǒng)可確定在未優(yōu)化性能的存儲段上運(yùn)行電子郵件程序。
[0038]在上面提供的各示例中,提供給操作系統(tǒng)一種選擇,以基于初始化的RAS設(shè)置智能地使用存儲器的各個(gè)段。因此,可更魯棒性且有效地使用存儲器。
[0039]圖6示出根據(jù)實(shí)施例動態(tài)改變存儲器劃分的示例方法的流程圖。在圖6中,方法500始于框501,當(dāng)用戶或應(yīng)用確定當(dāng)前的存儲器狀態(tài)對于某些應(yīng)用不是最優(yōu)的以及期望的時(shí)候。例如,存儲器210為6兆兆字節(jié),分為每個(gè)段I兆兆字節(jié)的六個(gè)段211-216,并且每個(gè)段指定不同的RAS設(shè)置。如果作出特別的應(yīng)用(例如,虛擬機(jī))需要當(dāng)前不可用的某些類型的RAS的存儲段的決定,用戶或應(yīng)用可確定期望對配置機(jī)制的調(diào)整。
[0040]在框502,用戶或應(yīng)用發(fā)布請求用來改變存儲器210的配置??赏ㄟ^各種用戶接口進(jìn)行此發(fā)布,例如,設(shè)置與操作系統(tǒng)關(guān)聯(lián)的應(yīng)用,或修改存儲器的設(shè)置的用戶接口。
[0041]在框503,B10S 160固件可接收并驗(yàn)證該請求???03之后,可用用于重新配置存儲器210的初始化設(shè)置更新B1S 160。
[0042]在框504,計(jì)算機(jī)系統(tǒng)100可重新引導(dǎo)。一旦發(fā)生重新引導(dǎo),執(zhí)行在方法400、框401的操作和方法,引起存儲器210的重新配置。
[0043]如上面所公開的,可由操作系統(tǒng)170,基于B1S 160固件確定的可用配置,配置存儲器210,尤其是存儲段211-216。但是,計(jì)算機(jī)系統(tǒng)100的其它組件可確定并暴露存儲器配置。此外,操作系統(tǒng)或另一個(gè)應(yīng)用可作出重新配置存儲段211-216中的一個(gè)或多個(gè)的“智能的”決定。此“智能的”決定可基于操作系統(tǒng)或應(yīng)用可用的預(yù)定的規(guī)則或標(biāo)準(zhǔn)。在一個(gè)示例中,如果計(jì)算機(jī)系統(tǒng)存儲器210的部分故障,使得鏡像不再可能,操作系統(tǒng)可指向存儲器210的重新配置。在此示例中,操作系統(tǒng)知道各存儲段的最近的配置,以及其可用的配置是什么,并且因此能夠指向存儲控制器118重新配置??稍谟?jì)算機(jī)系統(tǒng)重新引導(dǎo)時(shí)建立實(shí)際的重新配置。
【權(quán)利要求】
1.一種用于配置存儲器的方法,包括: 給與所述存儲器關(guān)聯(lián)的計(jì)算機(jī)系統(tǒng)上電; 獲取配置所述存儲器的選項(xiàng); 將第一預(yù)定義設(shè)置指定給所述存儲器的第一段; 將第二預(yù)定義設(shè)置指定給所述存儲器的第二段;以及 引導(dǎo)所述計(jì)算機(jī)系統(tǒng), 其中,所述第一預(yù)定義設(shè)置和所述第二預(yù)定義設(shè)置分別定義所述第一段和所述第二段的性能和恢復(fù)力。
2.根據(jù)權(quán)利要求1所述的方法,其中,所述第一預(yù)定義設(shè)置和所述第二預(yù)定義設(shè)置以RAS標(biāo)準(zhǔn)為基礎(chǔ)。
3.根據(jù)權(quán)利要求2所述的方法,進(jìn)一步包括:基于恢復(fù)力水平選擇所述第一預(yù)定義設(shè)置或所述第二預(yù)定義設(shè)置。
4.根據(jù)權(quán)利要求2所述的方法,進(jìn)一步包括:基于性能水平選擇所述第一預(yù)定義設(shè)置或所述第二預(yù)定義設(shè)置。
5.根據(jù)權(quán)利要求2所述的方法,進(jìn)一步包括:基于存儲器使用選擇所述第一預(yù)定義設(shè)置或所述第二預(yù)定義設(shè)置。
6.根據(jù)權(quán)利要求2所述的方法,進(jìn)一步包括:基于電源使用選擇所述第一預(yù)定義設(shè)置或所述第二預(yù)定義設(shè)置。
7.根據(jù)權(quán)利要求2所述的方法,進(jìn)一步包括:基于冗余水平選擇所述第一預(yù)定義設(shè)置或所述第二預(yù)定義設(shè)置。
8.一種用于修改計(jì)算機(jī)系統(tǒng)的存儲器中的多個(gè)存儲段的每個(gè)存儲段的存儲器配置的方法,包括: 確定每個(gè)存儲段的當(dāng)前的存儲器配置; 確定每個(gè)存儲段的可用的存儲器配置; 向應(yīng)用暴露每個(gè)所述存儲段的所述當(dāng)前的存儲器配置以及所述可用的存儲器配置;接收來自所述應(yīng)用的每個(gè)存儲段的目前的存儲器配置中的一個(gè)和所述可用的存儲器配置中的一個(gè)的選擇;以及保存所接收的選擇。
9.根據(jù)權(quán)利要求8所述的方法,進(jìn)一步包括: 發(fā)布修改所述存儲段的所述存儲器配置的命令,其中,所述存儲器包括第一段和第二段。
10.根據(jù)權(quán)利要求9所述的方法,進(jìn)一步包括: 重新設(shè)置所述計(jì)算機(jī)系統(tǒng),其中,實(shí)現(xiàn)所述存儲器配置。
11.根據(jù)權(quán)利要求8所述的方法,其中,所述計(jì)算機(jī)系統(tǒng)的B1S確定所述當(dāng)前的存儲器配置和所述可用的存儲器配置,并且其中,所述應(yīng)用為所述計(jì)算機(jī)系統(tǒng)的操作系統(tǒng)。
12.根據(jù)權(quán)利要求11所述的方法,其中,所述操作系統(tǒng)確定重新配置所述存儲器。
13.一種計(jì)算機(jī)可讀存儲介質(zhì),包括處理器可執(zhí)行為機(jī)器指令的程序,其中,執(zhí)行所述程序引起所述處理器用于: 確定計(jì)算機(jī)系統(tǒng)的存儲器的多個(gè)存儲段的當(dāng)前的配置; 確定重新配置每個(gè)所述存儲段的選項(xiàng); 確定所述計(jì)算機(jī)系統(tǒng)上執(zhí)行的應(yīng)用的性能和恢復(fù)力需求;以及將所述應(yīng)用映射到所述存儲段,其中,所述映射優(yōu)化每個(gè)所述應(yīng)用的恢復(fù)力和性能中的一個(gè)或兩個(gè),并且其中所述映射以每個(gè)所述存儲段的配置為基礎(chǔ)。
14.根據(jù)權(quán)利要求13所述的計(jì)算機(jī)可讀存儲介質(zhì),其中,執(zhí)行所述程序進(jìn)一步導(dǎo)致所述處理器用于: 重新配置存儲段以產(chǎn)生重新配置;以及 將每個(gè)所述存儲段的所述配置和所述重新配置保存為數(shù)據(jù)結(jié)構(gòu)。
15.根據(jù)權(quán)利要求13所述的計(jì)算機(jī)可讀存儲介質(zhì),其中,執(zhí)行所述程序進(jìn)一步導(dǎo)致所述處理器重新弓I導(dǎo)所述計(jì)算機(jī)系統(tǒng)以實(shí)現(xiàn)所述映射。
【文檔編號】G06F9/22GK104272250SQ201280072800
【公開日】2015年1月7日 申請日期:2012年4月30日 優(yōu)先權(quán)日:2012年4月30日
【發(fā)明者】保羅·丹尼斯·斯圖茲, 詹姆斯·T·博德納, 凱文·G·迪皮尤 申請人:惠普發(fā)展公司,有限責(zé)任合伙企業(yè)