一種系統(tǒng)還原方法與裝置的制造方法
【技術領域】
[0001] 本發(fā)明涉及計算機領域,尤其涉及一種系統(tǒng)還原方法與裝置。
【背景技術】
[0002] 目前現(xiàn)有的系統(tǒng)還原方法通常是將備份的系統(tǒng)文件全部拷貝到系統(tǒng)磁盤中,以扇 區(qū)為級別進行系統(tǒng)的還原,但由于該還原方法無法區(qū)分文件和目錄,使得沒有備份在系統(tǒng) 文件中的軟件或者在該磁盤中存儲的其它數(shù)據(jù)全部丟失,導致用戶在系統(tǒng)還原后需重新安 裝相應的軟件,且由于重新安裝軟件,會使得軟件記錄的歷史信息一并消失,影響了軟件的 使用,故給用戶帶來了很大的不便。
【發(fā)明內容】
[0003] 本發(fā)明解決的技術問題之一是系統(tǒng)還原時無法區(qū)分文件和目錄,使得不需要被還 原的軟件及在該磁盤中存儲的其它數(shù)據(jù)全部丟失的情況。
[0004] 根據(jù)本發(fā)明的一個方面,提供了一種系統(tǒng)還原方法,包括:
[0005] 接收修改請求;
[0006] 若所述修改請求是對預定目錄的文件的修改,則將所述修改請求發(fā)送給所述預定 目錄的文件所在的磁盤驅動進行還原。
[0007] 根據(jù)本發(fā)明的另一方面,提供了一種系統(tǒng)還原裝置,包括:
[0008] 用于接收修改請求的裝置;
[0009] 用于若所述修改請求是對預定目錄的文件的修改,則將所述修改請求發(fā)送給所述 預定目錄的文件所在的磁盤驅動進行還原的裝置。
[0010] 由于本實施例通過對預定目錄的文件的識別,將針對預定目錄的文件的修改請求 直接發(fā)給給其所述預定目錄的文件對應的磁盤驅動,避免了回寫操作,同時,保證了磁盤中 其他無需還原的文件的留存。
[0011] 本領域普通技術人員將了解,雖然下面的詳細說明將參考圖示實施例、附圖進行, 但本發(fā)明并不僅限于這些實施例。而是,本發(fā)明的范圍是廣泛的,且意在僅通過后附的權利 要求限定本發(fā)明的范圍。
【附圖說明】
[0012] 通過閱讀參照以下附圖所作的對非限制性實施例所作的詳細描述,本發(fā)明的其它 特征、目的和優(yōu)點將會變得更明顯:
[0013] 圖1示出了根據(jù)本發(fā)明一實施例的系統(tǒng)還原方法的流程圖。
[0014] 圖2示出了根據(jù)本發(fā)明一實施例的系統(tǒng)還原方法中步驟S120的流程圖。
[0015] 圖3示出了根據(jù)本發(fā)明一實施例的系統(tǒng)還原裝置的框圖。
[0016] 圖4示出了根據(jù)本發(fā)明一實施例的以還原系統(tǒng)保護C盤不被修改為例,系統(tǒng)還原 方法的流程圖。
[0017] 附圖中相同或相似的附圖標記代表相同或相似的部件。
【具體實施方式】
[0018] 在更加詳細地討論示例性實施例之前應當提到的是,一些示例性實施例被描述成 作為流程圖描繪的處理或方法。雖然流程圖將各項操作描述成順序的處理,但是其中的許 多操作可以被并行地、并發(fā)地或者同時實施。此外,各項操作的順序可以被重新安排。當其 操作完成時所述處理可以被終止,但是還可以具有未包括在附圖中的附加步驟。所述處理 可以對應于方法、函數(shù)、規(guī)程、子例程、子程序等等。
[0019] 在上下文中所稱"計算機設備",也稱為"電腦",是指可以通過運行預定程序或指 令來執(zhí)行數(shù)值計算和/或邏輯計算等預定處理過程的智能電子設備,其可以包括處理器 與存儲器,由處理器執(zhí)行在存儲器中預存的存續(xù)指令來執(zhí)行預定處理過程,或是由ASIC、 FPGA、DSP等硬件執(zhí)行預定處理過程,或是由上述二者組合來實現(xiàn)。計算機設備包括但不限 于服務器、個人電腦、筆記本電腦、平板電腦、智能手機等。
[0020] 所述計算機設備包括用戶設備與網(wǎng)絡設備。其中,所述用戶設備包括但不限于電 腦、智能手機、PDA等;所述網(wǎng)絡設備包括但不限于單個網(wǎng)絡服務器、多個網(wǎng)絡服務器組成 的服務器組或基于云計算(Cloud Computing)的由大量計算機或網(wǎng)絡服務器構成的云,其 中,云計算是分布式計算的一種,由一群松散耦合的計算機集組成的一個超級虛擬計算機。 其中,所述計算機設備可單獨運行來實現(xiàn)本發(fā)明,也可接入網(wǎng)絡并通過與網(wǎng)絡中的其他計 算機設備的交互操作來實現(xiàn)本發(fā)明。其中,所述計算機設備所處的網(wǎng)絡包括但不限于互聯(lián) 網(wǎng)、廣域網(wǎng)、城域網(wǎng)、局域網(wǎng)、VPN網(wǎng)絡等。
[0021] 需要說明的是,所述用戶設備、網(wǎng)絡設備和網(wǎng)絡等僅為舉例,其他現(xiàn)有的或今后可 能出現(xiàn)的計算機設備或網(wǎng)絡如可適用于本發(fā)明,也應包含在本發(fā)明保護范圍以內,并以引 用方式包含于此。
[0022] 后面所討論的方法(其中一些通過流程圖示出)可以通過硬件、軟件、固件、中間 件、微代碼、硬件描述語言或者其任意組合來實施。當用軟件、固件、中間件或微代碼來實施 時,用以實施必要任務的程序代碼或代碼段可以被存儲在機器或計算機可讀介質(比如存 儲介質)中。(一個或多個)處理器可以實施必要的任務。
[0023] 這里所公開的具體結構和功能細節(jié)僅僅是代表性的,并且是用于描述本發(fā)明的示 例性實施例的目的。但是本發(fā)明可以通過許多替換形式來具體實現(xiàn),并且不應當被解釋成 僅僅受限于這里所闡述的實施例。
[0024] 應當理解的是,雖然在這里可能使用了術語"第一"、"第二"等等來描述各個單元, 但是這些單元不應當受這些術語限制。使用這些術語僅僅是為了將一個單元與另一個單元 進行區(qū)分。舉例來說,在不背離示例性實施例的范圍的情況下,第一單元可以被稱為第二單 元,并且類似地第二單元可以被稱為第一單元。這里所使用的術語"和/或"包括其中一個 或更多所列出的相關聯(lián)項目的任意和所有組合。
[0025] 應當理解的是,當一個單元被稱為"連接"或"耦合"到另一單元時,其可以直接 連接或耦合到所述另一單元,或者可以存在中間單元。與此相對,當一個單元被稱為"直接 連接"或"直接耦合"到另一單元時,則不存在中間單元。應當按照類似的方式來解釋被用 于描述單元之間的關系的其他詞語(例如"處于...之間"相比于"直接處于...之間", "與...鄰近"相比于"與...直接鄰近"等等)。
[0026] 這里所使用的術語僅僅是為了描述具體實施例而不意圖限制示例性實施例。除非 上下文明確地另有所指,否則這里所使用的單數(shù)形式"一個"、"一項"還意圖包括復數(shù)。還 應當理解的是,這里所使用的術語"包括"和/或"包含"規(guī)定所陳述的特征、整數(shù)、步驟、操 作、單元和/或組件的存在,而不排除存在或添加一個或更多其他特征、整數(shù)、步驟、操作、 單元、組件和/或其組合。
[0027] 還應當提到的是,在一些替換實現(xiàn)方式中,所提到的功能/動作可以按照不同于 附圖中標示的順序發(fā)生。舉例來說,取決于所涉及的功能/動作,相繼示出的兩幅圖實際上 可以基本上同時執(zhí)行或者有時可以按照相反的順序來執(zhí)行。
[0028] 下面結合附圖對本發(fā)明作進一步詳細描述。
[0029] 圖1是根據(jù)本發(fā)明一個實施例的系統(tǒng)還原方法的流程圖。
[0030] 結合圖1中所示,本實施例所述的系統(tǒng)還原方法,包括:
[0031] S110、接收修改請求;
[0032] S120、若所述修改請求是對預定目錄的文件的修改,則將所述修改請求發(fā)送給所 述預定目錄的文件所在的磁盤驅動進行還原。
[0033] 下面對各步驟做進一步詳細介紹。
[0034] 步驟SllO中,修改請求可以是對文件的讀寫或還原等操作請求,其一般是用戶通 過應用程序發(fā)送給終端的I/O(輸入輸出)管理器,由I/O管理器來接收修改請求。
[0035] 步驟S120中,若所述修改請求是對預定目錄的文件的修改,則在所述修改請求中 設置標記;將標記后的所述修改請求發(fā)送給所述預定目錄的文件所在的磁盤驅動進行還 原。如圖2所示,具體可以包括以下步驟:
[0036] S1201、確定所述修改請求中修改文件對應的路徑信息。
[0037] S1202、根據(jù)所述路徑信息判斷所述修改請求是否是對預定目錄的文件的修改,若 是,則執(zhí)行步驟S1203-S1204 ;若否,則執(zhí)行步驟S1205。
[0038] S1203、在所述修改請求中設置標記。
[0039] S1204、當檢測到所述修改請求中設置有標記時,將所述修改請求直接發(fā)送給所述 預定目錄的文件所在的磁盤驅動進行還原。
[0040] S1205、將所述修改請求發(fā)送給所述還原系統(tǒng)磁盤過濾驅動進行還原。
[0041] 步驟S120中,識別修改請求是否是對預定目錄的文件的修改,一般在文件系統(tǒng) 級別,首先,通過文件對象和父目錄句柄獲得本次修改請求操作的文件完整路徑名稱,然 后,與目標文件名比較,若與目標文件名相同,則確定修改請求是對預定目錄的文件或 預定文件進行的修改,同時,記錄本次文件操作的I/O請求包的相同的目標文件名對應 文件的位置。識別修改請求是否是對預定目錄的文件的修改可以采用文件系統(tǒng)過濾驅 動,其中文件系統(tǒng)過濾驅動可以包括傳統(tǒng)的文件系統(tǒng)過濾框架或新型的MiniFiter (微 過濾器)框架,識別修改請求是否是對預定目錄的文件的修改還可以采用HOOK(鉤子) 文件系統(tǒng)驅動的派遣歷程等,其中,派遣歷程可以通過派遣函數(shù)來實現(xiàn),對于每個文件 系統(tǒng)驅動,系統(tǒng)都將創(chuàng)建一個對應的函數(shù)對象,在這個驅動對象的MajorFunction(主 要函數(shù))的位置保存有派遣函數(shù),以下面表1所示的NTFS (New Technology File System,新型文件系統(tǒng))為例,其中,MajorFunction[00]0xf7361e01對應的派遣函數(shù) 是 NtfFsdCreate ;MajorFunction [03] 0xf733ef2f 對應的派遣函數(shù)是 NtfFsdRead ; MajorFunction[04]0xf733db4b 對應的派遣函數(shù)是 NtfFsdWrite0
[0042] 表1 :NTFS(New Technology File Sy