專利名稱:一種分布式計算機系統(tǒng)的制作方法
一種分布式計算機系統(tǒng)本發(fā)明與一種客戶/服務(wù)器模式的分布式計算機系統(tǒng)有關(guān),這種 計算機系統(tǒng)可用于廣播式多媒體應(yīng)用中々早期的計算機系統(tǒng)都是獨立的系統(tǒng),通常是些大型主機。后來, 為了處理大型的計算工作,比如大量的分時用戶,又將它們緊密互連 或者說聯(lián)接成計算機簇。隨著個人計算機的出現(xiàn),個人機用戶控制著 大量能力相對較低的獨立的計算機系統(tǒng),這些個人機很快又通過計 算機網(wǎng)絡(luò)相互連接起來,為各個人機用戶提供共享資源和通信能力, 同時也與原先的大型主機共享這些資源。這種網(wǎng)絡(luò)的一種構(gòu)成形式是:包合一臺稱為服務(wù)器的、通常帶有 大量存貯空間的中心計算機。網(wǎng)絡(luò)用戶所使用的程序集中存故在服 務(wù)器的大容量的存J^介質(zhì)上。當(dāng)用戶想要運行一個程序時,該用戶的 計算機就請求服務(wù)器發(fā)回該程序的一份拷貝。服務(wù)器收到請求時就 將前述程序的一份拷貝從其大容量存貯介質(zhì)傳送到用產(chǎn)的個人機的 主存中,并在該個人機上執(zhí)行。.數(shù)據(jù)也同樣集中存放在服務(wù)器上并由 網(wǎng)絡(luò)上的所有用戶共享。存放在服務(wù)器的大容量存貯介質(zhì)上的數(shù)據(jù), 可由所有的網(wǎng)絡(luò)用戶通過發(fā)送請求來訪問。服務(wù)器同時還充當(dāng)網(wǎng)絡(luò) 用戶間的消息通信電子郵件的中繼角色。.在這種系統(tǒng)中的服務(wù)器可 以管理程序、數(shù)據(jù)和消息的存貯及分發(fā),但不能給任何用戶的任一實 際計算任務(wù)貢獻處理能力。也就是說,用戶不能期望服務(wù)器計算機為 在個人機上執(zhí)行的程序執(zhí)行任何處理任務(wù)。雖然這種網(wǎng)洛執(zhí)行有價
值的適聳,但它們不是分希式的i十算機系統(tǒng)。囡為后者可由互連的多 點計算機共同合作執(zhí)行一個單一的計算任務(wù)。作為對前述網(wǎng)絡(luò)的一種改進,該網(wǎng)絡(luò)也可以配置成以下的工作方式網(wǎng)絡(luò)上的一個用戶可以請求服務(wù)器,或者連在網(wǎng)上的其他個人 機執(zhí)行一個程序,因為遠離請求者的計算機(服務(wù)器或其他個人機) 在響應(yīng)來自請求者的請求時執(zhí)行程序,因此稱之為遠程(程序)執(zhí)行。在這樣的系統(tǒng)中,被請求用于遠程執(zhí)行的程序可以由請求者發(fā)送至 遠程計算機,也可以由遠程計算機在響應(yīng)請求時從服務(wù)器獲取。程序到達遠程機后就被執(zhí)行。多臺計算機可以通過這種方式參與合作,共 同執(zhí)行某個計算勸能。最近,已有一些程序釆用分布式的方法執(zhí)行某一單一計算勸能 所需的多個實際計算任務(wù)。以該類型的數(shù)據(jù)庫程序為例,數(shù)據(jù)庫存放在服務(wù)器的大容量存貯介質(zhì)上;如果某用戶想要執(zhí)行一次數(shù)據(jù)庫查詢,存在于該用戶的個人機上的數(shù)據(jù)庠管理程序的一部分就將產(chǎn)生 一個查詢請求,并傳送給服務(wù)器。而處于服務(wù)器上的該數(shù)據(jù)管理程序 的另 一部分將執(zhí)行奎詢處理,例如對奎詢請求語法分析、確定該請求 所指定的數(shù)據(jù)在其大容量存j^介質(zhì)上的位置、訪問這些數(shù)據(jù)并將結(jié) 果通過網(wǎng)絡(luò)發(fā)回給請求者個人計算機。其后再由處在個人機上的數(shù) 據(jù)庫管理程序部分接著處理來自服務(wù)器的數(shù)據(jù),例如將數(shù)據(jù)格式化, 再在屏幕上顯示或在打印機上打印。當(dāng)服務(wù)器忙于處理查詢請求時, 該個人機可以自由地執(zhí)行其他處理工作,而當(dāng)該個人機正在產(chǎn)生奎 詢請求或者處理來自于服務(wù)器的結(jié)果數(shù)據(jù)時,服務(wù)器又可以自由地 處理其他個人機的查詢請求。其他類型的程序也遵從這種稱為客戶-服務(wù)器計算的分布式計 箕古式。i+人機和服各器備作執(zhí)行處理任務(wù),提高了網(wǎng)絡(luò)計算的總 體歡率。這種客戶-服務(wù)器計算機系統(tǒng)以及遠程(程序)執(zhí)行網(wǎng)絡(luò)可以 稱為分布式計算系統(tǒng),因為(系統(tǒng)中).多臺計算機(服務(wù)器和/或相關(guān) 的外圍計算機)合作執(zhí)行計算任務(wù),例如數(shù)據(jù)庫管理。最近,提出了 一種廣播式多媒體程序,更具體地說是交互式電視(TV)程序。交互式TV程序允許電視節(jié)目收視者與節(jié)目進行交互。在交互式的TV系統(tǒng)中,中央廣播臺站(TV網(wǎng)、本地TV演播室、電纜系統(tǒng)等)擁有一臺中央計算機,它類似于服務(wù)器計算機,它將產(chǎn)生與交互式電 枧節(jié)目相關(guān)的信號,并將它與TV(視頻和音頻)信息一起廣播出去。這些信號攜帶著代表交互式電視節(jié)目的數(shù)據(jù),還可能包合命令、可執(zhí)行 程序代碼和/或數(shù)據(jù),用于控制與收視者的"對話"。各收視者所在之處也有一臺計算機,它對應(yīng)于客戶計算機,將接收來自于中央計算機 的命令、可執(zhí)行代碼和/或數(shù)據(jù),執(zhí)行可執(zhí)行代碼,處理所接收到的數(shù) 據(jù)、接收來自用戶的輸入并通過TV顯示屏將數(shù)據(jù)展示給用戶。來自用戶的輸入還可以發(fā)送回給廣播臺站的中央計算機,使用戶能夠與交 互式TV節(jié)目進行交互。美國專利4, 965 , 825 SIGNAL PROCESSING APPARATUS AND METH0DS(1990年10月23日授予Harvey等)描述了一禱臾互式TV系統(tǒng), 其中一個中央廣播臺站(的廣播信號)匯集了命令、可執(zhí)行代碼和數(shù) 據(jù)(例如電視信號的場消隱),由收視者所在場所的計算機接收。收視 者所在處的計算機取出命令、可執(zhí)行代碼和數(shù)據(jù)并執(zhí)行該代碼以處 理該數(shù)據(jù),與用戶交互。收視者計算機加入交互式TV節(jié)目并由中央臺 站控制,以這一點來看,這樣的系統(tǒng)與前迷分布式計算機系統(tǒng)的遠程 (程序)執(zhí)行勸能類似。
在上述所有系統(tǒng)中,中央計算機控制通過網(wǎng)絡(luò)與其連接的外圍 計算機或者響應(yīng)來自它們的請求。亦即,外圍計算機(個人計算機)請 求另 一 臺計算機遠程執(zhí)行一個程序,從另 一 臺計算機請求一個文件 或消息,或者向另一臺計算機發(fā)送一個查詢請求。另一臺計算機僅當(dāng) 在響應(yīng)請求時才給予回昝,例如遠程執(zhí)行,所請求的文件、消息或要 讀取的數(shù)據(jù)。另外,外圍計算機通常需要具備執(zhí)行所期望的程序全部或幾乎全部的所有必要資源,而服務(wù)器僅起數(shù)據(jù)存f:作用或者至多 分擔(dān)計算任務(wù)的一部分。、在這里,發(fā)明人提出了一種分布式計算系統(tǒng),系統(tǒng)中有一臺服務(wù) 器計算機不斷地產(chǎn)生數(shù)據(jù)流。該數(shù)據(jù)流充當(dāng)接受這個數(shù)據(jù)流的計算 機的大容量存貯設(shè)備。該數(shù)據(jù)流中包舍一個又一個的代表著客戶計 算機可能參與的分布式計算應(yīng)用的數(shù)據(jù),亦即可執(zhí)行代碼及有關(guān)數(shù) 據(jù)。從服務(wù)器到客戶的數(shù)據(jù)流傳輸由包合高速、單向的通信路徑的傳 輸機制來完成。客戶機則接收該數(shù)據(jù)流,從中取出分布式計算的表示 數(shù)椐并執(zhí)行該分布式計算應(yīng)用。根據(jù)本發(fā)明的原理,該分布式計算機系統(tǒng)由包合一個個的表示 分布式計算應(yīng)用的數(shù)據(jù)的連續(xù)的數(shù)據(jù)流源,和客產(chǎn)計算機構(gòu)成??蛻?機接收前述數(shù)據(jù)流,從中取出分布式計算應(yīng)用的表示數(shù)據(jù)并執(zhí)行這 個取出的分布式計算應(yīng)用。在根據(jù)本發(fā)明的分布式計算系統(tǒng)中,客戶計算機系統(tǒng)不必具備 執(zhí)行整個程序所需的全部資源,具體地說是主存和大容量存*:介質(zhì)。 相反,因為前述數(shù)據(jù)流已提供了大容量存貯設(shè)備的勸能,客戶機根本 不需要大容量存貯介質(zhì),而且由于僅是當(dāng)前正在執(zhí)行的程序的一部 分需要裝入主存,所以主存的要求也是很低的。當(dāng)目前的(程序)部分
執(zhí)行完成時,它所占用的生存空間就被釋放,然后可以從數(shù)據(jù)流中取 出下一個待執(zhí)行的(程序)部分,將其裝入主存再開始執(zhí)行之。另外,根據(jù)本發(fā)明的分布式計算系統(tǒng)允許客戶計算機用戶可逸 地參與分布式計算任務(wù)。若希望參與,客戶計算機就取出表示分布式 卄算應(yīng)用的數(shù)據(jù)并執(zhí)行該分布式計算應(yīng)用(如前所述)。若不參與, (客戶機)則忽略數(shù)據(jù)流,只執(zhí)行用戶所要做的處理,或者什么處理也 不l這樣的分布式計算系統(tǒng)還允許各參與者客戶計算機在任何時 刻加入分布式計算工作,并且以其固有的執(zhí)行其計算任務(wù)的速度進行執(zhí)行。根據(jù)本發(fā)明的分布式計算系統(tǒng)特別適合于交互式TV應(yīng)用,因為 它允許收視者在任意時i轉(zhuǎn)換頻道收視某個交互式TV頻道,在需要 時參與交互(或根本不參與),并且允許所有的收視者以各自不同的 步調(diào)行進。這在以下環(huán)境中尤其有價值:一是商業(yè)交互式電視臺將其 可執(zhí)'行代碼及相關(guān)數(shù)據(jù)在交互式節(jié)目中播出,二是當(dāng)收視者希望切 換頻道時。插圖簡介 在所附插圖中圖l是根據(jù)本發(fā)明的一種分布式計算系統(tǒng)的模塊圖; 圖2是
圖1中的服務(wù)器計算機的模塊構(gòu)成圖;圖3是一張時序圖,其中說明了圖l所示的分布式計算系統(tǒng)中的 服務(wù)器計算機所產(chǎn)生的數(shù)據(jù)流;圖4是圖1中所示的客戶計算機的模塊構(gòu)成圖。圖l是根據(jù)本發(fā)明的一種分布式計算系統(tǒng)的模塊構(gòu)成圖。知圖l 所示, 一臺服務(wù)器計算機IO,它可合有一臺大型計算機系統(tǒng),通過傳
輸機制30與多臺客戶計箕機20耦合。服務(wù)器計算機10可以與三臺以 上的圖1所示的客戶計算機20耦合,而且備客戶計算機20可分散在廣 闊的地理位置??蛻粲嬎銠C22雙向耦合至本地計算機40、輔助數(shù)據(jù)處 理系統(tǒng)50和中央處理設(shè)施60上。該中央處理設(shè)施與服務(wù)器計算機雙 向耦合。該中央處理設(shè)施60也可以與圖1所示的服務(wù)器計算機10之外 的其它設(shè)施相連。本地計算機40又雙向耦合至大容量存膽設(shè)備70???產(chǎn)計算機22通過在顯示屏或其他輸出設(shè)備(來畫出)上向用產(chǎn)80提供 信息。以及經(jīng)由鍵盤或其它輸入設(shè)備(亦未畫出)接收來自用戶的信息來實現(xiàn)與用戶的交互??蛻粲嬎銠C24和26也可與其它的用戶交互(為筒化插圖未畫出)。另外,客戶計算機"和26雙向耦合至中央處理設(shè)施60。然而這些 鏈路是可選的。對于任何客戶計算機20的要求僅限于與用戶交互的 途徑以及在傳輸機制30的連接。到達本地計算機、輔助數(shù)據(jù)處理系統(tǒng) 和中央處理設(shè)施60的各條鏈路都是可選的,不是每臺客戶計算機20都必須具備。傳輸機制30包有一單向的高速數(shù)字數(shù)據(jù)鏈路,例如從服務(wù)器70 至客產(chǎn)計算機ZO的光纖或數(shù)字衛(wèi)星鏈路。該數(shù)據(jù)可以經(jīng)由分組數(shù)據(jù)系統(tǒng)在傳輸系統(tǒng)30上傳送。在這樣的系統(tǒng)中,由包合了表示分組中的數(shù)據(jù)類型的標(biāo)識信息、實際數(shù)據(jù)以及 其他內(nèi)容的數(shù)據(jù)分組構(gòu)成的分組流通過該數(shù)據(jù)鏈路傳送。這樣的分 組數(shù)據(jù)系統(tǒng)允許多個分別由其分組中的標(biāo)識信息標(biāo)識的辨互獨立的 數(shù)據(jù)流在同 一 分組流中分時復(fù)用。另外,也可能通過復(fù)用傳輸機制30的構(gòu)成成分之一的同一物理介質(zhì)(光纖或衛(wèi)星射頻鏈路),形成多個分組數(shù)據(jù)流通道。例如,不同
的數(shù)據(jù)流可以使用不同頻率的載波進行調(diào)制,而這些調(diào)制后的載波 又可以經(jīng)由衛(wèi)星鏈路上各自的轉(zhuǎn)發(fā)器發(fā)送。再者,如果其轉(zhuǎn)發(fā)器具有 足夠的容量,也可能通過分時復(fù)用在同一調(diào)制后的載波上發(fā)送多路 數(shù)據(jù)流。各客戶計箅機"分別擁有一數(shù)據(jù)接收器,用于選棒在傳輸機制30上傳送的某個分組流、接收所選分組流并從中取出數(shù)據(jù)。在前述例子中,該數(shù)據(jù)接收器可能合有可調(diào)的解調(diào)器,用于接收來自衛(wèi)星鏈路 的不同的調(diào)制信號。另外,該數(shù)據(jù)接收器還可以合有用于對由調(diào)制載 波所載的不同的數(shù)據(jù)流進行時分多路解調(diào)的電路。運轉(zhuǎn)時,服務(wù)器10為客戶計算機20產(chǎn)生分組流形式的數(shù)據(jù)流。服 務(wù)器10不斷向該數(shù)據(jù)流插入分組或后繼分組,這些分組合有表示分布式計算應(yīng)用的數(shù)據(jù),其申至少包括一個可執(zhí)行代碼模塊。該代碼模 塊合有用于客戶計算機20的可執(zhí)行代碼。例如,客戶計算機22的數(shù)據(jù) 接收器不斷監(jiān)枧傳輸機制30上的數(shù)據(jù)流的分組。當(dāng)該數(shù)據(jù)中存在這 樣的分組,其標(biāo)識信息表明該分組合有客戶計算機22所需的代碼模 塊(或代碼模塊的一部分)時,客戶機22將撿測到這些分組,并從分組中取出代碼模塊(或代碼模塊的一部分)并將它裝入主存。若代碼模 塊接收完畢,客戶機22就將開始執(zhí)行該代碼。可以將多個代碼模塊故入連續(xù)數(shù)據(jù)流中,其中每個模塊舍有同 一分布式計算應(yīng)用的不同部分。例如,有可能釆用這樣一種方式將分布式計算應(yīng)用分割成多個部分,即每次只須執(zhí)行一個部分。該分布式 計算應(yīng)用的當(dāng)前需要執(zhí)行的部分被裝入客戶計算機22的主存。當(dāng)前部分執(zhí)行完畢后,剛從數(shù)據(jù)流中取出該分布式計算應(yīng)用的后繼部分 的可執(zhí)行代碼的代碼模塊,裝入主存并執(zhí)行。各部份僅當(dāng)需要時才從 數(shù)椐流中取出。若客戶計算機22帶有足夠的內(nèi)存,也可以同時裝入多 個代碼模塊并在它們之間切換,而不必從數(shù)據(jù)流中讀取。但這并不是必須的。以這種方式構(gòu)造分布式計算應(yīng)用,客戶計算機22所需的內(nèi)存 量可以減少。服務(wù)器10也可以在數(shù)據(jù)流中加入一個或多個合有一個或多于一個數(shù)據(jù)模塊的分組。這些數(shù)據(jù)模塊合有由代碼模塊中的可執(zhí)行代碼所處理的數(shù)據(jù)。在執(zhí)行來自于先前取出的代碼模塊中的代碼之前或之中,客產(chǎn)機22可以請求訪問這些數(shù)據(jù)模塊之中的數(shù)據(jù)。若然,客戶 計算機22就將監(jiān)視該數(shù)據(jù)流以取得所需的一個或多個數(shù)據(jù)模塊。當(dāng)合有這些數(shù)據(jù)模塊(或數(shù)據(jù)模塊的部分)的分組出現(xiàn)在數(shù)據(jù)流中時, 就取出它們,并將其內(nèi)容裝入客戶計算機22的主存。所有的數(shù)據(jù)模塊 接收.完畢后;客戶機22開始或者繼續(xù)執(zhí)行來自于代碼模塊的代碼,對 來自于所接收到的一個或者多個數(shù)據(jù)模塊中的數(shù)據(jù)進行處理。象代 碼模塊一樣,如果客戶計算機22帶有足夠的存j^器,可以將多于一個的數(shù)據(jù)模塊裝入內(nèi)存。服務(wù)器10可以更進一步地fe目前包合在數(shù)據(jù)流中的代碼和數(shù)據(jù) 模塊的目錄信息的一個或多個分組反復(fù)加入數(shù)據(jù)流。該目錄合有關(guān) 于出現(xiàn)在數(shù)據(jù)流中的所有代碼和數(shù)據(jù)模塊的列表,以及關(guān)于這些模 塊的信息。若數(shù)據(jù)流中有目錄存在,那么客戶計算機22在從該數(shù)據(jù)流 中取出任何代碼或數(shù)據(jù)模塊之前要先監(jiān)視該數(shù)據(jù)流以找到目錄。當(dāng)數(shù)據(jù)流中出現(xiàn)合有目錄(或部分目錄)的分組時,取出它們,并將其數(shù) 據(jù)裝入客戶計算機"的主存中。目錄全部接收完畢后,客戶機22整理目錄中的各項,再按如前所述從數(shù)據(jù)流中取得第一個代碼及/或數(shù)據(jù) 模塊并開始執(zhí)行。.
任何一臺客戶計箕機20可以在任何時刻加入由分組流所表示的 分布式計算應(yīng)用,并且可以備自的速度運行,通常這些都決定于用戶 SO (的輸入)。為此,服務(wù)器10反復(fù)將目錄和所有的、客戶計算機20可 能請求執(zhí)行的分布式計算勸能的部分的代^和數(shù)據(jù)模塊放入傳輸機 制30上的數(shù)據(jù)流??蛻粲嬎銠C"中的某臺計算機任何時侯加入分布 式計算勸能時,它都首先監(jiān)視傳輸機制30上的新選擇的分組流等待 目錄模塊,取出它并如前所述進行處理。在執(zhí)行期間,客產(chǎn)機20中的某臺計算機任意時刻需要新的代碼和/或數(shù)據(jù)模塊時,它都監(jiān)視傳輸 機^上的數(shù)據(jù)流,等待所需的新代碼和/或數(shù)據(jù)模塊,取出它,若是代碼模塊則按前述那樣執(zhí)行,若是數(shù)據(jù)模塊則如前述那樣處理。分組裝置流中也可合有輔助數(shù)據(jù)分組。該數(shù)據(jù)對于客戶計算機 22執(zhí)行代碼來說不是必須的,但它也可能與其有關(guān)。這是因為用戶80 可能基于所接收到的輔助數(shù)據(jù)與在客戶機22上執(zhí)行的程序發(fā)生交 互6客戶計算機22中的數(shù)據(jù)流接收器識別傳輸機制30上的數(shù)據(jù)流中 的輔助數(shù)據(jù)分組,并將它們直接傳遞給輔助數(shù)據(jù)處理器50。輔助數(shù)據(jù) 處理器50獨立于客產(chǎn)計算機22處理其分組。若輔助數(shù)據(jù)必須呈現(xiàn)給 用.戶80,輔助數(shù)據(jù)處理器50可能在它自己的顯示設(shè)備(來畫出)顯示, 該顯示器可以與客戶計算機22共享;或者在與客戶計箅機22相連的 顯示設(shè)備(未畫出)(該顯示設(shè)備可與輔助數(shù)據(jù)處理器50所共享)上顯 示以給用產(chǎn)SO提供單一的信息顯示。輔助數(shù)據(jù)處理器50可以與其他 展示部件(未畫出)連接,但這與數(shù)據(jù)類型有關(guān)。對于交互式TV系統(tǒng),輔助數(shù)據(jù)包括基本電視信號的視頻和音頻 部分。例知,該輔助數(shù)據(jù)可包合合有代表了電視圖象的MPEG或類似 MPEG的編碼數(shù)據(jù)的視頻分組,以及合有數(shù)字編碼的音頻數(shù)據(jù)的音頻 分組。而且,可以有多個不同的音頻分組流以提供用于立體聲、第二音頻節(jié)目(Second audio program SAP)或多語言能力的多個音頻通 道。對于這種系統(tǒng)中的輔助數(shù)據(jù)處理器50,那些視頻分組可提供給能 產(chǎn)生標(biāo)準(zhǔn)視頻信號的MPEG (或類似的)解碼器(未畫出),而標(biāo)準(zhǔn)視頻 信號又可以提供給電視接收器或枧頻監(jiān)視器(未畫出)。那些音頻分 組則提供給能為電枧接收器或揚聲器(未畫出)提供標(biāo)準(zhǔn)音頻信號的 已知音頻解碼器(來畫出)。在這樣的交互式TV系統(tǒng)中,作為對執(zhí)行可執(zhí)行代碼模塊的響應(yīng), 客戶計算機22可以產(chǎn)生圖形顯示以向用戶80提供信息。這些圖形顯 示可以按已知的方式與來自于MPEG解碼器的標(biāo)準(zhǔn)枧頻信號結(jié)合,而 且該混合的圖象顯示在電枧接收器或視頻監(jiān)視器上??蛻粲嬎銠C22 還可以產(chǎn)生聲音以向收視者提供其他信息。所產(chǎn)生的聲音可^按.已 知的方式與來自于音頻解碼器的標(biāo)準(zhǔn)音頻信號結(jié)合,并且通過電視 接收器或揚聲器輸出。另外,時間編碼數(shù)據(jù)也可以包括在電視輔助分組數(shù)據(jù)流與表示 交互式TV應(yīng)用的分組數(shù)據(jù)流的任何一個或同時在兩者中。這樣就使 得客戶計算機22所產(chǎn)生的任何圖形圖象或聲音可以與來自于輔助數(shù) 據(jù)的電枧信號同步。在這種情況下,客戶計算機22就可以訪問該時間 代碼數(shù)據(jù),并根據(jù)該時間代碼數(shù)據(jù),控制圖形圖象和/或聲音在希望 的時刻產(chǎn)生。在這種交互式TV系統(tǒng)中,客戶計算機22和輔助數(shù)據(jù)處理器50都 可以包括在單一設(shè)備中,例如電視接收器或電視set-top解碼盒中。電視接收器或解碼盒將包合連接至本地計算機或其他設(shè)備的連接 器0
用戶30向正在客戶機22上運行的程序提供輸入。服務(wù)器10可能 需要這些輸入數(shù)據(jù)以調(diào)整該分布式計算勸能。例如在交互式TV系統(tǒng) 中,用戶80可能通過手持遙控部件向客戶計算機提供輸入。用戶數(shù)據(jù)經(jīng)由中央處理設(shè)施50傳送到服務(wù)器計算機10。在一個實施例中,數(shù)據(jù)可以通過調(diào)制解調(diào)器經(jīng)由電話系統(tǒng)(在此充當(dāng)中央處 理設(shè)施60)從客戶計算機20傳送到服務(wù)器計算機10。服務(wù)器10在執(zhí)行 其分布式計算勸能部分期間將接收并處理來自于客戶計算機ZO的數(shù)據(jù)o服務(wù)器計算機10可以根據(jù)所接收到的數(shù)據(jù),按下述方式在傳輸 機制30上的數(shù)據(jù)流中產(chǎn)生新的、或修改現(xiàn)有的代碼和/或數(shù)據(jù)模塊。 抑或,服務(wù)器計算機10也可以通過中央處理設(shè)施60立即向客戶計算' 機20返回信息。在所有參與該分布式計算勸能的客戶計算機"都要 處理新產(chǎn)生的代碼和/或數(shù)據(jù)模塊中的錯息,而從服務(wù)器計算機10經(jīng) 由中央處理設(shè)施60送達客戶計算機20的信息僅與特定的作為信息目 的的地的客產(chǎn)計算機(22,24,26)有關(guān)。作為另一實施例,中央處理設(shè)施50可以合有自己的計算機系統(tǒng), 該計算機通過調(diào)制解調(diào)器經(jīng)由電話系統(tǒng)分別與客戶計算機"和服務(wù) 器計算機10相連。在上述兩種實施例中,中央處理設(shè)施S0都是通過電話系統(tǒng)提供訪問其他計算機或別的處理設(shè)施(未畫出)的途徑。這樣, 若客戶計算機20或服務(wù)器計算機在執(zhí)行分布式計算勸能時需要來自其他計算機系統(tǒng)的信息,它們就可以通過調(diào)制解調(diào)器經(jīng)由電話系統(tǒng) 訪問那些計算機系統(tǒng)??蛻粲嬎銠C22上的輸入/輸出(I/0)端口耦合至本地計算機40的相應(yīng)端口 。本地計算機40與客戶計算機22同處一地。本地計算機AO可
以是由客戶計算機22的用戶使用的個人計算機、或者是大型計算機, 或者是與客戶計算機22同處一地的計算機網(wǎng)絡(luò)。這就使得客戶計算 機"可以訪問個人計算機或者與客戶計算機22同處一地的計算機網(wǎng) 上的大容量存j^器 0上的數(shù)據(jù)。另外,客戶計算機22可以利用本地計 算機40的大容量存j^器70來存貯以后要讀取的數(shù)據(jù)。本地計算機40很可能帶有計算機監(jiān)視器之類的輸出設(shè)備(未畫出)和計算機鍵盤之類的輸入設(shè)備(亦來畫出)。這兩者都可以如前述鄰樣與客戶計算機 22和/或輔助數(shù)據(jù)處理器50共享。例如,圖l所示的分布式計算系統(tǒng)可以是某個大范圍的公司計算 系統(tǒng)的一部分,而服務(wù)器10則可以處于該公司的中心位置??蛻粲嬎?機22可以處于遠程地區(qū),本地計算機40則可以與該處的個人計算機網(wǎng)連接。該處的職員也許會在該網(wǎng)絡(luò)上的服務(wù)器上存肅共享數(shù)據(jù)(例 如財政信息)。而分布式計算勸能則可以包括從遠程客戶計算機收 集、處理當(dāng)?shù)刎斦畔?,并向客戶計算機返回總體財玫結(jié)果信息。在 這樣的應(yīng)用中,運行于客戶計算機22上的可執(zhí)行代碼通過I/0端口訪 問本地計算機40的數(shù)據(jù)(或者來自于連接的大容量存,器70或者是 通過網(wǎng)絡(luò)),并通過中央處理設(shè)施60將數(shù)插發(fā)送至服務(wù)器計算機10。 服務(wù)器計算機10繼續(xù)其基于從客戶計算機22(和其他客戶計算機20)處接受到的信息的處理,并將處理.結(jié)果經(jīng)由中央處理設(shè)施eo或傳輸機制30上的數(shù)據(jù)流返回給客戶計算機20。作為另一個例子,該分布式計算系統(tǒng)可以是廣播家庭購物節(jié)目 的交互式電視系統(tǒng),這種節(jié)目也作為一種分布式計算應(yīng)用。在這種情 形下,輔助數(shù)據(jù)則背載著電視信號的視頻和音頻部分,它們可以顯示 和描述供售物品;也可以現(xiàn)場演員以及由中央演播室產(chǎn)生的疊加圖
形。枸成該支互式電枧應(yīng)用的代碼和數(shù)據(jù)模塊可以包合持售產(chǎn)品的 有關(guān)數(shù)據(jù),以及用于以下述方式與用戶交互的可執(zhí)行代碼。當(dāng)某收視者想要訂購某物品時,可以按壓TV遙控器上的一個按 鈕。該按鈕信號會通知客戶計算機22顯示一系列必要的命令和菜單, 用來引出發(fā)送訂單的必要信息,例如物品編號,收視者的名字和地 址、付款方法以及信用卡號(若需要)等等。這些指令是在客戶計算機 中產(chǎn)生并疊加于電視視頻圖像上的圖形。計算機也可以產(chǎn)生聲音并 以大容量或替換電視音頻的方式結(jié)合進電枧音頻。收視者則通過TV 遙控器提供所需的信息以響應(yīng)那些指令。當(dāng)那些在屏幕上顯示或/和 聲音指令所要求的信息已由用產(chǎn)輸入后,這些信息將經(jīng)由客產(chǎn)機的 調(diào)制解調(diào)器發(fā)送至中央計算機。此后中央計算機也可以反向傳送訂 單確認信息。有關(guān)收枧者的永久信息(即姓名、地址、付款方式及信用卡號)也 可以由收視者一次性預(yù)先輸入,所以在發(fā)—出訂單^就不必每次請求 這些信息。這些信息存貯在客戶計算機的永久存貯器中。這樣,當(dāng)投 放訂單時,就從永久存j^器中取出這些信息,再添加物品編號棄發(fā)送 給中央計算機。而且,還可能通過插入在數(shù)據(jù)流中的時間編碼或其他 命令,讓客戶計算機知道那些物品目前有售。這樣,收視者就可以通 過簡單地在電視遙控的按鈕上按一下就完成了訂購(搡作)。作為響 應(yīng),,客戶計算機可以fe先前接收到的有關(guān)在售物品的信息與預(yù)先存 貯的有關(guān)收視者的個人信息結(jié)合起來,向中央計算機發(fā)送訂單并接 '收返回的確認。由于有關(guān)家庭購物節(jié)目的代碼和數(shù)據(jù)模塊反復(fù)在數(shù)據(jù)流中出 現(xiàn),收枧者可在任何時間調(diào)入該節(jié)目并與其交亙。類似地,用產(chǎn)不是
必須交互式地參與其中而是可以不理睬節(jié)目中的交互部分??蛻粲嬎銠C22也可以從本地計算機40接收控制倌息。例如,使用 本地計算機A0的用戶80可以經(jīng)由I/0端口控制客戶計算機22選擇傳 輸機制30上的數(shù)據(jù)流之一,處理數(shù)據(jù)流中當(dāng)前廣播的節(jié)目,并通過連 接至本地計算機40的輸入和輸出設(shè)備(未畫出)與用戶80交互。另一種可能性是,用戶80可以讓客戶計算機22不是通辻傳輸機 制30上的數(shù)據(jù)流而是經(jīng)由中央處理設(shè)施60訪問服務(wù)器計算機10,通辻該雙向鏈路捧收代碼和數(shù)據(jù)模塊。圖2是圖1中所示的服務(wù)器計算機10的模塊圖。在圖2中,分布式 計算應(yīng)用代碼和數(shù)據(jù)源101包合了應(yīng)用程序編譯器和軟件管理模塊 (未畫出),并且有一輸出端耦合至流構(gòu)造器(flow build") 102的輸 入端。流構(gòu)造器102的輸出端又耦合至傳輸打包器(transport packet,'zer)104的輸入端。傳輸打包器104的輸出端繼而耦合至分組 多路復(fù)用器106的第一輸入端。分^多路復(fù)用器106的輸出端再耦合 至傳輸多路復(fù)用器110的輸入端。^輸多路復(fù)用器110的輸出端耦合 至構(gòu)成傳輸機制30 (圖l)的物理介質(zhì)。分組多路復(fù)用器106的第二輸 入端耦合至輔助數(shù)據(jù)分組源107。時鐘107的備輸出端分別耦合至傳 輸打包器107和輔助數(shù)據(jù)源107的相應(yīng)輸入端。數(shù)據(jù)收發(fā)器103有兩個 雙向端口,第一雙向端口耦合至中央處理設(shè)施60(圖1),第二雙向端口耦合至應(yīng)用代碼和數(shù)據(jù)源ioi。應(yīng)用代碼和數(shù)據(jù)源101、流構(gòu)造端102、傳輸打包器104、輔助數(shù)據(jù) 源107、時鐘109和分組多路復(fù)用器106結(jié)合起來就形成了傳輸機制的 通道源(channel source) 108,如虛線框所示。合有與通道源108類似 組件的其他通道源(未在圖l中畫出)由另一個虛線框108a表示。別的
通遒源(108a)具有連接至傳輸多路復(fù)用器110的其他輸入端的輸出 端,而且也可以具有通過數(shù)據(jù)收發(fā)器耦合至中央處理設(shè)施的輸入端。 至于運行機制,表示了分布式計算應(yīng)用程序的數(shù)據(jù),以及與在傳102。這些數(shù)據(jù)可以以合有表示了代碼和數(shù)據(jù)模塊的文件形式,或以 提供如何構(gòu)造代碼和數(shù)據(jù)模塊的腳本(scripts).的形式或者其他形式提供。代碼和數(shù)據(jù)模塊可以不變也可能動態(tài)地變化,這要根據(jù)經(jīng)由 中央計算設(shè)施60和/或其它途徑從客戶計算機收到的輸入來確定???執(zhí)行代碼及有關(guān)數(shù)據(jù)文件可根據(jù)應(yīng)用程序靈所用的編程語言按已知 的方式通過編譯器、解釋器或匯編器來產(chǎn)生。由關(guān)模塊發(fā)送的數(shù)據(jù)文件合有以下信息需要加入數(shù)據(jù)流的目錄、代碼和數(shù)據(jù)模塊的反復(fù)發(fā) 送頻率;客戶計算機存貯備模塊并充成整個應(yīng)用程序執(zhí)行所需的主存大小。若是代碼模塊還有該模塊的優(yōu)先敬信息。流構(gòu)造器10Z處理來自應(yīng)用源101的數(shù)據(jù)。作為(對輸入數(shù)椐的) 響應(yīng),流構(gòu)造器102將構(gòu)造一個反映應(yīng)用程序總體圖的目錄模塊。目錄模坱中的信息包括:反復(fù)在數(shù)據(jù)流中發(fā)送的所有代碼和數(shù)據(jù)模塊的標(biāo)識,這些模塊的大小及其它相關(guān)信息。然后可通過處理這些應(yīng)用程序表示數(shù)據(jù)來產(chǎn)生代碼和數(shù)據(jù)模塊。照此產(chǎn)生的目錄、代碼和數(shù)據(jù)模塊再通過附上模塊頭、檢和/或糾錯碼進行格式化,同時還將產(chǎn)生發(fā)送時間表。完成所有這些處理后,就將按先前產(chǎn)生的時間表將這些表示目錄模塊、代碼和數(shù)據(jù)模塊的數(shù)據(jù)一次次地呈交給傳輸打包器 104。當(dāng)流構(gòu)造器102把目錄模塊、代碼及數(shù)據(jù)模塊提交給傳輸打包器 104時,傳輸打包器1(H將產(chǎn)生表示這些模塊的分組流。每個分組具有
預(yù)定的固定長度,它是通過將來自^構(gòu)造器的數(shù)據(jù)流分割成位組并 給各位組加上合有分組數(shù)據(jù)標(biāo)識信息的分組頭以及檢/糾錯碼等信 息后形成的,這種分割的目的就是使備分組都有相同的預(yù)定長度。 (若來自流構(gòu)造器的數(shù)據(jù)不足于填滿一個分組,就用無用數(shù)據(jù)瑱充)。 這些分組將與輔助數(shù)據(jù)分組一起以已知的方式在分組多路復(fù)用器106中經(jīng)過分時多路復(fù)用形成單一的分組流。所產(chǎn)生的分組也可以有可變的長度,這里備分組的分組頭中就要有分組長度信息。另外根據(jù) 來自于時鐘109的數(shù)據(jù),時間編碼數(shù)據(jù)分組也要加入數(shù)據(jù)流分組和/或輔助數(shù)據(jù)分組中。來自于所有通道源U08,108a)的分組流將通過多路復(fù)用形式經(jīng) 由傳輸機制30發(fā)送的一個單一傳送通道。如前所迷,各分組流可以進行分頻復(fù)用,每個分組流用不同頻率的載波進行調(diào)制,而全部載波都 逸辻衛(wèi)星鏈路按已知的方式發(fā)送到客戶計算機20。另外,若一個載波通道具有足夠的帶寬,各分組流也可以通過靜態(tài)分時復(fù)用以已知的方式使用同一載波。例如,有人建議通過分時復(fù)用同一衛(wèi)星鏈路來載送多達八道的交互式電枧數(shù)據(jù)流。經(jīng)由中央處理設(shè)施60(圖1)來自于客戶計算機20的數(shù)據(jù),由服務(wù)器計算機10通過數(shù)據(jù)收發(fā)器103接收。數(shù)據(jù)收發(fā)器103可以有自己的 處理器(未畫出)。若立即有了響應(yīng),收發(fā)器103的處理器就將杷該響 應(yīng)經(jīng)由中央處理設(shè)施按次序返回給特定客戶計算機(22-26), —組特 定的客戶計算機20、或者所有的客戶計算機20。如果需要對所有的客 戶計算機20給出共同的響應(yīng),程序炅可以通過使用應(yīng)用程序編譯器 修改應(yīng)用代碼和數(shù)據(jù)流101中的代碼和數(shù)據(jù)文件來實現(xiàn)。修改后的文 件再由流構(gòu)造器重新處理以產(chǎn)生另一個流。應(yīng)用源101中的代碼和數(shù)
掘文件還有可能在響應(yīng)來自收發(fā)器103的數(shù)據(jù)時自動進行動態(tài)(實時 地)修改。這樣,當(dāng)接收到來自客戶計算機20的數(shù)據(jù)時,流就會(自動)更新。
圖3是圖1所示的分布式計算系統(tǒng)中服務(wù)器計算機10所產(chǎn)生的數(shù) 據(jù)流的時序圖。在圖3中,服務(wù)器計算機10同時產(chǎn)生了多個分組流 32-38。圖中所示的各分組流分別用一水平帶表示,水平帶被分割成 占用相同時間具有相同(數(shù)據(jù))位數(shù)的分組。正如前述,任一分組流中 的分組都可依所載送的數(shù)據(jù)量而具有不同的大小。從圖3可以看.出, 各分組的開始時間并不同步。雖然可以使這些分組同步,伹是沒有這 個必要。在圖3中,載送表示目錄的數(shù)據(jù)的分組指定為DIR,載送表示 代碼模塊的數(shù)據(jù)的分組指定為CM,載送表示數(shù)據(jù)模塊的數(shù)據(jù)的分組 指定為DM,而載送輔助數(shù)據(jù)的分組指定為AUX。
在最上方的分組序列32中,最左邊的分組CM合有表示代碼模塊的數(shù)據(jù)。其后跟著三個合有輔助數(shù)據(jù)的分組AUX,它們之后又是另一個合有表示代碼模塊數(shù)據(jù)的分組塊CM。從分組序列32中可以看出,代碼模塊會重復(fù)出現(xiàn)。在兩個重復(fù)出現(xiàn)的代碼模塊分組CM之間可以有更多或更少的(其他)分組。其重復(fù)頻率可由程序員在編制應(yīng)用(程序)時指定,也可應(yīng)用執(zhí)行期間發(fā)生變化。
在第二個分別序列34中,最左方的分組合有輔助數(shù)據(jù)AUX。其后的兩個分組合有某代碼模塊(CM1,CMZ)的重復(fù)部分。最后一個分組舍有輔助數(shù)據(jù)AUX。從分組序列34可以看出,若代碼模塊太大不夠裝入一個分組,則可以使用多個分組,每個分組合有代碼模塊的一部分。 雖然分組序列34只畫出了兩個舍有代碼模塊的分組(CM1和CMZ);但實際上可以根據(jù)代碼模塊的大小使用任意多個分組。帶有代碼模塊
的兩個分組(CM1,CM^將在分組序列34中重復(fù)出現(xiàn)(來畫出),正如前 述那樣。在分組序列36中,最左方的分組合有表示代碼模塊(CM)的數(shù)據(jù)。 后一分組(DM1)是第一個合有表示數(shù)據(jù)模塊的數(shù)據(jù)的分組。再后面的 一個分組合有輔助數(shù)據(jù)AUX。最后一個分組(DM2)是合有表示數(shù)據(jù)模 塊數(shù)據(jù)剩佘部分的第二個分組。從分組序列36中可以.看出,與代碼模 塊(CM)有關(guān)的數(shù)據(jù)模塊(DM1, DM2)也可包合在分組流中。代碼模塊 (CM)和數(shù)據(jù)模塊(DMl, DM2)將在分組序列36中重復(fù)出現(xiàn)。代碼模塊 (CM)的重復(fù)率可以不同于數(shù)據(jù)模塊(DM1,DN^),而且兩者都可由應(yīng)用程序員確定并可以在應(yīng)用執(zhí)行的過程中改變。還可以看出,如果數(shù)據(jù)模塊太大,不能裝入一個分組,就可以使 用多個分組,每個分組合有數(shù)據(jù)模塊的一部分。雖然分組序列36中只 畫出了兩個舍有數(shù)據(jù)模塊的分組(DM1,DM2),但實際上可按數(shù)據(jù)模塊 的大小使用任意多個分組。另外還可看出,多個載送數(shù)據(jù)模塊的分組 不必連續(xù)出現(xiàn),這些分組中間可以插入其他分組。對于代碼模塊或目 錄模塊也是一樣(未畫出)。在最下方的分組序列38中,最左邊的分組合有表示目錄的數(shù)據(jù) (DIR)。其后個分組合有表示代碼模塊的數(shù)據(jù)(CM);再后面是一個舍有輔助數(shù)據(jù)的分組(AUX)和一個合有表示數(shù)據(jù)模塊的數(shù)據(jù)的分組 (DM)。在分組序列3S中可以看出,所有的目錄模塊(DIR)、代碼模塊 (CM)和數(shù)據(jù)模塊同在一個分組流中。這三種模塊的重復(fù)頻率可以備 不相同,都可由應(yīng)用程序員指定并可在應(yīng)用執(zhí)行期間發(fā)生改變。圖4是圖1所示的客戶計算機22的模塊圖。在圖4中,傳輸機制30 (圖1)耦合至流選懌器202的輸入端。流逸懌器202的輸出端分別耦合
至輔助數(shù)插取出器204及分組數(shù)據(jù)取出器206的輸入端。輔助數(shù)裙取 出器204的輸出端耦合至輔助數(shù)據(jù)處理器50 (圖l)。分組數(shù)據(jù)取出器 的雙向端口耦合至流I/0適配器208的相應(yīng)端口。流I/0適配器208的 控制輸出端耦合至流選擇器202的相應(yīng)控制輸入端。結(jié)合流'選擇器 202、輔助數(shù)據(jù)取出器204和分組數(shù)據(jù)取出器就形成了客戶計算機22 的數(shù)據(jù)流接收器"7,如虛線框所示。如圖4中的另一虛線樞所示,流I/0適配器208是客戶機2Z處理單 元224的一部分。除此之外處理單元224還包括處理器210、讀/寫存貯 器(RAM) 212和只讀存J^器(ROM) 214,它們都按已知的方式通過系統(tǒng) 總線216耦合在一起。額外的輸入輸出設(shè)施由耦合至本地處理器40(圖i)的i/o端口zis提供;用產(chǎn)i/o適配器用于與用戶ao通信,調(diào)制解調(diào)器222耦合至中夾處理設(shè)施60 (圖l);這些部件也都以已知的方式 耦合至系統(tǒng)總線216。還可以將其他適配器(來畫出)掛至系統(tǒng)總線 216來為處理單元224提供其他能力。正如前述,輔助數(shù)據(jù)取出器204,1/0端口218及調(diào)制解調(diào)器222在 根據(jù)本發(fā)明的客戶計算機20中不是必須的。在圖1和圖4中畫出它們是為了說明可選的附加勸能。至于搡作機制,處理單元224的處理器Z10讀馭永久存貯在 R0M2U中或暫時存^在RAM212中的程序指令,并執(zhí)行所讀取的指令, 從ROMZlZ和/或RAMZ"中讀出數(shù)據(jù)、向RAMZlZ寫數(shù)據(jù),并且/或者經(jīng)由 1/0端口向外部(用戶I/0適配器220,及/求調(diào)制解調(diào)器)提供或從外 部接收數(shù)據(jù)。處理器210也可以在程序的控制下從數(shù)據(jù)流中取得代碼 和/或數(shù)據(jù)模塊。該數(shù)據(jù)流是通過傳輸機制30 (圖l)向客戶.計算機22 提供的。為了接收該數(shù)據(jù),處理器210首先命令流I/0適配器Z0B向流
選擇器202發(fā)送選擇控制信號,這一動作通常是在響應(yīng)來自用戶1/0 適配器"0的用戶輸入時發(fā)生的。接蓍處理器210向流I/0適配器208 發(fā)生對特定的代碼或數(shù)據(jù)模塊的請求。流I/0適配器208則將該請求 遞交給分組數(shù)據(jù)取出器204。傳輸機制30 (圖l)向流選懌器202提供它所載送的全部分組流 (圖3的3Z-38),而流選擇器則只讓所選擇的分組流通過。輔助數(shù)據(jù)取 出器204監(jiān)枧所選擇的分組流,從中取出輔助數(shù)據(jù)分組并將它們直接 遞交給輔助數(shù)據(jù)處理器50 (圖l)。分組數(shù)據(jù)取出器206也同樣監(jiān)視所 選擇的分組流,從中取出流I/0適配器208所請求的目錄、代碼和/或 數(shù)據(jù)模塊分組并將它們提交給流1/0適配器208。分組中返回給流1/0 適配器208的數(shù)據(jù)提供給RAM212。當(dāng)整個模塊全部從分組流(可能需 要多個分組,如前所迷)中取出后,流I/0適配器208就通知處理器 210。其后處理器210就可以繼續(xù)執(zhí)行其程序。圖l所示的分布式計算系統(tǒng)的數(shù)據(jù)流與釆用先前技術(shù)的系統(tǒng)中 的大容量存j^系統(tǒng)類似。在處理器210上執(zhí)行的應(yīng)用程序請求目錄中所列的模塊的方式,在先前技術(shù)系統(tǒng)中程序請求預(yù)先存貯在大容量 存J^介質(zhì)上的合有代碼或數(shù)據(jù)模塊的文件的方式相同。數(shù)據(jù)流接收 器207類似于大容量存^設(shè)備,而流1/0 208的工作方式與先前技術(shù)系統(tǒng)中大容量存j^器適配器定位所需數(shù)據(jù)、將數(shù)據(jù)傳送至系統(tǒng)內(nèi)存的預(yù)定區(qū)域(i/o緩沖區(qū))并通知處理器讀取完畢的工作方式類似。然而,流I/0適配器208只能從數(shù)據(jù)流中讀取代碼和數(shù)據(jù),而不能向數(shù)據(jù) 流寫入數(shù)據(jù)。如前所述,分布式計算應(yīng)用可被分割成多個代碼模塊,每個代碼 模塊合有該分布式計算應(yīng)用不同部分的代碼。當(dāng)需要特定的代碼模 塊時,處理器no就向流i/o適配器請求該代碼模塊。一個代碼模塊執(zhí)行完畢后,處理器210便向流1/0 208請求下一模塊。由于代碼和數(shù)據(jù) 模塊會在數(shù)據(jù)流中反復(fù)出現(xiàn),當(dāng)某模塊目前不需要時就可從RAM中刪去,不必將其保存。以后需要它時可以再從數(shù)據(jù)流中讀取。當(dāng)然,如果 RA^^有足夠的容量,處考器HO也可以請求I/0適配器同時向 RAM212加載多個代碼模坱。若能這樣做,處理器210就可以在各模坱 間切換而不必等待流I/0適配器208從數(shù)據(jù)流中取出它們。如前所迷,別的i/o適配器也可以已知的方式耦合至系統(tǒng)總線216。例如,在交互式TV系統(tǒng)中,可杷圖形適配器耦合到系統(tǒng)總線216 上。圖形適配器響應(yīng)來自處理器210的指令,按已知的方式產(chǎn)生表示 圖形圖像的信號。而且,這些信號可與交互式TV系統(tǒng)中輔助數(shù)據(jù)處理 器50中的視頻解碼器所產(chǎn)生的標(biāo)準(zhǔn)視頻信號混合。當(dāng)此二者混合時,結(jié)果信號所表示的圖像是圖形適配器所產(chǎn)生的圖像疊加在廣播視頻 信號所代表的圖像之上。這兩種圖像表示信號也可在處理器210的控制下有選擇地混合。交互式TV系統(tǒng)還可以包合耦合在系統(tǒng)總線216上的音頻適配器。音頻適配器響應(yīng)來自處理器"o的指令,按已知的方式產(chǎn)生模擬聲音(computer generated sound)的信號(如音樂、仿真語言或其他聲 音)。而且,這些信號可與交互式TV系統(tǒng)中輔助數(shù)據(jù)處理器SO中的音 頻解碼器所產(chǎn)生的標(biāo)準(zhǔn)音頻信號結(jié)合。當(dāng)此二者結(jié)合時,結(jié)果信號代表了音頻適配器與廣播音頻信號二者所產(chǎn)生的聲音的混合(聲)。這 兩種聲音表示信號的混合也可在處理器210的控制下有逸擇地進行。圖形圖像以及聲音表示信號的產(chǎn)生和輸出時序可通過^^數(shù)據(jù)流中接收到的時i、司代碼數(shù)據(jù)來控制。這樣就使得可執(zhí)行代碼模塊將處
理器所產(chǎn)生的圖像的顯示及聲音的提供與廣播的視頻和音頻同步。
使交互式TV應(yīng)用的運行同步的另一種可能的途徑是通過向數(shù)據(jù)流中 插入能中斷當(dāng)前正在處理器210上執(zhí)行的代碼的特殊的分組。.流1/ 0208監(jiān)視數(shù)據(jù)流,若發(fā)現(xiàn)那些特殊的分組,就按已知的方式向處理器 210發(fā)出中斷(請求)。處理器210通過執(zhí)行中斷服務(wù)例程(ISR)以已知 的方式響應(yīng)該中斷。該ISR可用來使交互式TV應(yīng)用同步或用于別的目 的。
圖1所示的分布式計算系統(tǒng)中的客戶計算機2Z不需要有大容量 存歌設(shè)備,也不必有大量的RAM212。這種系統(tǒng)降低了客戶計算機的代
價,并增強了低價客戶計算機的勸能。另外,這種客戶計算機能夠可 選地參與分布式計算勸能,可以隨時加入分布式計算勸能(可退出后 再返回h并且可以按自己的速度參與(計算)。
權(quán)利要求
1. 一種分布式計算機系統(tǒng),包括服務(wù)器(10),以產(chǎn)生第一數(shù)據(jù)流,所述服務(wù)器(10)把表示分布式計算應(yīng)用的應(yīng)用數(shù)據(jù)插入第一數(shù)據(jù)流中,并把包含所述應(yīng)用數(shù)據(jù)的目錄的目錄數(shù)據(jù)插入第一數(shù)據(jù)流中。
2. 如權(quán)利要求1所述的分布式計算機系統(tǒng),其特征在于,所述服務(wù)器(IO) 重復(fù)地把所述應(yīng)用數(shù)據(jù)插入第一數(shù)據(jù)流中。
3. 如上述權(quán)利要求中任何一項權(quán)利要求所述的分布式計算機系統(tǒng),其特征 在于,所述應(yīng)用數(shù)據(jù)包括至少一個代碼4莫塊,并且所述目錄包括識別第一數(shù)據(jù)流 中包含的所述至少一個代碼模塊的目錄模塊。
4. 如權(quán)利要求3所述的分布式計算機系統(tǒng),其特征在于,所述應(yīng)用數(shù)據(jù)包 括至少 一個數(shù)據(jù)模塊,所述至少一個數(shù)據(jù)模塊包含要由所述至少 一個代碼模塊中 的可執(zhí)行代碼處理的數(shù)據(jù),并且所述目錄包括識別第一數(shù)據(jù)流中包含的所述至少 一個數(shù)據(jù)模塊的目f^莫塊。
5. 如上述權(quán)利要求中任何一項權(quán)利要求所述的分布式計算機系統(tǒng),其特征 在于,所述服務(wù)器包括產(chǎn)生笫一數(shù)據(jù)流的應(yīng)用數(shù)據(jù)源(101, 102, 104)和產(chǎn)生笫 二數(shù)據(jù)流的輔助數(shù)據(jù)源(107 ),第二數(shù)據(jù)流包括表示視頻圖像的輔助數(shù)據(jù)。
6. 如權(quán)利要求5所述的分布式計算機系統(tǒng),其特征在于,所述服務(wù)器(IO) 包括連接到所述應(yīng)用數(shù)據(jù)源(101, 102, 104)和所述輔助數(shù)據(jù)源(107)的復(fù)用 器,用于復(fù)用第一數(shù)據(jù)流和第^lt據(jù)流,由此產(chǎn)生第三數(shù)據(jù)流。
7. 如權(quán)利要求5-6中任何一項;^又利要求所述的分布式計算機系統(tǒng),其特征 在于,所述應(yīng)用數(shù)據(jù)源(101, 102, 104)產(chǎn)生第一數(shù)據(jù)流,以包括第一數(shù)據(jù)分組 和識別信息,笫一數(shù)據(jù)分組包含表示所述分布式計算應(yīng)用的應(yīng)用數(shù)據(jù),所述識別 信息表示第一數(shù)據(jù)分組包含表示所述分布式計算應(yīng)用的應(yīng)用數(shù)據(jù),并且所述輔助 數(shù)據(jù)源(107 )產(chǎn)生第二數(shù)據(jù)流,以包括包含輔助數(shù)據(jù)的第二數(shù)據(jù)分組和識別信息, 所述識別信息表示笫二數(shù)據(jù)分組包含所述輔助數(shù)據(jù)。
8. 如上述權(quán)利要求中任何一項權(quán)利要求所述的分布式計算機系統(tǒng),其特征 在于,所述服務(wù)器(10)產(chǎn)生多個數(shù)據(jù)流,每一個都重復(fù)地包括表示相應(yīng)的分布 式計算應(yīng)用的應(yīng)用數(shù)據(jù)。
9. 如權(quán)利要求6所述的分布式計算機系統(tǒng),其特征在于,所iO良務(wù)器(10) 產(chǎn)生多個第三數(shù)據(jù)流,所述服務(wù)器(10)還包括另一個復(fù)用器,以便復(fù)用所述多個笫三數(shù)據(jù)流。
10. 如上iii又利要求中任何一項權(quán)利要求所述的分布式計算機系統(tǒng),包括客 戶計算機(22)以接收(207 )接收數(shù)據(jù)流,用于從所述接收數(shù)據(jù)流中提取(206) 表示所述分布式計算應(yīng)用的應(yīng)用數(shù)據(jù),并執(zhí)行(224)所述分布式計算應(yīng)用。
11. 如權(quán)利要求10所述的分布式計算機系統(tǒng),所述接收數(shù)據(jù)流包括由所述 服務(wù)器(10)產(chǎn)生的第一數(shù)據(jù)流。
12. 如權(quán)利要求5所述的分布式計算機系統(tǒng),包括接收(207)接收數(shù)據(jù)流 的客戶計算機(22)和輔助數(shù)據(jù)處理器,其中客戶計算機(22)從所述接收數(shù)據(jù) 流中提取所述輔助數(shù)據(jù),并將所述輔助凝:據(jù)提供給所述輔助數(shù)據(jù)處理器。
13. 如權(quán)利要求10-12中任何一項權(quán)利要求所述的分布式計算機系統(tǒng),其 特征在于,所^JL戶計算機(22)還包括數(shù)據(jù)接收器以選擇地接收多個接收數(shù)據(jù) 流的其中之一,并提取所述多個接收數(shù)據(jù)流中被選擇的一個數(shù)據(jù)流中包含的應(yīng)用 數(shù)據(jù)。
14. 如權(quán)利要求4所述的分布式計算機系統(tǒng),包括客戶計算機(22 )以接收 (207)接收數(shù)據(jù)流,其中所用戶計算機(22)從所述接收數(shù)據(jù)流中提取所述目模塊;根據(jù)所述目錄模塊中所述至少一個代碼模塊有關(guān)的信息來提取所述至少 一個代碼才莫塊;并執(zhí)行所述至少一個代碼模塊。
15. 如權(quán)利要求14所述的分布式計算機系統(tǒng),其特征在于,所ii^戶計算 機(22)根據(jù)所述目錄模塊中所述數(shù)據(jù)模塊有關(guān)的信息從所述接收數(shù)據(jù)流中提取 所述至少 一個數(shù)據(jù)模塊;并執(zhí)行所述至少 一個代碼模塊以處理所述至少一個數(shù)據(jù) 模塊。
16. 如權(quán)利要求10所述的分布式計算機系統(tǒng),其特征在于,所述分布式計 算應(yīng)用被分成多個模塊,每個模塊表示所述分布式計算應(yīng)用的一部分,所述客戶 計算機(22)包括處理單元,以僅存儲所述多個模塊中執(zhí)行所述分布式計算應(yīng)用 的當(dāng)前部分所需的模塊。
17. 如權(quán)利要求5所述的分布式計算機系統(tǒng),其特征在于,所述分布式計算 應(yīng)用是交互式電^見應(yīng)用,所述輔助數(shù)據(jù)是電視3見頻和音頻。
18. —種分布計算應(yīng)用的方法,所述方法包括把表示所述計算應(yīng)用的應(yīng)用 數(shù)據(jù)插入第一數(shù)據(jù)流中,以及把包含所述應(yīng)用數(shù)據(jù)的目錄的目錄數(shù)據(jù)插入第一數(shù)據(jù)流。
19. 如權(quán)利要求18所述的方法,其特征在于,所述應(yīng)用數(shù)據(jù)包括至少一個 代碼模塊,并且所述目錄包括識別第一數(shù)據(jù)流中包含的所述至少一個代碼模塊的 目綠塊。
20. 如權(quán)利要求18所述的方法,其特征在于,所述應(yīng)用數(shù)據(jù)包括至少一個 數(shù)據(jù)模塊,所述至少一個數(shù)據(jù)模塊包含要由所述至少一個代碼模塊中的可執(zhí)行代 碼處理的數(shù)據(jù),并且所述目錄包括識別第一數(shù)據(jù)流中包含的所述至少一個數(shù)據(jù)模 塊的目錄模塊。
21. 如權(quán)利要求18-20中任何一項權(quán)利要求所述的方法,包括產(chǎn)生第二數(shù) 據(jù)流,第二數(shù)據(jù)流包括表示視頻圖像的輔助數(shù)據(jù)。
22. 如權(quán)利要求21所述的方法,包括復(fù)用第一數(shù)據(jù)流和第二數(shù)據(jù)流,由此產(chǎn)生第三數(shù)據(jù)流。
23. 如權(quán)利要求21所述的方法,包括產(chǎn)生笫一數(shù)據(jù)流,以包括第一數(shù)據(jù)分 組和識別信息,第一數(shù)據(jù)分組包含表示所述計算應(yīng)用的數(shù)據(jù),所述識別信息表示 第一數(shù)據(jù)分組包含表示所述計算應(yīng)用的數(shù)據(jù),并且產(chǎn)生第二數(shù)據(jù)流,以包括包含 輔助數(shù)據(jù)的第二數(shù)據(jù)分組和識別信息,所述識別信息表示第二數(shù)據(jù)分組包含所述 輔助數(shù)據(jù)。
24. 如權(quán)利要求18-23中任何一項權(quán)利要求所述的方法,包括產(chǎn)生多個應(yīng) 用數(shù)據(jù)流,每一個都重復(fù)i綠示相應(yīng)的分布式計算應(yīng)用的應(yīng)用數(shù)據(jù)。
25. 如權(quán)利要求22所述的方法,包括產(chǎn)生多個第三數(shù)據(jù)流,并復(fù)用所述多 個第三數(shù)據(jù)流。
26. 如權(quán)利要求18-25中任何一項權(quán)利要求所述的方法,包括在客戶計算 機(22)接收(207)接收數(shù)據(jù)流,從所述數(shù)據(jù)流中提取(206)表示所述計算應(yīng) 用的應(yīng)用數(shù)據(jù),并執(zhí)行(224)所述計算應(yīng)用。
27. 如權(quán)利要求21所述的方法,包括在客戶計算機(22)接收(207)接收 數(shù)據(jù)流,從所述數(shù)據(jù)流中提取所述輔助數(shù)據(jù),并將所述輔助數(shù)據(jù)提供給輔助數(shù)據(jù) 處理器。
28. 如權(quán)利要求26-27中任何一項權(quán)利要求所述的方法,包括在所4戶 計算機(22)中選擇地接收多個接收數(shù)據(jù)流的其中之一,并從所述多個接收數(shù)據(jù) 流中被選擇的一個數(shù)據(jù)流中提取所述應(yīng)用數(shù)據(jù)。
29. 如權(quán)利要求20所述的方法,包括在客戶計算機(22)接收(207)接收 數(shù)據(jù)流,從所述接收數(shù)據(jù)流中提取所述目錄模塊,根據(jù)所述目錄模塊中所述至少 一個代碼模塊有關(guān)的信息從所述接收數(shù)據(jù)流中提取所述至少一個代碼模塊,并執(zhí) 行所述至少 一個代碼模塊。
30. 如權(quán)利要求29所述的方法,包括在所^戶計算機(22)接收(207) 接收數(shù)據(jù)流,根據(jù)所述目^^莫塊中所述數(shù)據(jù)模塊有關(guān)的信息從所述接收數(shù)據(jù)流中 提取所述至少一個數(shù)據(jù)模塊;并執(zhí)行所述至少一個代碼模塊以處理所述至少一個 數(shù)據(jù)模塊。
31. 如權(quán)利要求18-30中任何一項權(quán)利要求所述的方法,其特征在于,所 述計算應(yīng)用被分成多個模塊,每個模塊表示所述計算應(yīng)用的一部分,所述方法包 括在所i^戶計算機(22)僅存儲所述多個模塊中執(zhí)行所述計算應(yīng)用的當(dāng)前部分 所需的模塊。
32. 如權(quán)利要求21所述的方法,其特征在于,所述計算應(yīng)用是交互式電視 應(yīng)用,所述輔助數(shù)據(jù)是電視S見頻和音頻。
全文摘要
這里揭示了一種分布式計算機系統(tǒng),該系統(tǒng)包括重復(fù)載送表示分布式計算應(yīng)用的數(shù)據(jù)的連續(xù)的數(shù)據(jù)流源(30),以及一種客戶計算機(22),客戶計算機接收該數(shù)據(jù)流,從中取出(207)分布式計算應(yīng)用的表示數(shù)據(jù),并且執(zhí)行(224)所取出的分布式計算應(yīng)用。
文檔編號H04NGK101212659SQ20061010190
公開日2008年7月2日 申請日期1995年4月27日 優(yōu)先權(quán)日1994年4月28日
發(fā)明者A·德爾普希, K·約瑟夫, V·杜勞, 小·A·W·杰蘇普 申請人:開放電視公司