亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

基于內(nèi)存熱插拔的虛擬機(jī)動(dòng)態(tài)內(nèi)存管理系統(tǒng)的制作方法

文檔序號(hào):6557212閱讀:580來(lái)源:國(guó)知局
專利名稱:基于內(nèi)存熱插拔的虛擬機(jī)動(dòng)態(tài)內(nèi)存管理系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明屬于計(jì)算機(jī)應(yīng)用領(lǐng)域,涉及Xen半虛擬化虛擬機(jī)的內(nèi)存管理,具體為一種多虛擬機(jī)環(huán)境下的動(dòng)態(tài)內(nèi)存管理系統(tǒng)。
背景技術(shù)
當(dāng)前計(jì)算系統(tǒng)的資源規(guī)模不斷擴(kuò)展,處理能力快速增強(qiáng),資源種類日益豐富,應(yīng)用需求靈活多樣。虛擬化技術(shù)能夠動(dòng)態(tài)組織多種計(jì)算資源,實(shí)現(xiàn)透明化的可伸縮計(jì)算系統(tǒng)架構(gòu),從而靈活構(gòu)建滿足多種應(yīng)用需求的計(jì)算環(huán)境,提高計(jì)算資源的使用效率。各種不同的虛擬化解決方案不斷涌現(xiàn),虛擬化軟件Xen無(wú)疑是其中的佼佼者。Xen是劍橋大學(xué)發(fā)起的一個(gè)開(kāi)源的虛擬機(jī)項(xiàng)目,其性能接近單機(jī)操作系統(tǒng)的性能。由于其優(yōu)越的性能和開(kāi)源性,所以被業(yè)界廣泛看好,被認(rèn)為是未來(lái)最有前途的虛擬化解決方案之一。氣球驅(qū)動(dòng)是Xen虛擬機(jī)內(nèi)存管理的重要功能,用來(lái)調(diào)整虛擬機(jī)的內(nèi)存大小。但是氣球驅(qū)動(dòng)存在缺陷,比如不能擴(kuò)展虛擬機(jī)的物理地址空間,導(dǎo)致虛擬機(jī)內(nèi)存大小存在上限;頻繁使用氣球驅(qū)動(dòng)會(huì)導(dǎo)致物理地址空間不連續(xù),產(chǎn)生內(nèi)存碎片。內(nèi)存熱插拔是操作系統(tǒng)內(nèi)存管理的一項(xiàng)重要技術(shù),可以有效改善氣球驅(qū)動(dòng)的缺點(diǎn),但是在Xen虛擬機(jī)上還未實(shí)現(xiàn)。一般情況下,單臺(tái)物理機(jī)上運(yùn)行多臺(tái)虛擬機(jī)使用靜態(tài)內(nèi)存分配,即虛擬機(jī)的內(nèi)存大小始終不變或者由管理員手動(dòng)調(diào)整,在虛擬機(jī)負(fù)載變化時(shí),可能出現(xiàn)內(nèi)存不足或內(nèi)存利用率過(guò)低的情況。因此需要一種動(dòng)態(tài)的內(nèi)存管理策略,根據(jù)每個(gè)虛擬機(jī)負(fù)載的變化自動(dòng)調(diào)整虛擬機(jī)的內(nèi)存大小,滿足虛擬機(jī)的內(nèi)存需求并充分利用物理機(jī)內(nèi)存。

