專利名稱:用于將計(jì)算機(jī)中的文件、目錄和面向應(yīng)用的文件的至少一個(gè)恢復(fù)成先前狀態(tài)的設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及用于將計(jì)算機(jī)中的文件、目錄以及面向應(yīng)用的文件恢復(fù)成先前狀態(tài)的設(shè)備。
背景技術(shù):
公司現(xiàn)在越來(lái)越依賴于它們的計(jì)算機(jī),作為用于人員以及管理和存儲(chǔ)數(shù)據(jù)的工作工具。計(jì)算機(jī)已經(jīng)成為大多數(shù)企業(yè)操作的主要部分,以及當(dāng)計(jì)算機(jī)停止操作時(shí),通常不能實(shí)施這些業(yè)務(wù)操作。
普通的錯(cuò)誤,像無(wú)意識(shí)的文件刪除、由于破壞的軟件、系統(tǒng)崩潰等等的問(wèn)題,已經(jīng)對(duì)公司產(chǎn)生大的影響。不工作的計(jì)算機(jī)不僅意味著降低生產(chǎn)力和使終端用戶受挫,而且它們還會(huì)導(dǎo)致巨大的成本。備份和恢復(fù)過(guò)程耗時(shí)的事實(shí)是高成本的主要原因。
隨時(shí)間流逝,IT部門已經(jīng)配置了用于保護(hù)服務(wù)器上的集中數(shù)據(jù)的有效軟件方案,包括備份和故障恢復(fù)。在終端用戶工作站上實(shí)現(xiàn)同級(jí)保護(hù)很困難。
傳統(tǒng)的備份方案,通常用來(lái)保護(hù)工作站和服務(wù)器,沒(méi)有想到設(shè)計(jì)用于單個(gè)工作站。因此,具有幾個(gè)缺點(diǎn)備份過(guò)程耗時(shí)另外,備份過(guò)程是單任務(wù)過(guò)程,阻止用戶在該時(shí)間期間使用該工作站。
重構(gòu)過(guò)程耗時(shí)從用戶的觀點(diǎn)看,數(shù)據(jù)恢復(fù)時(shí)間表示損失生產(chǎn)力。
在恢復(fù)過(guò)程期間丟失信息在恢復(fù)過(guò)程期間,將丟失最后備份和崩潰之間產(chǎn)生的文檔和文件。
備份和重構(gòu)過(guò)程非常高深這意味著終端用戶不能自己解決計(jì)算機(jī)問(wèn)題,而是他們必須等待繁忙的技術(shù)人員來(lái)執(zhí)行該重構(gòu)。
傳統(tǒng)的備份方案的大多數(shù)顯而易見的缺點(diǎn)是缺少速度和無(wú)能力保護(hù)用戶信息。根據(jù)CBL(CBL Data Recovery Technologies Inc.“Data Loss Report”,2002),超出80%的他們的客戶不能恢復(fù)數(shù)據(jù),盡管使用備份和存儲(chǔ)系統(tǒng)。
在例如由于用戶改變系統(tǒng)設(shè)置所引起的崩潰或不適當(dāng)?shù)挠脩舨僮骱?,?jì)算機(jī)的快速和簡(jiǎn)單恢復(fù)的重要性非常相關(guān)以便降低與崩潰有關(guān)的成本。
發(fā)明內(nèi)容
本發(fā)明涉及用于將計(jì)算機(jī)中的文件、目錄和面向應(yīng)用的文件的至少一個(gè)恢復(fù)成先前狀態(tài)的設(shè)備。該設(shè)備包括處理器、存儲(chǔ)器、輸入/輸出部件。存儲(chǔ)器包括存儲(chǔ)區(qū)、備份區(qū)、屬性區(qū)、活動(dòng)日志文件以及狀態(tài)內(nèi)容區(qū)。備份區(qū)配置成包括文件和目錄的至少一個(gè)的原件;存儲(chǔ)區(qū)配置成包括(1)對(duì)面向應(yīng)用的文件的改變,保留原始面向應(yīng)用的文件不變,(2)文件和目錄的副本,如果在先前狀態(tài)的時(shí)間后,存在文件和目錄的至少一個(gè)改變。屬性區(qū)配置成包括文件和目錄的屬性的副本,如果在先前狀態(tài)的時(shí)間后,存在文件和目錄的屬性的至少一個(gè)改變?;顒?dòng)日志文件配置成包括在先前狀態(tài)的時(shí)間后發(fā)生的與計(jì)算機(jī)有關(guān)的事件。狀態(tài)內(nèi)容區(qū)配置成包括與在對(duì)應(yīng)于先前狀態(tài)的時(shí)間與文件和目錄有關(guān)的內(nèi)容。
設(shè)備被配置成-使用輸入/輸出部件從用戶接收將計(jì)算機(jī)恢復(fù)成先前狀態(tài)的指令;-調(diào)查下述的至少一個(gè)-用于改變的備份區(qū)和屬性區(qū)的內(nèi)容;以及
-用于發(fā)生的事件的活動(dòng)日志文件的內(nèi)容;-通過(guò)根據(jù)狀態(tài)內(nèi)容區(qū)的內(nèi)容來(lái)恢復(fù)狀態(tài),然后處理活動(dòng)日志文件中的一個(gè)或多個(gè)事件;以及備份區(qū)和屬性區(qū)中的一個(gè)或多個(gè)文件的至少一個(gè),將計(jì)算機(jī)中的文件、目錄的至少一個(gè)恢復(fù)成先前狀態(tài)。
本發(fā)明提供優(yōu)點(diǎn),諸如快速、高度使用靈活以及容易和快速安裝。
根據(jù)實(shí)施例,活動(dòng)日志文件被配置成包括至少兩種活動(dòng)新的文件/目錄和重命名的文件/目錄。這提供了能恢復(fù)計(jì)算機(jī)的先前、保存狀態(tài)的優(yōu)點(diǎn)。
根據(jù)實(shí)施例,狀態(tài)內(nèi)容區(qū)被配置成包括可用于用戶的多種狀態(tài),使用輸入/輸出部件來(lái)選擇一種狀態(tài)。這提供了實(shí)用的優(yōu)點(diǎn),因?yàn)橛脩艨梢栽诙喾N狀態(tài)中進(jìn)行選擇。這導(dǎo)致用戶能夠調(diào)查何種狀態(tài)對(duì)用戶來(lái)說(shuō)最優(yōu)選以便恢復(fù)。
根據(jù)一個(gè)實(shí)施例,處理器進(jìn)一步被配置成將備份區(qū)、屬性區(qū)、狀態(tài)內(nèi)容區(qū)和活動(dòng)日志文件的內(nèi)容移動(dòng)到歷史區(qū)。這提供了能將狀態(tài)劃分成兩類,相關(guān)和不太相關(guān)的時(shí)機(jī)。因此,用戶可以考慮多種不太相關(guān)的狀態(tài),以及最終對(duì)具有在那些中選擇的時(shí)機(jī)不太感興趣。
根據(jù)實(shí)施例,處理器進(jìn)一步被配置成允許用戶選擇和重建文件和目錄的至少一個(gè)的多種狀態(tài)之一。
根據(jù)實(shí)施例,處理器被進(jìn)一步配置成創(chuàng)建計(jì)算機(jī)的狀態(tài),根據(jù)預(yù)定時(shí)間表,諸如每天、每周或每月,由用戶、系統(tǒng)事件,諸如與安裝過(guò)程有關(guān)的事件的一個(gè)來(lái)啟動(dòng)該創(chuàng)建。
根據(jù)實(shí)施例,存儲(chǔ)器被進(jìn)一步配置成包括保持跟蹤備份區(qū)、屬性區(qū)和活動(dòng)日志文件中的信息的轉(zhuǎn)換表。這提供本發(fā)明的更快操作的優(yōu)點(diǎn)。
根據(jù)實(shí)施例,包括轉(zhuǎn)換表的存儲(chǔ)器由RAM存儲(chǔ)器構(gòu)成。這提供本發(fā)明的更快操作的優(yōu)點(diǎn)。
根據(jù)實(shí)施例,處理器進(jìn)一步被配置成允許用戶排除由設(shè)備來(lái)處理文件、目錄和面向應(yīng)用的文件的至少一個(gè)。這提供了不完全可能恢復(fù)的狀態(tài)的優(yōu)點(diǎn)。
在圖1中示出用于將計(jì)算機(jī)中的文件、目錄和面向應(yīng)用的文件的至少一個(gè)恢復(fù)成先前狀態(tài)的設(shè)備的示意表示。
在圖2中公開了處理可恢復(fù)信息的本發(fā)明系統(tǒng)的概述。
在圖3中示出用于打開現(xiàn)有文件的邏輯的實(shí)施例(有或沒(méi)有文件的截?cái)?。
在圖4中示出用于創(chuàng)建新文件/文件夾的邏輯的實(shí)施例。
在圖5中示出用于移動(dòng)現(xiàn)有文件/文件夾的邏輯的實(shí)施例。
在圖6中示出用于重命名/移動(dòng)現(xiàn)有文件/文件夾的邏輯的實(shí)施例。
在圖7中示出用于改變現(xiàn)有文件/文件夾的屬性/安全性設(shè)置的邏輯的實(shí)施例。
在圖8中示出使用打開的現(xiàn)有或創(chuàng)建新文件,將數(shù)據(jù)寫入先前打開的文件的邏輯的實(shí)施例。
在圖9中示出使用按時(shí)間發(fā)生順序在那一時(shí)間后發(fā)生的所有狀態(tài),恢復(fù)成特定狀態(tài)的過(guò)程。
在圖10中示出隱藏區(qū)的實(shí)施例。
在圖11中示出恢復(fù)過(guò)程的實(shí)施例。
在圖12中示出活動(dòng)日志文件處理的實(shí)施例。
在圖13中示出用于在恢復(fù)過(guò)程中執(zhí)行刪除操作的邏輯的實(shí)施例。
在圖14中示出用于在恢復(fù)過(guò)程中執(zhí)行重命名操作的邏輯的實(shí)施例。
在圖15中示出備份區(qū)處理的實(shí)施例。
在圖16中示出屬性區(qū)處理的實(shí)施例。
在圖17中示出打開現(xiàn)有的面向應(yīng)用的文件的邏輯的實(shí)施例(有或沒(méi)有文件的截?cái)?。
在圖18中示出用于移動(dòng)現(xiàn)有的面向應(yīng)用的文件的邏輯的實(shí)施例。
在圖19中示出用于重命名/移動(dòng)現(xiàn)有的面向應(yīng)用的文件的邏輯的實(shí)施例。
在圖20中示出使用打開的現(xiàn)有文件或創(chuàng)建新文件,將數(shù)據(jù)寫入先前打開的面向應(yīng)用的文件的邏輯的實(shí)施例。
在圖21中示出面向應(yīng)用的文件檢索的過(guò)程的實(shí)施例。
具體實(shí)施例方式
在圖1中,提供用于將計(jì)算機(jī)中的文件、目錄和面向應(yīng)用的文件的至少一個(gè)恢復(fù)成先前狀態(tài)的設(shè)備的示意表示。該設(shè)備包括處理器、存儲(chǔ)器、輸入/輸出部件。該存儲(chǔ)器包括存儲(chǔ)區(qū)、備份區(qū)、屬性區(qū)、活動(dòng)日志文件以及狀態(tài)內(nèi)容區(qū)。備份區(qū)配置成包括文件和目錄的至少一個(gè)的原件。存儲(chǔ)區(qū)配置成包括(1)面向應(yīng)用的文件的更改,保持原始的面向應(yīng)用的文件不變,以及(2)文件和目錄的副本,如果在先前狀態(tài)的時(shí)間后,存在文件和目錄的至少一個(gè)改變。屬性區(qū)配置成包括文件和目錄的屬性的副本,如果在先前狀態(tài)的時(shí)間后存在文件和目錄的屬性的至少一個(gè)改變?;顒?dòng)日志文件配置成包括在先前狀態(tài)的時(shí)間后發(fā)生的與計(jì)算機(jī)有關(guān)的事件。狀態(tài)內(nèi)容區(qū)配置成包括在對(duì)應(yīng)于先前狀態(tài)的時(shí)間與文件和目錄有關(guān)的內(nèi)容。
現(xiàn)在轉(zhuǎn)到本發(fā)明的具體實(shí)施例和操作,可恢復(fù)信息是能容易地再創(chuàng)建的信息。例子是應(yīng)用或系統(tǒng)組成。典型的可恢復(fù)信息很少隨時(shí)間改變。本發(fā)明設(shè)計(jì)成總是提供能恢復(fù)預(yù)定狀態(tài)的時(shí)機(jī)。創(chuàng)建計(jì)算機(jī)的狀態(tài)以及從那個(gè)時(shí)刻起監(jiān)視和記錄文件和目錄的改變。用戶可以在任何時(shí)間選擇恢復(fù)先前狀態(tài)。
在本發(fā)明中,使用文件系統(tǒng)過(guò)濾器驅(qū)動(dòng)器、恢復(fù)應(yīng)用和保存原始文件的區(qū)域。文件系統(tǒng)過(guò)濾器驅(qū)動(dòng)器是操作系統(tǒng)的連續(xù)運(yùn)行綜合部分以及對(duì)用戶不可見。用戶能通過(guò)執(zhí)行恢復(fù)操作,在任何時(shí)間返回到先前狀態(tài)。在計(jì)算機(jī)啟動(dòng)期間,可以執(zhí)行恢復(fù)操作。
隱藏區(qū)用于存儲(chǔ)將文件和目錄恢復(fù)到它們的先前狀態(tài)所需的數(shù)據(jù)。在由本發(fā)明監(jiān)視的每個(gè)分區(qū)上存在隱藏區(qū)。單個(gè)存儲(chǔ)介質(zhì)(例如硬驅(qū))能包含幾個(gè)分區(qū)。本發(fā)明的實(shí)現(xiàn)要求將使用的所有分區(qū)上的文件系統(tǒng)基于一個(gè)公用的樹結(jié)構(gòu)。
需要下述組成來(lái)將文件和目錄恢復(fù)成預(yù)定狀態(tài)1.備份區(qū)只有當(dāng)從設(shè)置最后狀態(tài)以來(lái)文件和目錄被改變時(shí),才包含原始文件和目錄的副本。
2.屬性區(qū)只有當(dāng)從設(shè)置最后狀態(tài)以來(lái)文件和目錄屬性被改變時(shí),才包含具有原始屬性的空文件和目錄。
3.活動(dòng)日志文件活動(dòng)日志文件包含具有按時(shí)間順序排列的事件的列表。兩種事件是創(chuàng)建從設(shè)置最后狀態(tài)以來(lái)創(chuàng)建的新文件和目錄。重命名從設(shè)置最后狀態(tài)以來(lái)重命名的文件和目錄。
4.狀態(tài)內(nèi)容區(qū)包含在當(dāng)前有效狀態(tài)前發(fā)生的從先前狀態(tài)的備份區(qū)、屬性區(qū)和活動(dòng)日志文件。
除位于永久存儲(chǔ)介質(zhì)上的這四個(gè)組成外,文件系統(tǒng)過(guò)濾器驅(qū)動(dòng)器還需要易失RAM存儲(chǔ)器中的列表以跟蹤運(yùn)行時(shí)間期間的變化。由于在關(guān)機(jī)或重啟時(shí)這些列表消失,因此,只要啟動(dòng)文件系統(tǒng)過(guò)濾器驅(qū)動(dòng)器,將使用上述四個(gè)組成中的第一樹來(lái)重建它們。能在圖2中找到系統(tǒng)的示意概述。
過(guò)濾器文件系統(tǒng)過(guò)濾器驅(qū)動(dòng)器需要截取可修改存儲(chǔ)介質(zhì)上的數(shù)據(jù)的到原始文件系統(tǒng)過(guò)濾器驅(qū)動(dòng)器的任何請(qǐng)求。通用操作系統(tǒng)中感興趣的請(qǐng)求能分成下述種類1.打開現(xiàn)有文件以便寫入(有或沒(méi)有文件的截?cái)?用于該請(qǐng)求的邏輯位于圖3中。該功能的基本原理是在改變文件前,將原始文件復(fù)制到備份區(qū)。如果它是截?cái)嗾?qǐng)求,則在原件打開操作前,該文件需要被復(fù)制,否則,可延遲復(fù)制直到對(duì)于該文件的第一寫入請(qǐng)求為止。需要轉(zhuǎn)換后的文件來(lái)跟蹤原始文件,而與已經(jīng)執(zhí)行的任何重命名操作無(wú)關(guān)。
2.創(chuàng)建新的文件和目錄用于該請(qǐng)求的邏輯位于圖4中。該請(qǐng)求將所創(chuàng)建的文件添加到易失創(chuàng)建列表和永久按時(shí)間順序排列的活動(dòng)日志。
3.消除現(xiàn)有文件或目錄用于該請(qǐng)求的邏輯位于圖5中。如果該文件不存在于易失列表的任何一個(gè)中,則將該文件移動(dòng)到備份區(qū)。如果該文件存在于兩個(gè)易失列表的任何一個(gè)中,則從易失列表和永久活動(dòng)日志文件中都消除它。還要求從轉(zhuǎn)換表中消除該文件,因?yàn)樵嘉募辉俅嬖凇?br>
4.重命名或移動(dòng)現(xiàn)有文件或目錄用于該請(qǐng)求的邏輯位于圖6中。重命名請(qǐng)求使用轉(zhuǎn)換表以便能知道原始文件名,而與先前的重命名操作無(wú)關(guān)。除更新轉(zhuǎn)換表之外,更新易失創(chuàng)建列表并將條目添加到永久活動(dòng)日志文件。
5.改變現(xiàn)有文件或目錄的屬性或安全性設(shè)置用于該請(qǐng)求的邏輯位于圖7中。除文件的數(shù)據(jù)外,也能修改屬于該文件的屬性或安全性設(shè)置。為了能夠再創(chuàng)建原始屬性或安全性設(shè)置,在屬性區(qū)創(chuàng)建具有原始屬性和安全性設(shè)置的原始文件的空副本。還存在保持跟蹤目前在屬性區(qū)的屬性部分中的所有文件的易失性屬性列表。
6.使用打開的現(xiàn)有文件將數(shù)據(jù)寫入先前打開的文件或創(chuàng)建新文件用于該請(qǐng)求的邏輯位于圖8中。僅對(duì)于先前打開或創(chuàng)建的文件執(zhí)行寫入請(qǐng)求。在此唯一所做的是檢查文件是否通過(guò)打開文件功能而被標(biāo)記為復(fù)制,以及將文件復(fù)制到備份區(qū)。
因此,本發(fā)明不要求改變文件系統(tǒng)請(qǐng)求。所有請(qǐng)求仍然指向其原始物理位置。
易失性存儲(chǔ)器列表(RAM存儲(chǔ)器中)和永久活動(dòng)日志文件(硬驅(qū)上)需要能記住對(duì)硬驅(qū)上的文件和目錄所做的修改。每當(dāng)根據(jù)上述文件系統(tǒng)請(qǐng)求邏輯做出修改,則連續(xù)地管理這些列表。文件系統(tǒng)過(guò)濾器驅(qū)動(dòng)器使用易失性RAM存儲(chǔ)器,允許快速跟蹤所執(zhí)行的操作。由于易失性RAM存儲(chǔ)器比硬驅(qū)動(dòng)存儲(chǔ)至少快1000倍,期望在RAM存儲(chǔ)器中搜索列表。在實(shí)際恢復(fù)過(guò)程中,恢復(fù)應(yīng)用使用按時(shí)間順序排列的活動(dòng)日志文件。
易失性存儲(chǔ)器列表的簡(jiǎn)單描述1.創(chuàng)建列表一個(gè)具有自最后狀態(tài)以來(lái)所有創(chuàng)建的文件的列表。該列表需要依據(jù)重命名請(qǐng)求而被更新,以便總是包含當(dāng)前文件名。
2.備份列表一個(gè)具有復(fù)制到備份區(qū)的所有文件的列表。該列表中的文件名是從最后狀態(tài)以來(lái)已被修改的原始文件。
3.屬性列表一個(gè)具有保存的原始屬性和安全性設(shè)置的屬性區(qū)中的所有文件名的列表。從最后狀態(tài)以來(lái),該列表中的文件名均具有修改的屬性。
轉(zhuǎn)換表一個(gè)二維查找表,從當(dāng)前文件名獲得原始文件名(當(dāng)設(shè)置狀態(tài)時(shí))。由于能不止一次地重命名文件和目錄,每次重命名請(qǐng)求時(shí)必須更新該列表。
根據(jù)本發(fā)明的實(shí)施例,可以將文件和目錄定義為可恢復(fù)信息保護(hù)的異常(exception)。在由文件系統(tǒng)過(guò)濾器驅(qū)動(dòng)器使用的配置文件中,定義這些異常。文件系統(tǒng)過(guò)濾器驅(qū)動(dòng)器檢測(cè)何時(shí)做出對(duì)于異常的請(qǐng)求以及傳遞該請(qǐng)求而不記錄恢復(fù)所需的數(shù)據(jù)。還可以通過(guò)將其添加到配置文件,將具體應(yīng)用定義為異常。文件系統(tǒng)過(guò)濾器驅(qū)動(dòng)器能通過(guò)將其可執(zhí)行文件與配置中的異??蓤?zhí)行文件的列表進(jìn)行比較,檢測(cè)哪個(gè)應(yīng)用正發(fā)出請(qǐng)求。
根據(jù)一個(gè)實(shí)施例,狀態(tài)定義在特定時(shí)間一個(gè)分區(qū)上的所有文件和目錄。通過(guò)恢復(fù)到一種狀態(tài),將取消在設(shè)置該狀態(tài)后所做的所有修改。為了設(shè)置新狀態(tài),所需做的就是刪除所有易失性列表、活動(dòng)日志文件和備份及屬性區(qū)。當(dāng)這樣做時(shí)文件系統(tǒng)過(guò)濾器驅(qū)動(dòng)器自動(dòng)將那個(gè)狀態(tài)用作當(dāng)前狀態(tài)。也可以具有當(dāng)恢復(fù)時(shí)在其間進(jìn)行選擇的幾個(gè)獨(dú)立狀態(tài)。通過(guò)將活動(dòng)日志文件、備份區(qū)和屬性區(qū)移動(dòng)到狀態(tài)內(nèi)容區(qū),這是可能的。可以將計(jì)算機(jī)恢復(fù)到所設(shè)置的任何先前狀態(tài)。然而,需要處理的狀態(tài)如圖9所示。
隱藏區(qū)的作用是包含足夠的信息來(lái)將計(jì)算機(jī)恢復(fù)到先前狀態(tài)。隱藏區(qū)在正常使用計(jì)算機(jī)期間,對(duì)用戶來(lái)說(shuō)是不可存取的,以及也可以隱瞞操作系統(tǒng)的大部分。隱藏區(qū)位于每個(gè)支持的分區(qū)的根目錄。該區(qū)包含五個(gè)扇區(qū),如圖10所示。
活動(dòng)日志包含有關(guān)已經(jīng)創(chuàng)建和重命名的文件和目錄的信息。從最初開始,活動(dòng)日志為空,以及當(dāng)重命名和創(chuàng)建操作發(fā)生時(shí),按時(shí)間順序?qū)⑺鼈兲砑拥交顒?dòng)日志。有兩種日志表目,單結(jié)構(gòu)和雙結(jié)構(gòu)。單結(jié)構(gòu)表示創(chuàng)建的文件或目錄以及雙結(jié)構(gòu)表示文件或目錄重命名。雙表目的大小是單表目的兩倍,因?yàn)橹孛枰嘈畔ⅰH欢?,雙結(jié)構(gòu)的最后部分被設(shè)計(jì)成與單結(jié)構(gòu)的布局匹配。這樣做以便遍歷在恢復(fù)操作期間顛倒的日志記錄。
單結(jié)構(gòu)包含兩個(gè)構(gòu)件●路徑●操作路徑包含到已經(jīng)創(chuàng)建的文件或目錄的完整路徑。操作變量是能具有下述值的一個(gè)或多個(gè)的位標(biāo)志●RESERVED(位0-3),預(yù)留用于未來(lái)使用,總是為零●DOUBLE_STRUCT(位4),表示這是雙結(jié)構(gòu)以及需要更多信息來(lái)創(chuàng)建全雙結(jié)構(gòu)記錄●RESERVED(位5),預(yù)留用于未來(lái)使用,總是為零●DIR_FLAG(位6),表示路徑是否指向文件或目錄●DELETE_MARK(位7),表示日志表目是否被標(biāo)記為刪除。在恢復(fù)操作期間,忽略標(biāo)記為刪除的日志表目。
如果創(chuàng)建目錄\數(shù)據(jù)\目錄,相應(yīng)的單日志表目結(jié)構(gòu)將具有設(shè)置到數(shù)據(jù)\目錄的路徑,以及操作構(gòu)件將具有值DIR_FLAG。雙結(jié)構(gòu)具有三個(gè)構(gòu)件●源路徑●目的路徑●操作源路徑是原始文件名以及目的地路徑是新文件名。操作構(gòu)件與單結(jié)構(gòu)相同,但具有所設(shè)置的位DOUBLE_STRUCT。如果文件\old.txt被重命名為\new.txt,則相應(yīng)的雙日志表目結(jié)構(gòu)將具有設(shè)置到\old.txt的源路徑以及設(shè)置到\new.txt的目的路徑。操作構(gòu)件將具有值DOUBLE_STRUCT。活動(dòng)日志文件表目形成自最后狀態(tài)以來(lái)所創(chuàng)建和重命名的文件和目錄的列表。表目包含在駐留在隱藏區(qū)中的單物理活動(dòng)日志文件中。
備份區(qū)是包含將計(jì)算機(jī)恢復(fù)成已知狀態(tài)所需的信息部分的目錄。備份區(qū)包含自最后狀態(tài)以來(lái)被修改或消除的所有文件。備份區(qū)使用與初始目錄結(jié)構(gòu)相同的目錄結(jié)構(gòu),除其根為備份區(qū)之外。例如,如果刪除文件\program files\MyApp\Improtant.hlp,則將該文件移動(dòng)到\<hidden.area>\backup\program files\MyApp\Improtant.hlp。為避免文件名沖突,有必要保留該目錄結(jié)構(gòu),以及它還是知道原始文件位于何處的最快方式。如果不保留該目錄結(jié)構(gòu),需要一些類型的映像信息來(lái)知道備份區(qū)中的文件在何處具有其原始位置。此外,如果不保留目錄結(jié)構(gòu),則需要生成備份區(qū)中的唯一文件名的算法。
在每天使用計(jì)算機(jī)期間,越來(lái)越多的文件將在備份區(qū)中結(jié)束。備份區(qū)的大小在某種程度上與自最后狀態(tài)以來(lái)被修改或刪除的文件的數(shù)量成比例。
屬性區(qū)是包含有關(guān)自最后狀態(tài)以來(lái)已經(jīng)被修改的文件和目錄的屬性的信息的目錄。如果修改了文件或目錄的屬性,則在屬性區(qū)中保留原始屬性。屬性區(qū)使用與備份區(qū)相同的物理布局。如果例如,改變目錄\Temp的屬性,則將在\<hidden area>\attribute\Temp中保留原始屬性。對(duì)于文件的屬性修改將在屬性區(qū)中產(chǎn)生文件大小0的屬性保留的文件?;顒?dòng)日志文件、備份區(qū)和屬性區(qū)一起包含將計(jì)算機(jī)恢復(fù)成最后狀態(tài)所需的所有信息。
當(dāng)設(shè)置新狀態(tài)時(shí),將包含在活動(dòng)日志文件、備份區(qū)和屬性區(qū)中的信息移動(dòng)到狀態(tài)內(nèi)容區(qū)。該區(qū)使得恢復(fù)回任何先前狀態(tài)成為可能。
臨時(shí)區(qū)包含在恢復(fù)過(guò)程期間已經(jīng)被移動(dòng)的所有文件和目錄。在恢復(fù)過(guò)程期間將文件或目錄刪除的原因是在最后狀態(tài)后它已經(jīng)被修改或創(chuàng)建。臨時(shí)區(qū)中的信息用于取消最后的恢復(fù)操作。
恢復(fù)應(yīng)用的目的是將計(jì)算機(jī)恢復(fù)成先前狀態(tài)?;謴?fù)器使用隱藏區(qū)中的信息來(lái)實(shí)現(xiàn)其任務(wù)。這包括處理活動(dòng)日志文件以便取消重命名和創(chuàng)建操作、處理備份區(qū)以便恢復(fù)修改或刪除的文件、處理屬性區(qū)以便恢復(fù)原始文件屬性。在計(jì)算機(jī)的引導(dǎo)序列期間,盡可能早地執(zhí)行恢復(fù)操作。在所有已知和歸檔的文件系統(tǒng)上,可以在操作系統(tǒng)使用公共引導(dǎo)扇區(qū)載入機(jī)制來(lái)引導(dǎo)之前,執(zhí)行該操作。如果文件系統(tǒng)未知,則在操作系統(tǒng)引導(dǎo)過(guò)程中一加載用于該文件系統(tǒng)的驅(qū)動(dòng)器,就執(zhí)行恢復(fù)。能由來(lái)自操作系統(tǒng)內(nèi)的用戶命令來(lái)激活恢復(fù)過(guò)程,或能由用戶在引導(dǎo)序列中及早激活?;謴?fù)操作使用位標(biāo)志來(lái)檢測(cè)是否請(qǐng)求恢復(fù)。如果設(shè)置了位標(biāo)志,則不用問(wèn)用戶就激活恢復(fù)過(guò)程。然而,如果未設(shè)置位標(biāo)志,用戶仍然能在所定義的時(shí)間間隔內(nèi)啟動(dòng)恢復(fù)。
如果用戶不希望執(zhí)行恢復(fù),如常繼續(xù)加載引導(dǎo)序列。然而,如果用戶希望執(zhí)行恢復(fù),則下述發(fā)生掃描計(jì)算機(jī)中所有物理硬驅(qū)上的每個(gè)支持的分區(qū)。在每個(gè)分區(qū)上,恢復(fù)器檢查是否恢復(fù)某事。如果至少存在活動(dòng)日志文件、備份目錄或?qū)傩詤^(qū),則啟動(dòng)恢復(fù)?;謴?fù)器按適當(dāng)定義的順序來(lái)處理隱藏區(qū)1.活動(dòng)日志文件、重命名文件或目錄將恢復(fù)到它們的原始位置并將消除創(chuàng)建的文件或目錄。
2.備份區(qū),將恢復(fù)修改或刪除的文件。
3.屬性區(qū),將恢復(fù)有關(guān)文件或目錄的屬性改變。
將在恢復(fù)期間消除的文件移動(dòng)到臨時(shí)區(qū)。這使得在恢復(fù)后執(zhí)行取消操作成為可能。由于所有操作是移動(dòng)操作或?qū)傩圆僮?,恢?fù)過(guò)程極其快。通常在幾秒內(nèi)完成。移動(dòng)文件比復(fù)制文件快很多,因?yàn)橐苿?dòng)操作僅包含移動(dòng)文件參考指針。復(fù)制操作包含復(fù)制文件參考指針和包含在該文件中的數(shù)據(jù),使得與移動(dòng)操作相比非常慢。
下面,將詳細(xì)地說(shuō)明恢復(fù)這些區(qū)的每一個(gè)的過(guò)程。能在圖11中看到該恢復(fù)過(guò)程。
當(dāng)恢復(fù)器完成其任務(wù)時(shí),它繼續(xù)加載操作系統(tǒng)。如果使用引導(dǎo)扇區(qū)加載機(jī)制來(lái)啟動(dòng)恢復(fù),則將原始操作系統(tǒng)引導(dǎo)扇區(qū)加載到存儲(chǔ)器中并執(zhí)行。否則,操作系統(tǒng)初始化如常繼續(xù)。
活動(dòng)日志文件包含有關(guān)哪些文件和目錄已經(jīng)被重命名和創(chuàng)建的信息?;顒?dòng)日志文件包含用于每個(gè)操作的一個(gè)日志表目。表目列表是自最后狀態(tài)以來(lái)已經(jīng)發(fā)生的每個(gè)重命名和創(chuàng)建的按時(shí)間順序的歷史。為了將計(jì)算機(jī)恢復(fù)回先前狀態(tài),需要向后處理活動(dòng)日志文件。用于活動(dòng)日志文件處理的邏輯位于圖12中。
單結(jié)構(gòu)表示文件創(chuàng)建以及雙結(jié)構(gòu)表示重命名或移動(dòng)操作。所讀取的第一日志表目是活動(dòng)日志文件中的最后一條。首先將日志表目讀取到單結(jié)構(gòu)中。如果操作標(biāo)志具有所設(shè)置的位DOUBLE_STRUCT,則在處理重命名操作前,需要讀取雙結(jié)構(gòu)的第二半部分。如果未設(shè)置該位,該操作是單結(jié)構(gòu),因此,將執(zhí)行文件或目錄刪除。如果文件或目錄重命名或刪除失敗,用OPERATION_FAILED標(biāo)記來(lái)標(biāo)記該表目。當(dāng)已經(jīng)掃描了所有表目時(shí),活動(dòng)日志文件處理結(jié)束。
圖13中所示的PerformDelete(Path)功能工作如下。代替刪除由路徑指定的文件或目錄,將它移動(dòng)到臨時(shí)區(qū)。當(dāng)移動(dòng)文件和目錄時(shí),保留目錄結(jié)構(gòu)。
PerformRename(SrcPath,DstPath)將由SrcPath指定的文件或目錄移動(dòng)到DstPath,如圖14所示。如果它不存在,則創(chuàng)建DstPath的目錄結(jié)構(gòu)。如果SrcPath指向一個(gè)文件,則在實(shí)際移動(dòng)操作前,將消除DstPath中的任何現(xiàn)有文件。
備份區(qū)包含自最后狀態(tài)以來(lái)已經(jīng)被修改或消除的所有原始文件?;謴?fù)器負(fù)責(zé)將這些文件從備份區(qū)移動(dòng)到它們的原始位置。所使用的算法位于圖15中。該算法使用深度優(yōu)先搜索并試圖移動(dòng)每個(gè)文件和目錄。如果原始目錄已經(jīng)存在,則搜索將在那個(gè)目錄中繼續(xù)。當(dāng)處理了所有文件和目錄時(shí),搜索將在父目錄中繼續(xù)。當(dāng)在備份區(qū)的根中處理了所有文件和目錄時(shí),該算法退出。嘗試從目錄結(jié)構(gòu)中的最低級(jí)開始移動(dòng)目錄具有能節(jié)省許多后續(xù)移動(dòng)操作的優(yōu)點(diǎn)??紤]當(dāng)目錄包含上千文件的情形。在計(jì)算機(jī)使用期間,消除目錄和其所有文件。在恢復(fù)期間所執(zhí)行的唯一操作將是一次目錄移動(dòng)。該設(shè)計(jì)使得恢復(fù)過(guò)程非???。
屬性區(qū)的處理是恢復(fù)操作中的最后一個(gè)步驟?;謴?fù)器的任務(wù)是將屬性區(qū)中的屬性應(yīng)用于原始文件和目錄。屬性區(qū)的處理與備份區(qū)非常類似,如圖16所示。該算法使用深度優(yōu)先搜索功能并應(yīng)用有關(guān)原始文件和目錄的屬性。
不可恢復(fù)信息是硬的,有時(shí)甚至不可能再創(chuàng)建。其例子是文檔和演示文稿,即面向應(yīng)用的文件。不可恢復(fù)的信息通常隨時(shí)間改變,因此應(yīng)當(dāng)不斷地備份。本發(fā)明跟蹤對(duì)定義為不可恢復(fù)的文件所做的每個(gè)改變。自動(dòng)版本控制系統(tǒng)的核心是文件系統(tǒng)過(guò)濾器驅(qū)動(dòng)器和存儲(chǔ)區(qū)的組合。文件系統(tǒng)過(guò)濾器驅(qū)動(dòng)器負(fù)責(zé)檢測(cè)文件變化并將這些變化保存在存儲(chǔ)區(qū)中。能用兩種方式檢索先前保存或消除的文件。一種方法是右擊文件并選擇列出用于那個(gè)特定文件的所有可用版本。另一方法是使用可以瀏覽當(dāng)前在存儲(chǔ)區(qū)中的所有文件的回退資源管理器。
文件系統(tǒng)過(guò)濾器驅(qū)動(dòng)器能夠監(jiān)視本地文件以及駐留在網(wǎng)絡(luò)驅(qū)動(dòng)上的文件。存儲(chǔ)區(qū)能位于本地或位于網(wǎng)絡(luò)驅(qū)動(dòng)上。
下面,將詳細(xì)地說(shuō)明每個(gè)系統(tǒng)組成。
設(shè)計(jì)版本控制文件系統(tǒng)過(guò)濾器驅(qū)動(dòng)器與可恢復(fù)信息驅(qū)動(dòng)器非常相似?;驹硎窃谛薷奈募靶枰獋浞菟鼈?。
用于不可恢復(fù)信息的文件系統(tǒng)過(guò)濾器驅(qū)動(dòng)器物理上與用于可恢復(fù)信息的驅(qū)動(dòng)器相同,盡管使用代碼的不同部分。讀取用戶定義的配置的方法確定是否應(yīng)當(dāng)將指定文件或目錄處理為可恢復(fù)、不可恢復(fù)或異常。注意,由于目錄僅是用于文件的容器而不具有相關(guān)數(shù)據(jù),僅文件能被視為不可恢復(fù)信息。
不監(jiān)視屬性和安全性設(shè)置請(qǐng)求的變化,因?yàn)樗桓淖儼谖募械臄?shù)據(jù)。由文件系統(tǒng)過(guò)濾器驅(qū)動(dòng)器監(jiān)視的文件系統(tǒng)請(qǐng)求是1.打開現(xiàn)有的文件以便寫入(有或沒(méi)有文件的截?cái)?用于該請(qǐng)求的邏輯位于圖17中。在執(zhí)行原始請(qǐng)求前,該功能將原始文件復(fù)制到存儲(chǔ)區(qū)中的唯一文件名。如果打開文件以便截?cái)嗷蛲ㄟ^(guò)互斥讀取訪問(wèn),在該點(diǎn)必須執(zhí)行復(fù)制。如果不是這種情形,能延遲復(fù)制直到第一寫入請(qǐng)求。將文件復(fù)制到存儲(chǔ)區(qū)并將包含附加文件信息的記錄添加到存儲(chǔ)區(qū)日志文件。
2.消除現(xiàn)有文件用于該請(qǐng)求的邏輯位于圖18中。在執(zhí)行原始請(qǐng)求前,該功能將原始文件復(fù)制到存儲(chǔ)區(qū)中的唯一文件名。包含有關(guān)文件的相關(guān)信息的記錄也添加到存儲(chǔ)區(qū)日志文件。
3.重命名或移動(dòng)現(xiàn)有文件用于該請(qǐng)求的邏輯位于圖19中。在執(zhí)行原始請(qǐng)求前,該功能將原始文件復(fù)制到存儲(chǔ)區(qū)中的唯一文件名。將包含附加文件信息的記錄添加到存儲(chǔ)區(qū)日志文件。
4.使用打開的現(xiàn)有文件將數(shù)據(jù)寫入先前打開的文件或創(chuàng)建新文件用于該請(qǐng)求的邏輯位于圖20中。僅對(duì)于先前打開或創(chuàng)建的文件進(jìn)行寫入請(qǐng)求。在此唯一所做的是檢查文件是否通過(guò)打開文件功能而被標(biāo)記為復(fù)制,以及是否需要將文件復(fù)制到存儲(chǔ)區(qū)并將記錄添加到存儲(chǔ)區(qū)日志文件。
每次改變文件時(shí),創(chuàng)建新的文件版本。副本數(shù)可以快速地增加,并由此占用存儲(chǔ)區(qū)的存儲(chǔ)空間。因此,連續(xù)監(jiān)視存儲(chǔ)區(qū)使得占用空間在預(yù)定極限內(nèi)。當(dāng)存儲(chǔ)區(qū)的存儲(chǔ)空間超出預(yù)定極限時(shí),自動(dòng)刪除最早的文件。如果所刪除的文件未占用足夠空間,則使用相同的邏輯來(lái)刪除更多文件,直到釋放足夠的空間為止。
存儲(chǔ)區(qū)的目的是包含被標(biāo)記為不可恢復(fù)的文件的歷史版本。在正常使用計(jì)算機(jī)期間,該存儲(chǔ)區(qū)對(duì)用戶來(lái)說(shuō)是不可存取的,并隱瞞操作系統(tǒng)的大部分。該存儲(chǔ)區(qū)能位于本地計(jì)算機(jī)上或網(wǎng)絡(luò)位置上。當(dāng)在工作站上出現(xiàn)硬件錯(cuò)誤時(shí),信息的集中存儲(chǔ)防止用戶丟失文件。注意的重點(diǎn)是存儲(chǔ)區(qū)僅存在于一個(gè)分區(qū)上。該區(qū)中的每個(gè)文件將附加信息包含在日志中。
當(dāng)存儲(chǔ)文件版本時(shí),存儲(chǔ)區(qū)將目錄結(jié)構(gòu)保存在硬驅(qū)動(dòng)上。如果例如改變\data中的文件,將在<storage area>\aa\data中存儲(chǔ)原始版本,以及如果改變\Documents中的文件,則將其保存在<storagearea>\ba\documents中。aa和ba是用在文件系統(tǒng)過(guò)濾器驅(qū)動(dòng)器中的映像字符以便與分區(qū)不同。映像字符能具有從aa至zz的任何組合。
存儲(chǔ)區(qū)中的每個(gè)文件包含一個(gè)數(shù)字。該數(shù)字唯一地識(shí)別某一文件版本。版本號(hào)附加在文件名的末尾。例如,如果第三次備份文件summary.ppt,則存儲(chǔ)區(qū)中的名稱將是summary.ppt_3。
當(dāng)文件改變時(shí)存儲(chǔ)它們需要硬驅(qū)上的空閑空間。用戶定義為系統(tǒng)留出的硬驅(qū)空間以及文件系統(tǒng)過(guò)濾器驅(qū)動(dòng)器通過(guò)當(dāng)需要更多空間時(shí)刪除最早版本而自動(dòng)地管理該區(qū)。當(dāng)然,大的存儲(chǔ)區(qū)代表用于每個(gè)文件的更長(zhǎng)歷史緩沖區(qū)。存儲(chǔ)區(qū)中的每個(gè)目錄包含日志文件。該日志文件包含有關(guān)目錄中的每個(gè)文件的附加信息。日志記錄包含下述構(gòu)件●文件名●版本●用戶●應(yīng)用結(jié)合版本號(hào)的文件名將記錄鏈接到特定文件。用戶構(gòu)件包含有關(guān)哪個(gè)用戶執(zhí)行改變的信息,以及應(yīng)用構(gòu)件包含有關(guān)對(duì)哪個(gè)應(yīng)用執(zhí)行改變的信息。
本發(fā)明提供檢索舊文件版本的兩種方法。一種方法是在文件瀏覽器中選擇用于文件的屬性。將向用戶顯示附加屬性頁(yè),稱為回退表。該頁(yè)包含當(dāng)前選擇的文件的版本歷史。用戶能選擇、預(yù)覽和恢復(fù)歷史列表中的任何文件。
另一方法是使用回退資源管理器?;赝速Y源管理器能夠?yàn)g覽用于不可恢復(fù)文件的存儲(chǔ)區(qū)。當(dāng)已經(jīng)從其原始位置消除文件從而使回退頁(yè)不可能使用時(shí),回退資源管理器有用。
文件檢索算法對(duì)兩種方法是相同的,并在圖21中提供。該算法首先檢索用戶已經(jīng)選擇的文件,然后將其復(fù)制到用戶選定的位置。如果文件已經(jīng)存在,則將保存現(xiàn)有文件的屬性。
權(quán)利要求
1.一種用于將計(jì)算機(jī)中的文件、目錄和面向應(yīng)用的文件的至少一個(gè)恢復(fù)成先前狀態(tài)的設(shè)備(1),所述設(shè)備包括處理器(3)、存儲(chǔ)器(5)、輸入/輸出部件(7),所述存儲(chǔ)器(5)包括存儲(chǔ)區(qū)(9)、備份區(qū)(11)、屬性區(qū)(13)、活動(dòng)日志文件(15)以及狀態(tài)內(nèi)容區(qū)(17);-所述備份區(qū)(11)被配置成包括文件、目錄和面向應(yīng)用的文件的至少一個(gè)的原件;-所述存儲(chǔ)區(qū)(9)被配置成-包括對(duì)面向應(yīng)用的文件的改變,保留原始的面向應(yīng)用的文件不變;-如果在先前狀態(tài)的時(shí)間后存在文件和目錄的至少一個(gè)改變,則包括文件和目錄的副本;-如果在先前狀態(tài)的時(shí)間后,存在文件和目錄的屬性的至少一個(gè)改變,則所述屬性區(qū)(13)被配置成包括文件和目錄的屬性的副本;以及-所述活動(dòng)日志文件(15)被配置成包括在先前狀態(tài)的時(shí)間后發(fā)生的與所述計(jì)算機(jī)有關(guān)的事件;-所述狀態(tài)內(nèi)容區(qū)(17)被配置成包括在對(duì)應(yīng)于先前狀態(tài)的時(shí)間與文件和目錄有關(guān)的內(nèi)容;所述設(shè)備(1)配置成-使用所述輸入/輸出部件(7),從用戶接收將所述計(jì)算機(jī)恢復(fù)成先前狀態(tài)的指令;-調(diào)查下述的至少一個(gè)-所述備份區(qū)(11)和所述屬性區(qū)(13)的內(nèi)容以得到改變;以及-所述活動(dòng)日志文件(15)的內(nèi)容以得到發(fā)生的事件;-通過(guò)以下步驟,將所述計(jì)算機(jī)中的文件、目錄和面向應(yīng)用的文件的至少一個(gè)恢復(fù)成先前狀態(tài)-處理下述至少一個(gè)-所述活動(dòng)日志文件(15)中的一個(gè)或多個(gè)事件;-所述備份區(qū)(11)和所述屬性區(qū)(13)中的一個(gè)或多個(gè)文件,-根據(jù)所述狀態(tài)內(nèi)容區(qū)(17)的內(nèi)容,恢復(fù)狀態(tài)。
2.如權(quán)利要求1所述的設(shè)備,其中,所述活動(dòng)日志文件(15)被配置成包括至少兩種活動(dòng)新的文件/目錄和重命名的文件/目錄。
3.如權(quán)利要求1所述的設(shè)備,其中,所述狀態(tài)內(nèi)容區(qū)(17)被配置成包括可用于用戶的多種狀態(tài),使用所述輸入/輸出部件(7)來(lái)選擇一種狀態(tài)。
4.如權(quán)利要求1所述的設(shè)備,其中,所述處理器(3)進(jìn)一步被配置成-將所述備份區(qū)(9)、所述屬性區(qū)(13)、所述狀態(tài)內(nèi)容區(qū)(17)和所述活動(dòng)日志文件(15)的內(nèi)容移動(dòng)到歷史區(qū)。
5.如權(quán)利要求1所述的設(shè)備,其中,所述處理器(3)進(jìn)一步被配置成-允許用戶選擇和重建文件和目錄的至少一個(gè)的多種狀態(tài)之一。
6.如權(quán)利要求1所述的設(shè)備,其中,所述處理器(3)進(jìn)一步被配置成-創(chuàng)建計(jì)算機(jī)的狀態(tài),由用戶、系統(tǒng)事件的一個(gè)并根據(jù)預(yù)定時(shí)間表來(lái)啟動(dòng)所述創(chuàng)建。
7.如權(quán)利要求1所述的設(shè)備,其中,所述存儲(chǔ)器(5)進(jìn)一步被配置成包括保持跟蹤所述備份區(qū)(11)、所述屬性區(qū)(13)和所述活動(dòng)日志文件(15)中的信息的轉(zhuǎn)換表。
8.如權(quán)利要求1所述的設(shè)備,其中,包括所述轉(zhuǎn)換表的所述存儲(chǔ)器(5)由RAM存儲(chǔ)器構(gòu)成。
9.如權(quán)利要求4所述的設(shè)備,其中,所述處理器(3)進(jìn)一步被配置成允許用戶排除文件、目錄和面向應(yīng)用的文件的至少一個(gè)由所述設(shè)備來(lái)處理。
全文摘要
公開了一種用于將計(jì)算機(jī)中的項(xiàng)目,諸如文件、目錄和面向應(yīng)用的文件恢復(fù)成先前狀態(tài)的設(shè)備(1)。該設(shè)備包括處理器(3)、存儲(chǔ)器(5)、輸入/輸出部件(7)。該存儲(chǔ)器(5)包括存儲(chǔ)區(qū)(9)、備份區(qū)(11)、屬性區(qū)(13)、活動(dòng)日志文件(15)以及狀態(tài)內(nèi)容區(qū)(17)。備份區(qū)(11)包括項(xiàng)目的原件。存儲(chǔ)區(qū)(9)包括項(xiàng)目的改變。屬性區(qū)(13)包括文件和目錄的屬性的副本。活動(dòng)日志文件(15)包括在先前狀態(tài)的時(shí)間后發(fā)生的事件。狀態(tài)內(nèi)容區(qū)(17)包括在對(duì)應(yīng)于先前狀態(tài)的時(shí)間與項(xiàng)目有關(guān)的內(nèi)容。該設(shè)備(1)被配置成管理恢復(fù)的過(guò)程。
文檔編號(hào)G06FGK1764901SQ200480008136
公開日2006年4月26日 申請(qǐng)日期2004年3月25日 優(yōu)先權(quán)日2003年3月26日
發(fā)明者哈斯·亞歷山大, 卡爾森·拉爾斯 申請(qǐng)人:希斯特墨克股份公司