專利名稱:用于實(shí)現(xiàn)基于點(diǎn)對(duì)點(diǎn)規(guī)則的推進(jìn)式自動(dòng)同步系統(tǒng)的系統(tǒng)和方法
技術(shù)領(lǐng)域:
本發(fā)明一般涉及對(duì)等同步,尤其涉及特別應(yīng)用于諸如膝上型電腦或手持計(jì)算機(jī)這樣的移動(dòng)設(shè)備(除了其它的移動(dòng)設(shè)備之外)的、基于對(duì)等原則的推進(jìn)式自動(dòng)(pull autonomous)同步系統(tǒng)。
背景技術(shù):
正如本領(lǐng)域的普通技術(shù)人員熟知且容易理解的,對(duì)于同步兩個(gè)或多個(gè)計(jì)算機(jī)系統(tǒng)之間的數(shù)據(jù)存在若干種理由,而且存在過(guò)多的用于同步兩個(gè)或多個(gè)計(jì)算機(jī)系統(tǒng)之間的數(shù)據(jù)的方案、策略和技術(shù)方案。然而,許多現(xiàn)有技術(shù)中的這些同步方案具有功能上的限制,其降低了網(wǎng)絡(luò)中特別是動(dòng)態(tài)網(wǎng)絡(luò)中同步的效率和效力。例如,典型的客戶服務(wù)器同步方案被高度構(gòu)造,并且要求在各個(gè)計(jì)算機(jī)系統(tǒng)之間有效定義的關(guān)系,這些計(jì)算機(jī)系統(tǒng)通常由在客戶服務(wù)器關(guān)系中的“服務(wù)器”保持。這對(duì)于動(dòng)態(tài)同步尤其有問(wèn)題,在該動(dòng)態(tài)同步中,在發(fā)生同步之前首先必須在該網(wǎng)絡(luò)中識(shí)別和/或定義進(jìn)入該同步網(wǎng)絡(luò)的某些系統(tǒng)。另外,這些同步方案中的很多方案還要求在兩個(gè)計(jì)算機(jī)系統(tǒng)上都具有特殊的同步軟件,因此沒(méi)有該特殊軟件的一個(gè)計(jì)算機(jī)系統(tǒng)就不能與另一個(gè)具有該特殊同步軟件的計(jì)算機(jī)系統(tǒng)動(dòng)態(tài)地同步。
盡管通常這些缺點(diǎn)可能對(duì)同步不利,但對(duì)于可以動(dòng)態(tài)地移入或移出某些通信網(wǎng)絡(luò)和同步網(wǎng)絡(luò)的移動(dòng)計(jì)算設(shè)備尤其存在麻煩。移動(dòng)設(shè)備尤其需要要求最小開銷的高度靈活和動(dòng)態(tài)的同步方案。在此描述的本發(fā)明克服了這些缺點(diǎn)。
發(fā)明內(nèi)容
本發(fā)明的各種實(shí)施例旨在多種系統(tǒng),和用于基于對(duì)等原則的推進(jìn)式自動(dòng)同步系統(tǒng)的方法,該同步系統(tǒng)尤其適于移動(dòng)設(shè)備,而且還具有基于現(xiàn)有同步方案的重要的可操作優(yōu)點(diǎn)。
本發(fā)明的幾個(gè)實(shí)施例旨在包括利用駐留在(即,安裝并執(zhí)行)第一計(jì)算機(jī)設(shè)備上的同步向?qū)?wizard)(以下稱為“PullSync”)的同步系統(tǒng),該第一計(jì)算機(jī)將從第二計(jì)算機(jī)請(qǐng)求并接收(或“拖(pull)”)數(shù)據(jù),以使該第一計(jì)算機(jī)和第二計(jì)算機(jī)同步。為了同步,根據(jù)創(chuàng)建在第一計(jì)算機(jī)設(shè)備(下面稱為“同步者”)上的限定同步范圍和程度(稍后討論)的特定PullSync規(guī)則(PSR),同步者從第二計(jì)算機(jī)設(shè)備(被同步者)上的共享文件夾中復(fù)制文件。前述復(fù)制基于使用現(xiàn)有的定義完善的協(xié)議的網(wǎng)絡(luò)連接而發(fā)生,通過(guò)這些協(xié)議,一個(gè)計(jì)算機(jī)系統(tǒng)能夠從第二計(jì)算機(jī)系統(tǒng)的可用共享文件夾查看并且復(fù)制文件。對(duì)于本發(fā)明的某些實(shí)施例,PullSync向?qū)к浖H存在于第一計(jì)算機(jī)系統(tǒng)(同步者)上,并且基于所述第一計(jì)算機(jī)系統(tǒng)上的PullSync的PSR,利用這些現(xiàn)有網(wǎng)絡(luò)協(xié)議(包括但不限于無(wú)線通信協(xié)議)從第二計(jì)算機(jī)系統(tǒng)選擇性地復(fù)制文件。此外,PullSync還可以使用現(xiàn)有的安全協(xié)議,和已經(jīng)適合于用于標(biāo)準(zhǔn)網(wǎng)絡(luò)通信(包括但不限于無(wú)線通信協(xié)議)的這些計(jì)算機(jī)系統(tǒng)的技術(shù)。
在結(jié)合附圖、表格、和/或其它包括這些方法的可視表示(若有的話)閱讀時(shí),將更好地理解前面的概述說(shuō)明,以及接下來(lái)的對(duì)優(yōu)選實(shí)施例的詳細(xì)說(shuō)明。為了說(shuō)明本發(fā)明,在這些附圖中還可能存在本發(fā)明的示例性配置或者功能性說(shuō)明和方法;然而,本發(fā)明不限于所公開的具體方法和手段。
圖1是表示其中可能合并了本發(fā)明多個(gè)方面的計(jì)算機(jī)系統(tǒng)的框圖;圖2是表示其中可能合并了本發(fā)明多個(gè)方面的傳統(tǒng)網(wǎng)絡(luò)配置的框圖;圖3是表示在包括有線和無(wú)線設(shè)備的當(dāng)前網(wǎng)絡(luò)配置上,用于本發(fā)明幾個(gè)實(shí)施例的同步方案的框圖。
具體實(shí)施例方式
具體描述主題以符合法規(guī)要求。然而,說(shuō)明書本身并不是為了限制該專利的范圍。相反,發(fā)明人已經(jīng)考慮到,要求保護(hù)的主題可能以其它的方式來(lái)體現(xiàn),即結(jié)合其它現(xiàn)有的或未來(lái)的技術(shù),以包含與該文件中描述的步驟相似的不同步驟或步驟的合并。此外,盡管在此使用的術(shù)語(yǔ)“步驟”意思可能是所使用的方法的不同單元,但是該術(shù)語(yǔ)不應(yīng)被解釋為暗示了在此處公開的不同步驟之間的任何特定順序,除非明確描述了單個(gè)步驟的順序。
計(jì)算機(jī)環(huán)境可以在計(jì)算機(jī)上執(zhí)行本發(fā)明的多個(gè)實(shí)施例。圖1和下面的討論目的是提供對(duì)在其中可以實(shí)現(xiàn)本發(fā)明的合適的計(jì)算機(jī)環(huán)境的簡(jiǎn)要描述。盡管沒(méi)有要求,但是將在可由計(jì)算機(jī)(諸如客戶工作站或服務(wù)器)執(zhí)行的計(jì)算機(jī)可執(zhí)行指令(諸如程序模塊)的一般環(huán)境中描述本發(fā)明。通常,程序模塊包括執(zhí)行特殊任務(wù)或?qū)崿F(xiàn)特殊抽象數(shù)據(jù)類型的例程、程序、對(duì)象、分量、數(shù)據(jù)結(jié)構(gòu)等。此外,本領(lǐng)域的普通技術(shù)人員將理解,可以利用其它計(jì)算機(jī)系統(tǒng)配置來(lái)實(shí)踐本發(fā)明,這些計(jì)算機(jī)系統(tǒng)配置包括手持設(shè)備、多處理器系統(tǒng)、基于微處理器或可編程的用戶電子設(shè)備、網(wǎng)絡(luò)PC、小型機(jī)、主機(jī)等。本發(fā)明也可以在分布式計(jì)算環(huán)境中實(shí)現(xiàn),在該環(huán)境中,任務(wù)是由通過(guò)通信網(wǎng)絡(luò)連接的遠(yuǎn)程處理設(shè)備執(zhí)行的。在分布式環(huán)境中,可將程序模塊置于本地和遠(yuǎn)程存儲(chǔ)器設(shè)備中。
如圖1所示,示例性的一般用途的計(jì)算系統(tǒng)包括傳統(tǒng)的個(gè)人計(jì)算機(jī)20等,該個(gè)人計(jì)算機(jī)包括處理單元21、系統(tǒng)存儲(chǔ)器22、以及將包括系統(tǒng)存儲(chǔ)器在內(nèi)的各種各樣的系統(tǒng)元件連接到處理單元21的系統(tǒng)總線23。該系統(tǒng)總線23可以是包括以下幾種類型總線結(jié)構(gòu)中的任何一種存儲(chǔ)器總線或存儲(chǔ)器控制器、外圍設(shè)備總線、和使用總線結(jié)構(gòu)的任何一種變型的本地總線。系統(tǒng)存儲(chǔ)器包括只讀存儲(chǔ)器(ROM)24和隨機(jī)訪問(wèn)存儲(chǔ)器(RAM)25?;据斎?輸出系統(tǒng)26(BIOS),其包括存儲(chǔ)在ROM 24中的基本例程,這些例程諸如在啟動(dòng)期間幫助在個(gè)人計(jì)算機(jī)20的單元之間傳送信息。個(gè)人計(jì)算機(jī)20還包括硬盤驅(qū)動(dòng)器27,用于從硬盤(未示出)讀取以及向其寫入;磁盤驅(qū)動(dòng)器28,用于從可移動(dòng)磁盤29讀取以及向其寫入;和光盤驅(qū)動(dòng)器30,用于從諸如CD ROM或其它光學(xué)介質(zhì)這樣的可移動(dòng)光盤31讀取或向其寫入。硬盤驅(qū)動(dòng)器27、磁盤驅(qū)動(dòng)器28、和光盤驅(qū)動(dòng)器30分別地通過(guò)硬盤驅(qū)動(dòng)器接口32、磁盤驅(qū)動(dòng)器接口33、和光盤驅(qū)動(dòng)器接口34被連接到系統(tǒng)總線23。這些驅(qū)動(dòng)器和它們的相關(guān)計(jì)算機(jī)可讀介質(zhì)為個(gè)人計(jì)算機(jī)20提供對(duì)計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊和其它數(shù)據(jù)的非易失性存儲(chǔ)。盡管在此描述的示例性環(huán)境使用了硬盤、可移動(dòng)磁盤29和可移動(dòng)光盤31,但本領(lǐng)域普通技術(shù)人員應(yīng)該理解,由計(jì)算機(jī)可用的能夠存儲(chǔ)數(shù)據(jù)的其它類型計(jì)算機(jī)可讀介質(zhì)也可以用在該示例性操作環(huán)境中,諸如磁帶、閃存卡、數(shù)字視頻盤、Bernoulli磁盤,隨機(jī)訪問(wèn)存儲(chǔ)器(RAM),只讀存儲(chǔ)器(ROM)等。
包括操作系統(tǒng)35、一個(gè)或多個(gè)應(yīng)用程序36、其它程序模塊37和程序數(shù)據(jù)38在內(nèi)的很多程序模塊可以存儲(chǔ)在硬盤、磁盤29、光盤31、ROM 24或RAM 25上。用戶可以通過(guò)諸如鍵盤40和點(diǎn)擊設(shè)備42的輸入設(shè)備將命令和信息輸入到個(gè)人計(jì)算機(jī)20中。其它輸入設(shè)備(未示出)可以包括麥克風(fēng)、操作桿、游戲手柄、衛(wèi)星盤、掃描儀等。這些和其它輸入設(shè)備通常通過(guò)連接到系統(tǒng)總線的串行端口接口46連接到處理單元21,也可以通過(guò)諸如并行端口、游戲端口或通用串行總線(USB)的其它接口來(lái)連接。監(jiān)視器47或其它類型的顯示設(shè)備也經(jīng)由諸如視頻適配器48的接口連接到系統(tǒng)總線23。除監(jiān)視器47之外,個(gè)人計(jì)算機(jī)還典型地包括諸如揚(yáng)聲器和打印機(jī)這樣的其它外圍輸出設(shè)備(未示出)。圖1的示例性系統(tǒng)還包括主機(jī)適配器55,小型計(jì)算機(jī)系統(tǒng)接口(SCSI)總線56,和連接到SCSI總線56的外部存儲(chǔ)設(shè)備62。
個(gè)人計(jì)算機(jī)20可以利用到一個(gè)或多個(gè)諸如遠(yuǎn)程計(jì)算機(jī)49這樣的遠(yuǎn)程計(jì)算機(jī)的邏輯連接在聯(lián)網(wǎng)的環(huán)境中進(jìn)行操作。遠(yuǎn)程計(jì)算機(jī)49可以是另一個(gè)個(gè)人計(jì)算機(jī)、服務(wù)器、路由器、網(wǎng)絡(luò)PC、對(duì)等設(shè)備或其它的公用網(wǎng)絡(luò)節(jié)點(diǎn),并且典型地包括上述與計(jì)算機(jī)20相關(guān)的多個(gè)或全部單元,盡管在圖1中僅示出了存儲(chǔ)器存儲(chǔ)設(shè)備50。在圖1中表示出的邏輯連接包括局域網(wǎng)(LAN)51和廣域網(wǎng)(WAN)52。這種聯(lián)網(wǎng)的環(huán)境在政府機(jī)關(guān)、企業(yè)范圍的計(jì)算機(jī)網(wǎng)絡(luò)、內(nèi)聯(lián)網(wǎng)和互聯(lián)網(wǎng)中是很平常的。
當(dāng)用于LAN聯(lián)網(wǎng)環(huán)境中時(shí),個(gè)人計(jì)算機(jī)20通過(guò)網(wǎng)絡(luò)接口或適配器53連接到LAN 51。當(dāng)用于WAN聯(lián)網(wǎng)環(huán)境中時(shí),個(gè)人計(jì)算機(jī)20典型地包括調(diào)制解調(diào)器54或用于創(chuàng)建基于廣域網(wǎng)52(諸如互聯(lián)網(wǎng))通信的其它裝置。調(diào)制解調(diào)器54,其可能是內(nèi)部的或外部的,經(jīng)由串行端口接口46將其連接到系統(tǒng)總線23。在聯(lián)網(wǎng)環(huán)境中,可能將所描述的與個(gè)人計(jì)算機(jī)20相關(guān)的程序模塊,或程序模塊的多個(gè)部分存儲(chǔ)在遠(yuǎn)程存儲(chǔ)器存儲(chǔ)設(shè)備中。應(yīng)該理解,所示出的網(wǎng)絡(luò)連接是示例性的,而且還可以使用創(chuàng)建計(jì)算機(jī)之間通信鏈路的其它裝置。
盡管預(yù)見(jiàn)本發(fā)明的多個(gè)實(shí)施例對(duì)于計(jì)算機(jī)化的系統(tǒng)尤其適合,但是在該文件中沒(méi)有想要將本發(fā)明限制到這些實(shí)施例的內(nèi)容。相反,此處使用的術(shù)語(yǔ)“計(jì)算機(jī)系統(tǒng)”旨在包含任何所有以下這樣的設(shè)備,其能夠存儲(chǔ)和處理信息和/或能夠利用所存儲(chǔ)的信息來(lái)控制設(shè)備本身的行為和操作,而不管這種設(shè)備實(shí)際上是否是電子的、機(jī)械的、邏輯的、或虛擬的。
網(wǎng)絡(luò)環(huán)境圖2示出了其中可以應(yīng)用本發(fā)明的多個(gè)方面的示例性網(wǎng)絡(luò)環(huán)境。當(dāng)然,實(shí)際的網(wǎng)絡(luò)和數(shù)據(jù)結(jié)構(gòu)環(huán)境可以以多種配置來(lái)設(shè)置;然而,這里示出的示例性環(huán)境提供了一種結(jié)構(gòu),用于理解本發(fā)明在其中進(jìn)行操作的環(huán)境類型。
該網(wǎng)絡(luò)可以包括客戶計(jì)算機(jī)20a,服務(wù)器計(jì)算機(jī)20b,數(shù)據(jù)源計(jì)算機(jī)20c和數(shù)據(jù)結(jié)構(gòu)70、72a和72b??蛻粲?jì)算機(jī)20a和數(shù)據(jù)源計(jì)算機(jī)20c經(jīng)由通信網(wǎng)絡(luò)80(例如企業(yè)內(nèi)部互聯(lián)網(wǎng))與服務(wù)器計(jì)算機(jī)20b進(jìn)行電子通信。借助于通信接口82將客戶計(jì)算機(jī)20a和數(shù)據(jù)源計(jì)算機(jī)20c連接到通信網(wǎng)絡(luò)。通信接口82可以是任何一種熟知的通信接口,諸如以太網(wǎng)連接、調(diào)制解調(diào)器連接等。
服務(wù)器計(jì)算機(jī)20b借助于數(shù)據(jù)結(jié)構(gòu)服務(wù)器系統(tǒng)軟件來(lái)提供對(duì)數(shù)據(jù)結(jié)構(gòu)70的管理,下面將更加全面地描述。照這樣,服務(wù)器20b擔(dān)當(dāng)存儲(chǔ)來(lái)自多個(gè)數(shù)據(jù)源的數(shù)據(jù)的倉(cāng)庫(kù),并且將這些數(shù)據(jù)提供給多個(gè)數(shù)據(jù)用戶。
在圖2的實(shí)例中,由數(shù)據(jù)源計(jì)算機(jī)20c來(lái)提供數(shù)據(jù)源。數(shù)據(jù)源計(jì)算機(jī)20c經(jīng)由通信網(wǎng)絡(luò)80(其可以是LAN、WAN、內(nèi)部網(wǎng)、互聯(lián)網(wǎng)等)與服務(wù)器計(jì)算機(jī)20b交換數(shù)據(jù)。數(shù)據(jù)源計(jì)算機(jī)20c存儲(chǔ)位于數(shù)據(jù)結(jié)構(gòu)72a、72b中的數(shù)據(jù),其可以是相關(guān)的數(shù)據(jù)結(jié)構(gòu)服務(wù)器、電子制表軟件、文件等。例如,數(shù)據(jù)結(jié)構(gòu)72a示出了存儲(chǔ)在表150、152和154中的數(shù)據(jù)。對(duì)由數(shù)據(jù)源20c提供的數(shù)據(jù)進(jìn)行組合,并且將其存儲(chǔ)在諸如由服務(wù)器20b保持的數(shù)據(jù)倉(cāng)庫(kù)這樣的大的數(shù)據(jù)結(jié)構(gòu)中。希望使用由服務(wù)器計(jì)算機(jī)20b存儲(chǔ)的數(shù)據(jù)的客戶計(jì)算機(jī)20a可以經(jīng)由通信網(wǎng)絡(luò)80來(lái)訪問(wèn)數(shù)據(jù)結(jié)構(gòu)70??蛻粲?jì)算機(jī)20a在數(shù)據(jù)結(jié)構(gòu)70中存儲(chǔ)的數(shù)據(jù)上,借助于SQL詢問(wèn)程序(例如,更新、插入和刪除)來(lái)請(qǐng)求數(shù)據(jù)。
Pullsync本發(fā)明的各種實(shí)施例旨在計(jì)算機(jī)設(shè)備之間用于同步數(shù)據(jù)的系統(tǒng)和方法。對(duì)于各個(gè)實(shí)施例來(lái)說(shuō),同步系統(tǒng)包括利用駐留在(即,安裝并執(zhí)行)第一計(jì)算機(jī)設(shè)備上的同步向?qū)?以下稱為“PullSync”),該第一計(jì)算機(jī)將從第二計(jì)算機(jī)設(shè)備請(qǐng)求并接收(或“拖”)數(shù)據(jù),以使該第一計(jì)算機(jī)和第二計(jì)算機(jī)同步。
為了同步,根據(jù)創(chuàng)建在第一計(jì)算機(jī)設(shè)備(下面稱為“同步者”)上的特定同步范圍和程度(稍后討論)的特定推進(jìn)式同步規(guī)則(PSR),所述同步者從第二計(jì)算機(jī)設(shè)備(被同步者)上的共享文件夾中復(fù)制文件。前述復(fù)制基于使用現(xiàn)有的定義完善的協(xié)議的網(wǎng)絡(luò)連接而發(fā)生,通過(guò)這些協(xié)議,一個(gè)計(jì)算機(jī)系統(tǒng)能夠從第二計(jì)算機(jī)系統(tǒng)的可用共享文件夾查看并且復(fù)制文件。本領(lǐng)域的普通技術(shù)人員容易理解,通過(guò)運(yùn)行所建立的網(wǎng)絡(luò)協(xié)議,在計(jì)算機(jī)系統(tǒng)(在這種情況下是第二計(jì)算機(jī)設(shè)備,即被同步者)共享文件夾中的文件對(duì)其它計(jì)算機(jī)系統(tǒng)(在這種情況下是第一計(jì)算機(jī)設(shè)備,即同步者)來(lái)說(shuō)完全是可見(jiàn)的,該其它的計(jì)算機(jī)系統(tǒng)具有經(jīng)由某種網(wǎng)絡(luò)連接來(lái)接入第二計(jì)算機(jī)系統(tǒng)(被同步者)的標(biāo)準(zhǔn)網(wǎng)絡(luò)通信能力。的確,當(dāng)一個(gè)計(jì)算機(jī)系統(tǒng)從其它計(jì)算機(jī)系統(tǒng)的共享文件夾中復(fù)制(或者“拖”)文件時(shí),第二計(jì)算機(jī)系統(tǒng)甚至可能不會(huì)注意到第一計(jì)算機(jī)系統(tǒng)在其共享文件夾中復(fù)制文件(即使第二計(jì)算機(jī)系統(tǒng)實(shí)際上執(zhí)行特定的系統(tǒng)級(jí)命令,以支持將文件復(fù)制到第一計(jì)算機(jī)系統(tǒng),例如,執(zhí)行從第二計(jì)算機(jī)系統(tǒng)的持久數(shù)據(jù)存儲(chǔ)器中讀取的運(yùn)行所必須的命令)。因此,對(duì)于本發(fā)明的若干個(gè)實(shí)施例來(lái)說(shuō),僅存在于第一計(jì)算機(jī)系統(tǒng)(同步者)上的Pullsync向?qū)к浖么嬖谟诰W(wǎng)絡(luò)協(xié)議(包括但不限于無(wú)線通信協(xié)議)中的這些協(xié)議,基于在所述第一計(jì)算機(jī)系統(tǒng)上的Pullsync向?qū)У腜SR,選擇性地從第二計(jì)算機(jī)系統(tǒng)中復(fù)制文件。此外,PullSync也可以利用現(xiàn)有的安全協(xié)議和技術(shù),這些安全協(xié)議和技術(shù)已經(jīng)適合于用于標(biāo)準(zhǔn)網(wǎng)絡(luò)通信(包括但不限于無(wú)線通信協(xié)議)的這些計(jì)算機(jī)系統(tǒng)。
因此,通過(guò)使用現(xiàn)有的網(wǎng)絡(luò)協(xié)議,PullSync僅需要駐留在同步者的計(jì)算機(jī)系統(tǒng)上,即從第二計(jì)算機(jī)系統(tǒng)中“拖”文件的第一計(jì)算機(jī)系統(tǒng)上,對(duì)于所述同步者計(jì)算機(jī)系統(tǒng)與通過(guò)網(wǎng)絡(luò)(有線或無(wú)線)能夠訪問(wèn)的其它計(jì)算機(jī)系統(tǒng)(第二/被同步者)同步來(lái)說(shuō),被同步者不從已建立好的網(wǎng)絡(luò)協(xié)議中請(qǐng)求特定編程,該已建立好的網(wǎng)絡(luò)協(xié)議存在于網(wǎng)路計(jì)算機(jī)系統(tǒng)上,并且允許無(wú)縫地確認(rèn)和復(fù)制。因此,駐留到網(wǎng)絡(luò)上的、在共享文件夾中具有文件的任何計(jì)算機(jī)系統(tǒng)都是潛在的被同步者,借助于這樣一個(gè)事實(shí),即可以基于網(wǎng)絡(luò)將其共享文件夾的內(nèi)容確認(rèn)并復(fù)制到其它計(jì)算機(jī)系統(tǒng)。
同樣,當(dāng)不去請(qǐng)求時(shí),特定的計(jì)算機(jī)系統(tǒng)可以是一個(gè)被同步者,即其是網(wǎng)絡(luò)上的、且在共享文件夾中具有文件的計(jì)算機(jī)系統(tǒng);也可以是一個(gè)同步者,即對(duì)PullSync向?qū)нM(jìn)行安裝和執(zhí)行,以便根據(jù)本地PSR從網(wǎng)絡(luò)上其它計(jì)算機(jī)系統(tǒng)的共享文件夾中拖文件。因此,這兩個(gè)計(jì)算機(jī)系統(tǒng)(每個(gè)都在共享文件夾中具有文件,而且每個(gè)都執(zhí)行PullSync)能夠完全彼此同步到由各個(gè)計(jì)算機(jī)上建立的PSR所定義的程度。
圖3是一個(gè)框圖,該框圖表示用于本發(fā)明若干實(shí)施例的、在現(xiàn)今流行的具有動(dòng)態(tài)配置的ad hoc網(wǎng)絡(luò)上的同步方案,所述動(dòng)態(tài)配置包括曾經(jīng)與通用移動(dòng)計(jì)算設(shè)備彼此相聯(lián)系的有線和無(wú)線設(shè)備。在該圖中,通用移動(dòng)計(jì)算設(shè)備300是超移動(dòng)(ultra-mobile)計(jì)算設(shè)備(例如微軟的GoPC),其利用標(biāo)準(zhǔn)無(wú)線網(wǎng)絡(luò)協(xié)議與其它計(jì)算機(jī)系統(tǒng)進(jìn)行通信,該其它的計(jì)算機(jī)系統(tǒng)分別包括但不限于工作桌上型電腦310和相應(yīng)的工作Tablet PC320,各自的同事的工作桌上型電腦330和340,膝上型電腦350,配偶袖珍型PC 360和家庭桌上型電腦370。包括PullSync軟件(如所示出的)的GoPC300,能夠通過(guò)使用標(biāo)準(zhǔn)網(wǎng)絡(luò)協(xié)議、且基于與通過(guò)拖動(dòng)數(shù)據(jù)流312、322、332、342、352、362和372示出的各個(gè)設(shè)備的無(wú)線連接,不定時(shí)地(即,當(dāng)GoPC300與各個(gè)其它的這種計(jì)算機(jī)系統(tǒng)具有有效的網(wǎng)絡(luò)連接時(shí))從這些系統(tǒng)中的每一個(gè)查看和復(fù)制文件。
對(duì)于缺少PullSync軟件的系統(tǒng),即計(jì)算機(jī)系統(tǒng)320、330、340和370來(lái)說(shuō),在不具有會(huì)出現(xiàn)任何同步操作的、受關(guān)注的所述系統(tǒng)的情況下,也會(huì)出現(xiàn)這種同步,而這種同步也不要求在所述系統(tǒng)上的、用于在GoPC300上出現(xiàn)的PullSync操作的任何特定軟件(除了所述標(biāo)準(zhǔn)網(wǎng)絡(luò)協(xié)議之外)。同樣,其它具有PullSync軟件的計(jì)算機(jī)系統(tǒng),即計(jì)算機(jī)系統(tǒng)310、350和360也沒(méi)有必要知道由GoPC執(zhí)行的推進(jìn)式同步(盡管包括GoPC的這些系統(tǒng)可以作為PullSync軟件成分的一部分來(lái)包括邏輯電路,該軟件成分可以通過(guò)若干裝置的任何一個(gè)來(lái)識(shí)別這種同步)。然而,這些系統(tǒng)能夠與GoPC和任何其它能夠經(jīng)由網(wǎng)絡(luò)連接進(jìn)行通信的計(jì)算機(jī)系統(tǒng)執(zhí)行它們自己的同步操作。例如,當(dāng)同事的工作計(jì)算機(jī)系統(tǒng)330和340僅可以作為用于GoPC的被同步者時(shí),配偶袖珍型PC360可以與膝上型電腦350(數(shù)據(jù)流356)和家庭桌上型電腦(數(shù)據(jù)流376)、以及GoPC300本身(數(shù)據(jù)流364)同步。
應(yīng)當(dāng)注意,例如,GoPC300、膝上型電腦350和配偶袖珍型PC360完全能夠彼此同步到各個(gè)計(jì)算機(jī)系統(tǒng)的PSR所允許的程度。此外,還應(yīng)當(dāng)注意,膝上型電腦350可以間接地經(jīng)由配偶袖珍型PC360或GoPC300或者上述二者與家庭桌上型電腦370進(jìn)行同步,以得到基于所有3種PullSync系統(tǒng)上的PSR的同步限制的組合。當(dāng)然,膝上型電腦350也可以直接與家庭桌上型電腦370進(jìn)行同步,這要求建立直接的網(wǎng)絡(luò)連接(未示出),正是利用能夠與任何其它計(jì)算機(jī)系統(tǒng)建立網(wǎng)絡(luò)連接的任何PullSync計(jì)算機(jī)系統(tǒng)這種情況。
就PSR來(lái)說(shuō),以及對(duì)于這里所述本發(fā)明的各種實(shí)施例,應(yīng)當(dāng)注意,對(duì)于駐留在計(jì)算機(jī)系統(tǒng)上的PSR來(lái)說(shuō),該P(yáng)SR僅僅定義了要從其它計(jì)算機(jī)系統(tǒng)復(fù)制/拖動(dòng)到具有PSR的計(jì)算機(jī)系統(tǒng)的特定文件,即PSR定義了其所駐留的計(jì)算機(jī)系統(tǒng)的“同步者”(即拖動(dòng)文件)的特性。與此相反,PSR決不會(huì)規(guī)定其它計(jì)算機(jī)系統(tǒng)對(duì)于這些文件的操作,這些文件是系統(tǒng)可以或不必從其上駐留有特定PSR的計(jì)算機(jī)系統(tǒng)拖動(dòng)的文件(如果其它計(jì)算機(jī)系統(tǒng)可以使用PullSync對(duì)文件進(jìn)行復(fù)制,則所述其它計(jì)算機(jī)系統(tǒng)也可以具有其自己的清楚且獨(dú)立的PSR);作為替代,被同步者用于指定哪一個(gè)文件可以或不必從一個(gè)計(jì)算機(jī)系統(tǒng)復(fù)制到另一個(gè)計(jì)算機(jī)系統(tǒng)(后者使用PullSync)的唯一手段是相應(yīng)地將這些文件放置到共享或?qū)S梦募A中(其中共享文件夾的內(nèi)容可以復(fù)制,而專用文件夾的內(nèi)容不可以復(fù)制),定義計(jì)算機(jī)系統(tǒng)的被同步者(即“文件共享”)的特性是有效的。
對(duì)于本發(fā)明的多個(gè)實(shí)施例來(lái)說(shuō),PullSync PSR明確地定義了特定計(jì)算機(jī)系統(tǒng)、特定的文件夾和特性文件,該特性文件用于與其它由PullSync終端用戶規(guī)定的參數(shù)相結(jié)合而從各個(gè)計(jì)算機(jī)系統(tǒng)進(jìn)行復(fù)制/拖動(dòng)。例如,考慮4個(gè)計(jì)算機(jī)系統(tǒng),A、B、C、D和E,在該實(shí)例中,A是同步者(具有PullSync),而B、C、D和E是潛在的被同步者,即A與B、C、D和E中的每一個(gè)共享至少一個(gè)公用網(wǎng)絡(luò),盡管B、C、D和E不可以共享它們中間的任何網(wǎng)絡(luò)。在該實(shí)例中,A可以具有如下的PSR
在該實(shí)例中,當(dāng)A與B同步時(shí),A將從駐留在B上的MyPictures共享文件夾中拖動(dòng)所有*.jpg文件,和在B的MyhomeDocs共享文件夾中的所有文件,以及在B的MyMusic共享文件夾中的小于28天的所有文件。當(dāng)與C同步時(shí),A將僅拖動(dòng)在C的MyWorkDocs共享文件夾中的、僅具有以“Status”開始的文件名的那些文件(其例如包括“statuslog.doc”和“status-040428-update.xls”,但是不包括例如“backorderstatus.txt”)。當(dāng)與E同步時(shí),A將僅從E的MyVideo共享文件夾中拖動(dòng)*.mpg,*.wmv,以及*.mov文件,和來(lái)自E的MyPicture共享文件夾中所有小于90天的文件,以及來(lái)自E的MyMusic共享文件夾中所有小于2MB的WMA文件。此外,由于D(及其文件夾和文件)沒(méi)有在A的PSR中列出,所以A不會(huì)從D中拖動(dòng)任何文件。
對(duì)于本發(fā)明的某些實(shí)施例來(lái)說(shuō),同步者(在我們的實(shí)例中是A)對(duì)于從其它計(jì)算機(jī)系統(tǒng)(B、C和E)拖動(dòng)文件的目的地可能默認(rèn)為是具有同名的A上的相應(yīng)共享文件夾。然而在其它的實(shí)施例中,取而代之的是,可能要基于規(guī)則或附加條件的規(guī)則為這些PSR中的文件指定一個(gè)位置。此外,PSR可能包括阻止其計(jì)算機(jī)系統(tǒng)(A)從其它計(jì)算機(jī)系統(tǒng)(B、C和E)復(fù)制文件的邏輯,其它的計(jì)算機(jī)系統(tǒng)(B、C和E)除了被預(yù)先復(fù)制了文件、或已經(jīng)存在于計(jì)算機(jī)系統(tǒng)(A)中之外,已經(jīng)被PSR所覆蓋。這可以由文件名、文件日期和時(shí)間、或某種其它的邏輯機(jī)制來(lái)確定。為了從其它計(jì)算機(jī)系統(tǒng)拖動(dòng)具有與已經(jīng)在相應(yīng)文件夾中的文件同名的文件(所述其它計(jì)算機(jī)系統(tǒng)中的文件具有最近的日期/時(shí)間標(biāo)記),某些實(shí)施例可以簡(jiǎn)化利用新文件來(lái)重寫舊文件,或者作為選擇,對(duì)舊文件重新命名和/或?qū)⑵湟苿?dòng)到舊文件夾歸檔,或者作為選擇,完全使用其它的技術(shù)。
對(duì)于本發(fā)明的多個(gè)實(shí)施例來(lái)說(shuō),除了前述的規(guī)則(“第一組規(guī)則”或“1SR”)之外,PSR還可以包括附加的第二組規(guī)則(“2SR”)。第一組規(guī)則(1SR)可能僅適合于“拖動(dòng)”PullSync單元(即如前所述,從什么地方和什么時(shí)間來(lái)拖動(dòng)文件),而第二組規(guī)則(2SR)可以應(yīng)用于其自身系統(tǒng)上的文件,即本質(zhì)上是一組文件保持和管理規(guī)則。對(duì)于某些實(shí)施例來(lái)說(shuō),第二組規(guī)則(2SR)可能僅應(yīng)用于在其計(jì)算機(jī)系統(tǒng)上的共享文件夾的內(nèi)容,并且定義例如保持某種文件多長(zhǎng)時(shí)間(即在MyPicture共享文件夾中使用的*.jpg文件不超過(guò)60天,而在MyVideo共享文件夾中使用的*.mpg文件不超過(guò)3天)。在任何情況下,像1SR一樣,2SR可以在功能、性能和實(shí)現(xiàn)方面發(fā)生很大的變化,以在其所應(yīng)用的計(jì)算機(jī)系統(tǒng)上提供多個(gè)選項(xiàng)。對(duì)于本發(fā)明的多個(gè)實(shí)施例來(lái)說(shuō),不僅PSR規(guī)則本身可以更改,而且規(guī)則的語(yǔ)法、適用范圍、功能性和內(nèi)容也是可擴(kuò)展的,例如在其中添加模塊和動(dòng)態(tài)程序庫(kù)。
對(duì)于本發(fā)明的多個(gè)實(shí)施例來(lái)說(shuō),PSR還可以進(jìn)一步包括有關(guān)頻率和/或同步方式、對(duì)移動(dòng)設(shè)備來(lái)說(shuō)特別有用的特性的第三組規(guī)則(3SR)。對(duì)于3SR,就同步頻率來(lái)說(shuō),諸如移進(jìn)和移出網(wǎng)絡(luò)(例如經(jīng)由它們的無(wú)線通信設(shè)備)的膝上型電腦、小型計(jì)算機(jī)系統(tǒng)(例如超移動(dòng)PC)、或偽計(jì)算機(jī)設(shè)備(例如PDA)這樣的移動(dòng)計(jì)算設(shè)備不在網(wǎng)絡(luò)中時(shí),將受益于降低的網(wǎng)絡(luò)速率/同步檢測(cè)。例如,從一個(gè)位置移動(dòng)到另一個(gè)位置的GoPC(來(lái)自微軟的超移動(dòng)計(jì)算設(shè)備)將在不同的時(shí)間接入一個(gè)或多個(gè)不同的網(wǎng)絡(luò),而在其它的時(shí)間不會(huì)接入網(wǎng)絡(luò)。當(dāng)不能連接到網(wǎng)絡(luò)時(shí),利用3SR,GoPC最初可能在5分鐘內(nèi)的每1分鐘時(shí)間間隔重試一次與網(wǎng)絡(luò)連接,以及如果沒(méi)有發(fā)現(xiàn)網(wǎng)絡(luò),則在15分鐘內(nèi)的每5分鐘時(shí)間間隔檢測(cè)一次網(wǎng)絡(luò),如果還沒(méi)有發(fā)現(xiàn)網(wǎng)絡(luò),則每15分鐘時(shí)間間隔檢測(cè)一次網(wǎng)絡(luò)直到發(fā)現(xiàn)網(wǎng)絡(luò)為止(然后再次開始尋找新網(wǎng)絡(luò)時(shí),恢復(fù)為每1分鐘時(shí)間間隔)。同步的頻率和持續(xù)時(shí)間還可以經(jīng)歷其它與設(shè)備的電池生命、處理器負(fù)載和各種其它參數(shù)相關(guān)的規(guī)則。另外,對(duì)于特定的實(shí)施例來(lái)說(shuō),PSR第三組規(guī)則(3SR)還可以包括用于從單網(wǎng)絡(luò)的多個(gè)計(jì)算機(jī)中選擇一個(gè)計(jì)算機(jī)進(jìn)行同步的某種規(guī)則,該單網(wǎng)絡(luò)對(duì)于同步(“連接優(yōu)先級(jí)”)是有效的,還包括用于從兩個(gè)或多個(gè)網(wǎng)絡(luò)中選擇用于同步的網(wǎng)絡(luò)的規(guī)則,該兩個(gè)或多個(gè)網(wǎng)絡(luò)可用于在給定時(shí)間(“網(wǎng)絡(luò)優(yōu)先級(jí)”)進(jìn)行同步,而且這些規(guī)則可以基于速度、資源成本、貨幣成本(基于付費(fèi)的網(wǎng)絡(luò))、網(wǎng)絡(luò)負(fù)載和/或其它多種不受限標(biāo)準(zhǔn)。
當(dāng)然,正如這里所使用的,將PSR劃分為3組規(guī)則僅在于幫助理解本發(fā)明多個(gè)方面和多個(gè)實(shí)施例的功能,而不應(yīng)當(dāng)解釋為將PSR限制到特定的規(guī)則組、特定的數(shù)量或其特性。
另外,本發(fā)明的某些實(shí)施例旨在利用PullSync進(jìn)行同步,以使得多個(gè)計(jì)算機(jī)系統(tǒng)(每個(gè)計(jì)算機(jī)系統(tǒng)都具有到至少一個(gè)其它計(jì)算機(jī)系統(tǒng)的網(wǎng)絡(luò)連接)通過(guò)共享文件夾的自然傳遞與另一個(gè)計(jì)算機(jī)系統(tǒng)進(jìn)行同步,所述自然傳遞是從一個(gè)機(jī)器通過(guò)同步網(wǎng)絡(luò)傳遞到另一個(gè)機(jī)器(盡管被限制到在各個(gè)機(jī)器上的工作PSR)。因此,當(dāng)本發(fā)明的某些實(shí)施例旨在借助于將單向同步PullSync設(shè)備安裝到兩個(gè)計(jì)算機(jī)系統(tǒng)上的雙向同步,以使它們能夠有效地彼此同步(因此形成自然的雙向同步關(guān)系)時(shí),其它的實(shí)施例旨在多個(gè)方向的同步,其中運(yùn)行PullSync的多個(gè)計(jì)算機(jī)系統(tǒng)中的某些執(zhí)行彼此有限的同步,以及在某些情況下,通過(guò)類似的自然傳播彼此進(jìn)行同步。
概述和附加的特性為了再次陳述,擴(kuò)展或添加到上面的內(nèi)容,下面的內(nèi)容是(1)對(duì)于本發(fā)明的各種替換實(shí)施例來(lái)說(shuō),簡(jiǎn)短的但不受限的對(duì)本發(fā)明特定單元的概述,和/或(2)對(duì)于本發(fā)明的各種替換實(shí)施例來(lái)說(shuō)附加的創(chuàng)造性特征。
1.PullSync計(jì)算機(jī)系統(tǒng)或設(shè)備,尤其是具有動(dòng)態(tài)變化網(wǎng)絡(luò)的設(shè)備,包括(a)諸如膝上型計(jì)算機(jī)和小型計(jì)算機(jī)設(shè)備(諸如GoPC)這樣的移動(dòng)計(jì)算設(shè)備,和/或(b)與移動(dòng)計(jì)算設(shè)備進(jìn)行交換作用的其它計(jì)算機(jī)設(shè)備,在所述網(wǎng)絡(luò)中規(guī)則地輪詢與之接觸的網(wǎng)絡(luò)和設(shè)備,并且規(guī)則地從被同步者計(jì)算機(jī)系統(tǒng)上的共享文件夾中“拖動(dòng)”新的和/或更新的文件。
2.當(dāng)PullSync系統(tǒng)檢測(cè)一個(gè)網(wǎng)絡(luò)并且在匹配用于同步的PSR的網(wǎng)絡(luò)上找到一個(gè)計(jì)算機(jī)時(shí),可以使用于具有PullSync向?qū)У挠?jì)算機(jī)系統(tǒng)的同步完全自動(dòng)化(即自動(dòng)出現(xiàn)而沒(méi)有任何終端的干涉)。
3.在多個(gè)實(shí)施例中,可以通過(guò)終端用戶、其它的應(yīng)用程序來(lái)直接修改/修訂/擴(kuò)展/限制PSR,和/或自動(dòng)生成。
4.對(duì)于多個(gè)其它實(shí)施例來(lái)說(shuō),“共享文件夾”的概念還可以包括在兩個(gè)設(shè)備之間的至少一個(gè)“專用文件夾”,換句話說(shuō),該“專用文件夾”被認(rèn)為是一個(gè)可以經(jīng)由標(biāo)準(zhǔn)網(wǎng)絡(luò)復(fù)制協(xié)議或其它手段進(jìn)行復(fù)制的共享文件夾。
5.對(duì)于某些實(shí)施例來(lái)說(shuō),共享文件夾還可以包括使用現(xiàn)有的安全和驗(yàn)證協(xié)議等的“確認(rèn)文件夾”。
6.PullSync向?qū)Э梢杂糜谛纬蓡我坏摹巴蟿?dòng)”同步設(shè)備,其中沒(méi)有文件曾經(jīng)由一個(gè)系統(tǒng)“推到”另一個(gè)系統(tǒng)。
7.PullSync完全是一個(gè)分散的對(duì)等同步系統(tǒng),其不需要集中式的同步服務(wù)器,對(duì)于多個(gè)實(shí)施例來(lái)說(shuō),不用在多個(gè)或兩個(gè)不同的PullSync系統(tǒng)之間進(jìn)行調(diào)整(或者甚至是注意),該P(yáng)ullSync在被同步到拱形(overarching)同步網(wǎng)絡(luò)的范圍和程度的不同計(jì)算機(jī)系統(tǒng)上運(yùn)行。然而,某些實(shí)施例可以包括認(rèn)知邏輯,以便與另一個(gè)也具有PullSync的計(jì)算機(jī)系統(tǒng)同步時(shí)增強(qiáng)同步經(jīng)驗(yàn),作為選擇,也可以包括用于識(shí)別和跟蹤拱形同步的軟件,該拱形同步在所定義的或動(dòng)態(tài)的網(wǎng)絡(luò)中經(jīng)由一個(gè)或多個(gè)PullSync向?qū)到y(tǒng)而出現(xiàn)。
8.當(dāng)PullSync被設(shè)計(jì)為基于任何現(xiàn)有網(wǎng)絡(luò)、通過(guò)使用已建立的用于該網(wǎng)絡(luò)的協(xié)議來(lái)運(yùn)行時(shí),該P(yáng)ullSync是獨(dú)立于網(wǎng)絡(luò)的(不需要網(wǎng)絡(luò)特定的軟件)。
9.本發(fā)明的某些實(shí)施例特別旨在對(duì)等的(沒(méi)有中心同步服務(wù)器)、基于規(guī)則的(基于本地PSR在各個(gè)計(jì)算機(jī)系統(tǒng)上執(zhí)行同步)、全部拖動(dòng)的(totalpull)(沒(méi)有文件被推動(dòng))同步系統(tǒng);一個(gè)可替換的實(shí)施例旨在用于“漫游”(移動(dòng))的計(jì)算機(jī)設(shè)備的同步系統(tǒng);以及另外的可替換實(shí)施例旨在用于獨(dú)立于網(wǎng)絡(luò)的(或多個(gè)網(wǎng)絡(luò))、恒定同步的、自動(dòng)運(yùn)行和同步的同步系統(tǒng),該同步系統(tǒng)使用現(xiàn)有的網(wǎng)絡(luò)、安全性和/或驗(yàn)證協(xié)議。
10.使用中的PullSync可以是一個(gè)“遍歷機(jī)”(像網(wǎng)絡(luò)爬行者),其連續(xù)搜索網(wǎng)絡(luò)的寬度和范圍(可能經(jīng)常變化)、以及到其它計(jì)算機(jī)的網(wǎng)絡(luò)連接和其中用于同步的文件夾和文件,對(duì)于某些這樣的實(shí)施例來(lái)說(shuō),自動(dòng)地檢測(cè)和同步。
11.在另一個(gè)實(shí)施例中,PullSync也可以用于一種特定設(shè)備,例如使用PullSync的硬盤驅(qū)動(dòng)器設(shè)備與計(jì)算機(jī)系統(tǒng)同步,并且根據(jù)其自己的本地PSR來(lái)備份該計(jì)算機(jī)共享文件夾中的內(nèi)容。在一個(gè)可替換實(shí)施例當(dāng)中,這種備份設(shè)備可以包括用于復(fù)制/備份整個(gè)與其同步的計(jì)算機(jī)系統(tǒng)的附加裝置。
12.在另一個(gè)實(shí)施例中,利用PullSync的同步系統(tǒng)同樣僅是拖動(dòng)型的(pull-only),其中沒(méi)有數(shù)據(jù)作為同步處理的一部分被推動(dòng),取而代之的是通過(guò)拖動(dòng)數(shù)據(jù)來(lái)實(shí)現(xiàn)整個(gè)同步(經(jīng)由PullSync向?qū)?。
結(jié)論可以以硬件或軟件,適當(dāng)?shù)那闆r下以硬件和軟件的組合來(lái)實(shí)現(xiàn)這里所描述的各種系統(tǒng)、方法和技術(shù)。因此,本發(fā)明的方法和裝置,或者該方法和裝置的某個(gè)部分可以采用嵌入到有形介質(zhì)(諸如軟盤、CD-ROM、硬盤驅(qū)動(dòng)器或者任何其它的可機(jī)讀存儲(chǔ)介質(zhì))中的程序代碼(即指令)的形式,其中當(dāng)通過(guò)諸如計(jì)算機(jī)這樣的機(jī)器來(lái)加載并執(zhí)行程序代碼時(shí),該機(jī)器變?yōu)橛糜趯?shí)踐本發(fā)明的裝置。在可編程計(jì)算機(jī)上執(zhí)行的程序代碼的情況下,計(jì)算機(jī)通常包括處理器,可由該處理器讀取的存儲(chǔ)介質(zhì)(包括易失和非易失性存儲(chǔ)器和/或存儲(chǔ)單元),至少一個(gè)輸入設(shè)備,以及至少一個(gè)輸出設(shè)備。最好在高級(jí)程序或者源于對(duì)象的編程語(yǔ)言中實(shí)現(xiàn)一個(gè)或多個(gè)程序,以便與計(jì)算機(jī)系統(tǒng)進(jìn)行通信。然而,如果需要的話,可以在匯編或機(jī)器語(yǔ)言中實(shí)現(xiàn)該程序。在任何情況下,該語(yǔ)言都可以是可編輯或解釋的語(yǔ)言,并且與硬件設(shè)備相結(jié)合。
本發(fā)明的方法和裝置也可以以程序代碼的形式來(lái)實(shí)現(xiàn),該程序代碼基于某種傳輸介質(zhì)來(lái)傳送,諸如基于電線或電纜、通過(guò)光纖或者經(jīng)由任何其它形式的傳輸介質(zhì),其中當(dāng)通過(guò)諸如EPROM、門陣列、可編程邏輯器件(PLD)、客戶計(jì)算機(jī)、視頻記錄設(shè)備等機(jī)器來(lái)接收、加載并執(zhí)行程序代碼時(shí),該機(jī)器變?yōu)橛糜趯?shí)踐本發(fā)明的裝置。當(dāng)在通用處理器上執(zhí)行時(shí),該程序代碼與處理器相結(jié)合來(lái)提供唯一的裝置,該裝置用于執(zhí)行本發(fā)明的變址功能。
盡管已結(jié)合了各個(gè)附圖的優(yōu)選實(shí)施例描述了本發(fā)明,但是應(yīng)當(dāng)理解,也可以使用其它類似的實(shí)施例,也可以對(duì)所述實(shí)施例進(jìn)行修改和添加,以實(shí)現(xiàn)本發(fā)明相同的功能而不脫離本發(fā)明的范圍。例如,盡管在模擬個(gè)人計(jì)算機(jī)功能的數(shù)字設(shè)備的描述中描述了本發(fā)明的示范性實(shí)施例,但是本領(lǐng)域的普通技術(shù)人員將認(rèn)識(shí)到本發(fā)明并不限于這些數(shù)字設(shè)備,本發(fā)明中所描述的內(nèi)容可以應(yīng)用于多種現(xiàn)有的計(jì)算設(shè)備或環(huán)境,諸如游戲控制臺(tái)、手持計(jì)算機(jī)、便攜式計(jì)算機(jī)等,無(wú)論是有線的還是無(wú)線的,而且還可以應(yīng)用于經(jīng)由通信網(wǎng)絡(luò)連接的任意多個(gè)這種計(jì)算設(shè)備,并且通過(guò)網(wǎng)絡(luò)進(jìn)行交互作用。此外,需要強(qiáng)調(diào)的是,這里期待多種計(jì)算機(jī)平臺(tái),包括手持設(shè)備操作系統(tǒng)和其它應(yīng)用程序規(guī)定的硬件/軟件接口系統(tǒng),尤其是隨著無(wú)線網(wǎng)絡(luò)設(shè)備的持續(xù)增加。因此,本發(fā)明不應(yīng)當(dāng)被限制到任何單個(gè)實(shí)施例,而是根據(jù)所附的權(quán)利要求來(lái)構(gòu)造更寬的保護(hù)范圍。
權(quán)利要求
1.一種用于同步第一計(jì)算機(jī)系統(tǒng)和第二計(jì)算機(jī)系統(tǒng)的方法,所述第一計(jì)算機(jī)系統(tǒng)包括用于推進(jìn)式同步的軟件成分,所述方法(“同步操作”)包括所述第一計(jì)算機(jī)系統(tǒng)在所述第一計(jì)算機(jī)系統(tǒng)和所述第二計(jì)算機(jī)系統(tǒng)之間建立網(wǎng)絡(luò)連接,或者利用它們之間現(xiàn)有的網(wǎng)絡(luò)連接(“連接單元”);所述第一計(jì)算機(jī)系統(tǒng)查看在所述第二計(jì)算機(jī)系統(tǒng)上的至少一個(gè)文件(“查看單元”);所述第一計(jì)算機(jī)系統(tǒng)確定在所述第二計(jì)算機(jī)系統(tǒng)上的所述至少一個(gè)文件是否需要被復(fù)制到所述第一計(jì)算機(jī)系統(tǒng),以便所述第一計(jì)算機(jī)系統(tǒng)與所述第二計(jì)算機(jī)系統(tǒng)同步(“邏輯單元”);以及所述第一計(jì)算機(jī)系統(tǒng)使用標(biāo)準(zhǔn)網(wǎng)絡(luò)協(xié)議、基于所述網(wǎng)絡(luò)連接從所述第二計(jì)算機(jī)系統(tǒng)復(fù)制至少一個(gè)文件(“復(fù)制單元”);其中對(duì)于包括上述單元的同步操作,所述第二計(jì)算機(jī)系統(tǒng)僅使用用于所述同步操作的標(biāo)準(zhǔn)網(wǎng)絡(luò)協(xié)議功能。
2.根據(jù)權(quán)利要求1所述的方法,其中所述第二計(jì)算機(jī)系統(tǒng)不知道其是否與所述第一計(jì)算機(jī)系統(tǒng)(作為同步者)同步(所述第二計(jì)算機(jī)系統(tǒng)作為被同步者)。
3.根據(jù)權(quán)利要求1所述的方法,其中所述連接單元的所述網(wǎng)絡(luò)連接是無(wú)線連接。
4.根據(jù)權(quán)利要求1所述的方法,其中所述第一計(jì)算機(jī)系統(tǒng)是移動(dòng)計(jì)算機(jī)系統(tǒng),該移動(dòng)計(jì)算機(jī)系統(tǒng)具有到所述第二計(jì)算機(jī)系統(tǒng)的動(dòng)態(tài)網(wǎng)絡(luò)連接,使得所述第一計(jì)算機(jī)系統(tǒng)在某個(gè)時(shí)期能夠執(zhí)行所述連接單元(及其之后的單元),而且在某個(gè)其它的時(shí)期不能夠執(zhí)行所述連接單元(及其之后的單元)。
5.根據(jù)權(quán)利要求1所述的方法,其中就在所述第一計(jì)算機(jī)系統(tǒng)和所述第二計(jì)算機(jī)系統(tǒng)之間的所述網(wǎng)絡(luò)連接來(lái)說(shuō),所述同步操作進(jìn)一步包括使用現(xiàn)有的標(biāo)準(zhǔn)網(wǎng)絡(luò)安全協(xié)議。
6.根據(jù)權(quán)利要求1所述的方法,其中通過(guò)所述第一計(jì)算機(jī)系統(tǒng)根據(jù)一組同步規(guī)則來(lái)執(zhí)行所述邏輯單元。
7.根據(jù)權(quán)利要求6所述的方法,所述同步規(guī)則組從下面多個(gè)同步參數(shù)中定義至少一個(gè)同步參數(shù),所述多個(gè)同步參數(shù)包括一組用于同步的計(jì)算機(jī)系統(tǒng);在用于同步的計(jì)算機(jī)系統(tǒng)上的一組文件夾;在用于同步的計(jì)算機(jī)系統(tǒng)上的一組文件;在用于同步的計(jì)算機(jī)系統(tǒng)上的一組文件特性;以及上述同步參數(shù)中的至少兩個(gè)的組合。
8.根據(jù)權(quán)利要求6所述的方法,其中所述同步規(guī)則組還包括用于管理和維護(hù)所述第一計(jì)算機(jī)系統(tǒng)上的所述文件的規(guī)則子集。
9.根據(jù)權(quán)利要求6所述的方法,其中所述第一計(jì)算機(jī)系統(tǒng)積極地搜索至少一個(gè)利用同步操作與之同步的附加計(jì)算機(jī)系統(tǒng),以及其中一組同步規(guī)則還包括用于管理試圖執(zhí)行同步操作的頻率的規(guī)則子集。
10.一種用于網(wǎng)絡(luò)中至少兩個(gè)計(jì)算機(jī)系統(tǒng)的雙向?qū)Φ韧椒椒?,其中所述至少兩個(gè)計(jì)算機(jī)系統(tǒng)中的每一個(gè)僅使用推進(jìn)式同步軟件成分,所述方法(“同步操作”)包括所述第一計(jì)算機(jī)系統(tǒng)在所述第一計(jì)算機(jī)系統(tǒng)和所述第二計(jì)算機(jī)系統(tǒng)之間建立網(wǎng)絡(luò)連接,或者利用它們之間現(xiàn)有的網(wǎng)絡(luò)連接(“連接單元”);所述第一計(jì)算機(jī)系統(tǒng)查看在所述第二計(jì)算機(jī)系統(tǒng)上的至少一個(gè)文件(“查看單元”);所述第一計(jì)算機(jī)系統(tǒng)確定在所述第二計(jì)算機(jī)系統(tǒng)上的所述至少一個(gè)文件是否需要被復(fù)制到所述第一計(jì)算機(jī)系統(tǒng),以便所述第一計(jì)算機(jī)系統(tǒng)與所述第二計(jì)算機(jī)系統(tǒng)同步(“邏輯單元”);所述第一計(jì)算機(jī)系統(tǒng)使用標(biāo)準(zhǔn)網(wǎng)絡(luò)協(xié)議、基于所述網(wǎng)絡(luò)連接從所述第二計(jì)算機(jī)系統(tǒng)復(fù)制至少一個(gè)文件(“復(fù)制單元”);所述第二計(jì)算機(jī)系統(tǒng)在所述第二計(jì)算機(jī)系統(tǒng)和所述第一計(jì)算機(jī)系統(tǒng)之間建立網(wǎng)絡(luò)連接,或者利用它們之間現(xiàn)有的網(wǎng)絡(luò)連接(“連接單元”);所述第二計(jì)算機(jī)系統(tǒng)查看在所述第一計(jì)算機(jī)系統(tǒng)上的至少一個(gè)文件(“查看單元”);所述第二計(jì)算機(jī)系統(tǒng)確定在所述第一計(jì)算機(jī)系統(tǒng)上的所述至少一個(gè)文件是否需要被復(fù)制到所述第二計(jì)算機(jī)系統(tǒng),以便所述第二計(jì)算機(jī)系統(tǒng)與所述第一計(jì)算機(jī)系統(tǒng)同步(“邏輯單元”);以及所述第二計(jì)算機(jī)系統(tǒng)使用標(biāo)準(zhǔn)網(wǎng)絡(luò)協(xié)議、基于所述網(wǎng)絡(luò)連接從所述第一計(jì)算機(jī)系統(tǒng)復(fù)制至少一個(gè)文件(“復(fù)制單元”);其中獨(dú)立于所述第二計(jì)算機(jī)系統(tǒng)的所述單元來(lái)執(zhí)行所述第一計(jì)算機(jī)系統(tǒng)的所述單元,以及對(duì)于同步操作,所述第二計(jì)算機(jī)系統(tǒng)僅使用標(biāo)準(zhǔn)網(wǎng)絡(luò)協(xié)議功能,所述同步操作包括由所述第一計(jì)算機(jī)系統(tǒng)執(zhí)行的上述單元;以及對(duì)于同步操作,所述第一計(jì)算機(jī)系統(tǒng)僅使用標(biāo)準(zhǔn)網(wǎng)絡(luò)協(xié)議功能,所述同步操作包括由所述第二計(jì)算機(jī)系統(tǒng)執(zhí)行的上述單元。
11.一種用于同步第一計(jì)算機(jī)系統(tǒng)和第二計(jì)算機(jī)系統(tǒng)的系統(tǒng),所述第一計(jì)算機(jī)系統(tǒng)包括用于推進(jìn)式同步的軟件成分,所述系統(tǒng)(“同步系統(tǒng)”)包括至少下面的一個(gè)子系統(tǒng)所述第一計(jì)算機(jī)系統(tǒng)在所述第一計(jì)算機(jī)系統(tǒng)和所述第二計(jì)算機(jī)系統(tǒng)之間建立網(wǎng)絡(luò)連接,或者利用它們之間現(xiàn)有的網(wǎng)絡(luò)連接(“連接子系統(tǒng)部件”);所述第一計(jì)算機(jī)系統(tǒng)查看在所述第二計(jì)算機(jī)系統(tǒng)上的至少一個(gè)文件(“查看子系統(tǒng)部件”);所述第一計(jì)算機(jī)系統(tǒng)確定在所述第二計(jì)算機(jī)系統(tǒng)上的所述至少一個(gè)文件是否需要被復(fù)制到所述第一計(jì)算機(jī)系統(tǒng),以便所述第一計(jì)算機(jī)系統(tǒng)與所述第二計(jì)算機(jī)系統(tǒng)同步(“邏輯子系統(tǒng)部件”);以及所述第一計(jì)算機(jī)系統(tǒng)使用標(biāo)準(zhǔn)網(wǎng)絡(luò)協(xié)議、基于所述網(wǎng)絡(luò)連接從所述第二計(jì)算機(jī)系統(tǒng)復(fù)制至少一個(gè)文件(“復(fù)制子系統(tǒng)部件”);其中對(duì)于包括上述子系統(tǒng)部件的同步系統(tǒng),所述第二計(jì)算機(jī)系統(tǒng)僅使用用于所述同步系統(tǒng)的標(biāo)準(zhǔn)網(wǎng)絡(luò)協(xié)議功能。
12.根據(jù)權(quán)利要求11所述的系統(tǒng)還包括至少一個(gè)子系統(tǒng),借此子系統(tǒng),所述第二計(jì)算機(jī)系統(tǒng)不知道其是否與所述第一計(jì)算機(jī)系統(tǒng)(作為同步者)同步(所述第二計(jì)算機(jī)系統(tǒng)作為被同步者)。
13.根據(jù)權(quán)利要求11所述的系統(tǒng)還包括至少一個(gè)子系統(tǒng),借此子系統(tǒng),所述連接子系統(tǒng)部件的所述網(wǎng)絡(luò)連接是無(wú)線連接。
14.根據(jù)權(quán)利要求11所述的系統(tǒng)還包括至少一個(gè)子系統(tǒng),借此子系統(tǒng),所述第一計(jì)算機(jī)系統(tǒng)是移動(dòng)計(jì)算機(jī)系統(tǒng),該移動(dòng)計(jì)算機(jī)系統(tǒng)具有到所述第二計(jì)算機(jī)系統(tǒng)的動(dòng)態(tài)網(wǎng)絡(luò)連接,使得所述第一計(jì)算機(jī)系統(tǒng)在某個(gè)時(shí)期能夠執(zhí)行所述連接子系統(tǒng)部件(及其之后的子系統(tǒng)部件),而且在某個(gè)其它的時(shí)期不能夠執(zhí)行所述連接子系統(tǒng)部件(及其之后的子系統(tǒng)部件)。
15.根據(jù)權(quán)利要求11所述的系統(tǒng)還包括至少一個(gè)子系統(tǒng),借此子系統(tǒng),就在所述第一計(jì)算機(jī)系統(tǒng)和所述第二計(jì)算機(jī)系統(tǒng)之間的所述網(wǎng)絡(luò)連接來(lái)說(shuō),所述同步操作進(jìn)一步包括使用現(xiàn)有的標(biāo)準(zhǔn)網(wǎng)絡(luò)安全協(xié)議。
16.根據(jù)權(quán)利要求11所述的系統(tǒng)還包括至少一個(gè)子系統(tǒng),借此子系統(tǒng),通過(guò)所述第一計(jì)算機(jī)系統(tǒng)根據(jù)一組同步規(guī)則來(lái)執(zhí)行所述邏輯子系統(tǒng)部件。
17.根據(jù)權(quán)利要求16所述的系統(tǒng)還包括至少一個(gè)子系統(tǒng),借此子系統(tǒng),所述同步規(guī)則組從下面多個(gè)同步參數(shù)中定義至少一個(gè)同步參數(shù),所述多個(gè)同步參數(shù)包括一組用于同步的計(jì)算機(jī)系統(tǒng);在用于同步的計(jì)算機(jī)系統(tǒng)上的一組文件夾;在用于同步的計(jì)算機(jī)系統(tǒng)上的一組文件;在用于同步的計(jì)算機(jī)系統(tǒng)上的一組文件特性;以及上述同步參數(shù)中的至少兩個(gè)的組合。
18.根據(jù)權(quán)利要求16所述的系統(tǒng)還包括至少一個(gè)子系統(tǒng),借此子系統(tǒng),所述同步規(guī)則組還包括用于管理和維護(hù)所述第一計(jì)算機(jī)系統(tǒng)上的所述文件的規(guī)則子集。
19.根據(jù)權(quán)利要求16所述的系統(tǒng)還包括至少一個(gè)子系統(tǒng),借此子系統(tǒng),所述第一計(jì)算機(jī)系統(tǒng)積極地搜索至少一個(gè)利用同步系統(tǒng)與之同步的附加計(jì)算機(jī)系統(tǒng),以及其中一組同步規(guī)則還包括用于管理試圖執(zhí)行同步系統(tǒng)的頻率的規(guī)則子集。
20.一種用于網(wǎng)絡(luò)中至少兩個(gè)計(jì)算機(jī)系統(tǒng)的雙向?qū)Φ韧较到y(tǒng),其中所述至少兩個(gè)計(jì)算機(jī)系統(tǒng)中的每一個(gè)僅使用推進(jìn)式同步軟件成分,所述系統(tǒng)(“同步系統(tǒng)”)包括至少一個(gè)下面的子系統(tǒng)所述第一計(jì)算機(jī)系統(tǒng)在所述第一計(jì)算機(jī)系統(tǒng)和所述第二計(jì)算機(jī)系統(tǒng)之間建立網(wǎng)絡(luò)連接,或者利用它們之間現(xiàn)有的網(wǎng)絡(luò)連接(“連接子系統(tǒng)部件”);所述第一計(jì)算機(jī)系統(tǒng)查看在所述第二計(jì)算機(jī)系統(tǒng)上的至少一個(gè)文件(“查看子系統(tǒng)部件”);所述第一計(jì)算機(jī)系統(tǒng)確定在所述第二計(jì)算機(jī)系統(tǒng)上的所述至少一個(gè)文件是否需要被復(fù)制到所述第一計(jì)算機(jī)系統(tǒng),以便所述第一計(jì)算機(jī)系統(tǒng)與所述第二計(jì)算機(jī)系統(tǒng)同步(“邏輯子系統(tǒng)部件”);所述第一計(jì)算機(jī)系統(tǒng)使用標(biāo)準(zhǔn)網(wǎng)絡(luò)協(xié)議、基于所述網(wǎng)絡(luò)連接從所述第二計(jì)算機(jī)系統(tǒng)復(fù)制至少一個(gè)文件(“復(fù)制子系統(tǒng)部件”);所述第二計(jì)算機(jī)系統(tǒng)在所述第二計(jì)算機(jī)系統(tǒng)和所述第一計(jì)算機(jī)系統(tǒng)之間建立網(wǎng)絡(luò)連接,或者利用它們之間現(xiàn)有的網(wǎng)絡(luò)連接(“連接子系統(tǒng)部件”);所述第二計(jì)算機(jī)系統(tǒng)查看在所述第一計(jì)算機(jī)系統(tǒng)上的至少一個(gè)文件(“查看子系統(tǒng)部件”);所述第二計(jì)算機(jī)系統(tǒng)確定在所述第一計(jì)算機(jī)系統(tǒng)上的所述至少一個(gè)文件是否需要被復(fù)制到所述第二計(jì)算機(jī)系統(tǒng),以便所述第二計(jì)算機(jī)系統(tǒng)與所述第一計(jì)算機(jī)系統(tǒng)同步(“邏輯子系統(tǒng)部件”);以及所述第二計(jì)算機(jī)系統(tǒng)使用標(biāo)準(zhǔn)網(wǎng)絡(luò)協(xié)議、基于所述網(wǎng)絡(luò)連接從所述第一計(jì)算機(jī)系統(tǒng)復(fù)制至少一個(gè)文件(“復(fù)制子系統(tǒng)部件”);其中獨(dú)立于所述第二計(jì)算機(jī)系統(tǒng)的所述子系統(tǒng)部件來(lái)執(zhí)行所述第一計(jì)算機(jī)系統(tǒng)的所述子系統(tǒng)部件,以及對(duì)于同步系統(tǒng),所述第二計(jì)算機(jī)系統(tǒng)僅使用標(biāo)準(zhǔn)網(wǎng)絡(luò)協(xié)議功能,所述同步系統(tǒng)包括由所述第一計(jì)算機(jī)系統(tǒng)執(zhí)行的上述子系統(tǒng)部件;以及對(duì)于同步系統(tǒng),所述第一計(jì)算機(jī)系統(tǒng)僅使用標(biāo)準(zhǔn)網(wǎng)絡(luò)協(xié)議功能,所述同步系統(tǒng)包括由所述第二計(jì)算機(jī)系統(tǒng)執(zhí)行的上述子系統(tǒng)部件。
21.一種包括用于同步第一計(jì)算機(jī)系統(tǒng)和第二計(jì)算機(jī)系統(tǒng)的計(jì)算機(jī)可讀指令的計(jì)算機(jī)可讀介質(zhì),所述第一計(jì)算機(jī)系統(tǒng)包括用于推進(jìn)式同步的軟件成分,所述計(jì)算機(jī)可讀指令(“同步指令”)包括下面的指令所述第一計(jì)算機(jī)系統(tǒng)在所述第一計(jì)算機(jī)系統(tǒng)和所述第二計(jì)算機(jī)系統(tǒng)之間建立網(wǎng)絡(luò)連接,或者利用它們之間現(xiàn)有的網(wǎng)絡(luò)連接(“連接指令”);所述第一計(jì)算機(jī)系統(tǒng)查看在所述第二計(jì)算機(jī)系統(tǒng)上的至少一個(gè)文件(“查看指令”);所述第一計(jì)算機(jī)系統(tǒng)確定在所述第二計(jì)算機(jī)系統(tǒng)上的所述至少一個(gè)文件是否需要被復(fù)制到所述第一計(jì)算機(jī)系統(tǒng),以便所述第一計(jì)算機(jī)系統(tǒng)與所述第二計(jì)算機(jī)系統(tǒng)同步(“邏輯指令”);以及所述第一計(jì)算機(jī)系統(tǒng)使用標(biāo)準(zhǔn)網(wǎng)絡(luò)協(xié)議、基于所述網(wǎng)絡(luò)連接從所述第二計(jì)算機(jī)系統(tǒng)復(fù)制至少一個(gè)文件(“復(fù)制指令”);其中對(duì)于包括上述指令的同步系統(tǒng),所述第二計(jì)算機(jī)系統(tǒng)僅使用用于所述同步指令的標(biāo)準(zhǔn)網(wǎng)絡(luò)協(xié)議功能。
22.根據(jù)權(quán)利要求21所述的計(jì)算機(jī)可讀指令還包括指令,借此指令,所述第二計(jì)算機(jī)系統(tǒng)不知道其是否與所述第一計(jì)算機(jī)系統(tǒng)(作為同步者)同步(所述第二計(jì)算機(jī)系統(tǒng)作為被同步者)。
23.根據(jù)權(quán)利要求21所述的計(jì)算機(jī)可讀指令還包括指令,借此指令,所述連接指令的所述網(wǎng)絡(luò)連接是無(wú)線連接。
24.根據(jù)權(quán)利要求21所述的計(jì)算機(jī)可讀指令還包括指令,借此指令,所述第一計(jì)算機(jī)系統(tǒng)是移動(dòng)計(jì)算機(jī)系統(tǒng),該移動(dòng)計(jì)算機(jī)系統(tǒng)具有到所述第二計(jì)算機(jī)系統(tǒng)的動(dòng)態(tài)網(wǎng)絡(luò)連接,使得所述第一計(jì)算機(jī)系統(tǒng)在某個(gè)時(shí)期能夠執(zhí)行所述連接指令(及其之后的指令),而且在某個(gè)其它的時(shí)期不能夠執(zhí)行所述連接指令(及其之后的指令)。
25.根據(jù)權(quán)利要求21所述的計(jì)算機(jī)可讀指令還包括指令,借此指令,就在所述第一計(jì)算機(jī)系統(tǒng)和所述第二計(jì)算機(jī)系統(tǒng)之間的所述網(wǎng)絡(luò)連接來(lái)說(shuō),所述同步操作進(jìn)一步包括使用現(xiàn)有的標(biāo)準(zhǔn)網(wǎng)絡(luò)安全協(xié)議。
26.根據(jù)權(quán)利要求21所述的計(jì)算機(jī)可讀指令還包括指令,借此指令,通過(guò)所述第一計(jì)算機(jī)系統(tǒng)根據(jù)一組同步規(guī)則來(lái)執(zhí)行所述邏輯指令。
27.根據(jù)權(quán)利要求26所述的計(jì)算機(jī)可讀指令還包括指令,借此指令,所述同步規(guī)則組從下面多個(gè)同步參數(shù)中定義至少一個(gè)同步參數(shù),所述多個(gè)同步參數(shù)包括一組用于同步的計(jì)算機(jī)系統(tǒng);在用于同步的計(jì)算機(jī)系統(tǒng)上的一組文件夾;在用于同步的計(jì)算機(jī)系統(tǒng)上的一組文件;在用于同步的計(jì)算機(jī)系統(tǒng)上的一組文件特性;以及上述同步參數(shù)中的至少兩個(gè)的組合。
28.根據(jù)權(quán)利要求26所述的計(jì)算機(jī)可讀指令還包括指令,借此指令,所述同步規(guī)則組還包括用于管理和維護(hù)所述第一計(jì)算機(jī)系統(tǒng)上的所述文件的規(guī)則子集。
29.根據(jù)權(quán)利要求26所述的計(jì)算機(jī)可讀指令還包括指令,借此指令,所述第一計(jì)算機(jī)系統(tǒng)積極地搜索至少一個(gè)利用同步系統(tǒng)與之同步的附加計(jì)算機(jī)系統(tǒng),以及其中一組同步規(guī)則還包括用于管理試圖執(zhí)行同步指令的頻率的規(guī)則子集。
30.一種計(jì)算機(jī)可讀介質(zhì),包括用于網(wǎng)絡(luò)中至少兩個(gè)計(jì)算機(jī)系統(tǒng)的雙向?qū)Φ韧降挠?jì)算機(jī)可讀指令,其中所述至少兩個(gè)計(jì)算機(jī)系統(tǒng)中的每一個(gè)僅使用推進(jìn)式同步軟件成分,所述計(jì)算機(jī)可讀指令(“同步指令”)包括指令所述第一計(jì)算機(jī)系統(tǒng)在所述第一計(jì)算機(jī)系統(tǒng)和所述第二計(jì)算機(jī)系統(tǒng)之間建立網(wǎng)絡(luò)連接,或者利用它們之間現(xiàn)有的網(wǎng)絡(luò)連接(“連接指令”);所述第一計(jì)算機(jī)系統(tǒng)查看在所述第二計(jì)算機(jī)系統(tǒng)上的至少一個(gè)文件(“查看指令”);所述第一計(jì)算機(jī)系統(tǒng)確定在所述第二計(jì)算機(jī)系統(tǒng)上的所述至少一個(gè)文件是否需要被復(fù)制到所述第一計(jì)算機(jī)系統(tǒng),以便所述第一計(jì)算機(jī)系統(tǒng)與所述第二計(jì)算機(jī)系統(tǒng)同步(“邏輯指令”);所述第一計(jì)算機(jī)系統(tǒng)使用標(biāo)準(zhǔn)網(wǎng)絡(luò)協(xié)議、基于所述網(wǎng)絡(luò)連接從所述第二計(jì)算機(jī)系統(tǒng)復(fù)制至少一個(gè)文件(“復(fù)制指令”);所述第二計(jì)算機(jī)系統(tǒng)在所述第二計(jì)算機(jī)系統(tǒng)和所述第一計(jì)算機(jī)系統(tǒng)之間建立網(wǎng)絡(luò)連接,或者利用它們之間現(xiàn)有的網(wǎng)絡(luò)連接(“連接指令”);所述第二計(jì)算機(jī)系統(tǒng)查看在所述第一計(jì)算機(jī)系統(tǒng)上的至少一個(gè)文件(“查看指令”);所述第二計(jì)算機(jī)系統(tǒng)確定在所述第一計(jì)算機(jī)系統(tǒng)上的所述至少一個(gè)文件是否需要被復(fù)制到所述第二計(jì)算機(jī)系統(tǒng),以便所述第二計(jì)算機(jī)系統(tǒng)與所述第一計(jì)算機(jī)系統(tǒng)同步(“邏輯指令”);以及所述第二計(jì)算機(jī)系統(tǒng)使用標(biāo)準(zhǔn)網(wǎng)絡(luò)協(xié)議、基于所述網(wǎng)絡(luò)連接從所述第一計(jì)算機(jī)系統(tǒng)復(fù)制至少一個(gè)文件(“復(fù)制指令”);其中獨(dú)立于所述第二計(jì)算機(jī)系統(tǒng)的所述指令來(lái)執(zhí)行所述第一計(jì)算機(jī)系統(tǒng)的所述指令,以及對(duì)于同步指令,所述第二計(jì)算機(jī)系統(tǒng)僅使用標(biāo)準(zhǔn)網(wǎng)絡(luò)協(xié)議功能,所述同步指令包括由所述第一計(jì)算機(jī)系統(tǒng)執(zhí)行的上述指令;以及對(duì)于同步指令,所述第一計(jì)算機(jī)系統(tǒng)僅使用標(biāo)準(zhǔn)網(wǎng)絡(luò)協(xié)議功能,所述同步指令包括由所述第二計(jì)算機(jī)系統(tǒng)執(zhí)行的上述指令。
全文摘要
本發(fā)明涉及一種同步系統(tǒng),其利用駐留在第一計(jì)算機(jī)設(shè)備上的同步向?qū)?“PullSync”)從第二計(jì)算機(jī)請(qǐng)求并接收(或“拖(pull)”)數(shù)據(jù)。根據(jù)同步者建立的限定同步范圍和程度的特定推進(jìn)式同步規(guī)則(PSR),第一計(jì)算機(jī)設(shè)備(“同步者”)同步者從第二計(jì)算機(jī)設(shè)備(被同步者)上的共享文件夾中復(fù)制文件。前述復(fù)制基于使用現(xiàn)有的定義完善的協(xié)議的網(wǎng)絡(luò)連接而發(fā)生,通過(guò)這些協(xié)議,一個(gè)計(jì)算機(jī)系統(tǒng)能夠從第二計(jì)算機(jī)系統(tǒng)的可用共享文件夾查看并且復(fù)制文件,PullSync向?qū)к浖H需要存在于第一計(jì)算機(jī)系統(tǒng)(同步者)上,來(lái)使用這些現(xiàn)有網(wǎng)絡(luò)協(xié)議(包括現(xiàn)有的安全/驗(yàn)證協(xié)議)從第二計(jì)算機(jī)系統(tǒng)選擇性地復(fù)制文件。
文檔編號(hào)H04L29/06GK1722731SQ20051008963
公開日2006年1月18日 申請(qǐng)日期2005年5月8日 優(yōu)先權(quán)日2004年5月3日
發(fā)明者D·W·威廉姆斯, H-S·H·盧克, O·G·貝克斯, V·K·布蘭科 申請(qǐng)人:微軟公司