機(jī) 系統(tǒng)被配置成為一個(gè)或多個(gè)客戶端計(jì)算機(jī)提供服務(wù),或被配置作為分布式系統(tǒng)的一部分 來(lái)執(zhí)行整體任務(wù)。另外,各個(gè)方面可以在客戶端-服務(wù)器或多層系統(tǒng)中被執(zhí)行,所述客戶 端-服務(wù)器或多層系統(tǒng)包括被分布在一個(gè)或多個(gè)服務(wù)器系統(tǒng)中執(zhí)行各種功能的組件。因 此,實(shí)施方式不限于在任意特定系統(tǒng)或一組系統(tǒng)中執(zhí)行。另外,可以以軟件、硬件或固件、或 其任何組合實(shí)現(xiàn)各個(gè)方面。因此,可以在利用各種硬件和軟件配置的方法、行為、系統(tǒng)、系統(tǒng) 元件以及組件內(nèi)實(shí)現(xiàn)根據(jù)本實(shí)施方式的各個(gè)方面,并且該實(shí)施方式不限于任何特定的分布 式結(jié)構(gòu)、網(wǎng)絡(luò)、或通信協(xié)議。
[0048] 圖1示出了分布式計(jì)算機(jī)系統(tǒng)100的框圖,其中根據(jù)本實(shí)施方式的各個(gè)方面和各 種功能可以被實(shí)踐。分布式計(jì)算機(jī)系統(tǒng)100可以包括一個(gè)或多個(gè)系統(tǒng)。例如,如示出的,分 布式計(jì)算機(jī)系統(tǒng)100包括計(jì)算機(jī)系統(tǒng)102、104以及106。如所示出的,計(jì)算機(jī)系統(tǒng)102、104 以及106通過通信網(wǎng)絡(luò)108進(jìn)行相互連接,并且可以通過通信網(wǎng)絡(luò)108交換數(shù)據(jù)。網(wǎng)絡(luò)108 可以包括任何通信網(wǎng)絡(luò),通過該網(wǎng)絡(luò)計(jì)算機(jī)系統(tǒng)可以交換數(shù)據(jù)。為了利用網(wǎng)絡(luò)108交換數(shù) 據(jù),計(jì)算機(jī)系統(tǒng)102、104和106以及網(wǎng)絡(luò)108可以使用各種方法、協(xié)議以及標(biāo)準(zhǔn),其包括:令 牌環(huán)網(wǎng)、以太網(wǎng)、無(wú)線以太網(wǎng)、藍(lán)牙、TCP/IP、UDP、Http、FTP、SNMP、SMS、MMS、SS7、Json、Soap、 和Corba及其它。為了保證數(shù)據(jù)傳輸是安全的,計(jì)算機(jī)系統(tǒng)102U04以及106可以通過網(wǎng) 絡(luò)108,利用包括TLS、SSL或VPN及其它安全技術(shù)的各種安全策略來(lái)傳輸數(shù)據(jù)。盡管分布 式計(jì)算機(jī)系統(tǒng)100示出了任何三個(gè)聯(lián)網(wǎng)的計(jì)算機(jī)系統(tǒng),但是分布式計(jì)算機(jī)系統(tǒng)100可以包 括任意數(shù)量的利用任何媒介和通信協(xié)議聯(lián)網(wǎng)的計(jì)算機(jī)系統(tǒng)和計(jì)算設(shè)備。
[0049] 根據(jù)本實(shí)施方式的各個(gè)方面和各種功能可以用在一個(gè)或多個(gè)包括圖1所示的計(jì) 算機(jī)系統(tǒng)102的計(jì)算機(jī)系統(tǒng)上執(zhí)行的專用硬件和軟件來(lái)實(shí)現(xiàn)。如所描述的,計(jì)算機(jī)系統(tǒng)102 包括處理器110、存儲(chǔ)器112、總線114、接口 116以及存儲(chǔ)設(shè)備118。處理器110可以執(zhí)行 產(chǎn)生操作數(shù)據(jù)的一系列指令。處理器110可以是可商業(yè)購(gòu)買的處理器,諸如因特爾奔騰 (Intel Pentium)處理器、摩托羅拉(Motorola) PowerPC、SGI MIPS、Sun UltraSPARC 處理 器或Hewlett-Packard PA-RISC處理器,但由于許多其它處理器和控制器是可購(gòu)買的,故可 以是任何類型的處理器、多處理器、微處理器或控制器。處理器110通過總線114被連接到 包括一個(gè)或多個(gè)存儲(chǔ)設(shè)備112的其它系統(tǒng)元件。
[0050] 在計(jì)算機(jī)系統(tǒng)102的操作過程中,存儲(chǔ)器112可以被用來(lái)存儲(chǔ)程序和數(shù)據(jù)。因此 存儲(chǔ)器112可以是相對(duì)高性能、易失性的、隨機(jī)存取的存儲(chǔ)器,諸如,動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器 (DRAM)或靜態(tài)存儲(chǔ)器(SRAM)。然而,存儲(chǔ)器112可以包括用來(lái)存儲(chǔ)數(shù)據(jù)的任何設(shè)備,諸如 硬盤驅(qū)動(dòng)器、或其它非易失性、非臨時(shí)性的存儲(chǔ)設(shè)備。在某些情況下,根據(jù)本發(fā)明的各個(gè)實(shí) 施方式可以將存儲(chǔ)器112組成特殊且唯一的結(jié)構(gòu),以執(zhí)行本文所公開的方面和功能。
[0051] 計(jì)算機(jī)系統(tǒng)102的組件可以通過諸如總線114的互聯(lián)元件進(jìn)行耦合。總線114可 以包括一個(gè)或多個(gè)物理總線、例如,被集成到相同機(jī)器內(nèi)部的組件之間的總線,除此之外, 總線114還可以包括任何通信耦合,該通信耦合在包括諸如IDE、SCSI、PCI以及無(wú)限寬帶的 專用或標(biāo)準(zhǔn)計(jì)算總線技術(shù)的系統(tǒng)元件之間。因此,總線114能夠在計(jì)算機(jī)系統(tǒng)102的系統(tǒng) 組件之間進(jìn)行例如交換數(shù)據(jù)和指令的通信。
[0052] 計(jì)算機(jī)系統(tǒng)102還包括一個(gè)或多個(gè)接口設(shè)備116,諸如輸入設(shè)備、輸出設(shè)備以及輸 入/輸出設(shè)備的組合。接口設(shè)備可以接收輸入或可以提供輸出。更具體地,輸出設(shè)備可以 將信息表示為外部呈現(xiàn)。輸入設(shè)備可以接收來(lái)自外部源的信息。接口設(shè)備的例子包括鍵盤、 鼠標(biāo)設(shè)備、跟蹤球、麥克風(fēng)、觸摸屏、打印設(shè)備、顯示屏、揚(yáng)聲器、網(wǎng)絡(luò)接□卡等。接□設(shè)備允 許計(jì)算機(jī)系統(tǒng)102,與諸如用戶和其它系統(tǒng)的外部實(shí)體交換信息并且進(jìn)行通信。
[0053] 存儲(chǔ)系統(tǒng)118可以包括計(jì)算機(jī)可讀和可寫、非易失性、非臨時(shí)性、的存儲(chǔ)媒介,其 中定義了由處理器執(zhí)行的程序的指令被存儲(chǔ)在該存儲(chǔ)媒介的指令中。存儲(chǔ)系統(tǒng)118還可以 包括被記錄在媒介上、或媒介內(nèi)部的信息,并且該信息可以被程序處理。更具體地,該信息 可以被存儲(chǔ)在一個(gè)或多個(gè)數(shù)據(jù)結(jié)構(gòu)中,該數(shù)據(jù)結(jié)構(gòu)被專門配置為節(jié)約存儲(chǔ)空間或提高數(shù)據(jù) 交換性能。指令可以被持續(xù)存儲(chǔ)為編碼信號(hào),并且該指令可以引發(fā)處理器執(zhí)行本文所描述 的功能中的任意一種。例如,該媒介可以是光盤、磁盤、或閃存、及其它。在操作中,處理器 或一些其它控制器可以引起數(shù)據(jù)從非易失記錄媒介讀取到諸如存儲(chǔ)器112的另一個(gè)存儲(chǔ) 器中,并且比起被包括在存儲(chǔ)系統(tǒng)118中的存儲(chǔ)媒介,其允許處理器更快地訪問信息。存儲(chǔ) 器可以被放置在存儲(chǔ)系統(tǒng)118中或存儲(chǔ)器112中,然而,處理器110可以在存儲(chǔ)器112內(nèi)操 作數(shù)據(jù),并且在處理結(jié)束后,處理器110隨后可以將數(shù)據(jù)復(fù)制到與存儲(chǔ)系統(tǒng)118相關(guān)聯(lián)的媒 介中。各種組件可以管理在媒介和集成電路存儲(chǔ)元件之間的數(shù)據(jù)移動(dòng),并且本文所描述的 實(shí)施方式不會(huì)限于此。另外,實(shí)施方式不限于特定的存儲(chǔ)系統(tǒng)或數(shù)據(jù)存儲(chǔ)系統(tǒng)。
[0054] 盡管計(jì)算機(jī)系統(tǒng)102通過示例的方式被示為一種類型的計(jì)算機(jī)系統(tǒng),且基于該計(jì) 算機(jī)系統(tǒng),根據(jù)本實(shí)施方式的各個(gè)方面和各種功能可以被實(shí)踐,但目前所公開的實(shí)施方式 的任何方面都沒有被限制為在圖1所示的計(jì)算機(jī)系統(tǒng)中實(shí)現(xiàn)。根據(jù)目前所公開的實(shí)施方式 的各個(gè)方面和各種功能可以在具有與圖1所示的結(jié)構(gòu)和組件不同的結(jié)構(gòu)和組件的一個(gè)或 多個(gè)計(jì)算機(jī)中實(shí)踐。例如,計(jì)算機(jī)系統(tǒng)102可以包括經(jīng)專門編程的專用硬件,諸如例如,被 定制為執(zhí)行本文所公開的特定操作的專用集成電路(ASIC)。然而另外一個(gè)實(shí)施方式可以利 用若干運(yùn)行MAC OS系統(tǒng)X和摩托羅拉PowerPC處理器的通用計(jì)算設(shè)備以及若干運(yùn)行專有 硬件和操作系統(tǒng)的專用計(jì)算設(shè)備執(zhí)行相同的功能。
[0055] 計(jì)算機(jī)系統(tǒng)102可以是包括操作系統(tǒng)的計(jì)算機(jī)系統(tǒng),該操作系統(tǒng)管理計(jì)算機(jī)系 統(tǒng)102中所包括的硬件元件中的至少一部分。通常,諸如處理器110的處理器或控制器執(zhí) 行操作系統(tǒng),其中該操作系統(tǒng)可以是例如,諸如Windows NT、Windows 2000 (Windows ME)、 Windows XP、或Windows Vista操作系統(tǒng)的從微軟公司購(gòu)買的基于Windows的操作系統(tǒng)、從 蘋果電腦購(gòu)買的MACOS系統(tǒng)X操作系統(tǒng)、許多基于Linux的分布式操作系統(tǒng)中的一個(gè),例如 從紅帽(Red Hat)公司購(gòu)買的企業(yè)Linux操作系統(tǒng),從Sun微型系統(tǒng)(Microsystems)購(gòu)買 的Solaris操作系統(tǒng)、或從各種源購(gòu)買的UNIX系統(tǒng)。許多其它操作系統(tǒng)可以被使用,并且 實(shí)施方式不限于任何特定的實(shí)現(xiàn)方式。
[0056] 處理器和操作系統(tǒng)一起定義了計(jì)算機(jī)平臺(tái),其中采用高級(jí)編程語(yǔ)言的應(yīng)用程序被 寫入該計(jì)算機(jī)平臺(tái)中。這些組件應(yīng)用程序可以是可執(zhí)行的、中間的,例如C的字節(jié)碼或者解 釋碼,其通過例如利用諸如TCP/IP的通信協(xié)議的因特網(wǎng)的通信網(wǎng)絡(luò)進(jìn)行通信。類似地,根 據(jù)目前所公開的實(shí)施方式的各個(gè)方面可以利用面向?qū)ο缶幊陶Z(yǔ)言來(lái)實(shí)現(xiàn),諸如利用.Net、 SmallTalk、如¥&、0++、4(^、或0#(031^?。﹣?lái)實(shí)現(xiàn)。其它面向?qū)ο缶幊陶Z(yǔ)言也可以被使用。 另外,功能性的腳本或邏輯編程語(yǔ)言可以被使用。
[0057] 另外,根據(jù)目前所公開的實(shí)施方式各個(gè)方面和各種功能可以在例如以HTML、XML 或其它格式創(chuàng)建的文件的非編程環(huán)境中被實(shí)現(xiàn),當(dāng)上述文件在瀏覽器程序的窗口中被查看 時(shí)提供圖形-用戶界面的方面或執(zhí)行其它功能。進(jìn)一步地,根據(jù)本發(fā)明的各個(gè)實(shí)施方式可 以用編程元件或非編程元件、或其任意組合來(lái)實(shí)現(xiàn)。例如,網(wǎng)頁(yè)可以利用HTML來(lái)實(shí)現(xiàn),而從 網(wǎng)頁(yè)內(nèi)部調(diào)用的數(shù)據(jù)對(duì)象可以用C++編寫。因此目前所公開實(shí)施方式不限于特定編程語(yǔ) 言,并且還可以使用任何適用的編程語(yǔ)言。
[0058] 被包括在實(shí)施方式內(nèi)部的計(jì)算機(jī)系統(tǒng)可以執(zhí)行目前所公開的實(shí)施方式的范圍之 外的其它功能。例如,系統(tǒng)的各個(gè)方面可以利用已有商業(yè)產(chǎn)品來(lái)實(shí)現(xiàn),所述商業(yè)產(chǎn)品諸如例 如,諸如從西雅圖WA的微軟