專利名稱:一種增量文件的管理方法、裝置及計(jì)算機(jī)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計(jì)算機(jī)領(lǐng)域,特別是指一種增量文件的管理方法、裝置及計(jì)算機(jī)。
技術(shù)背景
當(dāng)計(jì)算機(jī)系統(tǒng)出現(xiàn)問(wèn)題的時(shí)候,系統(tǒng)快速還原能夠幫助用戶迅速恢復(fù)到以前設(shè)定 的工作狀態(tài),從而避免計(jì)算機(jī)系統(tǒng)出現(xiàn)某些問(wèn)題。
而通過(guò)虛擬機(jī)來(lái)實(shí)現(xiàn)系統(tǒng)硬盤的快速還原,具有更廣的通用性、安全性和可移植 性。不管系統(tǒng)以什么樣的方式啟動(dòng),都能夠正常訪問(wèn)操作系統(tǒng)上面的文件,也能夠防止各種 病毒的干擾和穿透,破壞用戶以前還原點(diǎn)的數(shù)據(jù),但是對(duì)于純粹使用虛擬機(jī)來(lái)實(shí)現(xiàn)的虛擬 硬盤進(jìn)行備份還原,也同樣會(huì)存在一些問(wèn)題,那就是系統(tǒng)在虛擬機(jī)中設(shè)置一個(gè)還原點(diǎn)之后, 以后任何硬盤的寫(xiě)操作都會(huì)帶來(lái)增量文件的擴(kuò)張,尤其是休眠文件、系統(tǒng)分頁(yè)文件以及系 統(tǒng)的各種臨時(shí)文件等操作都會(huì)帶來(lái)系統(tǒng)空間非常大的浪費(fèi)。這對(duì)于要進(jìn)行大量還原設(shè)置的 系統(tǒng)來(lái)說(shuō),是難以承受的。
現(xiàn)有的虛擬機(jī)實(shí)現(xiàn)的系統(tǒng)快速還原方案來(lái)說(shuō),主要有幾種解決方式
1.通過(guò)還原點(diǎn)之間的合并來(lái)消除相同扇區(qū)的,達(dá)到縮小增量空間的目的;
2.通過(guò)設(shè)置基準(zhǔn)還原點(diǎn)的方式,來(lái)保存當(dāng)前的進(jìn)度。
這些方式都有明顯的特點(diǎn),就是系統(tǒng)的增量文件和操作系統(tǒng)的變化無(wú)關(guān),只是機(jī) 械地在虛擬機(jī)層次記錄硬盤扇區(qū)的變化,所以,要達(dá)到減少硬盤增量文件的辦法,就只有減 少備份還原點(diǎn)的個(gè)數(shù),這樣的結(jié)果就是用戶要犧牲前期產(chǎn)生的備份還原點(diǎn),從而可能丟失 前期備份的中間數(shù)據(jù),這將給用戶的使用和操作帶來(lái)不便。
發(fā)明人在實(shí)現(xiàn)本發(fā)明的過(guò)程中,發(fā)現(xiàn)現(xiàn)有技術(shù)中至少存在如下問(wèn)題
現(xiàn)有的虛擬機(jī)在備份文件過(guò)程中,增量文件不能得到有效管理,使增量文件浪費(fèi) 掉較多的存儲(chǔ)空間。發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問(wèn)題是提供一種能夠節(jié)省虛擬機(jī)系統(tǒng)的存儲(chǔ)空間的增量文 件的管理方法、裝置及計(jì)算機(jī)。
為解決上述技術(shù)問(wèn)題,本發(fā)明的實(shí)施例提供的技術(shù)方案如下
一方面,提供一種增量文件的管理方法,包括
獲取通過(guò)前端操作系統(tǒng)更新的文件;
當(dāng)所述更新的文件屬于要過(guò)濾的文件時(shí),將所述更新的文件寫(xiě)入一臨時(shí)存儲(chǔ)區(qū)域 中,其中,所述文件大小為第一值;處理所述臨時(shí)存儲(chǔ)區(qū)域中的所述文件,得到大小為第二 值的文件;其中,所述第二值小于所述第一值;
當(dāng)所述更新的文件不屬于要過(guò)濾的文件時(shí),將所述更新的文件寫(xiě)入增量文件中;
根據(jù)所述第二值的文件的大小改變所述臨時(shí)存儲(chǔ)區(qū)域的大小。
優(yōu)選的,獲取通過(guò)前端操作系統(tǒng)更新的文件的步驟包括4
獲取通過(guò)前端操作系統(tǒng)更新的文件對(duì)應(yīng)的扇區(qū)信息;
根據(jù)所述扇區(qū)信息,獲取所述更新的文件。
優(yōu)選的,所述要過(guò)濾的文件包括系統(tǒng)的分頁(yè)文件、休眠文件、臨時(shí)目錄文件、用戶 自定義文件和用戶自定義目錄中的至少一種。
優(yōu)選的,所述臨時(shí)存儲(chǔ)區(qū)域?yàn)轭A(yù)先設(shè)置的臨時(shí)存儲(chǔ)區(qū)域,或者在判斷出所述更新 的文件屬于要過(guò)濾的文件時(shí),臨時(shí)分配的存儲(chǔ)區(qū)域。
優(yōu)選的,根據(jù)所述第二值的文件的大小改變所述臨時(shí)存儲(chǔ)區(qū)域的大小的步驟具體 為
根據(jù)所述第二值的文件的大小,更新所述臨時(shí)存儲(chǔ)區(qū)域的大??;或者
清空所述臨時(shí)存儲(chǔ)區(qū)域,并釋放所述臨時(shí)存儲(chǔ)區(qū)域。
優(yōu)選的,在所述增量文件更新存儲(chǔ)時(shí),更新所述臨時(shí)存儲(chǔ)區(qū)域的大小或者釋放所 述臨時(shí)存儲(chǔ)區(qū)域。
另一方面,還提供一種增量文件的管理裝置,包括
獲取模塊,用于獲取通過(guò)前端操作系統(tǒng)更新的文件;
第一處理模塊,用于當(dāng)所述更新的文件屬于要過(guò)濾的文件時(shí),將所述更新的文件 寫(xiě)入一臨時(shí)存儲(chǔ)區(qū)域中,其中,所述文件大小為第一值;處理所述臨時(shí)存儲(chǔ)區(qū)域中的所述文 件,得到大小為第二值的文件;其中,所述第二值小于所述第一值;
第二處理模塊,用于當(dāng)所述更新的文件不屬于要過(guò)濾的文件時(shí),將所述更新的文 件寫(xiě)入增量文件中;
第三處理模塊,用于根據(jù)所述第二值的文件的大小改變所述臨時(shí)存儲(chǔ)區(qū)域的大
優(yōu)選的,所述臨時(shí)存儲(chǔ)區(qū)域?yàn)轭A(yù)先設(shè)置的臨時(shí)存儲(chǔ)區(qū)域,或者在判斷出所述更新 的文件屬于要過(guò)濾的文件時(shí),臨時(shí)分配的存儲(chǔ)區(qū)域。
再一方面,還提供一種計(jì)算機(jī),包括存儲(chǔ)模塊,虛擬機(jī)監(jiān)視器,運(yùn)行在所述虛擬機(jī) 監(jiān)視器上的后端操作系統(tǒng)和至少一個(gè)前端操作系統(tǒng);
所述前端操作系統(tǒng)包括
前端監(jiān)控模塊,用于監(jiān)控通過(guò)所述前端操作系統(tǒng)對(duì)文件的操作,獲取通過(guò)前端操 作系統(tǒng)更新的文件;
所述后端操作系統(tǒng)包括
第一處理模塊,用于當(dāng)所述更新的文件屬于要過(guò)濾的文件時(shí),將所述更新的文件 寫(xiě)入一臨時(shí)存儲(chǔ)區(qū)域中,其中,所述文件大小為第一值;處理所述臨時(shí)存儲(chǔ)區(qū)域中的所述文 件,得到大小為第二值的文件;其中,所述第二值小于所述第一值;
第二處理模塊,用于當(dāng)所述更新的文件不屬于要過(guò)濾的文件時(shí),將所述更新的文 件寫(xiě)入增量文件中;
第三處理模塊,用于根據(jù)所述第二值的文件的大小改變所述臨時(shí)存儲(chǔ)區(qū)域的大
優(yōu)選的,所述后端操作系統(tǒng)還包括
備份還原模塊,用于將所述增量文件備份存儲(chǔ)至所述存儲(chǔ)模塊中,并在接收到還 原指令時(shí),將備份的所述增量文件還原。
優(yōu)選的,所述臨時(shí)存儲(chǔ)區(qū)域?yàn)轭A(yù)先設(shè)置的所述存儲(chǔ)模塊的至少一個(gè)臨時(shí)扇區(qū),或 者在判斷出所述更新的文件屬于要過(guò)濾的文件時(shí),臨時(shí)分配的所述存儲(chǔ)模塊的至少一個(gè)臨 時(shí)扇區(qū);所述增量文件存儲(chǔ)在所述存儲(chǔ)模塊的增量扇區(qū)中。
優(yōu)選的,所述第三處理模塊進(jìn)一步用于在所述增量文件存儲(chǔ)在所述存儲(chǔ)模塊的增 量扇區(qū)中時(shí),根據(jù)所述第二值的文件的大小,更新所述臨時(shí)存儲(chǔ)區(qū)域的大小或者釋放所述 臨時(shí)存儲(chǔ)區(qū)域。
本發(fā)明的實(shí)施例具有以下有益效果
上述方案通過(guò)對(duì)前端操作系統(tǒng)進(jìn)行監(jiān)控,獲取前端操作系統(tǒng)的更新的文件,并判 斷這些更新的文件是否是用戶要過(guò)濾的文件,如果是,則將這些文件的變化數(shù)據(jù)存入一臨 時(shí)存儲(chǔ)區(qū)域中,通過(guò)處理所述臨時(shí)存儲(chǔ)區(qū)域中的文件,使該臨時(shí)存儲(chǔ)區(qū)域中的文件大小變 小,并使臨時(shí)存儲(chǔ)區(qū)域的大小隨其中的文件的大小而動(dòng)態(tài)改變,特別是針對(duì)上述較小的第 二值的文件,使所述臨時(shí)存儲(chǔ)區(qū)域的大小變小或者將該臨時(shí)存儲(chǔ)區(qū)域清空并釋放,能夠大 大減少增量文件占用的存儲(chǔ)空間,使得用戶能夠在固定磁盤空間訪問(wèn)時(shí),可以設(shè)置更多的 還原點(diǎn),以及為用戶保留更多的富余空間。
圖1為本發(fā)明的實(shí)施例增量文件的管理方法流程示意圖2為本發(fā)明的實(shí)施例增量文件的管理裝置結(jié)構(gòu)示意圖3為圖2所示裝置的一具體實(shí)現(xiàn)結(jié)構(gòu)示意圖4為本發(fā)明的實(shí)施例計(jì)算機(jī)的結(jié)構(gòu)示意圖5為圖4所示計(jì)算機(jī)的一具體實(shí)現(xiàn)結(jié)構(gòu)示意圖。
具體實(shí)施方式
為使本發(fā)明的實(shí)施例要解決的技術(shù)問(wèn)題、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合 附圖及具體實(shí)施例進(jìn)行詳細(xì)描述。
本發(fā)明的實(shí)施例針對(duì)現(xiàn)有技術(shù)中增量文件不能得到有效管理,使增量文件浪費(fèi)掉 較多的存儲(chǔ)空間的問(wèn)題,提供一種能夠節(jié)省虛擬機(jī)系統(tǒng)的存儲(chǔ)空間的增量文件的管理方 法、裝置及計(jì)算機(jī)。
如圖1所示,本發(fā)明的實(shí)施例增量文件的管理方法,應(yīng)用于一包括有多個(gè)操作系 統(tǒng)的虛擬機(jī)系統(tǒng)中,該方法包括
步驟11,獲取通過(guò)前端操作系統(tǒng)更新的文件信息;
步驟12,當(dāng)所述更新的文件屬于要過(guò)濾的文件時(shí),將所述更新的文件寫(xiě)入一臨時(shí) 存儲(chǔ)區(qū)域中,其中,所述文件大小為第一值;處理所述臨時(shí)存儲(chǔ)區(qū)域中的所述文件,得到大 小為第二值的文件;其中,所述第二值小于所述第一值;其中,臨時(shí)存儲(chǔ)區(qū)域中存儲(chǔ)的要過(guò) 濾的文件是文件更新過(guò)程中的變化數(shù)據(jù)中要過(guò)濾的部分;增量文件中存儲(chǔ)的也是文件更新 過(guò)程中的變化數(shù)據(jù)中要保存的部分;
步驟13,當(dāng)所述更新的文件不屬于要過(guò)濾的文件時(shí),將所述更新的文件寫(xiě)入增量 文件中;
步驟14,根據(jù)所述第二值的文件的大小改變所述臨時(shí)存儲(chǔ)區(qū)域的大小。
其中,該步驟11可具體包括
步驟111,獲取通過(guò)前端操作系統(tǒng)更新的文件對(duì)應(yīng)的扇區(qū)信息;
步驟112,根據(jù)所述扇區(qū)信息,獲取所述更新的文件。
其中,要過(guò)濾的文件包括系統(tǒng)的分頁(yè)文件、休眠文件和臨時(shí)目錄文件中的至少一 種,但也并不限于這些文件類型,要過(guò)濾的文件還可以進(jìn)一步包括用戶自定義的不需要備 份的文件類型。
上述方法中的臨時(shí)存儲(chǔ)區(qū)域?yàn)轭A(yù)先設(shè)置的臨時(shí)存儲(chǔ)區(qū)域,或者在判斷出所述更 新的文件屬于要過(guò)濾的文件時(shí),臨時(shí)分配的存儲(chǔ)區(qū)域;
優(yōu)選的,在上述步驟14可具體為
根據(jù)所述大小為第二值的文件,更新所述臨時(shí)存儲(chǔ)區(qū)域的大??;或者
清空所述臨時(shí)存儲(chǔ)區(qū)域,并釋放所述臨時(shí)存儲(chǔ)區(qū)域。
特別的,在所述增量文件更新存儲(chǔ)時(shí),更新所述臨時(shí)存儲(chǔ)區(qū)域的大小或者釋放所 述臨時(shí)存儲(chǔ)區(qū)域。
本發(fā)明的上述實(shí)施例中,前端操作系統(tǒng)可以為虛擬機(jī)系統(tǒng)中的一個(gè)客戶操作系統(tǒng) (Guest 0S),通過(guò)對(duì)虛擬機(jī)上面的客戶機(jī)操作系統(tǒng)的運(yùn)行情況進(jìn)行監(jiān)控分析,獲取通過(guò)該 客戶操作系統(tǒng)更新的文件信息,在此過(guò)程中,會(huì)有大量的硬盤扇區(qū)的數(shù)據(jù)變化是來(lái)自于用 戶不關(guān)心的文件操作產(chǎn)生的,如系統(tǒng)的分頁(yè)文件讀寫(xiě)、休眠文件讀寫(xiě)以及用戶的臨時(shí)目錄 文件。這些文件或目錄,系統(tǒng)總是在不停讀寫(xiě),系統(tǒng)每次啟動(dòng)、休眠以及執(zhí)行某些應(yīng)用程序, 都將會(huì)讀寫(xiě)這些相關(guān)扇區(qū),而系統(tǒng)在下次啟動(dòng)后,這些扇區(qū)的改變并沒(méi)有實(shí)際意義。但是這 些扇區(qū)的改變對(duì)虛擬機(jī)的硬盤增量備份卻有非常大的影響。在虛擬機(jī)中,設(shè)置一個(gè)新的還 原點(diǎn)后,這些無(wú)關(guān)的扇區(qū)寫(xiě)都會(huì)大量增加額外的備份空間,而本發(fā)明的上述實(shí)施例方案中, 在后端操作系統(tǒng)(可以為虛擬機(jī)系統(tǒng)中的主操作系統(tǒng),如Domain 0)中,根據(jù)前端操作系統(tǒng) 監(jiān)控到的更新的文件,判斷若所述更新的文件屬于要過(guò)濾的文件,則將所述要過(guò)濾的文件 寫(xiě)入一臨時(shí)存儲(chǔ)區(qū)域中;否則將所述更新的文件寫(xiě)入增量文件中;當(dāng)整個(gè)系統(tǒng)進(jìn)行增量備 份的時(shí)候,這虛擬機(jī)中的臨時(shí)存儲(chǔ)區(qū)域占用的扇區(qū)會(huì)減小或者被完全釋放,不會(huì)產(chǎn)生新的 空間。這樣,就有效地節(jié)省了虛擬機(jī)系統(tǒng)的存儲(chǔ)空間。
另外,在上述方法實(shí)施例中,還可包括
步驟15,在接收到從前端操作系統(tǒng)傳輸來(lái)的還原指令時(shí),將更新的所述增量文件 還原;實(shí)現(xiàn)了對(duì)增量數(shù)據(jù)這樣的有效數(shù)據(jù)進(jìn)行還原,也會(huì)提高系統(tǒng)的還原效率。
上述實(shí)施例能夠大大減少增量文件占用的存儲(chǔ)空間,使得用戶能夠在固定磁盤空 間訪問(wèn)時(shí),可以設(shè)置更多的還原點(diǎn),以及為用戶保留更多的富余空間。
如圖2所示,本發(fā)明的實(shí)施例還提供一種增量文件的管理裝置20,
獲取模塊21,用于獲取通過(guò)前端操作系統(tǒng)更新的文件;具體的獲取方法可以包 括獲取通過(guò)前端操作系統(tǒng)更新的文件對(duì)應(yīng)的扇區(qū)信息,根據(jù)所述扇區(qū)信息,獲取所述更新 的文件;
第一處理模塊22,用于當(dāng)所述更新的文件屬于要過(guò)濾的文件時(shí),將所述更新的文 件寫(xiě)入一臨時(shí)存儲(chǔ)區(qū)域中,其中,所述文件大小為第一值;處理所述臨時(shí)存儲(chǔ)區(qū)域中的所述 文件,得到大小為第二值的文件;其中,所述第二值小于所述第一值;其中,該要過(guò)濾的文 件包括系統(tǒng)的分頁(yè)文件、休眠文件、臨時(shí)目錄文件、用戶自定義文件和用戶自定義目錄中的至少一種,但也并不限于這些文件類型,要過(guò)濾的文件還可以進(jìn)一步包括用戶自定義的 不需要備份存儲(chǔ)的文件類型;
第二處理模塊23,用于當(dāng)所述更新的文件不屬于要過(guò)濾的文件時(shí),將所述更新的 文件寫(xiě)入增量文件中;
第三處理模塊M,用于根據(jù)所述第二值的文件的大小改變所述臨時(shí)存儲(chǔ)區(qū)域的大
具體來(lái)講,該第三處理模塊M根據(jù)所述第二值的文件的大小,更新所述臨時(shí)存儲(chǔ) 區(qū)域的大??;或者清空所述臨時(shí)存儲(chǔ)區(qū)域,并釋放所述臨時(shí)存儲(chǔ)區(qū)域;特別的,在所述增量 文件更新存儲(chǔ)時(shí),更新所述臨時(shí)存儲(chǔ)區(qū)域的大小或者釋放所述臨時(shí)存儲(chǔ)區(qū)域。
如圖3所示,上述裝置20還可進(jìn)一步包括
備份還原模塊25,用于將所述增量文件備份存儲(chǔ)至一存儲(chǔ)模塊中,并在接收到還 原指令時(shí),將備份的所述增量文件還原。
本發(fā)明的該增量文件的管理裝置可以置于任一具有虛擬系統(tǒng)的智能設(shè)備中,特別 是置于虛擬系統(tǒng)的后端操作系統(tǒng)中,其中前端操作系統(tǒng)可以為虛擬機(jī)系統(tǒng)中的一個(gè)客戶操 作系統(tǒng)(Guest 0S),后端操作系統(tǒng)可以主操作系統(tǒng)(如Domain 0),本發(fā)明的該實(shí)施例通過(guò) 對(duì)客戶機(jī)操作系統(tǒng)的運(yùn)行情況進(jìn)行監(jiān)控分析,獲取通過(guò)該客戶操作系統(tǒng)更新的文件信息, 在后端操作系統(tǒng)中,根據(jù)前端操作系統(tǒng)監(jiān)控到的更新的文件,判斷若所述更新的文件屬于 要過(guò)濾的文件,則將所述要過(guò)濾的文件寫(xiě)入一臨時(shí)存儲(chǔ)區(qū)域中;否則將所述更新的文件寫(xiě) 入增量文件中;當(dāng)整個(gè)系統(tǒng)進(jìn)行增量備份的時(shí)候,這虛擬機(jī)中的臨時(shí)存儲(chǔ)區(qū)域所占用的扇 區(qū)將會(huì)被減小或者被清空并釋放,不會(huì)產(chǎn)生新的空間。這樣,就有效地節(jié)省了虛擬機(jī)系統(tǒng)的 存儲(chǔ)空間。
如圖4所示,本發(fā)明的實(shí)施例還提供一種計(jì)算機(jī)30,包括存儲(chǔ)模塊31,虛擬機(jī)監(jiān) 視器32,運(yùn)行在所述虛擬機(jī)監(jiān)視器32上的至少一個(gè)前端操作系統(tǒng)33和后端操作系統(tǒng)34 ; 其中,該前端操作系統(tǒng)33可以為虛擬機(jī)系統(tǒng)中的客戶操作系統(tǒng)(如Guest 0S),而后端操作 系統(tǒng)34可以為虛擬機(jī)系統(tǒng)中的主操作系統(tǒng)(如Domain 0);
所述前端操作系統(tǒng)33包括
前端監(jiān)控模塊331,用于監(jiān)控通過(guò)所述前端操作系統(tǒng)對(duì)文件的操作,獲取通過(guò)前端 操作系統(tǒng)更新的文件;
所述后端操作系統(tǒng)34包括
第一處理模塊341,用于當(dāng)所述更新的文件屬于要過(guò)濾的文件時(shí),將所述更新的文 件寫(xiě)入一臨時(shí)存儲(chǔ)區(qū)域中,其中,所述文件大小為第一值;處理所述臨時(shí)存儲(chǔ)區(qū)域中的所述 文件,得到大小為第二值的文件;其中,所述第二值小于所述第一值;
第二處理模塊342,用于當(dāng)所述更新的文件不屬于要過(guò)濾的文件時(shí),將所述更新的 文件寫(xiě)入增量文件中;
第三處理模塊343,用于根據(jù)所述第二值的文件的大小改變所述臨時(shí)存儲(chǔ)區(qū)域的 大??;
具體來(lái)講,該第三處理模塊343根據(jù)所述大小為第二值的文件,更新所述臨時(shí)存 儲(chǔ)區(qū)域的大?。换蛘咔蹇账雠R時(shí)存儲(chǔ)區(qū)域,并釋放所述臨時(shí)存儲(chǔ)區(qū)域;
特別的,該第三處理模塊343在所述增量文件存儲(chǔ)在所述存儲(chǔ)模塊的增量扇區(qū)中時(shí),更新所述臨時(shí)存儲(chǔ)區(qū)域的大小或者釋放所述臨時(shí)存儲(chǔ)區(qū)域。。
如圖5所示,在上述圖4所示實(shí)施例的基礎(chǔ)上,后端操作系統(tǒng)34還可包括
備份還原模塊344,用于將所述增量文件備份存儲(chǔ)至所述存儲(chǔ)模塊34中,并在接 收到還原指令時(shí),將備份的所述增量文件還原。
其中,上述臨時(shí)存儲(chǔ)區(qū)域?yàn)轭A(yù)先設(shè)置的所述存儲(chǔ)模塊的至少一個(gè)臨時(shí)扇區(qū),或者 在判斷出所述更新的文件屬于要過(guò)濾的文件時(shí),臨時(shí)分配的所述存儲(chǔ)模塊的至少一個(gè)臨時(shí) 扇區(qū);所述增量文件存儲(chǔ)在所述存儲(chǔ)模塊的增量扇區(qū)中。
具體實(shí)現(xiàn)流程如下
Guest OS中的前端監(jiān)控模塊331主要是監(jiān)控操作系統(tǒng)中文件對(duì)應(yīng)的扇區(qū)信息,包 括靜態(tài)分析當(dāng)前文件對(duì)應(yīng)的扇區(qū)信息或者對(duì)該文件進(jìn)行寫(xiě)操作時(shí),獲取對(duì)應(yīng)的動(dòng)態(tài)扇區(qū) 信息,并將這些扇區(qū)信息傳遞給DomainO的后端的處理模塊(如第一處理模塊341)。
DomainO中的第一處理模塊;341,和前端Guest OS中的前端監(jiān)控模塊331進(jìn)行通 信,獲取用戶設(shè)定的更新文件和目錄的扇區(qū)信息;
該Domain 0還可包括QEMU硬盤,該QEMU硬盤是Domain 0對(duì)物理硬盤的虛擬硬 盤,QEMU硬盤和物理硬盤合在一起構(gòu)成存儲(chǔ)模塊,并完成文件的存儲(chǔ),當(dāng)QEMU硬盤在接收 到相應(yīng)的扇區(qū)寫(xiě)操作指令后,將會(huì)經(jīng)過(guò)后端第一處理模塊341進(jìn)行過(guò)濾,如果該扇區(qū)是屬 于用戶定義的臨時(shí)扇區(qū),那么該數(shù)據(jù)將會(huì)寫(xiě)入到當(dāng)前更新的文件對(duì)應(yīng)的臨時(shí)存儲(chǔ)區(qū)域所占 用的扇區(qū)里面;如果該扇區(qū)不屬于用戶定義的臨時(shí)扇區(qū),那么該數(shù)據(jù)將會(huì)寫(xiě)入到還原點(diǎn)增 量文件里面;
Domain 0中的備份還原模塊344,用來(lái)設(shè)置系統(tǒng)的備份點(diǎn),將增量文件備份至存 儲(chǔ)模塊中,同時(shí)在用戶發(fā)出系統(tǒng)還原的指令時(shí),能夠把對(duì)應(yīng)的磁盤還原到指定的還原點(diǎn)。
采用本發(fā)明的上述方案之后的優(yōu)勢(shì)是結(jié)合操作系統(tǒng)的文件訪問(wèn)操作,以及提供 用戶自定義的過(guò)濾文件類型,能夠大大減少增量文件的空間,使得用戶能夠在固定磁盤空 間訪問(wèn)時(shí),可以設(shè)置更多的還原點(diǎn),以及為用戶保留更多的富余空間。
以上所述是本發(fā)明的優(yōu)選實(shí)施方式,應(yīng)當(dāng)指出,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員 來(lái)說(shuō),在不脫離本發(fā)明所述原理的前提下,還可以作出若干改進(jìn)和潤(rùn)飾,這些改進(jìn)和潤(rùn)飾也 應(yīng)視為本發(fā)明的保護(hù)范圍。9
權(quán)利要求
1.一種增量文件的管理方法,其特征在于,包括 獲取通過(guò)前端操作系統(tǒng)更新的文件;當(dāng)所述更新的文件屬于要過(guò)濾的文件時(shí),將所述更新的文件寫(xiě)入一臨時(shí)存儲(chǔ)區(qū)域中, 其中,所述文件大小為第一值;處理所述臨時(shí)存儲(chǔ)區(qū)域中的所述文件,得到大小為第二值的 文件;其中,所述第二值小于所述第一值;當(dāng)所述更新的文件不屬于要過(guò)濾的文件時(shí),將所述更新的文件寫(xiě)入增量文件中; 根據(jù)所述第二值的文件的大小改變所述臨時(shí)存儲(chǔ)區(qū)域的大小。
2.根據(jù)權(quán)利要求1所述的增量文件的管理方法,其特征在于,獲取通過(guò)前端操作系統(tǒng) 更新的文件的步驟包括獲取通過(guò)前端操作系統(tǒng)更新的文件對(duì)應(yīng)的扇區(qū)信息; 根據(jù)所述扇區(qū)信息,獲取所述更新的文件。
3.根據(jù)權(quán)利要求1所述的增量文件的管理方法,其特征在于,所述要過(guò)濾的文件包括 系統(tǒng)的分頁(yè)文件、休眠文件、臨時(shí)目錄文件、用戶自定義文件和用戶自定義目錄中的至少一 種。
4.根據(jù)權(quán)利要求1所述的增量文件的管理方法,其特征在于,所述臨時(shí)存儲(chǔ)區(qū)域?yàn)轭A(yù) 先設(shè)置的臨時(shí)存儲(chǔ)區(qū)域,或者在判斷出所述更新的文件屬于要過(guò)濾的文件時(shí),臨時(shí)分配的 存儲(chǔ)區(qū)域。
5.根據(jù)權(quán)利要求1所述的增量文件的管理方法,其特征在于,所述根據(jù)所述第二值的 文件的大小改變所述臨時(shí)存儲(chǔ)區(qū)域的大小的步驟具體為根據(jù)所述大小為第二值的文件,更新所述臨時(shí)存儲(chǔ)區(qū)域的大??;或者 清空所述臨時(shí)存儲(chǔ)區(qū)域,并釋放所述臨時(shí)存儲(chǔ)區(qū)域。
6.根據(jù)權(quán)利要求5所述的增量文件的管理方法,其特征在于,在所述增量文件更新存 儲(chǔ)時(shí),更新所述臨時(shí)存儲(chǔ)區(qū)域的大小或者釋放所述臨時(shí)存儲(chǔ)區(qū)域。
7.一種增量文件的管理裝置,其特征在于,包括 獲取模塊,用于獲取通過(guò)前端操作系統(tǒng)更新的文件;第一處理模塊,用于當(dāng)所述更新的文件屬于要過(guò)濾的文件時(shí),將所述更新的文件寫(xiě)入 一臨時(shí)存儲(chǔ)區(qū)域中,其中,所述文件大小為第一值;處理所述臨時(shí)存儲(chǔ)區(qū)域中的所述文件, 得到大小為第二值的文件;其中,所述第二值小于所述第一值;第二處理模塊,用于當(dāng)所述更新的文件不屬于要過(guò)濾的文件時(shí),將所述更新的文件寫(xiě) 入增量文件中;第三處理模塊,用于根據(jù)所述第二值的文件的大小改變所述臨時(shí)存儲(chǔ)區(qū)域的大小。
8.根據(jù)權(quán)利要求7所述的增量文件的管理裝置,其特征在于,所述臨時(shí)存儲(chǔ)區(qū)域?yàn)轭A(yù) 先設(shè)置的臨時(shí)存儲(chǔ)區(qū)域,或者在判斷出所述更新的文件屬于要過(guò)濾的文件時(shí),臨時(shí)分配的 存儲(chǔ)區(qū)域。
9.一種計(jì)算機(jī),包括存儲(chǔ)模塊,虛擬機(jī)監(jiān)視器,運(yùn)行在所述虛擬機(jī)監(jiān)視器上的后端操 作系統(tǒng)和至少一個(gè)前端操作系統(tǒng);其特征在于,所述前端操作系統(tǒng)包括前端監(jiān)控模塊,用于監(jiān)控通過(guò)所述前端操作系統(tǒng)對(duì)文件的操作,獲取通過(guò)前端操作系 統(tǒng)更新的文件;所述后端操作系統(tǒng)包括第一處理模塊,用于當(dāng)所述更新的文件屬于要過(guò)濾的文件時(shí),將所述更新的文件寫(xiě)入 一臨時(shí)存儲(chǔ)區(qū)域中,其中,所述文件大小為第一值;處理所述臨時(shí)存儲(chǔ)區(qū)域中的所述文件, 得到大小為第二值的文件;其中,所述第二值小于所述第一值;第二處理模塊,用于當(dāng)所述更新的文件不屬于要過(guò)濾的文件時(shí),將所述更新的文件寫(xiě) 入增量文件中;第三處理模塊,用于根據(jù)所述第二值的文件的大小改變所述臨時(shí)存儲(chǔ)區(qū)域的大小。
10.根據(jù)權(quán)利要求9所述的計(jì)算機(jī),其特征在于,所述后端操作系統(tǒng)還包括備份還原模塊,用于將所述增量文件備份存儲(chǔ)至所述存儲(chǔ)模塊中,并在接收到還原指 令時(shí),將備份的所述增量文件還原。
11.根據(jù)權(quán)利要求9或10所述的計(jì)算機(jī),其特征在于,所述臨時(shí)存儲(chǔ)區(qū)域?yàn)轭A(yù)先設(shè) 置的所述存儲(chǔ)模塊的至少一個(gè)臨時(shí)扇區(qū),或者在判斷出所述更新的文件屬于要過(guò)濾的文件 時(shí),臨時(shí)分配的所述存儲(chǔ)模塊的至少一個(gè)臨時(shí)扇區(qū);所述增量文件存儲(chǔ)在所述存儲(chǔ)模塊的 增量扇區(qū)中。
12.根據(jù)權(quán)利要求11所述的計(jì)算機(jī),其特征在于,所述第三處理模塊進(jìn)一步用于在所 述增量文件存儲(chǔ)在所述存儲(chǔ)模塊的增量扇區(qū)中時(shí),根據(jù)所述第二值的文件的大小,更新所 述臨時(shí)存儲(chǔ)區(qū)域的大小或者釋放所述臨時(shí)存儲(chǔ)區(qū)域。
全文摘要
本發(fā)明提供一種增量文件的管理方法、裝置及計(jì)算機(jī),其中方法包括獲取通過(guò)前端操作系統(tǒng)更新的文件;當(dāng)更新的文件屬于要過(guò)濾的文件時(shí),將更新的文件寫(xiě)入一臨時(shí)存儲(chǔ)區(qū)域中,其中,所述文件大小為第一值;處理臨時(shí)存儲(chǔ)區(qū)域中的文件,得到大小為第二值的文件;其中,所述第二值小于所述第一值;當(dāng)更新的文件不屬于要過(guò)濾的文件時(shí),將更新的文件寫(xiě)入增量文件中;根據(jù)所述第二值的文件的大小改變所述臨時(shí)存儲(chǔ)區(qū)域的大小。本發(fā)明的方案能夠節(jié)省虛擬機(jī)系統(tǒng)的存儲(chǔ)空間。
文檔編號(hào)G06F17/30GK102033890SQ20091023521
公開(kāi)日2011年4月27日 申請(qǐng)日期2009年9月28日 優(yōu)先權(quán)日2009年9月28日
發(fā)明者仇俊, 席振新, 陳博 申請(qǐng)人:聯(lián)想(北京)有限公司