發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種基于內(nèi)存熱插拔的虛擬機(jī)動(dòng)態(tài)內(nèi)存管理系統(tǒng),該系統(tǒng)能夠打破虛擬機(jī)的內(nèi)存上限,任意的增加或減小虛擬機(jī);可根據(jù)虛擬機(jī)負(fù)載的變化,動(dòng)態(tài)的調(diào)整每個(gè)虛擬機(jī)的內(nèi)存大小,滿足虛擬機(jī)的內(nèi)存需求并提高物理機(jī)的內(nèi)存利用率;在物理機(jī)內(nèi)存不足時(shí),通過(guò)合理減小現(xiàn)有虛擬機(jī)的內(nèi)存,動(dòng)態(tài)創(chuàng)建新的虛擬機(jī)?;趦?nèi)存熱插拔的虛擬機(jī)動(dòng)態(tài)內(nèi)存管理系統(tǒng),包括內(nèi)存監(jiān)視模塊,用于獲取各虛擬機(jī)的內(nèi)存信息;內(nèi)存分配模塊,用于依據(jù)各虛擬機(jī)的內(nèi)存信息進(jìn)行動(dòng)態(tài)內(nèi)存分配和動(dòng)態(tài)創(chuàng)建虛擬機(jī);內(nèi)存熱插拔模塊,用于將虛擬機(jī)的內(nèi)存調(diào)整到內(nèi)存分配模塊計(jì)算得到的內(nèi)存目標(biāo)值;所述動(dòng)態(tài)內(nèi)存分配按照如下方式進(jìn)行(11)計(jì)算各虛擬機(jī)的內(nèi)存增量AM1 = M^Oih-M^Oi-lh和交換分區(qū)增量AS1 =S (Ii)1-S (H)1,其中Mused(Ii)1和Mused(Ii-I)1分別為第1個(gè)虛擬機(jī)在第η和η-1個(gè)時(shí)間點(diǎn)的使用內(nèi)存,S (n) i和S (η-1) χ分別為第1個(gè)虛擬機(jī)在第η和η_1個(gè)時(shí)間點(diǎn)的使用交換分區(qū), 1 = 1,...,L,L為虛擬機(jī)總數(shù);
(12)預(yù)測(cè)各虛擬機(jī)下一個(gè)時(shí)間點(diǎn)需要的使用內(nèi)存Mpredirt (n+1) x = Mused (η) !+ Δ M1+ Δ S1 ;(13)計(jì)算第η + 1個(gè)時(shí)間點(diǎn)的平均內(nèi)存利用率
權(quán)利要求
1.基于內(nèi)存熱插拔的虛擬機(jī)動(dòng)態(tài)內(nèi)存管理系統(tǒng),包括內(nèi)存監(jiān)視模塊,用于獲取各虛擬機(jī)的內(nèi)存信息;內(nèi)存分配模塊,用于依據(jù)各虛擬機(jī)的內(nèi)存信息進(jìn)行動(dòng)態(tài)內(nèi)存分配和動(dòng)態(tài)創(chuàng)建虛擬機(jī);內(nèi)存熱插拔模塊,用于將虛擬機(jī)的內(nèi)存調(diào)整到內(nèi)存分配模塊計(jì)算得到的內(nèi)存目標(biāo)值;所述動(dòng)態(tài)內(nèi)存分配按照如下方式進(jìn)行(11)計(jì)算各虛擬機(jī)的內(nèi)存增量AM1= Mused(n)1-Mused(n-l)dP交換分區(qū)增量AS1 = S(n)^S(Ii-I)1,其中Mused(Ii)1和Mused(n_l)i分別為第1個(gè)虛擬機(jī)在第η和η-1個(gè)時(shí)間點(diǎn)的使用內(nèi)存,S(Ii)1和S(Ii-I)1分別為第1個(gè)虛擬機(jī)在第η和η-1個(gè)時(shí)間點(diǎn)的使用交換分區(qū), 1 = 1,...,L,L為虛擬機(jī)總數(shù);(12)預(yù)測(cè)各虛擬機(jī)下一個(gè)時(shí)間點(diǎn)需要的使用內(nèi)存Mpredirt(I^l)1= Mused(n) !+AM1+Δ S1 ;(13)計(jì)算第η+ 1個(gè)時(shí)間點(diǎn)的平均內(nèi)存利用率
2.根據(jù)權(quán)利要求1所述的基于內(nèi)存熱插拔的虛擬機(jī)動(dòng)態(tài)內(nèi)存管理系統(tǒng),其特征在于, 所述內(nèi)存熱插拔模塊按照如下方式調(diào)整虛擬機(jī)內(nèi)存(31)將虛擬機(jī)的內(nèi)存目標(biāo)值與虛擬機(jī)的當(dāng)前內(nèi)存進(jìn)行比較,若大于,進(jìn)入步驟(32); 若小于,進(jìn)入步驟(34);若等于,則結(jié)束;(32)若虛擬機(jī)的物理地址空間小于虛擬機(jī)的內(nèi)存目標(biāo)值,則擴(kuò)展其物理地址空間至大于或等于內(nèi)存目標(biāo)值,記擴(kuò)展的新物理地址空間中的內(nèi)存頁(yè)面為離線頁(yè)面,進(jìn)入步驟(33), 否則,直接進(jìn)入步驟(33);(33)增加虛擬機(jī)內(nèi)存至內(nèi)存目標(biāo)值(331)若虛擬機(jī)的內(nèi)存目標(biāo)值大于當(dāng)前內(nèi)存,則計(jì)算虛擬機(jī)內(nèi)存目標(biāo)值與當(dāng)前內(nèi)存的差值A(chǔ)1,進(jìn)入步驟(332),否則,結(jié)束;(332)如果存在保留頁(yè)面,則為一個(gè)保留頁(yè)面分配內(nèi)存,記該保留頁(yè)面為可用頁(yè)面,返回步驟(331);否則,進(jìn)入步驟(333);(333)若A1大于128M且存在離線內(nèi)存段, 則為一個(gè)離線內(nèi)存段分配內(nèi)存,記該離線內(nèi)存段為可用內(nèi)存段,返回步驟(331),否則,進(jìn)入步驟(334);(335)按照地址先后順序逐一對(duì)離線頁(yè)面分配內(nèi)存直到被分配的內(nèi)存和等于A1,記被分配內(nèi)存的離線頁(yè)面為可用頁(yè)面;(34)減小虛擬機(jī)內(nèi)存至內(nèi)存目標(biāo)值(341)若虛擬機(jī)的內(nèi)存目標(biāo)值小于當(dāng)前內(nèi)存,則計(jì)算當(dāng)前內(nèi)存與虛擬機(jī)內(nèi)存目標(biāo)值的差值Δ 2,進(jìn)入步驟(342),否則,結(jié)束;(342)若Δ2大于或等于128Μ,則進(jìn)入步驟(343),否則,進(jìn)入步驟(344);(343)查詢是否存在可刪除的內(nèi)存段,若存在,則將其中一個(gè)內(nèi)存段的內(nèi)存釋放給虛擬機(jī)管理器,記該內(nèi)存段為離線內(nèi)存段,返回步驟(341),否則,進(jìn)入步驟(344);(344)向虛擬機(jī)操作系統(tǒng)申請(qǐng)大小為Δ2的內(nèi)存,將申請(qǐng)到的內(nèi)存頁(yè)面釋放給虛擬機(jī)管理器,并記這些頁(yè)面為保留頁(yè)面。
全文摘要
本發(fā)明公開(kāi)了一種基于內(nèi)存熱插拔的虛擬機(jī)動(dòng)態(tài)內(nèi)存管理系統(tǒng),包括內(nèi)存監(jiān)視模塊、內(nèi)存分配模塊及內(nèi)存熱插拔模塊。內(nèi)存熱插拔模塊利用Linux內(nèi)存熱插拔機(jī)制,在半虛擬化Linux虛擬機(jī)上實(shí)現(xiàn)內(nèi)存熱插拔,打破虛擬機(jī)初始的內(nèi)存上限,任意的增加或減小內(nèi)存,有效提高了虛擬機(jī)內(nèi)存的擴(kuò)展性。內(nèi)存分配模塊一方面動(dòng)態(tài)預(yù)測(cè)虛擬機(jī)的內(nèi)存需求,平衡各虛擬機(jī)的內(nèi)存壓力,既能滿足虛擬機(jī)的內(nèi)存需求,又能提高物理機(jī)的內(nèi)存利用率;另一方面可以在物理機(jī)內(nèi)存不足時(shí),通過(guò)合理減小現(xiàn)有虛擬機(jī)的內(nèi)存來(lái)創(chuàng)建新的虛擬機(jī),實(shí)現(xiàn)了內(nèi)存過(guò)量使用,提高了物理機(jī)的內(nèi)存利用率。
文檔編號(hào)G06F12/02GK102222014SQ20111016261
公開(kāi)日2011年10月19日 申請(qǐng)日期2011年6月16日 優(yōu)先權(quán)日2011年6月16日
發(fā)明者劉海坤, 廖小飛, 金海 , 馬博 申請(qǐng)人:華中科技大學(xué)
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1