基于電源狀態(tài)的備份方法和裝置制造方法
【專利摘要】描述了一種在無(wú)線裝置處通過(guò)電線或者感應(yīng)襯墊接收電源的方法和設(shè)備。監(jiān)視所接收的電源,以通過(guò)OTA(空中)無(wú)線接口將來(lái)自該裝置的數(shù)據(jù)備份到網(wǎng)絡(luò)中的服務(wù)器,該數(shù)據(jù)被傳送到該服務(wù)器以備份該裝置上的數(shù)據(jù)。在備份該數(shù)據(jù)時(shí),確定該電源是否已經(jīng)從該裝置移除。響應(yīng)于確定該電源已經(jīng)被移除,在沒(méi)有用戶請(qǐng)求的情況下自動(dòng)地終止對(duì)該裝置中的數(shù)據(jù)的備份。
【專利說(shuō)明】基于電源狀態(tài)的備份方法和裝置
[0001]相關(guān)申請(qǐng)的交叉引用
[0002]本申請(qǐng)要求申請(qǐng)于2011年6月3日提交的、Gordon J.Freedman等人的、題為“Methods and Apparatus for Mult1-Phase Mult1-Source Backup and Restore,,的美國(guó)臨時(shí)申請(qǐng)N0.61 / 493,360的權(quán)益,在此將其全部并入以作參考。
【技術(shù)領(lǐng)域】
[0003]本發(fā)明通常涉及裝置的備份。更特別地,本發(fā)明涉及檢測(cè)用于為裝置備份文件的裝置的電源狀態(tài)。
【背景技術(shù)】
[0004]隨著移動(dòng)裝置,特別是例如移動(dòng)電話、個(gè)人數(shù)據(jù)助理(PDA)、平板裝置等等的移動(dòng)通信裝置的發(fā)展,備份和恢復(fù)操作已愈加變?yōu)檫@些移動(dòng)裝置的日常使用中所不可分割的部分。然而,在工作環(huán)境、移動(dòng)應(yīng)用和/或網(wǎng)絡(luò)存儲(chǔ)基礎(chǔ)結(jié)構(gòu)持續(xù)發(fā)展時(shí),伴隨在移動(dòng)裝置上不斷變化的需求而來(lái)的新的挑戰(zhàn)也同時(shí)發(fā)生,以支持這種能力。
[0005]例如,傳統(tǒng)的備份/恢復(fù)操作可能基于使用高帶寬網(wǎng)絡(luò)連接的,與備份/恢復(fù)軟件和硬件的復(fù)雜交互。然而,移動(dòng)裝置經(jīng)常被用于在途中,而無(wú)線網(wǎng)絡(luò)連接從一個(gè)場(chǎng)所移動(dòng)到另一個(gè)場(chǎng)所可能是不可靠的、帶寬受限的、和/或不可預(yù)測(cè)的。因此,可能需要冗長(zhǎng)的時(shí)間和/或多次的嘗試來(lái)完成對(duì)移動(dòng)裝置的備份/恢復(fù)操作。此外,在用于這些操作的大多數(shù)無(wú)線網(wǎng)絡(luò)的開(kāi)放中可能發(fā)現(xiàn)附加的安全風(fēng)險(xiǎn)。
[0006]因而,現(xiàn)有機(jī)制不可能以可靠、安全和用戶友好的方式來(lái)備份和/或恢復(fù)移動(dòng)裝置。
【發(fā)明內(nèi)容】
[0007]在一個(gè)實(shí)施例中,可以將裝置中的資源經(jīng)由多級(jí)提取,備份到基于網(wǎng)絡(luò)的存儲(chǔ)裝置,也被稱作云存儲(chǔ)中,以允許遞增的和可重新開(kāi)始的備份操作??梢詣?dòng)態(tài)地配置備份源以用于改善備份/恢復(fù)性能和/或最小化對(duì)裝置的正常操作的影響。在一個(gè)實(shí)施例中,裝置可以與移動(dòng)備份服務(wù)(MBS)通信,以基于保存在MBS中的分級(jí)數(shù)據(jù)來(lái)確定備份資源(或文件)的哪些部分。分級(jí)數(shù)據(jù)可以包括該裝置的所有者賬戶、為與該所有者賬戶相關(guān)聯(lián)的每個(gè)裝置特有的備份層(或表示)、和/或描述被備份的每個(gè)文件的元數(shù)據(jù)。
[0008]在一個(gè)實(shí)施例中,MBS可以與內(nèi)容服務(wù)(例如Mobile Me塊服務(wù)或者M(jìn)MCS)通信,以識(shí)別文件的哪個(gè)實(shí)際的數(shù)據(jù)塊(或分塊數(shù)據(jù))應(yīng)當(dāng)被上載備份,以避免在例如云存儲(chǔ)中的數(shù)據(jù)塊的重復(fù)拷貝。MMCS可以追蹤在文件和用于識(shí)別該文件的數(shù)據(jù)塊的一組塊標(biāo)識(shí)符之間的映射。在一個(gè)實(shí)施例中,MMCS可以動(dòng)態(tài)地配置或安排廠家云存儲(chǔ),以將被識(shí)別為用于備份的文件內(nèi)容存儲(chǔ)在分塊數(shù)據(jù)的容器中。
[0009]在另一個(gè)實(shí)施例中,可以保存裝置中的元數(shù)據(jù)以追蹤資源(或文件)是否表示用戶數(shù)據(jù)(例如,用戶創(chuàng)建的數(shù)據(jù))或者購(gòu)買的資產(chǎn)或內(nèi)容。所購(gòu)買的資產(chǎn)的實(shí)際數(shù)據(jù)可從可用的資產(chǎn)商店(或地點(diǎn))下載或恢復(fù),而沒(méi)有備份的需求。對(duì)于某些可免費(fèi)利用的資產(chǎn),例如播客,可以通過(guò)備份它們的標(biāo)識(shí)符,而不是直接備份和恢復(fù)它們的實(shí)際內(nèi)容來(lái)進(jìn)行重新下載。將被備份的描述資源的元數(shù)據(jù)可以允許對(duì)不同源的自動(dòng)識(shí)別,用于為用戶適時(shí)且透明地備份。例如,備份作為所購(gòu)買的資產(chǎn)的資源可以包括制作標(biāo)記,而不是增加(push up)所購(gòu)買的資產(chǎn)的內(nèi)容。為了恢復(fù)被標(biāo)記的所購(gòu)買的資產(chǎn),可以從資產(chǎn)商店中獲取所購(gòu)買的資產(chǎn)的內(nèi)容。例如,資產(chǎn)商店可以是網(wǎng)絡(luò)可訪問(wèn)的站點(diǎn),其托管可購(gòu)買的資產(chǎn)、存儲(chǔ)所購(gòu)買的資產(chǎn)和/或托管可免費(fèi)利用的資產(chǎn)(或內(nèi)容)。
[0010]可選地,可以將資源從多個(gè)源,例如云存儲(chǔ)、本地計(jì)算機(jī)、資產(chǎn)商店、和/或其他的合適的源適時(shí)地拆分恢復(fù)回裝置。可以為裝置中的資源追蹤指示媒體資產(chǎn)類型的元數(shù)據(jù),以基于性能、帶寬、功耗、和/或其他合適的因素,動(dòng)態(tài)地識(shí)別哪個(gè)源對(duì)于恢復(fù)(或備份)該資源是可用的和/或最劃算的。
[0011]例如,裝置可以注意到至本地計(jì)算機(jī)的連接(例如,有線或無(wú)線耦合的),該本地計(jì)算機(jī)為要恢復(fù)的資源存儲(chǔ)一部分內(nèi)容數(shù)據(jù)??梢詮囊呀?jīng)連接的計(jì)算機(jī)中拉取該部分內(nèi)容數(shù)據(jù)。隨后,可以將從本地計(jì)算機(jī)中不可用的剩余的資源識(shí)別為將從云存儲(chǔ)和/或商店中拆分恢復(fù)。結(jié)果,可以在云(或云存儲(chǔ))中備份例如音樂(lè)、應(yīng)用或其他媒體文件的內(nèi)容數(shù)據(jù),但是仍然可以為該裝置從本地計(jì)算機(jī)恢復(fù)該內(nèi)容數(shù)據(jù)。
[0012]在一個(gè)實(shí)施例中,可以基于例如,相關(guān)聯(lián)的應(yīng)用、介質(zhì)類型、或其它可擴(kuò)展信息,為備份選擇文件或資源。可以追蹤作為商店資產(chǎn)的資源(例如,從資產(chǎn)商店可用的所購(gòu)買的資產(chǎn)),該商店資產(chǎn)從商店可用,而不需要備份該資源的實(shí)際內(nèi)容??蛇x地,另一個(gè)資源可以被追蹤作為用戶數(shù)據(jù),該用戶數(shù)據(jù)不能從商店可用并且要求例如,經(jīng)由云存儲(chǔ)進(jìn)行備份和恢復(fù)。應(yīng)用可以與包括作為商店資產(chǎn)的該應(yīng)用本身和作為用戶數(shù)據(jù)的應(yīng)用數(shù)據(jù)的資源相關(guān)聯(lián)。因此,可以從不同的源恢復(fù)應(yīng)用和相關(guān)聯(lián)的應(yīng)用數(shù)據(jù)。
[0013]例如,為云備份所選擇的裝置中的資源可以包括應(yīng)用數(shù)據(jù),而不包括相應(yīng)的應(yīng)用本身??梢詮馁Y產(chǎn)商店中將應(yīng)用重新下載到裝置,并且可以從云存儲(chǔ)和/或本地計(jì)算機(jī)恢復(fù)應(yīng)用數(shù)據(jù)。替代地,可以從本地計(jì)算機(jī)同步應(yīng)用,以從云存儲(chǔ)恢復(fù)應(yīng)用數(shù)據(jù)。用于分別恢復(fù)應(yīng)用和應(yīng)用數(shù)據(jù)的其他備份源的組合是可能的。在一些實(shí)施例中,可以在應(yīng)用數(shù)據(jù)的相應(yīng)應(yīng)用被使用(例如,由用戶所使用)之前恢復(fù)該應(yīng)用數(shù)據(jù)??梢栽诎l(fā)起對(duì)應(yīng)用數(shù)據(jù)(例如,從云存儲(chǔ)或其他資源的)的恢復(fù)之前下載或同步該應(yīng)用,以創(chuàng)建正確的順序。
[0014]在一個(gè)實(shí)施例中,從備份將資源恢復(fù)到裝置可以在多個(gè)階段中完成,以在該資源正在被恢復(fù)的時(shí)候保持該裝置在工作狀況中可使用并且響應(yīng)用戶。例如,對(duì)于裝置的雙重階段或兩階段的恢復(fù),該裝置可以進(jìn)入最初的模態(tài)恢復(fù)會(huì)話(例如,第一模式),后面是后臺(tái)恢復(fù)會(huì)話(例如,第二模式)。在一個(gè)實(shí)施例中,該裝置對(duì)于用戶是可用使的,使得該裝置在最初的模態(tài)恢復(fù)會(huì)話中不響應(yīng)用戶輸入。在一個(gè)實(shí)施例中,最初的模態(tài)會(huì)話可以是簡(jiǎn)要和迅速的,用于恢復(fù)核心用戶文件以重新啟動(dòng)該裝置。隨后,在個(gè)別的應(yīng)用在后臺(tái)中正在被恢復(fù)回到該裝置時(shí),后臺(tái)會(huì)話可以允許用戶使用該裝置。該裝置可以是可操作的,以響應(yīng)該后臺(tái)恢復(fù)會(huì)話中的至少一組用戶輸入。
[0015]在一個(gè)實(shí)施例中,在兩階段恢復(fù)的模態(tài)會(huì)話期間,在裝置下載系統(tǒng)資源以將該裝置帶入到特定于用戶的工作狀況時(shí),該裝置可以是暫時(shí)不可使用的。例如,系統(tǒng)資源可以包括所有的元數(shù)據(jù)和系統(tǒng)數(shù)據(jù)、賬戶的列表、壁紙、SMS (短消息服務(wù))歷史、和/或其他合適的用戶特定的非應(yīng)用數(shù)據(jù)。系統(tǒng)數(shù)據(jù)加上元數(shù)據(jù)可以將該裝置配置為例如,像該用戶的電話一樣操作。在該模態(tài)會(huì)話之后,裝置可以重新啟動(dòng)和活躍起來(lái)。
[0016]在一個(gè)實(shí)施例中,在兩階段恢復(fù)的后臺(tái)會(huì)話期間,裝置可以從本地計(jì)算機(jī)和/或云存儲(chǔ)恢復(fù)數(shù)據(jù)或媒體資產(chǎn)(例如,運(yùn)行來(lái)自蘋果公司的il\ines?,應(yīng)用)。裝置可以在后臺(tái)會(huì)話期間同步郵件和/或接收文本消息。在一個(gè)實(shí)施例中,可以根據(jù)通過(guò)使用模式所確定的恢復(fù)順序來(lái)恢復(fù)資源。例如,可以追蹤應(yīng)用使用以集合使用模式,包括所觀看的表演/電影、所閱讀的書籍,或其他的合適的使用統(tǒng)計(jì)數(shù)據(jù)。在其他的實(shí)施例中,恢復(fù)順序可以取決于資源(或內(nèi)容)的尺寸,其中,對(duì)應(yīng)于該資源的圖標(biāo)位于裝置的顯示器上(例如,用戶可能將頻繁使用的圖標(biāo)放置在第一頁(yè)),或其他合適的因素??梢赃m應(yīng)于用戶請(qǐng)求而動(dòng)態(tài)地更新恢復(fù)順序,例如經(jīng)由用戶在顯示器上輕敲來(lái)指示應(yīng)用的優(yōu)先級(jí)。
[0017]在另一個(gè)實(shí)施例中,在雙重階段(或分為二支的)恢復(fù)中的一段時(shí)間期間,在裝置是可用使的但不是所有數(shù)據(jù)都已經(jīng)被恢復(fù)時(shí),Π(用戶界面)元件可以被顯示,以提高用戶體驗(yàn)并且阻止以不正確或者意外的方式操作應(yīng)用。例如,可以將其(多個(gè))目標(biāo)文件或用戶數(shù)據(jù)還沒(méi)有被恢復(fù)的、表示應(yīng)用和/或媒體資料庫(kù)(例如,用于播放音樂(lè)、視頻或者其他媒體內(nèi)容/資產(chǎn))的圖標(biāo)顯示為灰色,或者包括進(jìn)度條,以指示該應(yīng)用還仍然不可用,但是將變?yōu)榭捎谩Mㄟ^(guò)允許用戶輕敲該用戶想要優(yōu)先考慮恢復(fù)的應(yīng)用、或照片、或音樂(lè)、或視頻的圖標(biāo)可增加交互性。
[0018]在另一個(gè)實(shí)施例中,一種方法和裝置在此被描述為在無(wú)線裝置處,通過(guò)電線或電感襯墊接收電源。監(jiān)視所接收的電源,以通過(guò)OTA(空中)無(wú)線接口,將來(lái)自所述裝置的數(shù)據(jù)備份到網(wǎng)絡(luò)中的服務(wù)器。將該數(shù)據(jù)傳輸?shù)椒?wù)器以備份該裝置上的數(shù)據(jù)。在備份該數(shù)據(jù)時(shí),確定是否已經(jīng)從該裝置移除了電源。響應(yīng)于電源已經(jīng)移除的測(cè)定,對(duì)該裝置中的數(shù)據(jù)的備份可以在沒(méi)有用戶請(qǐng)求的情況下自動(dòng)地終止。
[0019]在另一個(gè)實(shí)施例中,監(jiān)視至該裝置的外部電源的狀態(tài)。該狀態(tài)可以指示該外部電源是否可用。在一個(gè)實(shí)施例中,通過(guò)無(wú)線接口,將數(shù)據(jù)從該裝置備份到網(wǎng)絡(luò)中的服務(wù)器,以經(jīng)由大量的備份操作將數(shù)據(jù)傳送到服務(wù)器。可以根據(jù)在至少還剩有一個(gè)用于對(duì)該數(shù)據(jù)進(jìn)行備份的備份操作還未完成時(shí)所監(jiān)視的狀態(tài),來(lái)檢測(cè)該外部電源是否可用。響應(yīng)于檢測(cè)到該外部電源是不可用的,可以在沒(méi)有用戶請(qǐng)求的情況下自動(dòng)地終止對(duì)裝置中的數(shù)據(jù)的備份??梢圆粓?zhí)行剩余的操作。
[0020]本發(fā)明的其他特征將因?yàn)楦綀D和隨后的詳細(xì)描述而變得明顯。
【專利附圖】
【附圖說(shuō)明】
[0021]通過(guò)示例而非限制的方式在附圖中圖示了本發(fā)明,其中相同的參考指示同樣的元件,其中:
[0022]圖1是圖示用于多階段多源備份和恢復(fù)的網(wǎng)絡(luò)系統(tǒng)的一個(gè)實(shí)施例的方框圖;
[0023]圖2是圖示用于多階段多源備份和恢復(fù)的示范系統(tǒng)的方框圖;
[0024]圖3是圖示用于管理使用多源在多階段中的備份和恢復(fù)的示范系統(tǒng)的方框圖;
[0025]圖4是圖示為裝置執(zhí)行遞增備份操作處理的一個(gè)實(shí)施例的流程圖;
[0026]圖5是圖示在裝置中執(zhí)行遞增恢復(fù)操作處理的一個(gè)實(shí)施例的流程圖;
[0027]圖6是圖示動(dòng)態(tài)地優(yōu)先化資源以恢復(fù)裝置的處理的一個(gè)實(shí)施例的流程圖;[0028]圖7是為備份和/或恢復(fù)操作而監(jiān)視裝置的電源的示范系統(tǒng)的方框圖;
[0029]圖8是圖示為保存電源而中斷裝置的備份和/或恢復(fù)操作的處理的一個(gè)實(shí)施例的流程圖;
[0030]圖9表示了數(shù)據(jù)處理系統(tǒng)的一個(gè)示例,該數(shù)據(jù)處理系統(tǒng)隨著本文描述的實(shí)施例一起使用;
[0031]圖10圖示了典型的計(jì)算機(jī)系統(tǒng)的示例,該計(jì)算機(jī)系統(tǒng)可以連同本文描述的實(shí)施
例一起使用。
【具體實(shí)施方式】
[0032]在此處描述利用一個(gè)或多個(gè)源在多個(gè)階段中為裝置備份和恢復(fù)文件的方法和裝置。在下面的描述中,闡明許多的細(xì)節(jié)以提供對(duì)本發(fā)明的實(shí)施例的充分說(shuō)明。然而,對(duì)本領(lǐng)域技術(shù)人員顯而易見(jiàn)的是,可以在沒(méi)有這些細(xì)節(jié)的情況下實(shí)施本發(fā)明的實(shí)施例。在其他的情況中,沒(méi)有詳細(xì)地示出公知的部件、結(jié)構(gòu)、和技術(shù),以為了不模糊對(duì)該描述的理解。
[0033]貫穿本說(shuō)明書的對(duì)于“一個(gè)實(shí)施例”或“實(shí)施例”的參考意味著所描述的與實(shí)施例有關(guān)的特定特征、結(jié)構(gòu)、或特性可被包括到本發(fā)明的至少一個(gè)實(shí)施例中。在本說(shuō)明書的不同地方出現(xiàn)的短語(yǔ)“在一個(gè)實(shí)施例中”未必是全部都涉及相同的實(shí)施例。
[0034]在隨后的附圖中描述的處理將由處理邏輯執(zhí)行,該處理邏輯包括硬件(例如,電路、專用邏輯等等)、軟件(例如,運(yùn)行在通用計(jì)算機(jī)系統(tǒng)或?qū)S脵C(jī)器上的軟件)或這兩者的結(jié)合。盡管以下按照某些順序操作描述該處理,但應(yīng)當(dāng)理解的是,可以以不同的順序執(zhí)行所描述的這些操作。此外,可以并行地而不是順序地執(zhí)行某些操作。
[0035]在一個(gè)實(shí)施例中,多個(gè)源可用于備份來(lái)自裝置的數(shù)據(jù)或資源。例如,可以經(jīng)由例如Amazon、S3、Microsoft等的第三方廠商提供云(或云存儲(chǔ)、云服務(wù))中的普通數(shù)據(jù)備份服務(wù)。所購(gòu)買的資產(chǎn),例如歌曲、電影、和/或應(yīng)用等等可以從云中的il\ines?'商店下載。運(yùn)行備份服務(wù)軟件,例如n\mes?的用戶的(多個(gè))計(jì)算機(jī)可以用來(lái)備份裝置,例如來(lái)自蘋果公司的iOS?裝置、iPhone?或iPad?.裝置。
[0036]將被備份的來(lái)自裝置的資源可以是備份數(shù)據(jù),例如包括:設(shè)置、賬戶數(shù)據(jù)、應(yīng)用數(shù)據(jù)、照片、媒體文件、所購(gòu)買的資產(chǎn)和/或其他數(shù)據(jù)文件。在一個(gè)實(shí)施例中,可以從裝置中的現(xiàn)有資源中動(dòng)態(tài)地識(shí)別備份數(shù)據(jù)。用戶計(jì)算機(jī)(例如,臺(tái)式計(jì)算機(jī)或筆記本)可以存儲(chǔ)裝置的備份數(shù)據(jù)??蛇x地或替代地,經(jīng)由云備份和/或經(jīng)由商店,例如i!\ines⑧商店,可以為備份數(shù)據(jù)中的所購(gòu)買的資產(chǎn)存儲(chǔ)裝置的備份數(shù)據(jù)的子集。
[0037]在一個(gè)實(shí)施例中,例如由MBS服務(wù)器保存在云中的賬戶可以由分級(jí)數(shù)據(jù)所表示,該分級(jí)數(shù)據(jù)包括分別對(duì)應(yīng)于用于該賬戶的不同裝置的多個(gè)備份(或備份結(jié)構(gòu))。該分級(jí)數(shù)據(jù)可以包括包含對(duì)于多個(gè)不同的裝置的一組備份的賬戶。備份可以包括在裝置上的文件的一組快照??梢灾С置總€(gè)裝置一個(gè)備份。
[0038]快照可以表示單個(gè)時(shí)間點(diǎn)處的裝置狀態(tài)??梢愿鶕?jù)備份中的任何快照來(lái)進(jìn)行恢復(fù),以重建在那個(gè)時(shí)間點(diǎn)處的裝置狀態(tài)。可以從一個(gè)號(hào)碼(例如,I)順序地編號(hào)快照,并且可以由服務(wù)器指派這些號(hào)碼。第一個(gè)快照可以是裝置的完全備份,而隨后的快照可以是基于先前的快照的增量(delta)。由遞增的快照可以包含從先前的快照起該裝置上的所有增加、改變、和刪除的文件。[0039]一旦快照的內(nèi)容已經(jīng)被上載,則可以明確地提交該快照。在某時(shí)可能有一個(gè)未提交的快照,并且該未提交的快照可能是具有最大號(hào)碼的最近快照。一旦提交了快照,不可以改變它的內(nèi)容,除非徹底地將它刪除。
[0040]在刪除快照時(shí),可以將它的內(nèi)容合并到先前的快照中,除非它未被提交。結(jié)果,仍然可以根據(jù)任何的隨后快照進(jìn)行恢復(fù)。可以保持目標(biāo)快照中的增加/改變/刪除文件(例如,不會(huì)被丟失)。刪除未提交的快照可能不會(huì)引起合并,而代之以簡(jiǎn)單地丟棄該內(nèi)容。在從所存儲(chǔ)的快照序列中刪除第二快照,并且將文件合并到該快照序列的第一快照中時(shí),可以不必保留被刪除的文件,因?yàn)榈谝豢煺帐峭耆摹?梢圆粍h除第一快照,除非它是該快照序列中的唯一快照。
[0041]每個(gè)備份都可以包括例如根據(jù)所配置的安排(例如,每小時(shí)、每日、每周等等)而從相應(yīng)裝置獲得的快照。每個(gè)快照都可以包括對(duì)文件或資源的列表的描述。每個(gè)文件都可以被分成(例如,一定位大小的)實(shí)際數(shù)據(jù)塊(或者文件分塊),以供云服務(wù)存儲(chǔ)。替代地,文件分塊可以基于例如在Dominic Giampaolo的、于2011年I月14日提交的題為^ContentBased File Chunking”的臨時(shí)專利申請(qǐng)N0.61 / 433,152中描述的技術(shù)將數(shù)據(jù)項(xiàng)劃分分塊,該臨時(shí)專利申請(qǐng)?jiān)诒疚闹斜徽w并入以作參考。
[0042]典型地,可以將多個(gè)塊聚集為一個(gè)容器,以作為用于由例如,第三方廠商所提供的云服務(wù)的存儲(chǔ)單元??梢园凑找髣?chuàng)建、更新、刪除、禁用、或者操作備份。例如,可以將給定范圍的文件從備份中移除。云存儲(chǔ)不存儲(chǔ)足夠的信息以重新生成對(duì)應(yīng)于在該云存儲(chǔ)中存儲(chǔ)的數(shù)據(jù)塊的原始文件。因此,經(jīng)由數(shù)據(jù)分塊內(nèi)在地保護(hù)該文件。對(duì)數(shù)據(jù)塊的加密可以為存儲(chǔ)在云存儲(chǔ)中的數(shù)據(jù)提供額外的保護(hù)等級(jí)。
[0043]在一個(gè)實(shí)施例中,例如iOS?.裝置的裝置可以利用在云中的備份服務(wù)(例如,在MBS服務(wù)器中托管)啟動(dòng)備份操作,以識(shí)別來(lái)自該裝置的資源的備份數(shù)據(jù)??梢岳?,經(jīng)由對(duì)應(yīng)于該裝置的備份結(jié) 構(gòu)將描述該裝置的備份狀態(tài)的元數(shù)據(jù)保持在備份服務(wù)中。備份狀態(tài)可以包括已經(jīng)為該裝置備份的資源的最新快照或者一系列最近快照。在一個(gè)實(shí)施例中,元數(shù)據(jù)可以參考為了裝置的備份數(shù)據(jù)而經(jīng)由(多個(gè))第三方廠商存儲(chǔ)在云服務(wù)中的數(shù)據(jù)塊。
[0044]可以將為了備份操作而在裝置中識(shí)別的備份數(shù)據(jù)或文件分成為實(shí)際數(shù)據(jù)位塊,以為云存儲(chǔ)作準(zhǔn)備。在一個(gè)實(shí)施例中,該裝置的服務(wù)框架中的MMCS代碼可以與云中的MMCS服務(wù)器通信,以準(zhǔn)備數(shù)據(jù)塊為所識(shí)別的文件備份。例如,可以根據(jù)某些塊配置(例如,每塊的具體數(shù)據(jù)位大小)將備份數(shù)據(jù)分成多個(gè)數(shù)據(jù)塊。
[0045]服務(wù)框架可以確定由為備份而識(shí)別的文件所準(zhǔn)備的多個(gè)數(shù)據(jù)塊中的哪一個(gè)當(dāng)前在云中不可用并且需要被上載。在某些實(shí)施例中,服務(wù)框架(例如,經(jīng)由MMCS代碼的)可以例如,經(jīng)由SHA散列算法或者其他適當(dāng)算法,將每個(gè)塊散列為簽名,作為MMCS服務(wù)器(或者服務(wù))的標(biāo)識(shí)符,以確定是否所識(shí)別的塊已經(jīng)在云中備份。
[0046]在一個(gè)實(shí)施例中,可以將文件引用到MMCS中。裝置可以將任意的標(biāo)識(shí)符指派給該文件。該裝置可以使用該標(biāo)識(shí)符查閱(refer back)該文件??梢灾芷谛缘?例如,由服務(wù)器)將該引用抓取到MMCS中,以垃圾收集未引用的文件數(shù)據(jù)塊(或者文件塊)。
[0047]可以在多個(gè)階段中執(zhí)行對(duì)裝置的備份操作,例如建立階段、掃描階段、備份階段和/或其他的適當(dāng)階段,以協(xié)調(diào)云中的多個(gè)服務(wù)。每個(gè)階段可以對(duì)應(yīng)于單獨(dú)的操作抽象層,以允許對(duì)云存儲(chǔ)的適時(shí)動(dòng)態(tài)配置,來(lái)增加效率和/或改善備份操作的性能。[0048]例如,在建立階段期間,可以確定備份(或者備份結(jié)構(gòu))是否為裝置而存在于MBS服務(wù)中。如果在MBS服務(wù)中沒(méi)有為該裝置而存在的備份,可以要求MBS服務(wù)為裝置創(chuàng)建帶有初始元數(shù)據(jù)的備份。在一個(gè)實(shí)施例中,裝置可以包括備份高速緩存,其反映對(duì)應(yīng)于該裝置在MBS服務(wù)中的備份的副本。備份高速緩存可以包括之前為該裝置取得的一個(gè)或多個(gè)快照。
[0049]在一個(gè)實(shí)施例中,如果需要(例如,在根據(jù)與MBS服務(wù)通信的消息,在備份高速緩存中所高速緩存的快照是過(guò)時(shí)的時(shí)),可以重建(例如,通過(guò)查閱MBS服務(wù))備份高速緩存以與MBS服務(wù)同步??蛇x地或者另外地,在建立階段期間,可以確定是否在該裝置中存在未提交的快照。未提交的快照可以不與存儲(chǔ)在MBS服務(wù)中的現(xiàn)有快照相對(duì)應(yīng),并且可以包括對(duì)還有待于備份的資源的描述??梢栽诮㈦A段創(chuàng)建未提交的快照。
[0050]在一個(gè)實(shí)施例中,裝置可以查詢MBS服務(wù)以確定是否存在未提交的快照,例如作為確保備份高速緩存為最新的一部分。在備份操作期間掃描它的文件系統(tǒng)之后,裝置可以創(chuàng)建未提交的快照??梢灾饾u地更新備份高速緩存以反映什么已經(jīng)被成功地備份到,例如MBS和MMCS服務(wù)中。
[0051]在掃描階段期間,可以掃描該裝置的文件系統(tǒng)以發(fā)現(xiàn)文件或者資源的改變,例如新文件、被刪除的文件、修改的文件等等。在一個(gè)實(shí)施例中,可以經(jīng)由掃描文件和存儲(chǔ)在備份高速緩存中的快照之間的比較來(lái)識(shí)別該交化。在掃描階段期間可以追蹤已經(jīng)備份了哪些文件以及需要備份哪些文件。
[0052]在備份階段,可以執(zhí)行實(shí)際文件備份操作。例如,如果需要(例如,在沒(méi)有未提交快照可用時(shí))可以創(chuàng)建快照??梢韵騇BS服務(wù)發(fā)送請(qǐng)求,以在MBS服務(wù)中創(chuàng)建新文件、修改的文件、和/或被刪除的文件的條目??梢詮腗BS服務(wù)接收定額認(rèn)證或者訪問(wèn)云存儲(chǔ)的權(quán)利,以允許向MMCS服務(wù)發(fā)送備份請(qǐng)求。備份請(qǐng)求可以包括描述要備份文件的變化或者文件的元數(shù)據(jù)。
[0053]可以從MBS服務(wù)接收認(rèn)證令牌,以指示所請(qǐng)求的備份處于MMCS為該裝置施加的備份存儲(chǔ)大小的限度之內(nèi)??梢詾橐唤M從裝置到存儲(chǔ)設(shè)備廠商的經(jīng)批準(zhǔn)的HTTP(超文本傳輸協(xié)議)請(qǐng)求,向MMCS服務(wù)發(fā)送認(rèn)證令牌。MMCS服務(wù)可以與存儲(chǔ)設(shè)備廠商(或者云服務(wù))進(jìn)行交互,以取回該裝置的授權(quán)密鑰??梢詫⑽募母淖?例如,增加/刪除/移除)同該授權(quán)密鑰一起上載到云服務(wù)。如果從云服務(wù)接收到成功上載的確認(rèn),則可以在該裝置和MBS服務(wù)之間提交對(duì)應(yīng)于該上載的快照。一旦快照已經(jīng)被創(chuàng)建并且它的內(nèi)容已經(jīng)被定義,則該快照就可以被提交,然后被上載到MMCS。
[0054]在一個(gè)實(shí)施例中,MBS服務(wù)可以基于在文件級(jí)別上描述文件的元數(shù)據(jù)。MMCS服務(wù)可以取決于文件的實(shí)際內(nèi)容或者數(shù)據(jù)(例如,數(shù)據(jù)塊)。從文件的實(shí)際內(nèi)容生成的散列簽名作為該內(nèi)容的標(biāo)識(shí)符被用于MMCS服務(wù)中。MMCS服務(wù)可以確定例如在云存儲(chǔ)中的由標(biāo)識(shí)符所識(shí)別的內(nèi)容的部分是否是新的(或者還沒(méi)有被備份)。MBS服務(wù)可以根據(jù)與文件或多個(gè)文件相關(guān)聯(lián)的元數(shù)據(jù)來(lái)決定文件或多個(gè)文件是否是新的或者已經(jīng)更新。
[0055]在某些實(shí)施例中,例如MBS服務(wù)的備份服務(wù)可以為裝置保持一個(gè)或多個(gè)備份。備份可以包括描述備份數(shù)據(jù)或文件是什么、如何保持對(duì)備份數(shù)據(jù)的追蹤、對(duì)應(yīng)裝置的識(shí)別、不同的備份如何相關(guān)(例如,基于備份日期、遞增備份關(guān)系,等等)和/或其他信息的語(yǔ)義。在一個(gè)實(shí)施例中,備份在一個(gè)帳戶下可以與一個(gè)裝置相關(guān)聯(lián)。每個(gè)帳戶都可以包括多個(gè)裝置。備份可以包括該裝置的多個(gè)快照。例如,可以每天都為該裝置的資源取得快照。每個(gè)快照都可以描述從該備份中的之前快照起在該裝置中改變的文件。
[0056]在一個(gè)實(shí)施例中,可以基于多向握手來(lái)備份裝置的資源,以在該裝置和例如,MBS服務(wù)、MMCS服務(wù)、云廠商(或者存儲(chǔ)裝置)和/或其他適當(dāng)服務(wù)的服務(wù)之間傳送文件和/或該文件的元數(shù)據(jù)。MBS服務(wù)可以追蹤對(duì)MMCS服務(wù)的引用。MMCS服務(wù)可以追蹤例如,云廠商的引用,以允許該裝置動(dòng)態(tài)地將文件映射到該廠商所指定的結(jié)構(gòu)化數(shù)據(jù)。
[0057]在實(shí)施例的一個(gè)實(shí)例中,MMCS服務(wù)可以根據(jù)特定云廠商來(lái)將裝置中的文件識(shí)別為項(xiàng)目、指令該裝置將該項(xiàng)目分成數(shù)據(jù)塊、為每個(gè)數(shù)據(jù)塊生成唯一標(biāo)識(shí)符、并且通知該裝置是否該裝置需要將識(shí)別的數(shù)據(jù)塊轉(zhuǎn)發(fā)給云廠商以供備份。該裝置可以指令MBS或者與MBS通信,以便將信息放入為該裝置取得的快照中,并且/或者使該快照與該裝置一致。
[0058]因此,多個(gè)服務(wù)可以提供用于備份裝置的資源的間接層,以將這些間接層之一內(nèi)的操作隔離而不影響其他層。MBS服務(wù)可以追蹤要備份的資源的元數(shù)據(jù),確定哪些文件(或者項(xiàng)目)已經(jīng)存在而不需要備份。MMCS服務(wù)可以負(fù)責(zé)追蹤哪個(gè)云存儲(chǔ)廠商存儲(chǔ)實(shí)際備份數(shù)據(jù)、管理該云存儲(chǔ)的使用權(quán)限以創(chuàng)建使該裝置能夠?qū)浞輸?shù)據(jù)上載到該云存儲(chǔ)的票據(jù)(或者證書)、和/或執(zhí)行垃圾收集以刪除表示數(shù)據(jù)塊已不再被備份所引用的結(jié)構(gòu)。MBS服務(wù)可以與MMCS服務(wù)管理的云存儲(chǔ)隔離(或者不為其所知)。
[0059]在一個(gè)實(shí)施例中,在已經(jīng)成功地完成備份操作之后提交該快照之前,可以不將為備份操作而生成的快照標(biāo)記為一致的??梢詫⒐潭?或者設(shè)置)數(shù)量的最新快照(例如,對(duì)應(yīng)于三天的每日快照)高速緩存在裝置中,或者存儲(chǔ)在MBS服務(wù)中??煺諗?shù)量可能受節(jié)省存儲(chǔ)空間的限制。典型地,所存儲(chǔ)的第一個(gè)(或者最早的)快照可以是完全的快照,其描述用于對(duì)應(yīng)備份操作的該裝置的每個(gè)資源。剩余的快照可以是遞增快照,其描述相對(duì)于之前一個(gè)快照,接下來(lái)的 資源變化。
[0060]在備份操作的最后階段期間,在一個(gè)實(shí)施例中,可以將快照合并,以例如將最早的兩個(gè)或更多現(xiàn)有快照破壞為一個(gè)完全的快照。結(jié)果,在提交新的快照時(shí),所存儲(chǔ)的快照的總數(shù)被保持為固定數(shù)量。在某些實(shí)施例中,可以通知(或者指令)MBS服務(wù)刪除和/或合并現(xiàn)有快照,作為一個(gè)原子數(shù)據(jù)庫(kù)操作。作為響應(yīng),可以從MBS服務(wù)接收應(yīng)答以指示原子操作成功與否。
[0061 ] 在某些實(shí)施例中,可以查詢例如i!\ines?商店的備份源以識(shí)別對(duì)于重新下載不可用的資源(例如,應(yīng)用、所購(gòu)買的資產(chǎn)或其它資產(chǎn))列表。例如,備份源可以在裝置執(zhí)行內(nèi)容備份操作之前,確定(例如,基于來(lái)自裝置的請(qǐng)求)哪個(gè)與該裝置相關(guān)聯(lián)的所購(gòu)買的資產(chǎn)對(duì)于重新下載不可用??梢越?jīng)由備份服務(wù),例如MBS、MMCS等等來(lái)存檔或者備份對(duì)于從備份源重新下載不可用的資源列表的實(shí)際內(nèi)容。
[0062]在一個(gè)實(shí)施例中,裝置和MBS服務(wù)之間的通信提供用于管理備份(例如,創(chuàng)建/刪除)和快照(例如,創(chuàng)建/刪除/合并/更新)的客戶端服務(wù)器協(xié)議。可以以原子方式執(zhí)行對(duì)快照的更新,其中,并入(或者提交)對(duì)快照的所有改變,或者根本不更新快照。
[0063]在某些實(shí)施例中,經(jīng)由MBS服務(wù)管理快照的協(xié)議可以基于文件或資源的元數(shù)據(jù),以供高效和輕便的網(wǎng)絡(luò)通信。元數(shù)據(jù)可以描述關(guān)于裝置中的文件的信息,例如文件名、對(duì)文件的引用、尺寸、時(shí)間戳、所有權(quán)、保護(hù)設(shè)置、或者與該文件相關(guān)聯(lián)的其他適當(dāng)數(shù)據(jù),而不需要描述該文件的實(shí)際內(nèi)容。可以基于元數(shù)據(jù)描述確定哪些文件或者資產(chǎn)需要被包括在備份操作中??梢园凑赵獢?shù)據(jù)描述追蹤單獨(dú)的快照之間的增量或者差別。[0064]例如,裝置能夠使用最后修改時(shí)間值來(lái)保持高速緩存。請(qǐng)求和響應(yīng)可以包含用于訪問(wèn)、刪除、更新、修改、或者在資源上執(zhí)行其他操作的最后修改時(shí)間值。在一個(gè)實(shí)施例中,資源上的請(qǐng)求可以導(dǎo)致更新該資源的父母資源的最后修改時(shí)間值。例如,刪除帳戶的備份可以更新該帳戶的最后修改時(shí)間值。將文件增加到快照可以更新該快照的最后修改時(shí)間值以及該快照的父母?jìng)浞莺蛶簟?br>
[0065]管理快照的請(qǐng)求可以允許創(chuàng)建新的空的未提交快照、更新之前創(chuàng)建的快照、刪除快照和/或提交快照。如果請(qǐng)求快照的保留空間將會(huì)超過(guò)關(guān)聯(lián)帳戶的定額,則響應(yīng)可以指示不充足的存儲(chǔ)設(shè)備。該請(qǐng)求可以包括快照的屬性,例如裝置名和版本號(hào)。
[0066]在另一個(gè)實(shí)施例中,可以經(jīng)由請(qǐng)求從快照取回帶有它們的屬性的文件列表。MMCS認(rèn)證令牌可以請(qǐng)求從MMCS下載文件流。為快照管理文件的請(qǐng)求可以包括例如,創(chuàng)建、刪除、更新、標(biāo)記、或者其他的其他適當(dāng)?shù)牟僮?。如果快照中文件的大小?huì)超出所保留的空間,則響應(yīng)可以指示沖突。在某些實(shí)施例中,從快照刪除文件可以刪除由服務(wù)器存儲(chǔ)的底層數(shù)據(jù)庫(kù)記錄,并且被刪除文件可不再出現(xiàn)在用于該快照的文件列表中。替代地,將文件標(biāo)記為刪除的可以指示該文件存在于先前快照中,但是不再存在于裝置中。
[0067]裝置中文件的元數(shù)據(jù)可以對(duì)應(yīng)于一級(jí)的抽象,以確定例如,經(jīng)由MBS服務(wù)備份哪些文件和/或?yàn)閭浞莶僮鲃?chuàng)建哪些快照。對(duì)實(shí)際文件內(nèi)容的散列(例如,逐位散列塊)可以提供另一級(jí)的抽象,以例如,經(jīng)由MMCS服務(wù)識(shí)別需要上載哪些備份文件的內(nèi)容。在一個(gè)實(shí)施例中,相同內(nèi)容的單獨(dú)文件可以與不同的元數(shù)據(jù)描述相關(guān)聯(lián)。因此,基于內(nèi)容散列或者塊簽名的比較可以允許相同內(nèi)容但是具有不同元數(shù)據(jù)的文件共享備份存儲(chǔ)設(shè)備(例如,來(lái)自云)。
[0068]可以重新開(kāi)始和/或切換備份操作。例如,在網(wǎng)絡(luò)連接丟失時(shí),可以暫停備份操作。在重新創(chuàng)建網(wǎng)絡(luò)連接時(shí),可以重新開(kāi)始備份操作。在一個(gè)實(shí)施例中,可以基于由文件內(nèi)容所生成的簽名(例如,經(jīng)由MMCS服務(wù))確定為重新開(kāi)始的備份操作備份哪些文件。如果文件系統(tǒng)中的文件在備份操作暫停之前發(fā)生改變,則在重新開(kāi)始(或者接通)備份操作之前可以再次掃描文件系統(tǒng)。在某些實(shí)施例中,為了優(yōu)化,在掃描文件系統(tǒng)時(shí),在咨詢MMCS服務(wù)以確定該文件是否已經(jīng)改變之前,可以將文件的修改時(shí)間戳(或者值)與備份高速緩存中的相應(yīng)時(shí)間戳相比較。
[0069]可以基于同步錨(sync anchor)技術(shù),例如,裝置上的裝置錨和主機(jī)上的主機(jī)錨,來(lái)暫停(或者終止)和重新開(kāi)始裝置和源或主機(jī)之間的備份/恢復(fù)操作。同步錨技術(shù)的示例在Gordon J.Freedman 的、題為“Synchronization Methods and Systems”的授權(quán)U.S.專利N0.7,807, 403中進(jìn)行了描述,在本文中將其全部并入以作參考。
[0070]在一個(gè)實(shí)施例中,可以從動(dòng)態(tài)配置的多個(gè)源將資源分開(kāi)恢復(fù)到裝置中。例如,在被請(qǐng)求時(shí),可以從云中的一個(gè)或多個(gè)商店將例如,應(yīng)用、音樂(lè)、圖像、視頻、電視節(jié)目或其它媒體數(shù)據(jù)的所購(gòu)買的資產(chǎn)下載到裝置中。所購(gòu)買的資產(chǎn)也可以存儲(chǔ)在本地計(jì)算機(jī)(例如,該裝置的用戶所擁有)中,并且同樣準(zhǔn)備好恢復(fù)到該裝置。
[0071]在一個(gè)實(shí)施例中,在裝置正在從云(例如,商店)恢復(fù)所購(gòu)買的資產(chǎn)時(shí),在本地計(jì)算機(jī)的近距離范圍內(nèi)移動(dòng)時(shí),可以創(chuàng)建該裝置和本地計(jì)算機(jī)之間的連接(例如,有線或無(wú)線連接)。一檢測(cè)到連接和所購(gòu)買的資產(chǎn)在本地計(jì)算機(jī)中的可用性,該裝置可以動(dòng)態(tài)地將所購(gòu)買的資產(chǎn)的恢復(fù)源從云切換到本地計(jì)算機(jī),以完成對(duì)所購(gòu)買的資產(chǎn)的剩余部分的恢復(fù)(例如,經(jīng)由在本地計(jì)算機(jī)中托管的iTunes?.軟件)。結(jié)果,可以降低網(wǎng)絡(luò)連接花費(fèi)并且可以提聞恢復(fù)性能。
[0072]在某些實(shí)施例中,可以基于資源的元數(shù)據(jù)追蹤裝置資源從多個(gè)源,例如商店、本地計(jì)算機(jī)、或者云存儲(chǔ)的可用性。如果特定資源已經(jīng)存在于商店或者本地計(jì)算機(jī)中,可以從現(xiàn)有的源將該特定資源恢復(fù)到裝置中,而不需要備份該特定資源的實(shí)際內(nèi)容。例如,資源的元數(shù)據(jù)可以指示與該裝置相關(guān)聯(lián)的帳戶對(duì)所購(gòu)買的資源的所有權(quán)。可以容易地從可用資源,例如來(lái)自云的商店和/或本地計(jì)算機(jī)獲得所購(gòu)買的資源。結(jié)果,可以從該可用源重新加載所購(gòu)買的資源,而不需要備份。
[0073]在一個(gè)實(shí)施例中,可以將裝置中的資源,例如設(shè)置、帳戶數(shù)據(jù)、應(yīng)用數(shù)據(jù)、和/或所購(gòu)買的資產(chǎn)備份到本地計(jì)算機(jī)。也可以將部分資源,例如設(shè)置和/或應(yīng)用數(shù)據(jù)備份到云存儲(chǔ)??梢詫⒃撡Y源的某些部分,例如所購(gòu)買的資產(chǎn)保持在該云的商店中并且在其中是可用的。當(dāng)可用時(shí),可以從本地計(jì)算機(jī)恢復(fù)資源,而在本地計(jì)算機(jī)沒(méi)有連接到裝置或者未能在本地計(jì)算機(jī)中定位資源時(shí),可以從云存儲(chǔ)和/或商店恢復(fù)資源??梢圆挥蓚浞莶僮鱽?lái)備份可以經(jīng)由同步操作而與中心服務(wù)同步的某些資產(chǎn),例如,電子郵件、日程表、或者其他適當(dāng)?shù)馁Y源。
[0074]在某些實(shí)施例中,元數(shù)據(jù)服務(wù),例如MBS服務(wù),在為該裝置提供用于備份操作的認(rèn)證令牌時(shí),可以選擇裝置中的哪些資源被允許進(jìn)行備份。例如,可以過(guò)濾某些第三方應(yīng)用和/或數(shù)據(jù),并且不允許其備份。在一個(gè)實(shí)施例中,從備份過(guò)濾的數(shù)據(jù)可以包括由第三方應(yīng)用聲明的不需要進(jìn)行備份的目錄或者文件,例如,可以重新生成的高速緩存的數(shù)據(jù)或者索弓I。替代地,可以根據(jù)對(duì)裝置的關(guān)聯(lián)賬戶施加的備份數(shù)據(jù)的總大小的定額限制來(lái)識(shí)別要備份的資源。
[0075]在一個(gè)實(shí)施例中,可以針對(duì)多個(gè)源(例如,云存儲(chǔ)、本地計(jì)算機(jī)、商店等)來(lái)追蹤是否已經(jīng)為裝置恢復(fù)了所有資源,其中,從多個(gè)源恢復(fù)不同的資源或某一資源的不同部分。例如,運(yùn)行在與該裝置通信的本地計(jì)算機(jī)中的iTunes?'可以確定存儲(chǔ)在云中但未存儲(chǔ)在該本地計(jì)算機(jī)中的特定資源還未被恢復(fù)到該裝置??梢越?jīng)由該本地計(jì)算機(jī)為該裝置取回該特定資源,以完成恢復(fù)操作。
[0076]舉例來(lái)說(shuō),可以從賬戶的云備份恢復(fù)為與用戶相關(guān)聯(lián)的該賬戶而激活的新裝置,例如新的電話。裝置可以利用備份服務(wù),例如具有識(shí)別該賬戶和該裝置的標(biāo)識(shí)符的MBS服務(wù)來(lái)啟動(dòng)恢復(fù)操作。因此,可以用例如MBS服務(wù)確定對(duì)要恢復(fù)的資源的描述??梢远ㄎ?例如,經(jīng)由配置、動(dòng)態(tài)地發(fā)現(xiàn)、或者從所連接的服務(wù)處獲得等等)云存儲(chǔ)來(lái)恢復(fù)所確定的資源。替代地,如果發(fā)現(xiàn)運(yùn)行對(duì)應(yīng)的備份服務(wù)應(yīng)用(例如,il\ines?)的本地計(jì)算機(jī)是可用的(例如,在該裝置的連接范圍之內(nèi)),則可以從本地計(jì)算機(jī)取回該資源而不需要訪問(wèn)遠(yuǎn)程云存儲(chǔ)。
[0077]可以在多個(gè)階段執(zhí)行裝置中的恢復(fù)操作,包括例如,模態(tài)恢復(fù)階段,后面是后臺(tái)恢復(fù)階段??梢栽谀B(tài)恢復(fù)階段期間,原子地(全部的主要文件被恢復(fù)或者完全不被恢復(fù))首先恢復(fù)主要文件或者信息,例如設(shè)置或者元數(shù)據(jù),以允許該裝置引導(dǎo)到工作狀況并且快速地變?yōu)橛脩艨捎玫?,而不需要等特完成剩余的恢?fù)操作。在模態(tài)恢復(fù)階段期間,該裝置可以在鋪設(shè)(lay down)文件系統(tǒng),并且不能可操作以接收用戶輸入。原子恢復(fù)可以確保裝置甚至在資源被完全恢復(fù)之前以一致的數(shù)據(jù)集運(yùn)行。[0078]隨后,在后臺(tái)恢復(fù)階段期間,可以將恢復(fù)裝置要求的剩余資源從可用的備份源,例如云存儲(chǔ)和/或本地計(jì)算機(jī)拉取到后臺(tái)。例如,相當(dāng)大的資源,例如媒體資產(chǎn)(例如,照片、視頻、音頻文件、等等)的實(shí)際內(nèi)容、第三方應(yīng)用數(shù)據(jù)、或者其他適當(dāng)?shù)馁Y源可以在該后臺(tái)恢復(fù)階段期間被拉取,而不影響該裝置的操作或者該用戶使用該裝置的至少某些功能或能力;例如,用戶能夠在后臺(tái)恢復(fù)階段發(fā)送文本消息或者瀏覽因特網(wǎng)或者撥打語(yǔ)音電話。
[0079]在一個(gè)實(shí)施例中,裝置可以與本地計(jì)算機(jī)(例如,運(yùn)行iUines?,應(yīng)用的iUines?-計(jì)算機(jī))同步(例如,經(jīng)由同步操作),以確保裝置上的某些內(nèi)容或資源(例如,音樂(lè)、應(yīng)用、播客、視頻、鈴音、照片、短信、電子郵件賬戶設(shè)置、聯(lián)系人、日程表和書簽)與本地計(jì)算機(jī)中的對(duì)應(yīng)資源的用戶所選子集相匹配。在同步時(shí),可以將來(lái)自裝置的應(yīng)用數(shù)據(jù)備份到本地計(jì)算機(jī)(例如,在mines?備份中)。為了同步,可以將例如,應(yīng)用或媒體內(nèi)容的所購(gòu)買的資產(chǎn)從本地計(jì)算機(jī)下載到該裝置(例如,經(jīng)由iTunes?程序庫(kù))。
[0080]在一個(gè)實(shí)施例中,可以在裝置的后臺(tái)恢復(fù)(階段)期間(或之后)執(zhí)行裝置和本地計(jì)算機(jī)之間的同步操作。該裝置和il\ines--計(jì)算機(jī)之間的通信或連接在后臺(tái)恢復(fù)之前可能不可用,因?yàn)樵撗b置還沒(méi)有被引導(dǎo)到工作狀況。同步操作可能能夠?qū)①Y產(chǎn)(例如,所購(gòu)買的媒體和/或應(yīng)用)從本地計(jì)算機(jī)(例如,作為iTunes?:程序庫(kù))恢復(fù)到該裝置。
[0081]可選地或者另外地,同步操作可以將應(yīng)用數(shù)據(jù)或者用戶數(shù)據(jù)從本地計(jì)算機(jī)(例如,作為iTunes?"務(wù)份)恢復(fù)到裝置。在一個(gè)實(shí)施例中,同步操作可以包括iTunes--計(jì)算機(jī)和該裝置之間的比較,以識(shí)別該裝置要與之同步的資源列表。恢復(fù)操作和同步操作可以依靠通用組件,例如運(yùn)行在裝置上的ATC(空中交通管制員(Air Traffic Controller))代碼,以從適當(dāng)?shù)脑蠢?shí)際內(nèi)容或位數(shù)據(jù)。在該裝置與iTunes?.裝置耦合或者連接時(shí),ATC可以自動(dòng)地注意到系統(tǒng)事件,例如il\ines?同步(或者配對(duì))事件,以為了同步操作和/或恢復(fù)操作傳送來(lái)自iTunes?裝置的資源。
[0082]在一個(gè)實(shí)施例中,裝置中的恢復(fù)操作可以檢查所連接的備份服務(wù)(例如,rnmes?計(jì)算機(jī)或者M(jìn)BS服務(wù)),以確定恢復(fù)資源的最佳源??梢詾閱为?dú)的資源或資產(chǎn)識(shí)別不同的源,例如云中的備份存儲(chǔ)設(shè)備(或云備份)、本地計(jì)算機(jī)中的備份(例如,iTunes?^備份)、云中的商店(例如,illiiies?商店)、本地計(jì)算機(jī)中的本地程序庫(kù)(例如,il\ines?程序庫(kù))??梢詮囊粋€(gè)源恢復(fù)數(shù)據(jù)的一個(gè)種類,而從不同的源恢復(fù)數(shù)據(jù)的另一個(gè)種類。例如,可以從云存儲(chǔ)恢復(fù)照片、從商店恢復(fù)音樂(lè)、從本地程序庫(kù)恢復(fù)應(yīng)用、從云存儲(chǔ)恢復(fù)應(yīng)用數(shù)據(jù)等。典型地,相比于來(lái)自云的源,本地計(jì)算機(jī)的源更加優(yōu)選,由于例如,連接成本更加低廉和/或更高的可用網(wǎng)絡(luò)帶寬。
[0083]在某些實(shí)施例中,可以在多個(gè)階段中執(zhí)行同步操作,例如交易階段,后面是盡力服務(wù)階段。在交易階段期間,可以識(shí)別元數(shù)據(jù)來(lái)描述資源列表,以在裝置和本地計(jì)算機(jī)之間同步??梢砸越灰椎姆绞?例如,全要或全不要)從本地計(jì)算機(jī)接收元數(shù)據(jù)。在盡力服務(wù)階段期間,可以將來(lái)自動(dòng)態(tài)確定的不同源的由元數(shù)據(jù)描述的資產(chǎn)與該裝置同步,所述確定考慮了例如,可用性、性能、成本和/或其他適當(dāng)?shù)囊蛩亍?br>
[0084]在某些實(shí)施例中,可以基于例如,與資源相關(guān)聯(lián)的元數(shù)據(jù)來(lái)動(dòng)態(tài)地識(shí)別用于恢復(fù)資源的不同的源。同步操作可以從來(lái)自本地耦合或連接的計(jì)算機(jī)(例如,rnines--計(jì)算機(jī))推送與裝置同步所要求的資源列表的描述。可以從云中的商店或者從本地計(jì)算機(jī)(經(jīng)由iTunes?程序庫(kù))傳送例如,歌曲、視頻、電影、應(yīng)用等的所購(gòu)買的資產(chǎn)??梢詮脑拼鎯?chǔ)或者本地計(jì)算機(jī)(例如,經(jīng)由il\mes?備份)恢復(fù)并非從商店購(gòu)買或者獲得的媒體,例如用戶拍攝的照片或者從其他裝置下載的視頻。
[0085]可以在多個(gè)階段的恢復(fù)中的后來(lái)階段(例如,在第一階段或模態(tài)階段之后)有利地應(yīng)用對(duì)恢復(fù)順序的動(dòng)態(tài)配置,以用于改善裝置的效率和/或可用性。例如,可以在恢復(fù)的開(kāi)始(或第一)階段識(shí)別用于恢復(fù)的資源或資產(chǎn)列表。在恢復(fù)的后來(lái)階段期間,例如用于實(shí)際數(shù)據(jù)傳送的后臺(tái)階段,選擇接下來(lái)將恢復(fù)哪些所識(shí)別的資源可以遵循即時(shí)動(dòng)態(tài)確定的順序或優(yōu)先級(jí)。可以同時(shí)傳送多個(gè)用于恢復(fù)的資源,例如經(jīng)由多個(gè)線程或處理。
[0086]取決于裝置的工作情況和/或?yàn)檫€有待于恢復(fù)或者正被恢復(fù)的資源所配置的各種啟發(fā)式的標(biāo)準(zhǔn),可以在運(yùn)行期間改變選擇將傳送的下一(一些)資源的順序。例如,較小尺寸和/或需要較少時(shí)間傳送(例如,相關(guān)源具有可用的高帶寬)的資源可以排名較高(例如,被選為要恢復(fù)的下一資源的概率較高)。
[0087]在一個(gè)實(shí)施例中,可以追蹤對(duì)裝置的使用,以確定應(yīng)當(dāng)如何排序或優(yōu)先考慮用于恢復(fù)的資源,以增加該裝置的可用性。例如,可以根據(jù)相關(guān)聯(lián)的應(yīng)用來(lái)排序資源。在某些實(shí)施例中,可以為最近使用的應(yīng)用的資源指派比較早使用的應(yīng)用的資源更高的優(yōu)先級(jí)。當(dāng)前使用的應(yīng)用(例如,電影或者視頻播放)可以被認(rèn)為是最近使用的應(yīng)用,以預(yù)期與該應(yīng)用相關(guān)聯(lián)的應(yīng)用數(shù)據(jù)不久后將被用戶訪問(wèn)。
[0088]在某些實(shí)施例中,可以根據(jù)與資源相關(guān)聯(lián)的圖標(biāo)的顯示順序給予要恢復(fù)的該資源優(yōu)先級(jí)。例如,根據(jù)顯示順序?qū)⑴c資源相關(guān)聯(lián)的應(yīng)用圖標(biāo)和/或媒體圖標(biāo)呈現(xiàn)在裝置的顯示器上。顯示順序可以反映由該裝置的用戶隱含指定的優(yōu)先級(jí)??蛇x地或者另外地,可以接收用戶輸入(例如,輕敲顯示屏)來(lái)動(dòng)態(tài)地控制資源應(yīng)當(dāng)被如何傳送(例如,暫停、重新開(kāi)始、開(kāi)始等等)。
[0089]在一個(gè)實(shí)施例中,可以按照基于啟發(fā)性配置的特征和/或動(dòng)態(tài)識(shí)別的因素而指派的順序構(gòu)建要恢復(fù)資源的列表。特征可以包括關(guān)于資源的規(guī)范信息,例如大小、類型、位置、和/或與該資源相關(guān)聯(lián)的其他適當(dāng)?shù)脑獢?shù)據(jù)。例如,一種所購(gòu)買的資產(chǎn)的資源可以比一種用戶所創(chuàng)建內(nèi)容的另一資源具有更高的恢復(fù)優(yōu)先級(jí)。資源的位置可以指示該資源是在那里為裝置而生成或者所購(gòu)買的。與靠近裝置的當(dāng)前位置的位置相關(guān)聯(lián)的資源可以具有比遠(yuǎn)離該裝置的另一位置上的另一資源更高的優(yōu)先級(jí)。
[0090]基于裝置中不斷改變的工作環(huán)境或者使用模式,可以即時(shí)地確定動(dòng)態(tài)因素。例如,動(dòng)態(tài)因素可以包括可用的(恢復(fù))源(例如,云存儲(chǔ)、商店、本地計(jì)算機(jī)等等)、應(yīng)用的使用歷史、與應(yīng)用圖標(biāo)相關(guān)聯(lián)的顯示順序、用戶輸入或其它適當(dāng)?shù)囊蛩亍5湫偷?,可以從可用源傳送而?lái)的資源可以比未從當(dāng)前可用的源發(fā)現(xiàn)的另一資源具有更高的優(yōu)先級(jí)。資源的使用歷史可以包括,例如頻率、上次訪問(wèn)該資源(例如,經(jīng)由應(yīng)用)、使用計(jì)數(shù)、和/或其他使用統(tǒng)計(jì)。具有較高使用頻率的資源可以排名更高。
[0091]在一個(gè)實(shí)施例中,在多個(gè)階段恢復(fù)的第一階段(例如,模態(tài)階段)可以構(gòu)建要恢復(fù)資源的初始列表。可以將啟發(fā)式地確定的特征和/或動(dòng)態(tài)因素表示為所指派的啟發(fā)式權(quán)重,并且將它們結(jié)合以例如,根據(jù)對(duì)于每個(gè)資源的單獨(dú)的結(jié)合啟發(fā)式權(quán)重,確定資源列表之中的恢復(fù)順序。在恢復(fù)的后來(lái)階段期間,可以選擇具有最高權(quán)重的(多個(gè))資源接下來(lái)進(jìn)行下載。
[0092]例如,可以將要恢復(fù)資源的排序列表轉(zhuǎn)送到能夠從至少一個(gè)恢復(fù)源(例如,云存儲(chǔ)、商店、和/或il\ines--計(jì)算機(jī))恢復(fù)資源的恢復(fù)處理。該恢復(fù)處理可以追蹤恢復(fù)狀態(tài)、監(jiān)視環(huán)境(例如,網(wǎng)絡(luò)連接、電源狀態(tài))的改變、檢測(cè)用戶輸入等等,以改變要恢復(fù)資源的順序??梢灾袛?例如,經(jīng)由用戶輸入和/或環(huán)境的改變)該恢復(fù),來(lái)重新構(gòu)建具有新順序的新資源列表,以用該新構(gòu)建的列表重新開(kāi)始恢復(fù)。
[0093]在一個(gè)實(shí)施例中,可以根據(jù)為恢復(fù)而識(shí)別的資源的當(dāng)前排序列表來(lái)保持來(lái)自特定源(例如,iTunes--計(jì)算機(jī)或者云存儲(chǔ)等等)的要恢復(fù)資源的隊(duì)列??梢詾椴煌脑刺峁﹩为?dú)的隊(duì)列。在某些實(shí)施例中,當(dāng)在運(yùn)行期間動(dòng)態(tài)地構(gòu)建資源列表時(shí)(例如,由于用戶中斷、選擇、和/或其他系統(tǒng)事件等等),可以根據(jù)新創(chuàng)建的資源列表來(lái)更新(例如,通過(guò)將特定資源移動(dòng)到隊(duì)列的頂部)每個(gè)隊(duì)列,以繼續(xù)恢復(fù)。
[0094]在某些實(shí)施例中,可以根據(jù)裝置是如何使用資源的,從而以協(xié)作的方式來(lái)恢復(fù)資源的實(shí)際內(nèi)容。例如,資源可以沙盒式布置(sandbox)在應(yīng)用周圍,以允許在恢復(fù)裝置時(shí)該應(yīng)用迅速變得可訪問(wèn)??梢詫?yīng)用程序和相關(guān)聯(lián)的應(yīng)用數(shù)據(jù)(或設(shè)置)沙盒式布置以被一起恢復(fù)。
[0095]資源對(duì)于應(yīng)用,例如可執(zhí)行程序、程序庫(kù)、應(yīng)用設(shè)置、應(yīng)用數(shù)據(jù)(或者用戶數(shù)據(jù),例如由用戶經(jīng)由該應(yīng)用創(chuàng)建的文檔)等等的依賴性可以保持在沙盒內(nèi)部,以識(shí)別將這些資源恢復(fù)到裝置的順序。在恢復(fù)所有沙盒式布置的資源之前,可使該應(yīng)用對(duì)該裝置的用戶可用。例如,運(yùn)行音樂(lè)播放器應(yīng)用可能需要在音樂(lè)內(nèi)容文件被傳送到該裝置之前恢復(fù)播放器設(shè)置。
[0096]在一個(gè)實(shí)施例中,多個(gè)階段的恢復(fù)可以與用戶界面協(xié)調(diào),以允許用戶在恢復(fù)(例如,在完全恢復(fù)裝置之前)期間與裝置交互。可以為實(shí)時(shí)的更新?tīng)顟B(tài)或者恢復(fù)的每個(gè)階段的進(jìn)度呈現(xiàn)位置標(biāo)識(shí)符。可以根據(jù)經(jīng)由用戶界面接收的輸入動(dòng)態(tài)地重新排序資源的實(shí)際傳送。
[0097]例如,可以恢復(fù)應(yīng)用(例如,照片瀏覽器、視頻播放器、音樂(lè)播放器等等)和相關(guān)聯(lián)的應(yīng)用設(shè)置來(lái)將對(duì)應(yīng)的應(yīng)用圖標(biāo)呈現(xiàn)在用戶界面上,以指示該應(yīng)用是可用的。在檢測(cè)到用戶與該應(yīng)用的交互時(shí)(例如,看照片),可以將較高的優(yōu)先級(jí)指派給與相關(guān)聯(lián)的應(yīng)用數(shù)據(jù)(例如,照片)有關(guān)的資源,以動(dòng)態(tài)地改變恢復(fù)順序。
[0098]在一個(gè)實(shí)施例中,在正在恢復(fù)裝置時(shí),可以由應(yīng)用追蹤該應(yīng)用的恢復(fù)狀態(tài)。該應(yīng)用的恢復(fù)狀態(tài)可以例如,經(jīng)由“旋轉(zhuǎn)”類型的用戶界面元素、例如溫度計(jì)風(fēng)格的進(jìn)度指示器的表示、或者其他適當(dāng)?shù)挠脩艚缑嬖貋?lái)呈現(xiàn)??梢越?jīng)由用戶界面指示用于該應(yīng)用的資產(chǎn)是否可用。
[0099]在某些實(shí)施例中,呈現(xiàn)恢復(fù)狀態(tài)的用戶界面元素可以包括復(fù)合進(jìn)度指示器,其基于影響恢復(fù)的總體速度的綜合因素。可以根據(jù)例如,應(yīng)用的大小、應(yīng)用從該應(yīng)用的源的下載速度、用戶數(shù)據(jù)大小、用戶數(shù)據(jù)從該用戶數(shù)據(jù)源的下載速度、安裝時(shí)間、媒體內(nèi)容的解密時(shí)間(例如,音樂(lè)、加密數(shù)據(jù)等)和/或其它適當(dāng)?shù)囊蛩赜?jì)算這些因素。可以將該復(fù)合進(jìn)度指示器呈現(xiàn)或顯示為直觀獨(dú)特的溫度計(jì)風(fēng)格指示器、餅圖風(fēng)格指示器或者其他適當(dāng)?shù)挠脩艚缑骘L(fēng)格指示器,取決于例如,媒體類型和/或環(huán)境(例如,彈簧板(springboard)環(huán)境、iPod?應(yīng)用,等等)。
[0100]在某些實(shí)施例中,取決于恢復(fù)的狀態(tài),可以呈現(xiàn)(或者啟動(dòng))不同的用戶界面部件/功能。例如,已經(jīng)被識(shí)別為要恢復(fù)(例如,處于恢復(fù)的第一階段)然而還未被恢復(fù)的資產(chǎn)可以是被灰色化的,例如,以禁止用戶激活用于該資產(chǎn)的應(yīng)用。然而,某些用戶界面操作,例如,重新排序、重命名和/或刪除,可以允許用于還未被恢復(fù)的資產(chǎn)。在某些實(shí)施例中,恢復(fù)的狀態(tài)可以包括資產(chǎn)的可用性或者不可用性。源接口模塊可以確定將從源(例如,rnines?商店、資產(chǎn)商店或者其他適當(dāng)?shù)拇鎯?chǔ))恢復(fù)的資產(chǎn)當(dāng)前是否不可用,例如,不存在于該源中和/或與不正確的訪問(wèn)憑證相關(guān)聯(lián)(例如,包括在該資產(chǎn)的元數(shù)據(jù)中的密碼)。
[0101]在一個(gè)實(shí)施例中,可以將為恢復(fù)所識(shí)別的資源或資產(chǎn)列表保持在例如,用于同步和恢復(fù)操作兩者的ATC模塊或者通用模塊中,以動(dòng)態(tài)地改變恢復(fù)順序和/或報(bào)告恢復(fù)進(jìn)度。應(yīng)用可以經(jīng)由插件模塊(例如,程序庫(kù))和/或API(應(yīng)用編程接口)訪問(wèn)恢復(fù)進(jìn)度。因此,應(yīng)用可以經(jīng)由用戶界面操作,例如,灰化圖標(biāo)、旋轉(zhuǎn)圖標(biāo)、移動(dòng)進(jìn)度條、或者其他適當(dāng)?shù)挠脩艚缑孀兓?,提供?duì)恢復(fù)進(jìn)度的實(shí)時(shí)更新。例如,用戶界面可以呈現(xiàn)對(duì)應(yīng)用的恢復(fù)進(jìn)度,以指示已經(jīng)為這個(gè)應(yīng)用恢復(fù)了資產(chǎn)的20%或者其他百分比。
[0102]應(yīng)用可以中斷或者改變?cè)诤笈_(tái)階段工作的恢復(fù)操作。例如,用戶可以為從商店購(gòu)買的媒體資產(chǎn)(例如,歌曲或者視頻)輕敲應(yīng)用。作為響應(yīng),該應(yīng)用可以例如,經(jīng)由插件模塊或者API,請(qǐng)求對(duì)資產(chǎn)傳送的重新優(yōu)先排序,例如經(jīng)由ATC模塊??梢灾噶钣糜谠谠浦械馁Y產(chǎn)商店的源接口模塊(例如,itunestored)在被用戶輕敲時(shí),將該媒體資產(chǎn)放置在相關(guān)聯(lián)的隊(duì)列的頂部,以重新開(kāi)始恢復(fù)或者傳送。
[0103]在一個(gè)實(shí)施例中,裝置可以在備份操作期間監(jiān)視電源狀態(tài),以保持可靠的用戶體驗(yàn)。在檢測(cè)到與電源變化有關(guān)的系統(tǒng)事件時(shí),該裝置可以終止或者取消處理(例如,在后臺(tái)中),以用透明的方式在未被用戶注意到的情況下備份(或恢復(fù))資源。系統(tǒng)事件可能是由例如,針對(duì)裝置拔去或者斷開(kāi)連接電源線、感應(yīng)襯墊、或者其他電源傳輸機(jī)制而引起的。
[0104]在某些實(shí)施例中,可以基于監(jiān)視該裝置是否插入到具有足夠功率的電源(例如,如果電源不具有足夠的功率則停止備份)而生成事件。替代地或者可選地,事件可以基于裝置的屏幕是開(kāi)啟的還是關(guān)閉的,和/或該裝置的網(wǎng)絡(luò)連接的狀態(tài)。例如,如果屏幕開(kāi)啟(例如,為了不論什么理由),可以取消對(duì)該裝置的自動(dòng)備份,以避免影響用戶界面性能。如果事件指示該裝置不再連接到WiFi網(wǎng)絡(luò),例如,可以停止自動(dòng)備份,以避免經(jīng)由蜂窩電話網(wǎng)絡(luò)使用蜂窩數(shù)據(jù)。
[0105]在某些實(shí)施例中,可以發(fā)出警報(bào)以為用戶提供是否選擇繼續(xù)備份/恢復(fù)的選擇。裝置可以在工作狀況下保持功率,例如,以節(jié)省電池電能,以便不會(huì)發(fā)生由用戶不知道的、后臺(tái)中的備份/恢復(fù)操作而引起的功率耗盡。
[0106]在一個(gè)實(shí)施例中,可以在裝置中保持備份/恢復(fù)狀態(tài),以允許例如在外部電源線插回來(lái)的時(shí)候重新開(kāi)始備份/恢復(fù)操作??梢灾匦麻_(kāi)始備份操作,以重新掃描該裝置以識(shí)別哪個(gè)資源已經(jīng)被備份,而不需要在該資源上執(zhí)行不必要的備份操作,所述資源在例如未插外部電源線之前就已經(jīng)被備份了。
[0107]圖1是圖示根據(jù)本文描述的一個(gè)實(shí)施例的、用于多階段多源備份和恢復(fù)的網(wǎng)絡(luò)系統(tǒng)的一個(gè)實(shí)施例的方框圖。網(wǎng)絡(luò)系統(tǒng)100可以包括動(dòng)態(tài)配置的網(wǎng)絡(luò)109,其連接服務(wù)101、103、105、107、117和裝置111、113。例如,客戶端裝置113,例如電話裝置,可以偶發(fā)地與資產(chǎn)商店服務(wù)107相連接,這取決于裝置113位于哪里。裝置113可以本地地耦合于或者直接連接于(例如,經(jīng)由電線)本地備份裝置111,其可以是能夠訪問(wèn)海量存儲(chǔ)器,例如硬盤、固體器件、閃存或者其他存儲(chǔ)服務(wù)的臺(tái)式計(jì)算機(jī)。在一個(gè)實(shí)施例中,客戶端裝置113可以經(jīng)由實(shí)時(shí)識(shí)別的多個(gè)源(例如,服務(wù)器、服務(wù)或者本地裝置)101、103、105、107、111、117來(lái)備份和/或恢復(fù)。在被請(qǐng)求時(shí),備份服務(wù)或者源,例如服務(wù)101、103、105、107、111、117或者其他適當(dāng)?shù)膬?nèi)容服務(wù)能夠?yàn)檠b置,例如,裝置113恢復(fù)資產(chǎn)或者內(nèi)容,而不需要裝置備份資產(chǎn)。
[0108]圖2是圖示根據(jù)本文描述的一個(gè)實(shí)施例的、用于多階段多源備份和恢復(fù)的示范性系統(tǒng)的方框圖。在一個(gè)實(shí)施例中,系統(tǒng)200可以基于圖1的客戶端裝置113,運(yùn)行操作環(huán)境201,其可以是基于蘋果公司的iOS?.操作系統(tǒng)或者其他適當(dāng)?shù)牟僮飨到y(tǒng)。
[0109]系統(tǒng)201可以包括備份/恢復(fù)管理模塊207,以經(jīng)由網(wǎng)絡(luò)接口模塊203利用所選源來(lái)備份和恢復(fù)裝置的資源。該資源可以包括,例如,文件系統(tǒng)217中的文件。模塊207可以根據(jù)用戶可配置安排,例如,每天、每周、和/或根據(jù)來(lái)自經(jīng)由遠(yuǎn)程裝置和/或用戶輸入而接收的請(qǐng)求而按需啟動(dòng)備份/恢復(fù)操作。在某些實(shí)施例中,模塊207可以響應(yīng)于經(jīng)由系統(tǒng)事件處理程序模塊205監(jiān)視的系統(tǒng)事件,例如,外部電源的丟失(例如,在未插外部電源線時(shí))中斷或者重新開(kāi)始備份/恢復(fù)操作。
[0110]本地?cái)?shù)據(jù)庫(kù)209可以高速緩存或者存儲(chǔ)一個(gè)或多個(gè)為裝置備份的快照??煺湛梢员硎驹谀承r(shí)間點(diǎn)備份的裝置的資源狀態(tài)。備份/恢復(fù)操作可以允許系統(tǒng)201恢復(fù)到與快照對(duì)應(yīng)的之前狀態(tài)。
[0111]在一個(gè)實(shí)施例中,一個(gè)或多個(gè)應(yīng)用,例如應(yīng)用213可以經(jīng)由例如,狀態(tài)接口模塊221與備份/恢復(fù)管理模塊207進(jìn)行通信。應(yīng)用213可以像插件一樣或者經(jīng)由API接口與狀態(tài)接口模塊221相鏈接。在一個(gè)實(shí)施例中,應(yīng)用213可以訪問(wèn)相關(guān)聯(lián)的資源的備份/恢復(fù)狀態(tài),以經(jīng)由用戶界面模塊225呈現(xiàn)進(jìn)度。
[0112]替代地,應(yīng)用213可以將經(jīng)由用戶界面模塊225接收的用戶請(qǐng)求,例如用戶輕敲動(dòng)作中繼到模塊207,以實(shí)時(shí)地重新排序或者改變備份/恢復(fù)操作??梢越?jīng)由基于觸摸屏裝置的、基于鼠標(biāo)的、基于指針的、基于語(yǔ)音的、或者其他適當(dāng)?shù)挠脩艚缑婕夹g(shù)接收用戶請(qǐng)求。在一個(gè)實(shí)施例中,應(yīng)用213的使用歷史,例如使用計(jì)數(shù)、使用頻率、使用時(shí)間、或者其他適當(dāng)?shù)氖褂媒y(tǒng)計(jì)量等等可以被記錄在使用歷史211中。模塊207可以基于由使用歷史211所收集的信息來(lái)動(dòng)態(tài)地配置備份/恢復(fù)操作。
[0113]圖3是圖示根據(jù)本文描述的一個(gè)實(shí)施例的、用于在使用多個(gè)源的多階段中管理備份和恢復(fù)的示范性系統(tǒng)的方框圖。系統(tǒng)300可以基于包括備份/恢復(fù)管理模塊207的圖2的系統(tǒng)200。在一個(gè)實(shí)施例中,系統(tǒng)300可以包括服務(wù)框架309,其能夠發(fā)現(xiàn)和/或?qū)佣鄠€(gè)備份/恢復(fù)源,以用于執(zhí)行備份/恢復(fù)。
[0114]例如,商店接口模塊301(例如,以itunestored處理運(yùn)行)可以與可用的商店通信,例如圖1的商店107,用于傳送所購(gòu)買的資源。云接口模塊307可以與云存儲(chǔ)通信,例如圖1的云備份服務(wù)101,以傳送用于備份/恢復(fù)裝置中的資源的實(shí)際內(nèi)容。本地裝置接口模塊305 (例如,以ituned處理運(yùn)行)可以通過(guò)與運(yùn)行在本地計(jì)算機(jī)中的對(duì)應(yīng)服務(wù),例如在圖1的本地備份裝置111中托管的11\11168?交換消息來(lái)備份、恢復(fù)、和/或同步資源。在一個(gè)實(shí)施例中,接口模塊301、305、307可以共享公用接口引擎303,例如ATC引擎或者模塊,其能夠在比接口模塊301、305、307更低的抽象級(jí)上執(zhí)行數(shù)據(jù)傳送。
[0115]多階段處理程序模塊311 (例如,以備份處理運(yùn)行)可以管理備份/恢復(fù)操作的不同階段。多階段處理程序模塊311可以利用備份服務(wù)105啟動(dòng)(例如,根據(jù)所配置的安排)備份操作,以識(shí)別對(duì)待備份資源的快照的描述。在一個(gè)實(shí)施例中,多階段處理程序模塊311可以識(shí)別在模態(tài)階段(或第一階段)和/或后來(lái)的階段(例如,后臺(tái)階段)將恢復(fù)哪些資源,所述后來(lái)的階段可能是較少模態(tài)的(例如,允許與用戶交互)。
[0116]在某些實(shí)施例中,資源隊(duì)列處理程序模塊313可以根據(jù)例如,所配置的啟發(fā)式和/或用戶請(qǐng)求,動(dòng)態(tài)地重新排序用于恢復(fù)和/或備份的資源??梢詫①Y源或者資產(chǎn)傳送到/傳送自根據(jù)服務(wù)框架309的單獨(dú)隊(duì)列而排序的不同源。在一個(gè)實(shí)施例中,響應(yīng)于用戶輕敲動(dòng)作或者在裝置的恢復(fù)(例如,在后臺(tái)中)期間從應(yīng)用接收的其他Π動(dòng)作(例如,鼠標(biāo)點(diǎn)擊、聲音命令、鍵盤選擇、手勢(shì)等等),資源隊(duì)列處理程序模塊313可以重新調(diào)整有利于該應(yīng)用的還有待于恢復(fù)的資源的優(yōu)先級(jí)。資源隊(duì)列處理程序模塊313可以指令服務(wù)框架309更新隊(duì)列,以允許以較高的優(yōu)先級(jí),例如以下載與該應(yīng)用相關(guān)聯(lián)的資源。
[0117]圖4是圖示根據(jù)本文描述的一個(gè)實(shí)施例的、為裝置執(zhí)行遞增備份操作的處理的一個(gè)實(shí)施例的流程圖。示范性的處理400可以由處理邏輯執(zhí)行,該處理邏輯可以包括硬件(電路、專用邏輯等等)、軟件(例如,運(yùn)行在專用機(jī)器上)、或者這兩者的組合。例如處理400可以由圖2的系統(tǒng)200的某些部件執(zhí)行。
[0118]在一個(gè)實(shí)施例中,處理400的處理邏輯可以執(zhí)行包括至少兩個(gè)步驟的備份操作。處理400的處理邏輯可以將元數(shù)據(jù)傳送到備份服務(wù)(例如,MBS)以從該備份服務(wù)接收令牌,從而以內(nèi)容服務(wù)(例如,MMCS)進(jìn)行認(rèn)證。隨后處理400的處理邏輯可以使用令牌將實(shí)際內(nèi)容上載到該內(nèi)容服務(wù)??梢砸哉J(rèn)證令牌更新用于備份服務(wù)中文件的元數(shù)據(jù)。
[0119]在塊401,處理400的處理邏輯可以在備份管理服務(wù)器(MBS)中定位對(duì)應(yīng)于裝置的備份。如果沒(méi)有發(fā)現(xiàn)對(duì)應(yīng)于該裝置的現(xiàn)有備份,則該備份可以是新創(chuàng)建的。在塊403,處理400的處理邏輯可以重新構(gòu)建快照高速緩存(或者清單(manifest)高速緩存)以與備份管理服務(wù)器同步。在塊405,處理400的處理邏輯可以識(shí)別之前備份操作的快照。所識(shí)別的快照可以是未提交的快照或者新創(chuàng)建的快照。所識(shí)別的快照可以包括描述文件系統(tǒng)中的文件的元數(shù)據(jù)。
[0120]在塊407,處理400的處理邏輯可以針對(duì)文件系統(tǒng)的改變(例如,新文件、刪除的文件、修改的文件等等)而例如,經(jīng)由與所識(shí)別的快照的比較來(lái)掃描文件系統(tǒng)。在塊419,處理400的處理邏輯可以經(jīng)由與備份管理服務(wù)器、備份服務(wù)管理服務(wù)器(例如,MMCS)和存儲(chǔ)設(shè)備廠商服務(wù)器(例如,Amazon、S3、或者云存儲(chǔ)等等)的協(xié)調(diào)交易而執(zhí)行備份操作。在塊411,處理400的處理邏輯可以將之前創(chuàng)建的快照合并(例如,刪除舊的快照和/或用多個(gè)遞增快照保持對(duì)應(yīng)于一整組文件的完整的快照,每個(gè)遞增快照都對(duì)應(yīng)于從之前快照起在一組文件上的遞增改變)。
[0121]圖5是圖示根據(jù)本文描述的一個(gè)實(shí)施例的、執(zhí)行裝置中的遞增恢復(fù)操作的處理的一個(gè)實(shí)施例的流程圖。示范性的處理500可以由處理邏輯執(zhí)行,該處理邏輯可以包括硬件(電路、專用邏輯等等)、軟件(例如,運(yùn)行在專用機(jī)器上)、或者這兩者的組合。例如處理500可以由圖2的系統(tǒng)200的某些部件執(zhí)行。
[0122]在塊501,處理500的處理邏輯可以將系統(tǒng)文件從云備份模態(tài)地恢復(fù)到裝置(例如,iOS?裝置),而不響應(yīng)來(lái)自用戶的輸入。在模態(tài)恢復(fù)期間,裝置的操作系統(tǒng)是可用的并且在運(yùn)行。在塊503,處理500的處理邏輯可以利用所恢復(fù)的系統(tǒng)文件為用戶將該裝置重新啟動(dòng)到工作狀況。
[0123]在塊505,處理500的處理邏輯可以在后臺(tái)中將文件恢復(fù)到該裝置。可以從云商店(例如,iTunes?商店)下載(例如,購(gòu)買或者傳送的)資產(chǎn),并且可以從云備份恢復(fù)數(shù)據(jù)。在塊507,處理500的處理邏輯可以從用戶計(jì)算機(jī)(例如,運(yùn)行il\ines?備份軟件)同步份離恢復(fù)文件。該文件可以包括所購(gòu)買的資產(chǎn)和/或未從該云備份恢復(fù)的數(shù)據(jù)。
[0124]圖6是圖示根據(jù)本文描述的一個(gè)實(shí)施例的、動(dòng)態(tài)地優(yōu)先化資源以恢復(fù)裝置的處理的一個(gè)實(shí)施例的流程圖。示范性的處理600可以由處理邏輯執(zhí)行,該處理邏輯可以包括硬件(電路、專用邏輯等等)、軟件(例如,運(yùn)行在專用機(jī)器上)、或者這兩者的組合。例如處理600可以由圖2的系統(tǒng)200的某些部件執(zhí)行。
[0125]在塊601,處理600的處理邏輯可以追蹤在裝置中(例如,基于iOS?的移動(dòng)裝置)托管的應(yīng)用和/或內(nèi)容的使用模式(例如,次數(shù)、使用時(shí)間、使用位置、使用持續(xù)時(shí)間等等)。在塊603,處理600的處理邏輯可以創(chuàng)建要恢復(fù)到裝置的應(yīng)用和/或內(nèi)容列表。在塊605,處理600的處理邏輯可以確定該裝置的當(dāng)前位置。在塊607,處理600的處理邏輯可以給予應(yīng)用和/或內(nèi)容列表優(yōu)先級(jí),以利用基于使用模式、與該應(yīng)用和/或內(nèi)容相關(guān)聯(lián)的適當(dāng)元數(shù)據(jù)(例如,大小、類型等等)和/或在當(dāng)前位置處的可用性的順序來(lái)進(jìn)行恢復(fù)。
[0126]在塊609,處理600的處理邏輯可以通過(guò)使用優(yōu)先級(jí)列表,將應(yīng)用和/或者內(nèi)容恢復(fù)到當(dāng)前位置處的裝置。在塊611,處理600的處理邏輯可以檢測(cè)用戶請(qǐng)求,例如經(jīng)由輕敲輸入,其指示對(duì)一個(gè)或多個(gè)應(yīng)用/內(nèi)容的希望的恢復(fù)優(yōu)先級(jí)。在塊613,處理600的處理邏輯可以根據(jù)所請(qǐng)求的希望的恢復(fù)優(yōu)先級(jí),動(dòng)態(tài)地改變要恢復(fù)的應(yīng)用和/或內(nèi)容的優(yōu)先級(jí)列表的順序。
[0127]圖7是圖示根據(jù)本文描述的一個(gè)實(shí)施例的、為備份和/或恢復(fù)操作監(jiān)視裝置電源的示范性系統(tǒng)的方框圖。系統(tǒng)700可以基于客戶端裝置,例如圖1的裝置113。
[0128]系統(tǒng)700可以被配置為響應(yīng)于檢測(cè)到從外部電源719 (AC / DC適配器、太陽(yáng)能面板、感應(yīng)充電襯墊等等)的再充電已經(jīng)停止,而終止已經(jīng)開(kāi)始并且正在進(jìn)行中的空中(無(wú)線的)備份操作。系統(tǒng)700包括外部電源端口 713,例如,適合于插頭的插孔或者插座,該插頭被耦合到AC / DC適配器或者其他的外部電源的輸出,以及電池717,其在再充電控制器的控制之下而被再充電。
[0129]電源檢測(cè)器709被耦合到外部電源端口并且被耦合到處理系統(tǒng)711,該處理系統(tǒng)711可以是基于微處理器的芯片上系統(tǒng)或者其他的處理系統(tǒng);電源檢測(cè)器監(jiān)視外部電源的可用性和/或再充電處理的狀態(tài),并且,基于該監(jiān)視確定再充電處理是否由于從外部電源斷開(kāi)連接而已經(jīng)終止。響應(yīng)于檢測(cè)到由于斷開(kāi)連接再充電處理已經(jīng)終止,電源檢測(cè)器可以生成終止信號(hào)(在耦合到該處理系統(tǒng)的總線上的中斷信號(hào)),其使得處理系統(tǒng)終止無(wú)線備份操作。
[0130]在一個(gè)實(shí)施例中,備份操作在該終止之前已經(jīng)開(kāi)始并且正在進(jìn)行中,并且正在備份軟件或者用戶數(shù)據(jù)(例如,聯(lián)系人、日程表?xiàng)l目、用戶文本文件、用戶媒體文件、例如歌曲或照片等等)或者它們兩者,軟件或者用戶數(shù)據(jù)可以被存儲(chǔ)在系統(tǒng)700的存儲(chǔ)器715中。系統(tǒng)700的處理系統(tǒng)可以執(zhí)行本文描述的備份方法中的任意一個(gè),以使得通過(guò)備份操作,該軟件和/或用戶數(shù)據(jù)將被存儲(chǔ)在遠(yuǎn)程裝置上,例如,與網(wǎng)絡(luò)703耦合的服務(wù)器701。通過(guò)系統(tǒng)700中的一個(gè)或多個(gè)無(wú)線電設(shè)備707 (例如,WiFi無(wú)線電設(shè)備或者蜂窩電話無(wú)線電設(shè)備),可以無(wú)線地執(zhí)行備份處理,并且這些無(wú)線電設(shè)備與系統(tǒng)700中的處理系統(tǒng)耦合,并且與一個(gè)或多個(gè)網(wǎng)絡(luò)耦合。網(wǎng)絡(luò)可以是單個(gè)網(wǎng)絡(luò)(例如,無(wú)線局域網(wǎng)LAN)或者多個(gè)網(wǎng)絡(luò)或者與因特網(wǎng)耦合的蜂窩電話網(wǎng)絡(luò)等等。
[0131]響應(yīng)于終止信號(hào),處理系統(tǒng)可以立即或者在為備份操作中當(dāng)前處理的文件完成備份操作之后,終止進(jìn)行中的備份處理(其在此刻是未完成的)。本文描述的處理系統(tǒng)和/或一個(gè)或多個(gè)服務(wù)器可以使用簽名或者同步錨或者其他的機(jī)制來(lái)保持對(duì)原子備份的追蹤,以保持追蹤已經(jīng)在過(guò)早終止的備份操作中完成了什么以及在該過(guò)早終止的備份操作中還未完成什么??梢杂上到y(tǒng)700自動(dòng)地執(zhí)行該備份操作的終止并且不需要用戶請(qǐng)求或者交互。
[0132]在外部電源再次為系統(tǒng)700充電時(shí),該備份處理可以從終止?fàn)顟B(tài)重新開(kāi)始。在一個(gè)實(shí)施例中,系統(tǒng)700在正通過(guò)外部電源進(jìn)行再充電時(shí),其根據(jù)本文描述的一個(gè)或多個(gè)方法進(jìn)行備份,并且,在從那個(gè)電源斷開(kāi)連接時(shí),它終止備份并且在重新開(kāi)始再充電時(shí),從終止備份狀態(tài)重新開(kāi)始。因此,在一個(gè)實(shí)施例中,響應(yīng)于檢測(cè)到外部電源已經(jīng)連接并且現(xiàn)在正在為系統(tǒng)700中的電池充電,該備份處理開(kāi)始或者重新開(kāi)始,如圖8所示。
[0133]圖8是圖示根據(jù)本文描述的一個(gè)實(shí)施例的、中斷對(duì)裝置的備份和/或恢復(fù)操作的處理以節(jié)省電力的一個(gè)實(shí)施例的流程圖。示范性的處理800可以由處理邏輯執(zhí)行,該處理邏輯可以包括硬件(電路、專用邏輯等等)、軟件(例如,運(yùn)行在專用機(jī)器上)、或者它們兩者的組合。例如處理800可以由圖2的系統(tǒng)200或者圖7的系統(tǒng)700的某些部件執(zhí)行。
[0134]在塊801,處理800的處理邏輯可以確定內(nèi)部電池正在再充電。在塊803,處理800的處理邏輯可以用(多個(gè))遠(yuǎn)程備份服務(wù)器作為后臺(tái)處理開(kāi)始備份操作,并且監(jiān)視內(nèi)部電池的再充電狀態(tài)。在塊805,處理800的處理邏輯可以根據(jù)再充電狀態(tài),確定內(nèi)部電池的再充電已經(jīng)終止(例如,從AC / DC適配器斷開(kāi)連接等)。在塊807,處理800的處理邏輯可以響應(yīng)于檢測(cè)到該電池的再充電已經(jīng)終止而終止備份操作。在塊809,處理800的處理邏輯可以響應(yīng)于檢測(cè)到電池開(kāi)始再充電而重新開(kāi)始備份操作。
[0135]圖9表示了與本文描述的實(shí)施例一起使用的數(shù)據(jù)處理系統(tǒng)的一個(gè)示例。圖9中所示的數(shù)據(jù)處理系統(tǒng)900包括處理系統(tǒng)911,其可以是一個(gè)或多個(gè)微處理器,或者其可以是芯片集成電路上系統(tǒng),并且該系統(tǒng)同時(shí)包括存儲(chǔ)器901,用于儲(chǔ)存供該處理系統(tǒng)執(zhí)行的數(shù)據(jù)和程序。系統(tǒng)900還包括音頻輸入輸出子系統(tǒng)905,其可以包括麥克風(fēng)和揚(yáng)聲器,例如用于播放音樂(lè)或者通過(guò)該揚(yáng)聲器和麥克風(fēng)提供電話功能。在至少某些實(shí)施例中,系統(tǒng)900可以通過(guò)網(wǎng)絡(luò)或本地連接,自動(dòng)地和/或人工地執(zhí)行所述的多個(gè)階段的多源恢復(fù)和備份。在一個(gè)實(shí)施例中,系統(tǒng)900可以包括圖2所示的系統(tǒng)。
[0136]顯示器控制器和顯示設(shè)備907為用戶提供可視用戶界面;這個(gè)數(shù)字界面包括類似于Macintosh計(jì)算機(jī)在運(yùn)行OSX?操作系統(tǒng)軟件時(shí)所示的圖形用戶界面。系統(tǒng)900還包括一個(gè)或多個(gè)無(wú)線的無(wú)線收發(fā)器903,以與另一個(gè)數(shù)據(jù)處理系統(tǒng)通信。無(wú)線收發(fā)器可以是WiFi收發(fā)器、紅外收發(fā)器、藍(lán)牙收發(fā)器、和/或無(wú)線蜂窩電話收發(fā)器??梢岳斫獾氖?,未顯示的附加部件也可以是某些實(shí)施例中的系統(tǒng)900的一部分,并且在某些實(shí)施例中,也可以在數(shù)據(jù)處理系統(tǒng)中使用比圖9所示的部件更少的部件。
[0137]數(shù)據(jù)處理系統(tǒng)900還包括一個(gè)或多個(gè)輸入裝置913,其被提供以允許用戶將輸入提供給該系統(tǒng)。這些輸入裝置可以是小鍵盤或者鍵盤、或者觸板或者多點(diǎn)觸板。數(shù)據(jù)處理系統(tǒng)900也包括可選的輸入/輸出設(shè)備915,其可以是用于塢站的連接器??梢岳斫獾氖牵达@示的一個(gè)或多個(gè)總線可以用來(lái)互連各種部件,如本領(lǐng)域公知的。圖9所示的數(shù)據(jù)處理系統(tǒng)可以是手持式計(jì)算機(jī)或者個(gè)人數(shù)字助理(PDA)、或者具有PDA類似功能的蜂窩電話、或者包括蜂窩電話的手持式計(jì)算機(jī)、或者媒體播放器(例如,iPod?)或者結(jié)合這些裝置的方面或功能的裝置,例如一個(gè)裝置中結(jié)合PDA和移動(dòng)電話的媒體播放器。在其他的實(shí)施例中,數(shù)據(jù)處理系統(tǒng)900可以是網(wǎng)絡(luò)計(jì)算機(jī)或者另一個(gè)裝置內(nèi)的嵌入式處理裝置,或者其他類型的數(shù)據(jù)處理系統(tǒng),其比圖9所示的系統(tǒng)具有更少的部件或者可能具有更多的部件。
[0138]圖10表示了可以與本發(fā)明中的一個(gè)實(shí)施例一起使用的、例如計(jì)算機(jī)系統(tǒng)的數(shù)據(jù)處理系統(tǒng)的一個(gè)不例。例如,系統(tǒng)1000可以被實(shí)現(xiàn)為圖1所不的系統(tǒng)的一部分。需要注意的是,雖然圖10圖示了計(jì)算機(jī)系統(tǒng)的各種部件,但是它并不意圖表示任何特定結(jié)構(gòu)或者互連這些部件方式,原因在于這些細(xì)節(jié)與本發(fā)明并無(wú)密切關(guān)系。同時(shí)可以理解的是,網(wǎng)絡(luò)計(jì)算機(jī)和具有更少部件或者可能具有更多部件的其他數(shù)據(jù)處理系統(tǒng)也可以被用于本發(fā)明。
[0139]如圖10所示,作為數(shù)據(jù)處理系統(tǒng)的一種形式的計(jì)算機(jī)系統(tǒng)1000包括總線1003,其與(多個(gè))微處理器1005、ROM(只讀存儲(chǔ)器)1007、易失性RAM1009和非易失性存儲(chǔ)器1011耦合。微處理器1005可以從存儲(chǔ)器1007、1009、1011取回指令并且執(zhí)行該指令以執(zhí)行如上所述的操作??偩€1003將這些不同的部件互連在一起,并且也將這些部件1005、1007、1009和1011互連到顯示器控制器和顯示設(shè)備1013以及外圍設(shè)備,例如輸入/輸出(I /0)裝置,其可以是鼠標(biāo)、鍵盤、調(diào)制解調(diào)器、網(wǎng)絡(luò)接口、打印機(jī)及其他本領(lǐng)域公知的裝置。典型地,輸入/輸出設(shè)備1015通過(guò)輸入/輸出控制器1017與該系統(tǒng)耦合。易失性RAM(隨機(jī)存取存儲(chǔ)器)1009典型地被實(shí)現(xiàn)為動(dòng)態(tài)隨機(jī)存儲(chǔ)器(DRAM),其需要不間斷的電力,以便刷新或保持存儲(chǔ)器中的數(shù)據(jù)。
[0140]海量存儲(chǔ)器1011典型地是磁的硬盤驅(qū)動(dòng)器或者磁光驅(qū)、或者光驅(qū)、或者DVD RAM、或者閃存、或者其他類型的存儲(chǔ)器系統(tǒng),其甚至在電力從該系統(tǒng)移除之后還仍然保持?jǐn)?shù)據(jù)(例如,大量數(shù)據(jù))。典型地,海量存儲(chǔ)器1011也可以是隨機(jī)存取存儲(chǔ)器,盡管這不是被要求的。雖然圖10表示海量存儲(chǔ)器1011是直接耦合到該數(shù)據(jù)處理系統(tǒng)的剩余部件的本地裝置,可以理解的是,本發(fā)明可以利用相對(duì)于該系統(tǒng)遠(yuǎn)程的非易失性存儲(chǔ)器,例如通過(guò)例如,調(diào)制解調(diào)器或者以太網(wǎng)接口或者無(wú)線網(wǎng)絡(luò)接口的網(wǎng)絡(luò)接口,耦合到該數(shù)據(jù)處理系統(tǒng)的網(wǎng)絡(luò)存儲(chǔ)裝置??偩€1003可以包括通過(guò)本領(lǐng)域公知的各種網(wǎng)橋、控制器和/或適配器彼此連接的一個(gè)或多個(gè)總線。
[0141]部分如上所述的方面可以用邏輯電路,例如專用邏輯電路,或者微控制器,或者執(zhí)行程序代碼指令的其他形式的處理核心來(lái)實(shí)現(xiàn)。因此以上討論所教導(dǎo)的處理可以由程序代碼,例如機(jī)器可執(zhí)行指令來(lái)執(zhí)行,機(jī)器可執(zhí)行指令使得機(jī)器執(zhí)行這些指令以執(zhí)行某些功能。在該上下文中,“機(jī)器”可以是將中間類型(或者“抽象”)指令轉(zhuǎn)換為處理器的具體指令(例如,抽象執(zhí)行環(huán)境,例如“虛擬機(jī)”(例如,Java虛擬機(jī))、解釋程序、公共語(yǔ)言運(yùn)行時(shí)間、高級(jí)語(yǔ)言虛擬機(jī)等等),和/或在半導(dǎo)體芯片(例如,以晶體管實(shí)現(xiàn)的“邏輯電路圖”)上布置的電子電路,其被設(shè)計(jì)成能執(zhí)行指令,例如通用處理器和/或?qū)S锰幚砥?。以上討論所教?dǎo)的處理也可以由(機(jī)器的替代品或者與機(jī)器一起使用)被設(shè)計(jì)成能執(zhí)行處理(或者它的一部分)而不必執(zhí)行程序代碼的電子電路來(lái)執(zhí)行。
[0142]制品可以用來(lái)存儲(chǔ)程序代碼。存儲(chǔ)程序代碼的制品可以包含但不限于:一個(gè)或多個(gè)存儲(chǔ)器(例如,一個(gè)或多個(gè)閃存、隨機(jī)存取存儲(chǔ)器(靜態(tài)、動(dòng)態(tài)或其它))、光盤、CD ROM、DVD ROM、EPROM、EEPR0M、磁或者光卡或者適合于存儲(chǔ)器電子指令的其他類型的機(jī)器可讀介質(zhì)。也可以經(jīng)由包含在傳播介質(zhì)內(nèi)的數(shù)據(jù)信號(hào)(例如,經(jīng)由通信鏈路(例如,網(wǎng)絡(luò)接線))將程序代碼從遠(yuǎn)程計(jì)算機(jī)(例如,服務(wù)器)下載到請(qǐng)求計(jì)算機(jī)(例如,客戶端)。
[0143]在本文中使用的術(shù)語(yǔ)“存儲(chǔ)器”意圖是包含全部的易失存儲(chǔ)器介質(zhì),例如動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM)和靜態(tài)隨機(jī)存取存儲(chǔ)器(SRAM)。計(jì)算機(jī)可執(zhí)行指令可以被存儲(chǔ)在非易失性存儲(chǔ)裝置上,例如磁的硬盤、光盤、并且典型地在處理器執(zhí)行軟件期間,由直接存儲(chǔ)器存取處理寫入到存儲(chǔ)器。本領(lǐng)域的普通技術(shù)人員將會(huì)立即認(rèn)識(shí)到,術(shù)語(yǔ)“機(jī)器可讀存儲(chǔ)介質(zhì)”包括處理器可訪問(wèn)的任何類型的易失性或者非易失性存儲(chǔ)裝置。
[0144]按照對(duì)計(jì)算機(jī)存儲(chǔ)器內(nèi)的數(shù)據(jù)位的操作的算法和符號(hào)表示提出之前的詳細(xì)說(shuō)明。這些算法的描述和表現(xiàn)是本領(lǐng)域技術(shù)人員在數(shù)據(jù)處理領(lǐng)域所使用的工具,以最有效地將他們的工作的本質(zhì)傳達(dá)給本領(lǐng)域的其它技術(shù)人員。在此的算法通常被認(rèn)為是導(dǎo)致所要求的結(jié)果的操作的自相容序列。操作是那些所要求的對(duì)物理量的物理操作。通常,可是不一定,這些量采取能夠被存儲(chǔ)、傳送、結(jié)合、比較及其他操作的電或磁信號(hào)的形式。有時(shí)它已經(jīng)證明了,主要地出于對(duì)公共用途的考慮,將這些信號(hào)提供為比特、值、元件、符號(hào)、字符、術(shù)語(yǔ)、數(shù)字等等是合適的。
[0145]然而,將應(yīng)記住的是,所有這些以及類似的術(shù)語(yǔ)都將與適當(dāng)?shù)奈锢砹肯嚓P(guān)聯(lián),并且僅僅是將這些量應(yīng)用于其上的合適的標(biāo)記。除非明確地說(shuō)明,否則通過(guò)上述討論顯而易見(jiàn)的是,可以理解貫穿本說(shuō)明書,利用諸如“處理”或者“計(jì)算”或者“算出”或者“確定”或者“顯示”等等術(shù)語(yǔ)的討論涉及計(jì)算機(jī)系統(tǒng),或者相似的電子計(jì)算裝置的動(dòng)作和處理,它們將表示為計(jì)算機(jī)系統(tǒng)的寄存器和存儲(chǔ)器內(nèi)的物理(電子)量數(shù)據(jù)操作和變換為類似地表示為計(jì)算機(jī)系統(tǒng)存儲(chǔ)器或者寄存器或者其他這樣的信息存儲(chǔ)、傳輸或者顯示設(shè)備內(nèi)的物理量的其它數(shù)據(jù)。
[0146]本發(fā)明還涉及執(zhí)行本文描述的操作的設(shè)備。可以為了所需目的特定地構(gòu)造這個(gè)設(shè)備,或者它可以包括由存儲(chǔ)在計(jì)算機(jī)中的計(jì)算機(jī)程序有選擇地激活或重新配置的通用計(jì)算機(jī)。這種計(jì)算機(jī)程序可以被存儲(chǔ)在計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,例如,但不限于任何類型的磁盤,包括軟磁盤、光盤、CDR0M、和磁光盤、只讀存儲(chǔ)器(ROM)、RAM、EPROM、EEPR0M、磁或者光卡、或者適合于存儲(chǔ)電子指令的任何類型的介質(zhì),并且它們的每個(gè)都與計(jì)算機(jī)系統(tǒng)總線耦
入
口 o
[0147]文本介紹的處理和顯示并不固有地與任何特定計(jì)算機(jī)或者其他設(shè)備有關(guān)系。根據(jù)本文的教導(dǎo),可以將程序用于不同的通用系統(tǒng),或者它可以證明構(gòu)造更多的專門設(shè)備以執(zhí)行所描述的操作是方便的。通過(guò)下面的描述,各種這些系統(tǒng)所需的結(jié)構(gòu)將變得明顯。另外,不參考任何特定程序語(yǔ)言來(lái)描述本發(fā)明??梢岳斫獾氖歉鞣N編程語(yǔ)言可以用來(lái)實(shí)現(xiàn)本文所描述的本發(fā)明的教導(dǎo)。
[0148]在上述詳細(xì)說(shuō)明中,已經(jīng)參考其示范性實(shí)施例描述了本發(fā)明。明顯的是,此外可以作出不同的修改,而不脫離下面的權(quán)利要求所闡明的本發(fā)明的更寬的精神和范圍。因此,說(shuō)明書和附圖被認(rèn)為是具有說(shuō)明性的意義而非限制性的意義。
【權(quán)利要求】
1.一種在其中具有指令的機(jī)器可讀的非暫時(shí)存儲(chǔ)介質(zhì),所述指令在被機(jī)器執(zhí)行時(shí),使得所述機(jī)器執(zhí)行一種方法,所述方法包括: 在無(wú)線裝置處,通過(guò)電線或者感應(yīng)襯墊接收電源; 監(jiān)視所接收的電源; 通過(guò)OTA (空中)無(wú)線接口,將來(lái)自所述裝置的數(shù)據(jù)備份到網(wǎng)絡(luò)中的服務(wù)器,所述數(shù)據(jù)被傳送到所述服務(wù)器以備份所述裝置上的數(shù)據(jù); 在備份所述數(shù)據(jù)時(shí),確定所述電源已經(jīng)從所述裝置移除;以及 響應(yīng)于確定所述電源已經(jīng)被移除,在沒(méi)有用戶請(qǐng)求的情況下,自動(dòng)地終止對(duì)所述裝置中的數(shù)據(jù)的備份。
2.如權(quán)利要求1所述的介質(zhì),其中: 從所接收的電源對(duì)所述裝置內(nèi)的電池充電,其中對(duì)所述電池充電的終止指示所述電源已經(jīng)被移除。
3.如權(quán)利要求1的介質(zhì),其中所述監(jiān)視包括: 檢測(cè)所接收的電源的斷開(kāi)連接;并且 產(chǎn)生指示所述電源已經(jīng)經(jīng)由斷開(kāi)連接而從所述裝置移除的信號(hào)。
4.如權(quán)利要求3的介質(zhì),其中經(jīng)由電源插頭在所述裝置處接收電源,并且其中所述斷開(kāi)連接是由所述電源插頭從所述裝置拔開(kāi)的事件引起的。
5.如權(quán)利要求3的介質(zhì),其中經(jīng)由電源插頭在所述裝置處接收電源,并且其中所述斷開(kāi)連接是由所述電源插頭從所述裝置拔開(kāi)的事件引起的。
6.如權(quán)利要求3的介質(zhì),其中經(jīng)由耦合于所述裝置的太陽(yáng)能面板在所述裝置處接收電源,并且其中所述斷開(kāi)連接是由在所述裝置重新安置時(shí)不能獲取所述太陽(yáng)能面板中的太陽(yáng)能源引起的。
7.如權(quán)利要求1的介質(zhì),其中備份所述數(shù)據(jù)包括執(zhí)行多個(gè)備份操作,其中在所述電源被從所述裝置移除時(shí),備份所述數(shù)據(jù)正在進(jìn)行中,而且所述備份操作的至少一個(gè)剩余備份操作有待于執(zhí)行。
8.如權(quán)利要求7的介質(zhì),其中備份所述數(shù)據(jù)被終止,而不執(zhí)行剩余的備份操作。
9.如權(quán)利要求7的介質(zhì),其中對(duì)于所述備份操作中的一個(gè)備份操作,備份所述數(shù)據(jù)正在進(jìn)行中,其中所述一個(gè)備份操作是原子的,并且其中在所述一個(gè)備份操作完成后備份所述數(shù)據(jù)被終止。
10.如權(quán)利要求7的介質(zhì),其中對(duì)于所述備份操作中的一個(gè)備份操作,備份所述數(shù)據(jù)正在進(jìn)行中,其中在所述一個(gè)備份操作完成之前備份所述數(shù)據(jù)被終止。
11.如權(quán)利要求8的介質(zhì),其中備份所述數(shù)據(jù)進(jìn)一步包括: 追蹤備份所述數(shù)據(jù)的終止?fàn)顟B(tài),其中所述終止?fàn)顟B(tài)指示在所述電源被從所述裝置移除時(shí)哪些備份操作已經(jīng)完成。
12.如權(quán)利要求11的介質(zhì),進(jìn)一步包括: 在備份所述數(shù)據(jù)已經(jīng)終止之后檢測(cè)所述電源的重新連接;以及 在檢測(cè)到所述電源的重新連接之后重新開(kāi)始備份所述數(shù)據(jù)。
13.如權(quán)利要求12的介質(zhì),其中備份所述數(shù)據(jù)從所述終止?fàn)顟B(tài)重新開(kāi)始,而不需要執(zhí)行在檢測(cè)到所述電源的重新連接之前已經(jīng)完成的備份操作。
14.一種在其中具有指令的機(jī)器可讀的非暫時(shí)存儲(chǔ)介質(zhì),所述指令在被機(jī)器執(zhí)行時(shí),使得所述機(jī)器執(zhí)行一種方法,所述方法包括: 監(jiān)視到裝置的外部電源的狀態(tài),所述狀態(tài)指示所述外部電源是否可用; 通過(guò)無(wú)線接口將來(lái)自所述裝置的數(shù)據(jù)備份到網(wǎng)絡(luò)中的服務(wù)器,以經(jīng)由多個(gè)備份操作將所述數(shù)據(jù)傳送到所述服務(wù)器; 在所述備份操作的至少一個(gè)剩余備份操作還未被執(zhí)行時(shí),根據(jù)所監(jiān)視的狀態(tài)檢測(cè)到所述外部電源不可用;以及 響應(yīng)于檢測(cè)到所述外部電源不可用,在沒(méi)有用戶請(qǐng)求的情況下,終止對(duì)所述裝置中的數(shù)據(jù)的備份,而不需要執(zhí)行剩余的操作。
15.如權(quán)利要求14的介質(zhì),其中所述備份操作包括對(duì)所述裝置中的當(dāng)前文件的當(dāng)前備份操作,并且其中備份所述數(shù)據(jù)包括: 在所述狀態(tài)指示所述外部電源不可用時(shí),執(zhí)行當(dāng)前備份操作,其中所述當(dāng)前備份操作是原子的。
16.如權(quán)利要求15的介質(zhì),其中,在完成所述當(dāng)前備份操作之前,所述狀態(tài)指示所述外部電源不可用,并且其中在所述當(dāng)前備份操作完成之后,終止對(duì)所述數(shù)據(jù)的備份。
17.如權(quán)利要求14的介質(zhì),其中所述方法進(jìn)一步包括: 對(duì)于備份所述數(shù)據(jù),追蹤所述備份操作的錨,其中所述錨指示在備份所述數(shù)據(jù)終止時(shí)哪些備份操作已經(jīng)完成。
18.如權(quán)利要求17的介質(zhì),進(jìn)一步包括: 在備份所述數(shù)據(jù)已經(jīng)終止之后,根據(jù)所監(jiān)視的狀態(tài),檢測(cè)到所述外部電源變成可用;并且 重新開(kāi)始備份所述數(shù)據(jù),而不執(zhí)行由所述錨指示的已經(jīng)完成的備份操作。
19.如權(quán)利要求18的介質(zhì),其中在重新開(kāi)始備份所述數(shù)據(jù)之后,將所述數(shù)據(jù)從所述服務(wù)器備份到單獨(dú)的服務(wù)器。
20.一種計(jì)算機(jī)實(shí)現(xiàn)的方法,包括: 在無(wú)線裝置處,通過(guò)電線或者感應(yīng)襯墊接收電源; 監(jiān)視所接收的電源; 通過(guò)OTA (空中)無(wú)線接口,將來(lái)自所述裝置的數(shù)據(jù)備份到網(wǎng)絡(luò)中的服務(wù)器,所述數(shù)據(jù)被傳送到所述服務(wù)器以備份所述裝置上的數(shù)據(jù); 在備份所述數(shù)據(jù)時(shí),確定所述電源已經(jīng)從所述裝置移除;以及響應(yīng)于確定所述電源已經(jīng)被移除,在沒(méi)有用戶請(qǐng)求的情況下自動(dòng)地終止對(duì)所述裝置中的數(shù)據(jù)的備份。
21.—種計(jì)算機(jī)實(shí)現(xiàn)的方法,包括: 監(jiān)視到裝置的外部電源的狀態(tài),所述狀態(tài)指示所述外部電源是否可用; 通過(guò)無(wú)線接口將來(lái)自所述裝置的數(shù)據(jù)備份到網(wǎng)絡(luò)中的服務(wù)器,以經(jīng)由多個(gè)備份操作將所述數(shù)據(jù)傳送到所述服務(wù)器; 在所述備份操作的至少一個(gè)剩余備份操作還未被執(zhí)行時(shí),根據(jù)所監(jiān)視的狀態(tài)檢測(cè)到所述外部電源不可用;以及 響應(yīng)于檢測(cè)到所述外部電源不可用,在沒(méi)有用戶請(qǐng)求的情況下,終止對(duì)所述裝置中的數(shù)據(jù)的備份,而不需要執(zhí)行剩余的操作。
22.一種用于裝置的計(jì)算機(jī)系統(tǒng),包括: 存儲(chǔ)可執(zhí)行指令的存儲(chǔ)器; 與至少一個(gè)備份服務(wù)器耦合的無(wú)線網(wǎng)絡(luò)接口; 與用于電源的至少一個(gè)外部源耦合的電源端口; 耦合于所述存儲(chǔ)器、所述網(wǎng)絡(luò)接口以及所述電源端口,以執(zhí)行來(lái)自所述存儲(chǔ)器的指令的處理器,所述處理器被配置為: 經(jīng)由所述電源端口,通過(guò)電線或者感應(yīng)襯墊接收所述電源, 監(jiān)視所接收的電源, 通過(guò)所述無(wú)線網(wǎng)絡(luò)接口將來(lái)自所述裝置的數(shù)據(jù)備份到網(wǎng)絡(luò)中的所述備份服務(wù)器,所述數(shù)據(jù)被傳送到所述備份服務(wù)器以備份所述裝置上的數(shù)據(jù), 在備份所述數(shù)據(jù)時(shí),確定所述電源已經(jīng)從所述裝置移除,以及響應(yīng)于確定所述電源已經(jīng)被移除,在沒(méi)有用戶請(qǐng)求的情況下自動(dòng)地終止對(duì)所述裝置中的數(shù)據(jù)的備份。
【文檔編號(hào)】G06F11/14GK103703742SQ201280027180
【公開(kāi)日】2014年4月2日 申請(qǐng)日期:2012年5月22日 優(yōu)先權(quán)日:2011年6月3日
【發(fā)明者】T·阿爾西娜, G·J·弗里德曼, N·K·阿特拉, K·B·米內(nèi)爾, E·克里杰勒, S·B·凱利, E·T·施密特 申請(qǐng)人:蘋果公司