電腦裝置及其存儲(chǔ)器管理方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明是有關(guān)于一種電子裝置及其存儲(chǔ)器管理方法,且特別是有關(guān)于一種電腦裝置及其存儲(chǔ)器管理方法。
【背景技術(shù)】
[0002]隨著信息科技的發(fā)展,電腦裝置已普遍地使用在人人的生活當(dāng)中,諸如個(gè)人電腦或伺服器等。
[0003]一般而言,電腦裝置可包括一主體操作系統(tǒng)(host operating system)以及至少一個(gè)虛擬機(jī)器(virtual machine)。主體操作系統(tǒng)用以管理電腦裝置的實(shí)體資源。虛擬機(jī)器可分享電腦裝置部份的實(shí)體資源作為其虛擬資源(例如是虛擬存儲(chǔ)器),并通過(guò)虛擬操作系統(tǒng)(guest operating system)管理其自身的虛擬資源。通過(guò)虛擬機(jī)器,可使電腦裝置的應(yīng)用更為彈性。
[0004]然而,如何決定配置與虛擬機(jī)器的虛擬資源為一難題。在虛擬資源配置過(guò)多的情況下,將排擠電腦裝置的其它應(yīng)用,在虛擬資源配置不足的情況下,又將使虛擬機(jī)器的效能降低。
【發(fā)明內(nèi)容】
[0005]有鑒于上述的難題,本案的一態(tài)樣是在提供一種存儲(chǔ)器管理方法。
[0006]根據(jù)本案一實(shí)施例,該存儲(chǔ)器管理方法應(yīng)用于一電腦裝置。該電腦裝置包括一存儲(chǔ)器元件、一主體操作系統(tǒng)以及一虛擬機(jī)器。該存儲(chǔ)器管理方法包括:通過(guò)該主體操作系統(tǒng),經(jīng)由網(wǎng)絡(luò)分享該存儲(chǔ)器元件中的一存儲(chǔ)器空間;通過(guò)該虛擬機(jī)器,經(jīng)由網(wǎng)絡(luò)掛載該存儲(chǔ)器空間;檢測(cè)該虛擬機(jī)器的一虛擬存儲(chǔ)器的一使用量;以及在該虛擬機(jī)器的該虛擬存儲(chǔ)器的該使用量大于一使用量上限的情況下,設(shè)置該存儲(chǔ)器空間的一存儲(chǔ)區(qū)塊予該虛擬機(jī)器,以增加該虛擬機(jī)器的該虛擬存儲(chǔ)器的容量。
[0007]本案的另一態(tài)樣是在提供一種電腦裝置。根據(jù)本案一實(shí)施例,該電腦裝置包括一存儲(chǔ)器元件、一主體操作系統(tǒng)以及一虛擬機(jī)器。該存儲(chǔ)器元件包括一存儲(chǔ)器空間。該主體操作系統(tǒng)用以經(jīng)由網(wǎng)絡(luò)分享該存儲(chǔ)器空間。該虛擬機(jī)器用以:經(jīng)由網(wǎng)絡(luò)掛載該存儲(chǔ)器空間;檢測(cè)該虛擬機(jī)器自身的一虛擬存儲(chǔ)器的一使用量;以及在該虛擬機(jī)器的該虛擬存儲(chǔ)器的該使用量大于一使用量上限的情況下,設(shè)置該存儲(chǔ)器空間的一存儲(chǔ)區(qū)塊予該虛擬機(jī)器自身,以增加該虛擬機(jī)器自身的該虛擬存儲(chǔ)器的容量。
[0008]通過(guò)在上述一實(shí)施例中,電腦裝置即可在虛擬存儲(chǔ)器的使用量大于使用量上限的情況下,增加虛擬機(jī)器的虛擬存儲(chǔ)器的容量。如此一來(lái),可使得電腦裝置的資源應(yīng)用更具彈性。
【附圖說(shuō)明】
[0009]圖1為根據(jù)本發(fā)明一實(shí)施例所繪示的一種電腦裝置的示意圖。 圖2為根據(jù)本發(fā)明一實(shí)施例所繪示的一種存儲(chǔ)器管理方法的流程圖。
【符號(hào)說(shuō)明】
100:電腦裝置 110:檢測(cè)模塊 120:存儲(chǔ)器元件 130:主體操作系統(tǒng) 140:數(shù)據(jù)庫(kù) 152:虛擬存儲(chǔ)器 154:虛擬操作系統(tǒng) 200:存儲(chǔ)器管理方法 Bl-BX:存儲(chǔ)區(qū)塊 VMl-VMY:虛擬機(jī)器 S1-S7:步驟
【具體實(shí)施方式】
[0010]以下將以圖式及詳細(xì)敘述清楚說(shuō)明本揭示內(nèi)容的精神,任何所屬技術(shù)領(lǐng)域中具有通常知識(shí)者在了解本揭示內(nèi)容的較佳實(shí)施例后,當(dāng)可由本揭示內(nèi)容所教示的技術(shù),加以改變及修飾,其并不脫離本揭示內(nèi)容的精神與范圍。
[0011]關(guān)于本文中所述的任何實(shí)體或虛擬物體的數(shù)量,除非特別指明,否則可為一個(gè)或多個(gè)。
[0012]關(guān)于本文中所使用的『包含』、『包括』、『具有』、『含有』等等,均為開(kāi)放性的用語(yǔ),即意指包含但不限于。
[0013]關(guān)于本文中所使用的用詞(terms),除有特別注明外,通常具有每個(gè)用詞使用在此領(lǐng)域中、在此揭露的內(nèi)容中與特殊內(nèi)容中的平常意義。某些用以描述本揭露的用詞將于下或在此說(shuō)明書(shū)的別處討論,以提供本領(lǐng)域技術(shù)人員在有關(guān)本揭露的描述上額外的引導(dǎo)。
[0014]本發(fā)明的一實(shí)施態(tài)樣為一種電腦裝置。圖1為根據(jù)本發(fā)明一實(shí)施例所繪示的一種電腦裝置100的示意圖。
[0015]在本實(shí)施例中,電腦裝置100包括檢測(cè)模塊110、存儲(chǔ)器元件120、主體操作系統(tǒng)130 (host operating system)、數(shù)據(jù)庫(kù) 140、以及多個(gè)虛擬機(jī)器 VM1、VM2、...、VMY,其中 Y 為正整數(shù)。
[0016]在本實(shí)施例中,檢測(cè)模塊110例如是以中央處理器或微處理器等計(jì)算裝置執(zhí)行特定程序碼所實(shí)現(xiàn)。在一實(shí)施例中,檢測(cè)模塊I1例如是電腦裝置100中的一或多條程序(process)。
[0017]在本實(shí)施例中,主體操作系統(tǒng)130是用以管理電腦裝置100中的各項(xiàng)硬件資源(例如處理器、存儲(chǔ)器等),并用以調(diào)度此些硬件資源以處理電腦裝置100中的程序(process)。主體操作系統(tǒng)130例如是一 Linux系統(tǒng),但不以此為限。
[0018]在本實(shí)施例中,數(shù)據(jù)庫(kù)140例如是由存儲(chǔ)器、硬盤(pán)、可攜式存儲(chǔ)媒體等適當(dāng)存儲(chǔ)元件所實(shí)現(xiàn)。數(shù)據(jù)庫(kù)140舉例而言,為可通過(guò)網(wǎng)絡(luò)存取的數(shù)據(jù)庫(kù)。
[0019]在本實(shí)施例中,虛擬機(jī)器VMl、VM2、...、VMY例如是在一超管理器(hypervisor)(未繪示)上建立。虛擬機(jī)器VM1、VM2.....VMY通過(guò)此一超管理器存取電腦裝置100中的各項(xiàng)硬件資源。當(dāng)注意到,雖然在本實(shí)施例中,以Y個(gè)虛擬機(jī)器VM1、VM2.....VMY為例進(jìn)行描述,然而虛擬機(jī)器的數(shù)量可依實(shí)際需要進(jìn)行調(diào)整,不以上述實(shí)施例為限。
[0020]在本實(shí)施例中,每一虛擬機(jī)器VM1、VM2.....VMY包括一虛擬存儲(chǔ)器152以及一虛擬操作系統(tǒng)154。在本實(shí)施例中,虛擬存儲(chǔ)器152實(shí)質(zhì)上為電腦裝置100中分配給虛擬機(jī)器VM1、VM2.....VMY的一部份實(shí)體存儲(chǔ)器。虛擬操作系統(tǒng)154用以管理虛擬存儲(chǔ)器152,
并用以調(diào)度虛擬存儲(chǔ)器152以令虛擬機(jī)器VM1、VM2.....VMY中的程序得以被處理。虛擬操作系統(tǒng)154例如是為L(zhǎng)inux系統(tǒng),但不以此為限。
[0021]每一虛擬機(jī)器VM1、VM2.....VMY在建立時(shí)皆具有預(yù)設(shè)容量的虛擬存儲(chǔ)器152。在理想狀態(tài)下,虛擬存儲(chǔ)器152的預(yù)設(shè)容量相應(yīng)于每一虛擬機(jī)器VMl、VM2.....VMY的真實(shí)使用情況,以避免因虛擬存儲(chǔ)器152的預(yù)設(shè)容量過(guò)大,而排擠電腦裝置100的其它應(yīng)用,或因虛擬存儲(chǔ)器152的預(yù)設(shè)容量過(guò)小,而使虛擬機(jī)器VMl、VM2.....VMY的效能降低。然而,實(shí)際上,虛擬機(jī)器VM1、VM2.....VMY的虛擬存儲(chǔ)器152的使用量也會(huì)隨實(shí)際應(yīng)用狀態(tài)不同有所改變,而不易估測(cè)。
[0022]是以,為解決如此問(wèn)題,在本實(shí)施例中,電腦裝置100可根據(jù)虛擬機(jī)器VM1、
VM2.....VMY的虛擬存儲(chǔ)器152的當(dāng)前使用量,以選擇性提供額外的實(shí)體存儲(chǔ)器作為虛擬機(jī)器VM1、VM2、...、VMY的虛擬存儲(chǔ)器152,以動(dòng)態(tài)增加虛擬機(jī)器VM1、VM2、...、VMY的虛擬存儲(chǔ)器152的容量。
[0023]在本實(shí)施例中,存儲(chǔ)器元件120包括一存儲(chǔ)器空間P(或稱分割區(qū)(partit1n))。在一實(shí)施例中,建立存儲(chǔ)器空間P的方式例如是通過(guò)主體操作系統(tǒng)130,在存儲(chǔ)器元件120中建立一存儲(chǔ)器磁盤(pán)(RAM disk),并在此一存儲(chǔ)器磁盤(pán)中建立分割區(qū),以形成所述的存儲(chǔ)器空間P。存儲(chǔ)器空間P包括多個(gè)存儲(chǔ)區(qū)塊B1、B2.....BX,其中X為正整數(shù)。當(dāng)注意到,
存儲(chǔ)區(qū)塊的數(shù)量?jī)H為例示,本案不以此為限。此外,每一存儲(chǔ)區(qū)塊B1、B2.....BX的大小可能彼此相同或不同。
[0024]在本實(shí)施例中,主體操作系統(tǒng)130可通過(guò)一分享程序,以經(jīng)由網(wǎng)絡(luò)分享存儲(chǔ)器元件120中的存儲(chǔ)器空間P。
[0025]虛擬機(jī)器VM1、VM2.....VMY可通過(guò)虛擬操作系統(tǒng)154經(jīng)由網(wǎng)絡(luò)掛載存儲(chǔ)器空間
Po而后,虛擬機(jī)器VM1、VM2.....VMY可通過(guò)虛擬操作系統(tǒng)154檢測(cè)自身的虛擬存儲(chǔ)器152
的使用量。在虛擬機(jī)器VM1、VM2.....VMY中的任一者的虛擬存儲(chǔ)器152的使用量大于一使用量上限的情況下,此一虛擬機(jī)器可設(shè)置存儲(chǔ)器空間P的存儲(chǔ)區(qū)塊B1、B2.....BX中的一者至此一虛擬機(jī)器自身,以增加此一虛擬機(jī)器自身的虛擬存儲(chǔ)器152的容量。
[0026]舉例而言,在虛擬機(jī)器VM1、VM2.....VMY中的任一者的虛擬存儲(chǔ)器152的使用量大于一使用量上限的情況下,此一虛擬機(jī)器可通過(guò)其中的虛擬操作系統(tǒng)154,建立對(duì)應(yīng)于存儲(chǔ)區(qū)塊B1、B2.....BX中的一者的一新增文件,并設(shè)定此一新增文件為此一虛擬機(jī)器的一存儲(chǔ)器置換文件(SWAP file),以令此一存儲(chǔ)區(qū)塊成為此一虛擬機(jī)器的存儲(chǔ)器置換空間(SWAP space)。如此一來(lái),此一虛擬機(jī)器的虛擬存儲(chǔ)器152的容量