一種信息處理方法及電子設(shè)備的制作方法
【專利摘要】本發(fā)明公開了一種信息處理方法及電子設(shè)備,當(dāng)電子設(shè)備中的操作系統(tǒng)運行時,若需要對所述數(shù)字存儲設(shè)備進(jìn)行快照切換操作,該方法包括:判斷所述要恢復(fù)的快照中是否存儲有預(yù)設(shè)的敏感文件,得到第一判斷結(jié)果;如果第一判斷結(jié)果為是,則將控制所述數(shù)字存儲設(shè)備進(jìn)行快照切換的restore命令存儲到所述數(shù)字存儲設(shè)備;在系統(tǒng)重啟或重新加電之后,在操作系統(tǒng)啟動之前的系統(tǒng)引導(dǎo)程序運行中觸發(fā)所述restore命令,對所述數(shù)字存儲設(shè)備進(jìn)行快照切換操作。本發(fā)明公開的方法和裝置解決了現(xiàn)有技術(shù)中如果執(zhí)行快照切換時有敏感文件導(dǎo)致系統(tǒng)崩潰的問題。
【專利說明】一種信息處理方法及電子設(shè)備
【技術(shù)領(lǐng)域】
[0001 ] 本發(fā)明涉及電子【技術(shù)領(lǐng)域】,尤其涉及一種信息處理方法及電子設(shè)備。
【背景技術(shù)】
[0002]隨著計算機技術(shù)和網(wǎng)絡(luò)技術(shù)的不斷發(fā)展,信息技術(shù)水平不斷得到提高。人類進(jìn)入稱為信息社會的二十一世紀(jì)后,諸如數(shù)字通信、數(shù)字多媒體、電子商務(wù)、搜索引擎、數(shù)字圖書館、天氣預(yù)報、地質(zhì)勘探、科學(xué)研究等海量數(shù)據(jù)型應(yīng)用的涌現(xiàn),各種信息呈現(xiàn)爆炸式的增長趨勢,存儲成為信息計算技術(shù)的中心。應(yīng)用對存儲系統(tǒng)的要求不斷提高,存儲容量不斷升級,從GigaByte到TeraByte、PetaByte、ExaByte,愈顯巨大。與此同時,現(xiàn)代企業(yè)對計算機的依賴性嚴(yán)重增強,信息數(shù)據(jù)逐漸成為企業(yè)賴以生存的基礎(chǔ),數(shù)據(jù)損壞或丟失將給企業(yè)帶來巨大的損失。由于黑客、病毒、硬件設(shè)備的失效以及火災(zāi)、地震等自然災(zāi)害的原因,使系統(tǒng)和數(shù)據(jù)信息遭到破壞甚至毀滅,如果不及時地進(jìn)行恢復(fù),將對企業(yè)造成巨大的損失,所以備份容災(zāi)技術(shù)顯得尤為重要。
[0003]隨著數(shù)據(jù)量和數(shù)據(jù)增長速度的加快,數(shù)據(jù)備份的時間可能會要求越來越長,這對于關(guān)鍵性業(yè)務(wù)系統(tǒng)來說是無法接受的。諸如銀行、電信等機構(gòu),信息系統(tǒng)要求24*7不間斷運行,短時的停機或者少量數(shù)據(jù)的丟失都會導(dǎo)致巨大的損失。因此,就需要將數(shù)據(jù)備份窗口盡可能地縮小,甚至縮小為零,數(shù)據(jù)快照(Snapshot)、持續(xù)數(shù)據(jù)保護(hù)(CDP,Continuous DataProtect1n)等技術(shù),就是為了滿足這樣的需求而出現(xiàn)的數(shù)據(jù)保護(hù)技術(shù)。
[0004]其中,數(shù)據(jù)快照(Snapshot)是某個數(shù)據(jù)集在某一特定時刻的鏡像,也稱為即時拷貝,它是這個數(shù)據(jù)集的一個完整可用的副本。存儲網(wǎng)絡(luò)行業(yè)協(xié)會SNIA對快照的定義是--關(guān)于指定數(shù)據(jù)集合的一個完全可用拷貝,該拷貝包括相應(yīng)數(shù)據(jù)在某個時間點(拷貝開始的時間點)的映像??煺湛梢允瞧渌硎镜臄?shù)據(jù)的一個副本(duplicate),也可以是數(shù)據(jù)的一個復(fù)制品(replicate)。
[0005]但本申請發(fā)明人在實現(xiàn)本申請實施例中發(fā)明技術(shù)方案的過程中,發(fā)現(xiàn)上述技術(shù)至少存在如下技術(shù)問題:
[0006]數(shù)字存儲設(shè)備(如:emmc卡、SSD硬盤)在外部訪問的時候使用的是邏輯地址(LBA),而其內(nèi)部數(shù)據(jù)訪問使用的是物理地址(PBA),在這些設(shè)備中存在LBA和PBA的映射表。被保存下來的邏輯地址與物理地址的映射表,以及這個映射表中物理地址的內(nèi)容稱為snapshot,且存儲在數(shù)字存儲設(shè)備上。
[0007]現(xiàn)有技術(shù)中對snapshot備份使用時,存在以下問題:當(dāng)系統(tǒng)中存在snapshot備份,在操作系統(tǒng)執(zhí)行時,為了提高系統(tǒng)的處理速度存儲設(shè)備訪問的映射表通常都已在系統(tǒng)內(nèi)存中,操作系統(tǒng)訪問的地址是邏輯地址,通過映射表轉(zhuǎn)換成數(shù)字存儲設(shè)備上的物理地址,如果此時發(fā)送restore命令,系統(tǒng)重新加載映射表,如果牽涉到系統(tǒng)盤的修改,則將直接導(dǎo)致OS的崩潰。
[0008]例如:邏輯地址A (LogicA)-------物理地址B (PB),如果重新加載映射表后邏輯地址A (LogicA)---------物理地址C (PC),這樣操作系統(tǒng)再訪問LA時,相當(dāng)于訪問的PC位置的內(nèi)容,PC位置保存的和PB位置內(nèi)容不一致,那么系統(tǒng)就會崩潰。
【發(fā)明內(nèi)容】
[0009]本發(fā)明提供一種信息處理方法及電子設(shè)備,本發(fā)明所提供的方法和裝置解決現(xiàn)有技術(shù)中系統(tǒng)運行時,如果發(fā)送restore命令,系統(tǒng)重新加載映射表,如果restore命令涉及的內(nèi)容中有系統(tǒng)盤的修改,則將直接導(dǎo)致OS的崩潰的問題。
[0010]本發(fā)明提供一種信息處理方法,該方法應(yīng)用于第一電子設(shè)備中,所述電子設(shè)備中設(shè)置有數(shù)字存儲設(shè)備,當(dāng)電子設(shè)備中的操作系統(tǒng)運行時,若需要對所述數(shù)字存儲設(shè)備進(jìn)行快照切換操作,該方法包括:
[0011]判斷所述要恢復(fù)的快照中是否存儲有預(yù)設(shè)的敏感文件,得到第一判斷結(jié)果;
[0012]如果第一判斷結(jié)果為是,則將控制所述數(shù)字存儲設(shè)備進(jìn)行快照切換的restore命令存儲到所述數(shù)字存儲設(shè)備;
[0013]在系統(tǒng)重啟或重新加電之后,在操作系統(tǒng)啟動之前的系統(tǒng)引導(dǎo)程序運行中觸發(fā)所述restore命令,對所述數(shù)字存儲設(shè)備進(jìn)行快照切換操作。
[0014]更優(yōu)化的方案,在操作系統(tǒng)啟動之前的系統(tǒng)引導(dǎo)程序運行中觸發(fā)所述restore命令包括:
[0015]系統(tǒng)引導(dǎo)程序運行之前,檢測是否有restore命令需要發(fā)送,得到第一檢測結(jié)果;
[0016]如果第一檢測結(jié)果為是,則觸發(fā)所述restore命令;
[0017]運行所述系統(tǒng)弓I導(dǎo)程序。
[0018]更優(yōu)化的方案,所述對所述數(shù)字存儲設(shè)備進(jìn)行快照切換操作包括:
[0019]按照快照中保存的映射表初始化所述數(shù)字化存儲設(shè)備。
[0020]更優(yōu)化的方案,若所述電子設(shè)備中的操作系統(tǒng)架構(gòu)為X86架構(gòu),所述觸發(fā)所述restore 命令:
[0021]在操作系統(tǒng)啟動程序啟動后,發(fā)送第一命令到所述數(shù)字存儲設(shè)備,所述第一命令用于觸發(fā)存儲在所述數(shù)字存儲設(shè)備中的restore命令。
[0022]更優(yōu)化的方案,所述預(yù)設(shè)的敏感文件為當(dāng)前系統(tǒng)的操作系統(tǒng)文件。
[0023]根據(jù)上述方法本發(fā)明還提供一種電子設(shè)備,該電子設(shè)備中設(shè)置有數(shù)字存儲設(shè)備,當(dāng)電子設(shè)備中的操作系統(tǒng)運行時,若需要對所述數(shù)字存儲設(shè)備進(jìn)行快照切換操作,該電子設(shè)備還包括:
[0024]第一判斷單元,用于判斷所述要恢復(fù)的快照中是否存儲有預(yù)設(shè)的敏感文件,得到第一判斷結(jié)果;
[0025]切換命令處理單元,如果第一判斷結(jié)果為是,用于將控制所述數(shù)字存儲設(shè)備進(jìn)行快照切換的restore命令存儲到所述數(shù)字存儲設(shè)備;
[0026]執(zhí)行單元,用于在系統(tǒng)重啟或重新加電之后,在操作系統(tǒng)啟動之前的系統(tǒng)引導(dǎo)程序運行中觸發(fā)所述restore命令,對所述數(shù)字存儲設(shè)備進(jìn)行快照切換操作。
[0027]更優(yōu)化的方案,所述執(zhí)行單元還用于在系統(tǒng)引導(dǎo)程序運行之前,檢測是否有restore命令需要發(fā)送,得到第一檢測結(jié)果;如果第一檢測結(jié)果為是,則觸發(fā)所述restore命令;運行所述系統(tǒng)引導(dǎo)程序。
[0028]更優(yōu)化的方案,所述執(zhí)行單元對所述初始化所述數(shù)字存儲設(shè)備包括:
[0029]按照快照中保存的映射表初始化所述數(shù)字化存儲設(shè)備。
[0030]更優(yōu)化的方案,若所述電子設(shè)備中的操作系統(tǒng)架構(gòu)為X86架構(gòu),所述執(zhí)行單元觸發(fā)所述restore命令包括:
[0031]在操作系統(tǒng)啟動程序啟動后,發(fā)送第一命令到所述數(shù)字存儲設(shè)備,所述第一命令用于觸發(fā)存儲在所述數(shù)字存儲設(shè)備中的restore命令。
[0032]更優(yōu)化的方案,第一判斷單元還用于確定所述要恢復(fù)的快照中存儲有當(dāng)前系統(tǒng)的操作系統(tǒng)文件在確定,所述要恢復(fù)的快照中存儲有預(yù)設(shè)的敏感文件。
[0033]上述技術(shù)方案中的一個或兩個,至少具有如下技術(shù)效果:
[0034]本發(fā)明實施例所提供的方法和裝置,首先判斷需要恢復(fù)的快照中是否涉及當(dāng)前系統(tǒng)敏感的文件(這個敏感文件可以根據(jù)用戶的需要設(shè)置,在本發(fā)明中最主要的是系統(tǒng)文件,因為系統(tǒng)文件的讀寫出現(xiàn)問題則直接影響到系統(tǒng)的正常運行),如果有敏感文件,則將快照切換的操作推遲執(zhí)行,執(zhí)行快照切換的restore命令進(jìn)行存儲,從而解決了系統(tǒng)運行時執(zhí)行快照切換會導(dǎo)致系統(tǒng)崩潰的問題。
【專利附圖】
【附圖說明】
[0035]圖1為本發(fā)明實施例中一種信息處理方法的流程圖;
[0036]圖2為本發(fā)明實施例中一種電子設(shè)備的結(jié)構(gòu)示意圖。
【具體實施方式】
[0037]現(xiàn)有技術(shù)中對snapshot備份使用時,存在以下問題:當(dāng)系統(tǒng)中存在snapshot備份,在操作系統(tǒng)執(zhí)行時,為了提高系統(tǒng)的處理速度存儲設(shè)備訪問的映射表通常都已在系統(tǒng)內(nèi)存中,操作系統(tǒng)訪問的地址是邏輯地址,通過映射表轉(zhuǎn)換成數(shù)字存儲設(shè)備上的物理地址,如果此時發(fā)送restore命令,系統(tǒng)重新加載映射表,如果牽涉到系統(tǒng)盤的修改,則將直接導(dǎo)致OS的崩潰。
[0038]針對上述問題本發(fā)明提供一種信息處理方法,該方法應(yīng)用于第一電子設(shè)備中,所述電子設(shè)備中設(shè)置有數(shù)字存儲設(shè)備,當(dāng)電子設(shè)備中的操作系統(tǒng)運行時,若需要對所述數(shù)字存儲設(shè)備進(jìn)行快照切換操作,該方法包括:
[0039]判斷所述要恢復(fù)的快照中是否存儲有預(yù)設(shè)的敏感文件,得到第一判斷結(jié)果;
[0040]如果第一判斷結(jié)果為是,則將控制所述數(shù)字存儲設(shè)備進(jìn)行快照切換的restore命令存儲到所述數(shù)字存儲設(shè)備;
[0041]在系統(tǒng)重啟或重新加電之后,在操作系統(tǒng)啟動之前的系統(tǒng)引導(dǎo)程序運行中觸發(fā)所述restore命令,對所述數(shù)字存儲設(shè)備進(jìn)行快照切換操作。
[0042]本發(fā)明所提供的方法中,首先判斷需要恢復(fù)的快照中是否涉及當(dāng)前系統(tǒng)敏感的文件(這個敏感文件可以根據(jù)用戶的需要設(shè)置,在本發(fā)明中最主要的是系統(tǒng)文件,因為系統(tǒng)文件的讀寫出現(xiàn)問題則直接影響到系統(tǒng)的正常運行),如果有敏感文件,則將快照切換的操作推遲執(zhí)行,執(zhí)行快照切換的restore命令進(jìn)行存儲,從而解決了系統(tǒng)運行時執(zhí)行快照切換會導(dǎo)致系統(tǒng)崩潰的問題。
[0043]下面將參照下述細(xì)節(jié)對本發(fā)明的各種實施例和各個方面進(jìn)行說明,附圖將圖示各種實施例。下面的說明和附圖是對本發(fā)明的示例性說明,而不應(yīng)看作對本發(fā)明的限制。描述了大量具體細(xì)節(jié)以提供對本發(fā)明各種實施例的詳盡理解。但是在某些情況下,將不對公知的或傳統(tǒng)的細(xì)節(jié)進(jìn)行描述,以對本發(fā)明的實施例提供簡要的說明。
[0044]下文【具體實施方式】的某些部分是以算法的形式展現(xiàn)的,這些算法包括對于計算機存儲器內(nèi)儲存的數(shù)據(jù)進(jìn)行的操作。算法大體上是指造成所需結(jié)果的操作的自洽序列。這些操作通常需要或涉及到物理操縱或物理量。通常(但不是必然),這些量采取電信號或磁信號的形式,這些信號能夠被儲存、傳輸、合并、比較和以其他方式受到操縱。業(yè)已證明,有時(主要是為了通常使用的原因),將這些信號稱為位、值、元素、符號、字符、項、數(shù)等等是方便的。
[0045]但是應(yīng)當(dāng)牢記,這些以及類似的所有術(shù)語是與適當(dāng)?shù)奈锢砹肯嚓P(guān)聯(lián)的,并且僅僅是應(yīng)用于這些量的方便的標(biāo)號。除非下文中明顯地以其他形式另有說明外,整個說明書中使用諸如“處理”或“計算”或“判定”或“顯示”等術(shù)語所進(jìn)行的說明可以指數(shù)據(jù)處理系統(tǒng)或類似電子裝置進(jìn)行的動作和處理,所述動作和處理操縱計算機的寄存器和存儲器內(nèi)以物理(電子)量表示的數(shù)據(jù)并將其轉(zhuǎn)換成該系統(tǒng)的存儲器或寄存器(或其他這類信息存儲、傳輸或顯示的裝置)內(nèi)類似地以物理量的形式表示的其他數(shù)據(jù)。
[0046]如圖1所示,本發(fā)明實施例提供一種信息處理方法,下面結(jié)合說明書附圖對本發(fā)明的【具體實施方式】進(jìn)行詳細(xì)說明:
[0047]首先本發(fā)明實例所提供的方法可以應(yīng)用于第一電子設(shè)備中,并且所述電子設(shè)備中設(shè)置有數(shù)字存儲設(shè)備,當(dāng)電子設(shè)備中的操作系統(tǒng)運行時,若需要對所述數(shù)字存儲設(shè)備進(jìn)行快照切換操作,該方法包括:
[0048]步驟101,判斷所述要恢復(fù)的快照中是否存儲有預(yù)設(shè)的敏感文件,得到第一判斷結(jié)果;
[0049]本發(fā)明實施例中所指出的預(yù)設(shè)的敏感文件可以根據(jù)用戶的需要設(shè)置,本發(fā)明中最主要針對的是系統(tǒng)文件,因為系統(tǒng)文件的讀寫出現(xiàn)問題則直接影響到系統(tǒng)的正常運行。所以在本發(fā)明實施例中所述預(yù)設(shè)的敏感文件為當(dāng)前系統(tǒng)的操作系統(tǒng)文件。
[0050]步驟102,如果第一判斷結(jié)果為是,則將控制所述數(shù)字存儲設(shè)備進(jìn)行快照切換的restore命令存儲到所述數(shù)字存儲設(shè)備;
[0051 ] 在本發(fā)明實施例中,所述restore命令為異步命令,存儲設(shè)備將這個命令保存在設(shè)備內(nèi)部;然后在系統(tǒng)重啟或重新加電之后再觸發(fā)該restore命令。
[0052]步驟103,在系統(tǒng)重啟或重新加電之后,在操作系統(tǒng)啟動之前的系統(tǒng)弓I導(dǎo)程序運行中觸發(fā)所述restore命令,對所述數(shù)字存儲設(shè)備進(jìn)行快照切換操作。
[0053]本發(fā)明實施例中,所述對所述數(shù)字存儲設(shè)備進(jìn)行快照切換操作為:按照快照中保存的映射表初始化所述數(shù)字化存儲設(shè)備。
[0054]另外,因為原有的系統(tǒng)引導(dǎo)程序中并沒有涉及restore命令的部分,所以在本發(fā)明實施例中為了利用系統(tǒng)引導(dǎo)程序去觸發(fā)數(shù)字存儲設(shè)備中存儲的restore命令,本發(fā)明實施例步驟103中的“在操作系統(tǒng)啟動之前的系統(tǒng)引導(dǎo)程序運行中觸發(fā)所述restore命令”具體實現(xiàn)可以是:
[0055]系統(tǒng)引導(dǎo)程序運行之前,檢測是否有restore命令需要發(fā)送,得到第一檢測結(jié)果;
[0056]如果第一檢測結(jié)果為是,則觸發(fā)所述restore命令;
[0057]運行所述系統(tǒng)弓I導(dǎo)程序。
[0058]因為本發(fā)明實施例所提供的方法中異步restore命令是在系統(tǒng)引導(dǎo)程序bootloader中發(fā)送的,因為X86架構(gòu)還是嵌入式系統(tǒng)構(gòu)架都存在bootloader,所以本發(fā)明實施例所提供的方案使用范圍廣,但是因為X86架構(gòu)與嵌入式系統(tǒng)的ARM架構(gòu)有一些不同,所以本發(fā)明在不同系統(tǒng)中的具體實現(xiàn)方式會有不同,下面對X86架構(gòu)和嵌入式系統(tǒng)分別進(jìn)行說明,具體包括:
[0059]一、X86構(gòu)架(X86機構(gòu)通常是windows操作系統(tǒng))時的總體思路是:在grub調(diào)用NTloader (為X86構(gòu)架下的bootloader)之前做出判斷,是否發(fā)送restore命令,此時操作系統(tǒng)還沒有啟動,存儲設(shè)備初始化還可以按快照中保存的映射表初始化數(shù)字存儲設(shè)備??煺涨袚Q整個流程中各個部分的具體實現(xiàn)方式為:
[0060]現(xiàn)有技術(shù)中系統(tǒng)的啟動過程為:P0ST上電自檢;R0M B1S啟動;Grub調(diào)用NTloader ;操作系統(tǒng)啟動。當(dāng)系統(tǒng)運行時接收到了快照切換請求,并且判斷出快照中包括系統(tǒng)敏感文件,則需要保存將控制所述數(shù)字存儲設(shè)備進(jìn)行快照切換的restore命令存儲到所述數(shù)字存儲設(shè)備。
[0061]在本發(fā)明實施例中能夠執(zhí)行快照切換的前提時候,系統(tǒng)中存在快照文件,生成創(chuàng)建快照的具體流程可以是:
[0062]首先Os運行,利用相關(guān)軟件創(chuàng)建快照(Create snapshot),置snapshot標(biāo)志位,并將標(biāo)志位存儲在bootloader占用的MBR區(qū)域。
[0063]在該實施例中,X86構(gòu)架區(qū)別與嵌入式構(gòu)架最大不同點是,X86構(gòu)架中的NTloader不是開源的,所以在NTloader中觸發(fā)存儲的restore命令需要用grub發(fā)送預(yù)設(shè)命令觸發(fā)存儲的restore命令,實現(xiàn)切換快照。則在本發(fā)明實施例中若所述電子設(shè)備中的操作系統(tǒng)架構(gòu)為X86架構(gòu),則所述觸發(fā)所述restore命令:
[0064]在操作系統(tǒng)啟動程序啟動后,發(fā)送第一命令到所述數(shù)字存儲設(shè)備,所述第一命令用于觸發(fā)存儲在所述數(shù)字存儲設(shè)備中的restore命令。
[0065]如果系統(tǒng)重啟或者是重新上電,會觸發(fā)存儲的restore命令進(jìn)行用戶需要的快照切換操作,具體實現(xiàn)為:
[0066]POST上電自檢;ROM B1S啟動;Grub啟動,查詢snapshot標(biāo)志,是否需要觸發(fā)restore命令發(fā)送?需要發(fā)送restore命令,則發(fā)送第一命令到數(shù)字存儲設(shè)備去觸發(fā)存儲的restore命令,使得數(shù)字存儲設(shè)備根據(jù)快照Snapshot重新初始化;然后操作系統(tǒng)啟動;如果不需要發(fā)送restore命令,則調(diào)用NTloader ;操作系統(tǒng)啟動。
[0067]發(fā)送所述restore命令后,在數(shù)字存儲設(shè)備上,接收到restore命令的流程:
[0068]初始化存儲設(shè)備完成后,如果數(shù)字設(shè)備接收到restore命令,則FTL算法根據(jù)快照保存的映射表重新初始化數(shù)字存儲設(shè)備;如果沒有接收到restore命令,則數(shù)字存儲設(shè)備正常運行。
[0069]二、嵌入式系統(tǒng)的ARM架構(gòu)(ARM架構(gòu)的嵌入式操作系統(tǒng),可能是linux、free RTOS等),bootloader是開源的,所以整個操作實現(xiàn)更為方便。
[0070]所不同于X86架構(gòu)的地方在于,bootloader在運行時會先初始化存儲體,無論是nandlash或者emmc,之后才可以發(fā)送restore命令,重新初始化存儲體,加載快照的映射表,此時操作系統(tǒng)仍然沒有啟動,所以同樣可以執(zhí)行對系統(tǒng)敏感的快照。
[0071]先有技術(shù)中嵌入式系統(tǒng)的啟動過程為:ROM firmware ;Bootloader運行;操作系統(tǒng)啟動。當(dāng)系統(tǒng)運行時接收到了快照切換請求,并且判斷出快照中包括系統(tǒng)敏感文件,則需要保存將控制所述數(shù)字存儲設(shè)備進(jìn)行快照切換的restore命令存儲到所述數(shù)字存儲設(shè)備。
[0072]利用本發(fā)明實施例所提供的方法在bootloader發(fā)送restore命令流程如下:
[0073]ROM firmware ;Bootloader運行,初始化存儲設(shè)備;檢測是否觸發(fā)存儲的restore命令,如果觸發(fā)則發(fā)送第一命令到數(shù)字存儲設(shè)備,使得數(shù)字存儲設(shè)備按照Snapshot重新初始化;否則,操作系統(tǒng)啟動。
[0074]根據(jù)上述兩種系統(tǒng)構(gòu)架的具體實現(xiàn)可知:bootloader無論是X86架構(gòu)還是嵌入式系統(tǒng),都存在相應(yīng)的部分,比如windows上的grub調(diào)用NT Loader, ARM架構(gòu)下的uboot,所以本發(fā)明實施例所提供方法適用范圍廣。另外X86構(gòu)架中的bootloader部分NTloader雖然不是開源的,但可以用grub發(fā)送restore切換快照,修改簡單。
[0075]另外,因為本發(fā)明實施例所提供你的方案是在bootloader中發(fā)送restore命令,所以本發(fā)明實施例所提供的方案在執(zhí)行快照切換操作的時候能夠區(qū)分windows的s4 (hibernat1n)和 s5 (shutdown)狀態(tài)。
[0076]如圖2所示,根據(jù)上述方法本發(fā)明還提供一種電子設(shè)備,該電子設(shè)備中設(shè)置有數(shù)字存儲設(shè)備201,當(dāng)電子設(shè)備中的操作系統(tǒng)運行時,若需要對所述數(shù)字存儲設(shè)備201進(jìn)行快照切換操作,該電子設(shè)備還包括:
[0077]第一判斷單元202,用于判斷所述要恢復(fù)的快照中是否存儲有預(yù)設(shè)的敏感文件,得到第一判斷結(jié)果;
[0078]另外,本發(fā)明實施例中所指出的預(yù)設(shè)的敏感文件可以根據(jù)用戶的需要設(shè)置,本發(fā)明中最主要針對的是系統(tǒng)文件,因為系統(tǒng)文件的讀寫出現(xiàn)問題則直接影響到系統(tǒng)的正常運行。所以第一判斷單元202還用于確定所述要恢復(fù)的快照中存儲有當(dāng)前系統(tǒng)的操作系統(tǒng)文件在確定,所述要恢復(fù)的快照中存儲有預(yù)設(shè)的敏感文件。
[0079]切換命令處理單元203,如果第一判斷結(jié)果為是,用于將控制所述數(shù)字存儲設(shè)備進(jìn)行快照切換的restore命令存儲到所述數(shù)字存儲設(shè)備;
[0080]執(zhí)行單元204,用于在系統(tǒng)重啟或重新加電之后,在操作系統(tǒng)啟動之前的系統(tǒng)引導(dǎo)程序運行中觸發(fā)所述restore命令,對所述數(shù)字存儲設(shè)備進(jìn)行快照切換操作。
[0081]所述執(zhí)行單元204還用于在系統(tǒng)引導(dǎo)程序運行之前,檢測是否有restore命令需要發(fā)送,得到第一檢測結(jié)果;如果第一檢測結(jié)果為是,則觸發(fā)所述restore命令;運行所述系統(tǒng)引導(dǎo)程序。
[0082]其中,所述執(zhí)行單元204對所述初始化所述數(shù)字存儲設(shè)備包括:按照快照中保存的映射表初始化所述數(shù)字化存儲設(shè)備。
[0083]因為本發(fā)明實施例所提供的方法中異步restore命令是在系統(tǒng)引導(dǎo)程序bootloader中發(fā)送的,因為X86架構(gòu)還是嵌入式系統(tǒng)構(gòu)架都存在bootloader,所以本發(fā)明實施例所提供的方案使用范圍廣,但是因為X86架構(gòu)與嵌入式系統(tǒng)構(gòu)架有一些不同,所以本發(fā)明在不同系統(tǒng)中的具體實現(xiàn)方式會有不同,若所述電子設(shè)備中的操作系統(tǒng)架構(gòu)為X86架構(gòu),所述執(zhí)行單元204觸發(fā)所述restore命令包括:
[0084]在操作系統(tǒng)啟動程序啟動后,發(fā)送第一命令到所述數(shù)字存儲設(shè)備,所述第一命令用于觸發(fā)存儲在所述數(shù)字存儲設(shè)備中的restore命令。
[0085]本申請實施例中的上述一個或多個技術(shù)方案,至少具有如下的技術(shù)效果:
[0086]本發(fā)明所提供的方法中,首先判斷需要恢復(fù)的快照中是否涉及當(dāng)前系統(tǒng)敏感的文件(這個敏感文件可以根據(jù)用戶的需要設(shè)置,在本發(fā)明中最主要的是系統(tǒng)文件,因為系統(tǒng)文件的讀寫出現(xiàn)問題則直接影響到系統(tǒng)的正常運行),如果有敏感文件,則將快照切換的操作推遲執(zhí)行,執(zhí)行快照切換的restore命令進(jìn)行存儲,從而解決了系統(tǒng)運行時執(zhí)行快照切換會導(dǎo)致系統(tǒng)崩潰的問題。
[0087]另夕卜,因為本發(fā)明中通過bootloader實現(xiàn)restore命令的異步實現(xiàn),而且bootloader無論是X86架構(gòu)還是嵌入式系統(tǒng),都存在相應(yīng)的部分,比如windows上的grub調(diào)用NT Loader, ARM架構(gòu)下的uboot,所以本發(fā)明實施例所提供方法適用范圍廣。另外X86構(gòu)架中的bootloader部分NTloader雖然不是開源的,但可以用grub發(fā)送restore切換快照,從而達(dá)到的修改簡單的技術(shù)效果。
[0088]進(jìn)一步,因為本發(fā)明實施例所提供你的方案是在bootloader中發(fā)送restore命令,所以本發(fā)明實施例所提供的方案在執(zhí)行快照切換操作的時候能夠區(qū)分windows的s4 (hibernat1n)和 s5 (shutdown)狀態(tài)。
[0089]本發(fā)明所述的方法并不限于【具體實施方式】中所述的實施例,本領(lǐng)域技術(shù)人員根據(jù)本發(fā)明的技術(shù)方案得出其它的實施方式,同樣屬于本發(fā)明的技術(shù)創(chuàng)新范圍。
[0090]顯然,本領(lǐng)域的技術(shù)人員可以對本發(fā)明進(jìn)行各種改動和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動和變型在內(nèi)。
【權(quán)利要求】
1.一種信息處理方法,該方法應(yīng)用于第一電子設(shè)備中,所述電子設(shè)備中設(shè)置有數(shù)字存儲設(shè)備,其特征在于,當(dāng)電子設(shè)備中的操作系統(tǒng)運行時,若需要對所述數(shù)字存儲設(shè)備進(jìn)行快照切換操作,該方法包括: 判斷所述要恢復(fù)的快照中是否存儲有預(yù)設(shè)的敏感文件,得到第一判斷結(jié)果; 如果第一判斷結(jié)果為是,則將控制所述數(shù)字存儲設(shè)備進(jìn)行快照切換的restore命令存儲到所述數(shù)字存儲設(shè)備; 在系統(tǒng)重啟或重新加電之后,在操作系統(tǒng)啟動之前的系統(tǒng)引導(dǎo)程序運行中觸發(fā)所述restore命令,對所述數(shù)字存儲設(shè)備進(jìn)行快照切換操作。
2.如權(quán)利要求1所述的方法,其特征在于,在操作系統(tǒng)啟動之前的系統(tǒng)引導(dǎo)程序運行中觸發(fā)所述restore命令包括: 系統(tǒng)引導(dǎo)程序運行之前,檢測是否有restore命令需要發(fā)送,得到第一檢測結(jié)果; 如果第一檢測結(jié)果為是,則觸發(fā)所述restore命令; 運行所述系統(tǒng)引導(dǎo)程序。
3.如權(quán)利要求1所述的方法,其特征在于,所述對所述數(shù)字存儲設(shè)備進(jìn)行快照切換操作包括: 按照快照中保存的映射表初始化所述數(shù)字化存儲設(shè)備。
4.如權(quán)利要求2所述的方法,其特征在于,若所述電子設(shè)備中的操作系統(tǒng)架構(gòu)為X86架構(gòu),所述觸發(fā)所述restore命令: 在操作系統(tǒng)啟動程序啟動后,發(fā)送第一命令到所述數(shù)字存儲設(shè)備,所述第一命令用于觸發(fā)存儲在所述數(shù)字存儲設(shè)備中的restore命令。
5.如權(quán)利要求1-4任一所述的方法,其特征在于,所述預(yù)設(shè)的敏感文件為當(dāng)前系統(tǒng)的操作系統(tǒng)文件。
6.一種電子設(shè)備,該電子設(shè)備中設(shè)置有數(shù)字存儲設(shè)備,其特征在于,當(dāng)電子設(shè)備中的操作系統(tǒng)運行時,若需要對所述數(shù)字存儲設(shè)備進(jìn)行快照切換操作,該電子設(shè)備還包括: 第一判斷單元,用于判斷所述要恢復(fù)的快照中是否存儲有預(yù)設(shè)的敏感文件,得到第一判斷結(jié)果; 切換命令處理單元,如果第一判斷結(jié)果為是,用于將控制所述數(shù)字存儲設(shè)備進(jìn)行快照切換的restore命令存儲到所述數(shù)字存儲設(shè)備; 執(zhí)行單元,用于在系統(tǒng)重啟或重新加電之后,在操作系統(tǒng)啟動之前的系統(tǒng)引導(dǎo)程序運行中觸發(fā)所述restore命令,對所述數(shù)字存儲設(shè)備進(jìn)行快照切換操作。
7.如權(quán)利要求6所述的電子設(shè)備,其特征在于,所述執(zhí)行單元還用于在系統(tǒng)引導(dǎo)程序運行之前,檢測是否有restore命令需要發(fā)送,得到第一檢測結(jié)果;如果第一檢測結(jié)果為是,則觸發(fā)所述restore命令;運行所述系統(tǒng)引導(dǎo)程序。
8.如權(quán)利要求7所述的電子設(shè)備,其特征在于,所述執(zhí)行單元對所述初始化所述數(shù)字存儲設(shè)備包括: 按照快照中保存的映射表初始化所述數(shù)字化存儲設(shè)備。
9.如權(quán)利要求7所述的電子設(shè)備,其特征在于,若所述電子設(shè)備中的操作系統(tǒng)架構(gòu)為X86架構(gòu),所述執(zhí)行單元觸發(fā)所述restore命令包括: 在操作系統(tǒng)啟動程序啟動后,發(fā)送第一命令到所述數(shù)字存儲設(shè)備,所述第一命令用于觸發(fā)存儲在所述數(shù)字存儲設(shè)備中的restore命令。
10.如權(quán)利要求6-9任一所述的電子設(shè)備,其特征在于,第一判斷單元還用于確定所述要恢復(fù)的快照中存儲有當(dāng)前系統(tǒng)的操作系統(tǒng)文件在確定,所述要恢復(fù)的快照中存儲有預(yù)設(shè)的敏感文件。
【文檔編號】G06F9/445GK104252395SQ201310269475
【公開日】2014年12月31日 申請日期:2013年6月28日 優(yōu)先權(quán)日:2013年6月28日
【發(fā)明者】管慧娟, 郭琦, 陸見微 申請人:聯(lián)想(北京)有限公司