亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

在網(wǎng)絡(luò)內(nèi)傳送嵌入式應(yīng)用的系統(tǒng)的制作方法

文檔序號(hào):7569989閱讀:377來(lái)源:國(guó)知局
專利名稱:在網(wǎng)絡(luò)內(nèi)傳送嵌入式應(yīng)用的系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明一般涉及客戶機(jī)和服務(wù)器的網(wǎng)絡(luò),尤其涉及允許客戶機(jī)對(duì)某些服務(wù)器的操作進(jìn)行控制的網(wǎng)絡(luò)。
本發(fā)明是對(duì)當(dāng)前網(wǎng)絡(luò)提供的復(fù)合文檔(compound document)傳送能力的改善。
對(duì)這一文檔來(lái)說(shuō),“網(wǎng)絡(luò)”被理解為具有協(xié)同的相互作用的多個(gè)互連的計(jì)算機(jī)控制設(shè)備。在大多數(shù)網(wǎng)絡(luò)(例如Internet(互連網(wǎng)))中,被連網(wǎng)的設(shè)備不是客戶機(jī)(client文檔的使用者))就是服務(wù)器(server文檔的提供者))。在這種網(wǎng)絡(luò)結(jié)構(gòu)中,客戶機(jī)能夠下裝文檔并通過(guò)向負(fù)責(zé)執(zhí)行服務(wù)或存儲(chǔ)所需文檔的某一(些)“服務(wù)器”傳送恰當(dāng)?shù)男畔?lái)使服務(wù)被遠(yuǎn)程地執(zhí)行。當(dāng)然,為了使客戶機(jī)能夠?qū)ο卵b的文檔進(jìn)行處理,必需以能允許客戶機(jī)顯示或執(zhí)行這些文檔的格式來(lái)提供這些文檔。
在Internet的開(kāi)頭,這種兼容性沒(méi)有提出大的挑戰(zhàn)。存儲(chǔ)在服務(wù)器中的許多文檔是簡(jiǎn)單的平面文本(flat text即ASCII))文件,在利用例如TCP/IP這樣的標(biāo)準(zhǔn)協(xié)議被下裝之后,可以利用公用文本編輯程序或查看程序(viewer)將它們顯示在客戶機(jī)上。后來(lái),在Internet服務(wù)器上可得到各種格式(TIFF、GIF、JPEG等)的平面圖象文件,它們要求在客戶機(jī)上應(yīng)有專門的圖形查看程序。隨著存儲(chǔ)在Internet上的文檔的數(shù)量和文檔格式的類型的增多,顯然需要使用戶能夠無(wú)痛苦地瀏覽各種Internet文檔、甚至混合格式(例如包含ASCII文本和格式化不同的圖形的復(fù)合文檔)的Internet文檔和容易地找出并觀看與剛下裝的文檔有關(guān)的其它文檔?!叭蚓W(wǎng)(World-Wide Web)”滿足了這種需要。
“全球網(wǎng)”(world wide web(“WWW”))鏈接組成了Internet的許多服務(wù)器,每一服務(wù)器存儲(chǔ)由唯一的全球資源定位符(URL)標(biāo)識(shí)的文檔。存儲(chǔ)在Web服務(wù)器上的許多文檔是用稱為HTML(超級(jí)正文標(biāo)記語(yǔ)言)的標(biāo)準(zhǔn)文檔描述語(yǔ)言來(lái)書(shū)寫(xiě)的。利用HTML,Web文檔的設(shè)計(jì)者能夠使超級(jí)正文鏈接或注釋而與文檔中特定的字或短語(yǔ)相連系(這些超級(jí)正文鏈接識(shí)別其它Web文檔的URL或提供與字或短語(yǔ)有關(guān)的信息的同一文檔的其它部分)并規(guī)定可視狀況和Web頁(yè)(pages)的內(nèi)容。
用戶利用運(yùn)行在與Internet連接的Web客戶機(jī)上的Web瀏覽程序(Webbrower用來(lái)顯示HTML文檔并與Web服務(wù)器通信的計(jì)算機(jī)程序))來(lái)存取文檔。一般來(lái)說(shuō),這是由用戶進(jìn)入所需文檔的URL或在由利用該Web瀏覽程序觀看的文檔內(nèi)選擇(由該Web瀏覽程序作為強(qiáng)亮度的字或短語(yǔ)進(jìn)行顯示的)超級(jí)正文鏈接來(lái)實(shí)現(xiàn)的。Web瀏覽程序然后將該被請(qǐng)求文檔的HTTP(超級(jí)正文傳送協(xié)議)請(qǐng)求發(fā)送給由被請(qǐng)求文檔的URL標(biāo)識(shí)的Web服務(wù)器。作為響應(yīng),被指定的Web服務(wù)器也利用HTTP向Web瀏覽程序返回被請(qǐng)求的文檔,Web瀏覽程序局部地顯示該文檔,包括與該文檔相關(guān)的任何文本和圖象。Web和Web瀏覽程序所提供的文檔輸送能力和易于使用的特點(diǎn)是非常寶貴的。但是,如果HTML和Web能為HTML文檔中的嵌入式應(yīng)用提供支持,則它們將更加有用。
目前沒(méi)有辦法在HTML Web頁(yè)內(nèi)嵌入可執(zhí)行代碼段或與可執(zhí)行代碼段的鏈接,以使該代碼段在Web客戶機(jī)上可執(zhí)行。由于被嵌入的代碼段的范圍從交互地運(yùn)行在Web頁(yè)內(nèi)的模擬、聲音剪輯或圖象剪輯到可由嵌入復(fù)合文檔的Web瀏覽程序的用戶進(jìn)行觸發(fā)的通信例行程序或應(yīng)用程序,所以這種功能將是非常有用的。此外,這些功能可用來(lái)使用戶能夠從Web服務(wù)器下裝數(shù)據(jù),不必考慮使合適類型的處理程序駐留在它們的Web客戶機(jī)上。即嵌入某一類數(shù)據(jù)的Web文檔還可以包括用于該數(shù)據(jù)的合適的處理程序的地址,所以如果需要的話,用戶的Web瀏覽程序能夠找出、下裝并執(zhí)行該數(shù)據(jù)所需的處理程序。
除了Web頁(yè)(page)中嵌入式應(yīng)用(embedded applications)的使用外,在計(jì)算機(jī)控制設(shè)備的網(wǎng)絡(luò)內(nèi)被嵌入文檔的其它使用也是顯而易見(jiàn)的。例如,在家庭娛樂(lè)系統(tǒng)中,在這種系統(tǒng)中有多個(gè)部件,每一部件有唯一的命令集(有時(shí)非常復(fù)雜)和唯一的用戶接口(通常是非直觀的),可以用具有嵌入應(yīng)用能力的文檔來(lái)提供非常適用的通用遙控。這種系統(tǒng)將使用戶能夠利用與視覺(jué)有關(guān)的遙控設(shè)備來(lái)與各種部件相互作用,與視覺(jué)有關(guān)的遙控設(shè)備顯示用戶控制任選項(xiàng)(遠(yuǎn)程方對(duì)此一無(wú)所知)和其它信息,例如從被控的部件下裝的上下文有助于感受信息和圖形。即這種通用遙控將能夠?qū)](méi)有關(guān)于其功能的預(yù)編程知識(shí)的設(shè)備進(jìn)行控制。
因此,需要有一種通過(guò)網(wǎng)絡(luò)在計(jì)算機(jī)控制的網(wǎng)絡(luò)設(shè)備之間傳送的文檔中嵌入應(yīng)用或代碼段的系統(tǒng)和方法。這種系統(tǒng)和方法應(yīng)當(dāng)允許客戶機(jī)請(qǐng)求和從服務(wù)器接收可執(zhí)行程序,客戶機(jī)然后能夠在被嵌入了應(yīng)用的文檔的范圍內(nèi)執(zhí)行該可執(zhí)行的程序??蓤?zhí)行程序應(yīng)當(dāng)至少有四種類型(1)輸出代碼,一旦被執(zhí)行就產(chǎn)生可視或可聞的表示(例如圖形或聲音模擬),(2)元知識(shí)(meta-knowledge)代碼,能夠勸告用戶考慮與被嵌入了代碼段的文檔合法地相互作用,(3)上下文代碼,能夠檢測(cè)和顯示被嵌入了代碼段的復(fù)合文檔的上下文處理,以及(4)用于被嵌入數(shù)據(jù)的處理程序。
總而言之,本發(fā)明的在計(jì)算機(jī)網(wǎng)絡(luò)內(nèi)傳送嵌入文檔的系統(tǒng)和方法滿足了以上所提出的要求。
具體來(lái)說(shuō),本發(fā)明是在包括至少一臺(tái)服務(wù)器和至少一臺(tái)客戶機(jī)的網(wǎng)絡(luò)內(nèi)傳送嵌入文檔的系統(tǒng),各服務(wù)器和客戶機(jī)包括一計(jì)算機(jī)控制器和一存儲(chǔ)器,并具有唯一的網(wǎng)絡(luò)ID(標(biāo)識(shí))。系統(tǒng)包括了在客戶機(jī)的計(jì)算機(jī)控制器上可執(zhí)行的請(qǐng)求程序(requestor),它被配置來(lái)控制該客戶機(jī)利用網(wǎng)絡(luò)發(fā)送的信息。這些信息之一是指示某一服務(wù)器向該客戶機(jī)傳送特定復(fù)合文檔的文檔請(qǐng)求信息,復(fù)合文檔是引用或包括可以是可執(zhí)行的代碼段、平面文檔或其它復(fù)合文檔的多個(gè)嵌入文檔的文檔。
本發(fā)明的另一個(gè)方面是在服務(wù)器的計(jì)算機(jī)控制器上可執(zhí)行的一供給程序(provider)。該供給程序?qū)魉徒o該服務(wù)器的信息作出響應(yīng)。例如,該供給程序被配置來(lái)對(duì)文檔請(qǐng)求信息作出響應(yīng),使服務(wù)器向客戶機(jī)傳送特定的被請(qǐng)求復(fù)合文檔。一旦接收到特定的復(fù)合文檔,請(qǐng)求程序就被配置來(lái)檢索至少被該特定的復(fù)合文檔引用的、沒(méi)有存儲(chǔ)在客戶機(jī)的存儲(chǔ)器內(nèi)的嵌入文檔的一子集,并產(chǎn)生包括平面文檔和可執(zhí)行代碼段的組合的復(fù)合文檔。
本發(fā)明還提供在網(wǎng)絡(luò)內(nèi)傳送嵌入文檔的方法,該網(wǎng)絡(luò)包括與之連接的至少一臺(tái)服務(wù)器和至少一臺(tái)客戶機(jī),各服務(wù)器和客戶機(jī)包括一計(jì)算機(jī)控制器和一存儲(chǔ)器,并具有唯一的網(wǎng)絡(luò)ID。作為該方法的第一個(gè)步驟,一客戶機(jī)通過(guò)網(wǎng)絡(luò)向特定服務(wù)器發(fā)送文檔請(qǐng)求信息,該文檔請(qǐng)求信息指定將由該特定服務(wù)器返回給該客戶機(jī)的特定復(fù)合文檔。然后,響應(yīng)該文檔請(qǐng)求信息,該特定服務(wù)器將該特定的復(fù)合文檔返回給該客戶機(jī)。該復(fù)合文檔包括對(duì)多個(gè)嵌入文檔(embedded document)的引用,每一嵌入文檔具有選自可執(zhí)行代碼段、平面文檔和其它復(fù)合文檔的類型。一旦從服務(wù)器接收到復(fù)合文檔,客戶機(jī)就發(fā)出多條文檔請(qǐng)求信息,以便通過(guò)網(wǎng)絡(luò)檢索被該復(fù)合文檔引用的、沒(méi)有存儲(chǔ)在客戶機(jī)的存儲(chǔ)器內(nèi)的任何平面文檔和可執(zhí)行代碼段。最后,客戶機(jī)產(chǎn)生包括檢索的平面文檔和可執(zhí)行代碼段的組合的復(fù)合文檔。
通過(guò)參考附圖結(jié)合實(shí)施例對(duì)本發(fā)明進(jìn)行的詳細(xì)描述,將使本發(fā)明的其它目的及特點(diǎn)更加清楚。


圖1是最佳實(shí)施例的方框圖;圖2是圖1最佳實(shí)施例的更詳細(xì)的方框圖;圖3是表示最佳實(shí)施例如何響應(yīng)用戶的設(shè)備控制選擇和來(lái)自顯示缺省文檔的初始化任選項(xiàng)的數(shù)據(jù)流的圖示;圖4是表示最佳實(shí)施例如何將復(fù)合文檔變換為組合文檔,然后變換為具有嵌入應(yīng)用的輸出文檔的數(shù)據(jù)流的圖示;圖5是表示最佳實(shí)施例的步驟的流程圖;圖6是一另一實(shí)施例的表示,在該實(shí)施例中,圖1的客戶機(jī)、服務(wù)器和網(wǎng)絡(luò)分別是Web客戶機(jī)、Web服務(wù)器和Internet。
參看圖1,該圖表示最佳實(shí)施例的方框圖,圖1中多個(gè)設(shè)備外殼110a-c(enclosoure-110a-c(此后稱為“外殼”))利用通過(guò)設(shè)置在各相應(yīng)外殼110a-c和遙控設(shè)備120中的射頻(RF)接收器/發(fā)射器118a-c、128接收和發(fā)送的RF傳輸與遙控設(shè)備120連網(wǎng)。在該最佳實(shí)施例中,遙控設(shè)備120起網(wǎng)絡(luò)客戶機(jī)(即文檔的使用者)的作用,而外殼110a-c起網(wǎng)絡(luò)服務(wù)器(即文檔的供給者)的作用,每一個(gè)都具有唯一的網(wǎng)絡(luò)地址。
每一外殼相當(dāng)于家庭娛樂(lè)系統(tǒng)中的一臺(tái)典型設(shè)備。例如,外殼110a、110b分別相當(dāng)于一臺(tái)TV(電視機(jī))和一臺(tái)VCR(錄像機(jī))。其它類型的外殼在圖1中用一般外殼110c來(lái)表示。除RF接收器/發(fā)射器118外,每一外殼110a-c還包括計(jì)算機(jī)控制器112a-c、特性設(shè)備114a-c和存儲(chǔ)器116a-c(它們中的一些是非易失的),它們?nèi)寂c控制器112連接。
每一特性設(shè)備執(zhí)行人們利用外殼標(biāo)識(shí)的功能。例如,在外殼110a、110b分別是電視機(jī)外殼和錄像機(jī)外殼的場(chǎng)合中,相應(yīng)特性設(shè)備就是電視機(jī)調(diào)諧器/顯示器114a和錄像機(jī)調(diào)諧器/記錄器/播放器114b。一般來(lái)說(shuō),可以利用設(shè)置在外殼110中的前面板手動(dòng)地控制這些設(shè)備。或者在最佳實(shí)施例所討論的遙控模式中,根據(jù)遙控設(shè)備120通過(guò)RF網(wǎng)絡(luò)發(fā)送的正確控制信息利用設(shè)備的本地控制器112來(lái)控制各特性設(shè)備114。本發(fā)明的關(guān)鍵之一是這些控制信息以及如何控制一特定設(shè)備的知識(shí)沒(méi)有預(yù)先存儲(chǔ)在遙控設(shè)備120內(nèi)。相反地,遙控設(shè)備120要?jiǎng)討B(tài)地從被控制的外殼110中下裝其所需的任何信息,包括可執(zhí)行代碼段和平面文件。對(duì)于每一外殼110a-c,這一控制信息和控制器112a-c的操作系統(tǒng)被非易失地存儲(chǔ)在存儲(chǔ)器116a-c中。
遙控設(shè)備120(此后稱為“遠(yuǎn)程”(“remote”)或“遙控”(“remote control”))是能夠控制任一外殼110a-c并利用程序引導(dǎo)用戶控制外殼110a-c的適應(yīng)性強(qiáng)的通用遠(yuǎn)程。遙控設(shè)備120的主要部件包括RF發(fā)射器/接收器128、計(jì)算機(jī)控制器122、存儲(chǔ)器126(它們中的一些是非易失的)、多重模態(tài)(multimode)輸出設(shè)備130、用戶輸入設(shè)備132和名字服務(wù)器(name sever)134,它是一段在控制器122中運(yùn)行的軟件,所有這些部件相互連接。計(jì)算機(jī)控制器122會(huì)同存儲(chǔ)器126協(xié)調(diào)遙控設(shè)備120的部件的所有操作,存儲(chǔ)器126存儲(chǔ)了控制器122的操作系統(tǒng)、初始化程序及文件以及從外殼110a-c下裝的信息。用戶利用能夠顯示靜止圖象或視頻圖象和能夠輸出聲音的用戶輸入設(shè)備132和輸出設(shè)備130與遠(yuǎn)程120相互作用。用戶輸入設(shè)備132可以與輸出設(shè)備130不同(例如鍵盤),或者它可以是覆蓋了輸出設(shè)備130的顯示及圖象部分的觸敏(touch sensitive)矩陣,它使用戶能夠與該輸出設(shè)備上的圖象相互作用。在用戶輸入的基礎(chǔ)上,控制器122發(fā)送不同的控制信息給外殼,在先遙控設(shè)備120已從正在被控制的外殼下裝了這些信息和確定要發(fā)送哪一條信息的步驟。
現(xiàn)在參看圖2討論外殼110、遙控120以及它們之間交換的信息的其它詳情。
參看圖2,該圖是表示遙控設(shè)備120正在與一個(gè)設(shè)備外殼110相互作用的最佳實(shí)施例的詳細(xì)方框圖。它表示了現(xiàn)在被描述的輸出設(shè)備130和存儲(chǔ)器126、116的其它詳情。
輸出設(shè)備130包括兩個(gè)不同的部分,能夠顯示視頻或靜止圖象的顯示部分130a和能夠播放聲音剪輯(clips)的音頻部分130b。這兩種不同的輸出方式由輸出設(shè)備130來(lái)提供,以便能夠完全實(shí)現(xiàn)由控制器122提供的輸出文檔170的所有特性。
遙控設(shè)備120的存儲(chǔ)器126提供非易失和易失存儲(chǔ)能力,非易失存儲(chǔ)能力被提供來(lái)存儲(chǔ)在初始化時(shí)遙控設(shè)備120所需的程序和數(shù)據(jù)項(xiàng)目。這些非易失地存儲(chǔ)的項(xiàng)目包括初始化程序126.1、缺省文檔(default document)126.2、名字服務(wù)器登記(name sever registry)126.3(即設(shè)備110a-c的網(wǎng)絡(luò)地址)和操作系統(tǒng)126.5,操作系統(tǒng)126.5包含實(shí)時(shí)操作系統(tǒng)內(nèi)核(kernel)126.4。操作系統(tǒng)126.5是每當(dāng)遙控設(shè)備120被加電和正在工作時(shí)在控制器122中執(zhí)行的程序。它的任務(wù)包括處理控制器122與外部設(shè)備、例如用戶輸入設(shè)備132、顯示器130和RF發(fā)射器/接收器128的相互作用,管理正在由控制器122執(zhí)行的程序(例如將程序裝入存儲(chǔ)器126用于執(zhí)行和處理對(duì)外部設(shè)備存取的程序請(qǐng)求)。操作系統(tǒng)126.5能夠按照兩種方式中的至少一種進(jìn)行工作。當(dāng)操作系統(tǒng)126.5按照單任務(wù)模式起作用時(shí),就一次完成一個(gè)地執(zhí)行軟件作業(yè),不考慮外界時(shí)間約束。操作系統(tǒng)126.5也能夠按照在外界施加的時(shí)間約束下同時(shí)執(zhí)行多個(gè)作業(yè)的多任務(wù)實(shí)時(shí)模式進(jìn)行工作。這些實(shí)時(shí)能力由實(shí)時(shí)內(nèi)核126.4提供,實(shí)時(shí)內(nèi)核126.4確定操作系統(tǒng)如何在多個(gè)作業(yè)之間分配控制器122的處理時(shí)間,以便各個(gè)作業(yè)實(shí)時(shí)地運(yùn)行。如以后將要說(shuō)明的那樣,這些實(shí)時(shí)能力是最佳實(shí)施例所必需的,在最佳實(shí)施例中,多個(gè)代碼段、它們中的一些提供了用戶的交互性,能夠同時(shí)在控制器122上運(yùn)行?,F(xiàn)在來(lái)說(shuō)明控制器122如何被初始化,這一處理由初始化程序126.1來(lái)驅(qū)動(dòng)。
參看圖3,所示的數(shù)據(jù)流的圖示表示控制器112和122響應(yīng)某些典型的用戶與初始化程序126.1的相互作用而執(zhí)行的數(shù)據(jù)變換/傳輸動(dòng)作。該圖示把數(shù)據(jù)對(duì)象表示為矩形,把對(duì)數(shù)據(jù)對(duì)象起作用的部件表示為菱形。某些菱形出現(xiàn)多次,代表執(zhí)行多次動(dòng)作的部件,例如遠(yuǎn)程控制器122。每當(dāng)遠(yuǎn)程120被加電就由操作系統(tǒng)126.5執(zhí)行初始化程序126.1,在把遠(yuǎn)程120的控制交給用戶之前執(zhí)行某些內(nèi)務(wù)處理(housekeeping)例行程序。在這些內(nèi)務(wù)處理任務(wù)中,初始化程序126.1使控制器122向多模態(tài)輸出設(shè)備130輸出缺省文檔126.2,使用戶能夠獲得一組可選擇的遠(yuǎn)程任選項(xiàng)(option)。這個(gè)缺省文檔126.2定義了不必首先在網(wǎng)絡(luò)上發(fā)送信息就可被控制器122執(zhí)行的一組用戶可選擇的外殼控制任選項(xiàng)210(被鏈接到顯示的控制任選項(xiàng)210′)和遠(yuǎn)程設(shè)置任選項(xiàng)(被連接到顯示的設(shè)置任選項(xiàng)212′)。在該最佳實(shí)施例中,每一外殼控制任選項(xiàng)210包括規(guī)定要被控制的設(shè)備110的本地名字的第一字段,該本地名字與在名字服務(wù)器登記126.3中注冊(cè)的設(shè)備的名字相關(guān),還包括當(dāng)用戶從顯示器130選擇該控制任選項(xiàng)時(shí)規(guī)定給在第一字段中被命名的設(shè)備發(fā)送信息的名字的第二字段。例如,參看圖3,缺省文檔項(xiàng)目210a的兩個(gè)字段是device=TV_enclosure;andmessage=req_doc(control TV)。
這一特定的項(xiàng)目被鏈接到由控制器122顯示為“control_TV”210a′的用戶可選擇的外殼控制任選項(xiàng)。
當(dāng)用戶從顯示器130選擇控制任選項(xiàng)210′之一時(shí),控制器122通過(guò)查詢名字服務(wù)器登記126.3確定合適設(shè)備的網(wǎng)絡(luò)ID,然后向該被指定設(shè)備發(fā)送相關(guān)的信息。例如,如圖3所示,當(dāng)用戶選擇被顯示任選項(xiàng)210a′(“control_TV”)時(shí),控制器122就確定TV外殼具有網(wǎng)絡(luò)地址110a,然后向該地址發(fā)送要求“control_TV”文檔的文檔請(qǐng)求信息150。一旦接收到文檔請(qǐng)求信息,控制器112就在其操作系統(tǒng)116.1的控制下處理該信息并相應(yīng)地作出響應(yīng)。這一響應(yīng)可以是實(shí)施如在TV信道中進(jìn)行調(diào)諧這樣的動(dòng)作或?qū)?fù)合文檔140返回給遙控120。例如,在圖3的情況下,TV控制器112a簡(jiǎn)單地將復(fù)合文檔“control_TV”140a的內(nèi)容返回給控制器122,該內(nèi)容規(guī)定了控制器122在多重模態(tài)顯示器130上顯示用于控制TV114a的一組基本操作。
如上所述,缺省文檔126.1還提供用戶可從用戶輸入設(shè)備132選擇系統(tǒng)配置任選項(xiàng)212(被鏈接到被顯示系統(tǒng)任選項(xiàng)212′)的表。注意這些任選項(xiàng)不包括允許用戶“安裝新網(wǎng)絡(luò)設(shè)備”的任選項(xiàng)。這是因?yàn)樽罴褜?shí)施例自動(dòng)地執(zhí)行網(wǎng)絡(luò)安裝的緣故。在這一自動(dòng)安裝過(guò)程中,只要用戶插入新的外殼110,該新外殼的控制器112就“喚醒”,在其操作系統(tǒng)161.1的控制下開(kāi)始工作。因?yàn)樽R(shí)別了其“新”狀態(tài),所以操作系統(tǒng)116.1要求其相關(guān)的名字服務(wù)器119登記該外殼。作為響應(yīng),該名字服務(wù)器119通過(guò)網(wǎng)絡(luò)向與網(wǎng)絡(luò)鏈接的其它外殼通報(bào)該新外殼的名字和地址。一旦接收到這一信息,在其它外殼的控制器112和122上運(yùn)行的名字服務(wù)器就通過(guò)以該新設(shè)備的網(wǎng)絡(luò)地址和名字更新它們的名字服務(wù)器登記來(lái)記錄該新外殼。例如,如果用戶將激光盤播放機(jī)110c、調(diào)諧器110d和CD播放機(jī)110e加入至網(wǎng)絡(luò),則在控制器122上運(yùn)行的名字服務(wù)器就將如圖3所示地把激光盤播放機(jī)、調(diào)諧器和CD播放機(jī)的項(xiàng)目加入到名字服務(wù)器登記126.3。在記錄了新外殼110c-e之后,控制器122從每一外殼下裝初始信息的名字(例如control_TV信息)和控制器122把這些引用加到缺省文檔126.2作為控制任選項(xiàng)210c′-e′。
如果遠(yuǎn)程120丟失其存儲(chǔ)器(包括名字服務(wù)器登記126.4)或如果一新的遠(yuǎn)程120被加入到網(wǎng)絡(luò),就編程該空白區(qū)或新的遠(yuǎn)程120來(lái)通投要求外殼110進(jìn)行自我登記的請(qǐng)求信息,如果這樣做合適的話(某些外殼可能不與該遠(yuǎn)程兼容)。作為響應(yīng),外殼將如上所述地進(jìn)行自我登記。在網(wǎng)絡(luò)領(lǐng)域中眾所周知的防沖突程序保證了每一進(jìn)行了登記的外殼都被允許對(duì)網(wǎng)絡(luò)進(jìn)行存取。
除存儲(chǔ)在網(wǎng)絡(luò)上的所有外殼的地址外,每一名字服務(wù)器119、134列出存儲(chǔ)在其存儲(chǔ)器116、126中的所有文檔(包括復(fù)合文檔、平面文件和代碼段)以及存儲(chǔ)在其它網(wǎng)絡(luò)節(jié)點(diǎn)上的其它可能相關(guān)文檔的名字及內(nèi)部地址。這一信息使控制器122能夠容易地定位文件(以進(jìn)行傳送或顯示)。Sanjay Radia、Michael N.Nelson和Michael L. Powell發(fā)表于1994年9月的SunSoft公司的關(guān)于Spring Distributed Object-Oriented Operating System的論文匯編“SpringCollection”上的論文“The Spring Name Service”描述了名字服務(wù)器的這些及其它方面的其它信息,該論文在此作為參考文獻(xiàn)。
再參看圖2,設(shè)備110的存儲(chǔ)器116包括復(fù)合文檔140、平面文件142、代碼段144和每當(dāng)設(shè)備110被加電操作系統(tǒng)116.1就控制控制器112的操作。這些對(duì)象140、142和144封裝了遠(yuǎn)程120控制存儲(chǔ)這些對(duì)象的設(shè)備110的操作所需的所有信息。在最佳實(shí)施例中,每一復(fù)合文檔140包含要被控制器122以坐標(biāo)的方式、通常在顯示器130的一個(gè)窗口中進(jìn)行顯示/執(zhí)行的平面文件引用(FF_refs)、代碼段引用(CF_refs)和其它復(fù)合文檔(CD_refs)引用。例如,根(root)復(fù)合文檔、例如上述control_TV文檔,包含了對(duì)當(dāng)被控制器122將其一起進(jìn)行顯示時(shí)呈現(xiàn)TV的基本控制任選項(xiàng)的頂層列表的對(duì)象140、142、144的引用。在這一方法中,平面文件引用(FF_refs)涉及將要被控制器122輸出的文本、圖形或聲音文件,代碼段引用(CF_refs)涉及將要被控制器在顯示復(fù)合文檔140時(shí)執(zhí)行的嵌入式應(yīng)用或涉及在復(fù)合文檔140中被引用的平面文件142的處理程序。
在最佳實(shí)施例中,每一CD_ref、FF_ref或CF_ref包括兩個(gè)字段“addr”(文檔地址);和“posn”(顯示位置,不用于聲音文件)。
除一般把正在被引用的對(duì)象存儲(chǔ)在與引用文檔相同的網(wǎng)絡(luò)節(jié)點(diǎn)上的最佳實(shí)施例外,“addr”字段按照WWW超鏈接的方式規(guī)定被引用對(duì)象的唯一地址?!皃osn”字段向控制器122指出當(dāng)控制器122顯示復(fù)合文檔140時(shí)該對(duì)象將位于何處。
平面文件142封裝了兩類信息,內(nèi)容和屬性。內(nèi)容是相當(dāng)于平面文件表示什么的數(shù)據(jù),例如文本、聲音或圖象數(shù)據(jù)。屬性定義關(guān)于內(nèi)容的元知識(shí)(meta-knowledge),包括如何格式化數(shù)據(jù)(這隱含有其處理程序的類型的意思)和應(yīng)如何顯示/發(fā)聲。例如,一般的平面文件屬性可以指出內(nèi)容是ASCII、HTML或Postscript格式化的文本、MIDI或WAV格式化的聲音或JPEG格式化的圖形。由于這種屬性信息向控制器122指出了在內(nèi)容被輸出給多重模態(tài)輸出設(shè)備130之前應(yīng)如何對(duì)其進(jìn)行處理,所以它是必不可少的。
代碼段144也封裝了兩類信息,在控制器122上是可執(zhí)行的嵌入式應(yīng)用的二進(jìn)制代碼和與該二進(jìn)制代碼相關(guān)的屬性。例如,假如代碼段144a是在視覺(jué)上模擬某些設(shè)備控制處理的程序,則該代碼段的屬性就可以在代碼段144a應(yīng)當(dāng)運(yùn)行時(shí)以引用的復(fù)合文檔定義窗口的屬性。在最佳實(shí)施例中,嵌入式應(yīng)用可以包括運(yùn)行仿真序列的程序表示用戶如何利用被顯示在顯示器130上的任選項(xiàng)選擇復(fù)雜設(shè)備的功能、確定當(dāng)用戶選定一具體任選項(xiàng)時(shí)要被發(fā)出的一系列文檔請(qǐng)求信息的程序、或者甚至能夠回答用戶關(guān)于編程設(shè)備110的問(wèn)題的專家系統(tǒng)。
但是,通常在公用復(fù)合文檔140的上下文情況下,大多數(shù)從外殼110傳送至遠(yuǎn)程120的一般的嵌入式應(yīng)用144都是與從同一外殼110傳送至遠(yuǎn)程120的平面文件142兼容的處理程序。這是因?yàn)闉榱藢?shí)現(xiàn)真正的通用性(遠(yuǎn)程120能夠顯示/執(zhí)行由任何外殼110提供的任何信息的概念),最佳實(shí)施例假定了控制器122對(duì)關(guān)于顯示由不同外殼110提供的任何類型的平面文件一無(wú)所知的緣故。在這一假定下進(jìn)行操作,則對(duì)于要在遠(yuǎn)程顯示器130上顯示的被引用平面文件142,控制器122必需能夠存取到與該被引用平面文件142兼容的處理程序的代碼段。它一旦被控制器122裝入,該處理程序就將顯示/處理該被引用平面文件142并管理在該平面文件將要被顯示的顯示器130上的實(shí)時(shí)狀態(tài)。
例如,按鈕型(button-type)的平面文件可以包括小說(shuō)《戰(zhàn)爭(zhēng)與和平》的封面的數(shù)字化的JPEG圖象以及包含該小說(shuō)全部正文的平面文件的網(wǎng)絡(luò)地址。并需要該平面文件的相關(guān)處理程序以使在顯示器130上按照合適的大小和在合適的屏幕位置處顯示該封面。該平面文件的處理程序還可以包括每當(dāng)用戶選定了顯示器130上的顯示該封面的區(qū)域就被觸發(fā)的方法,使控制器122利用該平面文件內(nèi)包含的地址發(fā)送請(qǐng)求《戰(zhàn)爭(zhēng)與和平》的正文的網(wǎng)絡(luò)信息。
在最佳實(shí)施例中,處理程序的可執(zhí)行代碼不要與被處理的平面文件一道被封裝(packaged),而是通過(guò)引用其相關(guān)平面文件的復(fù)合文檔中的CF_ref被經(jīng)常引用?;蛘?,當(dāng)僅利用被引用平面文件的屬性就能夠明確地表明處理程序的標(biāo)識(shí)時(shí)(例如,如果該文件是MIDI聲音,為了播放該文件,控制器122將簡(jiǎn)單地請(qǐng)求網(wǎng)絡(luò)上的MIDI設(shè)備驅(qū)動(dòng)器),就不需要該處理程序的CF_ref。這樣做(數(shù)據(jù)和處理程序的可執(zhí)行代碼分離)的一個(gè)優(yōu)點(diǎn)是由于數(shù)據(jù)文件被典型地構(gòu)成(即數(shù)據(jù)文件、例如WAV文件通常不與它們的處理程序一道被封裝),所以遠(yuǎn)程控制器120保持與數(shù)據(jù)文件的后向(backward)兼容,同時(shí)能夠無(wú)縫隙地處理未知數(shù)據(jù)文件的所有樣式。這樣做還避免了需要遠(yuǎn)程120不必要地多次下裝同一處理程序的低效。
在最佳實(shí)施例中,即使平面文件的最簡(jiǎn)單的類型(例如卷動(dòng)ASCII文本)也需要在遠(yuǎn)程120上運(yùn)行的相應(yīng)的處理程序代碼段。在引用許多不同格式的平面文件的復(fù)雜復(fù)合文檔的情況下,假定沒(méi)有相應(yīng)的處理程序在局部上可為控制器122所用,則這種狀況將導(dǎo)致處理程序代碼段的大量下裝。最佳實(shí)施例通過(guò)在存儲(chǔ)器126中預(yù)先存儲(chǔ)用于公用平面文件的數(shù)據(jù)格式、例如WAV和MIDI聲音、ASCII文本和JPEG圖形的處理程序代碼段而大大地減少了這種危險(xiǎn)。
參看圖4,它是說(shuō)明被控制器請(qǐng)求的一特定復(fù)合文檔140a在正被輸出給多重模態(tài)顯示器130之前如何被處理的數(shù)據(jù)流圖示。如圖3所示,該圖示把數(shù)據(jù)對(duì)象表示為矩形而把對(duì)這些數(shù)據(jù)對(duì)象起作用的部件表示為菱形。某些菱形出現(xiàn)多次,代表在數(shù)據(jù)流中執(zhí)行多次動(dòng)作的部件,例如遠(yuǎn)程控制器122。
如以前參看圖3所進(jìn)行的描述那樣,假定用戶已選定了觸發(fā)控制器122以請(qǐng)求TV外殼110a的“control_TV”文檔140a的例如“control_TV”這樣的任選項(xiàng),作為響應(yīng),TV設(shè)備已返回圖4所示的復(fù)合文檔140a。這一文檔140a包括對(duì)兩個(gè)平面文件142a、142b的引用140.1,第一個(gè)平面文件要被放置在相應(yīng)于被顯示復(fù)合文檔的窗口上的位置P1處(注意由于文檔142b是聲音文件,所以它沒(méi)有相關(guān)的位置)。文檔140a還包括對(duì)代碼段144a和144b(分別具有各自的顯示位置P3和P4)以及對(duì)代碼段144c和144d(它們分別是平面文件142a、142b的處理程序)的引用140.2。最后,文檔140a包括對(duì)復(fù)合文檔140b的引用140.3,該復(fù)合文檔140b將要被放置在顯示器130上的位置P5處。復(fù)合文檔140b包括對(duì)平面文件142c的引用和用于該文件的處理程序144c,該處理程序144c與在復(fù)合文檔140a中已經(jīng)被引用的處理程序相同。
控制器122根據(jù)復(fù)合文檔140a建立組合文檔160,組合文檔160由控制器122存儲(chǔ)在存儲(chǔ)器126的易失部分中作為被存儲(chǔ)的組合文檔126.7(圖2)。一般來(lái)說(shuō),組合文檔160是已遞歸地求解了對(duì)代碼段或?qū)ζ矫嫖募?處理程序的所有引用的復(fù)合文檔140的內(nèi)部表示。例如,在圖1的復(fù)合文檔140a的情況下,組合文檔160包括平面文件142a、142b、142c的組合版本(version)142a′、142b′、142c′,以及代碼段144a-d的組合版本144a′-d′。注意一對(duì)象的組合版本組合了實(shí)際對(duì)象的信息(例如,在平面文件的情形中,內(nèi)容和屬性)和該對(duì)象的輸出位置,如果相關(guān)的話。這一信息使控制器122能夠(利用合適的處理程序)將組合的復(fù)合文檔160變換成為格式化的輸出文檔170,該格式化的輸出文檔170能夠按照由正在被控制的具體設(shè)備110的設(shè)計(jì)人員設(shè)想的方式在多模態(tài)輸出設(shè)備130上被直接輸出。
例如,在圖4中,相應(yīng)于能在顯示部分130a上被輸出的圖象的輸出文檔170b定義了位于位置P1、P3、P4和P5的窗口,輸出的平面文件142a″、142c″和執(zhí)行代碼段144a″、144b″在這些窗口中由控制器122同時(shí)輸出。這些窗口的每一個(gè)都在代碼段144a″-c″的控制下,例如,被顯示平面文件142a″、142c″都在可執(zhí)行代碼段/文本處理程序144c″的控制下被顯示。執(zhí)行代碼段144a′-d″可以是四種類型中的一種(1)輸出代碼,一旦被執(zhí)行就產(chǎn)生可視或可聞的表示(例如圖形或聲音模擬),(2)元知識(shí)代碼,能夠勸告用戶考慮與被嵌入了代碼段的文檔合法地相互作用,(3)上下文代碼,能夠檢測(cè)和指示被嵌入了代碼段的復(fù)合文檔的上下文處理,以及(4)處理程序用于被嵌入數(shù)據(jù)(如上所述)。第一種可執(zhí)行代碼段的一個(gè)例子是說(shuō)明用戶如何把他們的電纜與TV外殼110a的后部連接的模擬。第二種代碼段的例子是靈巧求助應(yīng)用程序能夠告訴用戶如何選擇顯示平面文件142a″的功能。最后,第三種代碼段的例子是監(jiān)測(cè)流向和流出遠(yuǎn)程控制器120的控制器通信量、然后例如通過(guò)擺動(dòng)仿真手來(lái)向用戶指出傳輸正在進(jìn)行的靈巧圖符或卡通。
因?yàn)槎鄠€(gè)代碼段和平面文件也許需要被同時(shí)地輸出給輸出設(shè)備130,所以需要實(shí)時(shí)內(nèi)核126.5來(lái)在感覺(jué)上實(shí)現(xiàn)實(shí)時(shí)輸出和避免用戶的失望。最后,因?yàn)槠矫嫖募?42b″是聲音文件(例如WAV文件),所以控制器122利用合適的處理程序144d″對(duì)其進(jìn)行處理并將所獲得的實(shí)時(shí)聲音170b輸出給多模態(tài)輸出設(shè)備的聲音部分130a。
控制器建立組合文檔的方法如圖5所示,該圖是最佳實(shí)施例的方法的流程圖。
如以上參看圖3所描述的那樣,最佳實(shí)施例的方法的第一步是顯示缺省文檔126.2,用戶可從缺省文檔中選擇一些基本任選項(xiàng)(250)。一旦用戶選定了這些任選項(xiàng)中的一個(gè),控制器122就從網(wǎng)絡(luò)取出合適的文檔(252)。例如,如上所述,當(dāng)用戶選定了control_TV任選項(xiàng)時(shí),控制器122就向TV110a發(fā)送要求control_TV文檔的文檔請(qǐng)求信息。一旦接收到復(fù)合文檔140,控制器122就確定在當(dāng)?shù)厥欠衲艽嫒√幚碓摰谝粋€(gè)復(fù)合文檔所需的所有文檔(254)。如果不能夠(254,否),控制器122就從網(wǎng)絡(luò)取出在當(dāng)?shù)氐貌坏降乃兴栉臋n(256)。例如,在圖4所示的情況下,在顯示control_TV文檔之前,控制器122從TV外殼110a下裝被引用的平面文件142a-c和代碼段144a-d。這些對(duì)象的每一個(gè)都被暫存在存儲(chǔ)器126中(258)作為被暫存的下裝對(duì)象126.6。
在最佳實(shí)施例中,參看圖5討論的所需文檔可以包含兩種不同類型的信息。首先,所需文檔可以是在被下裝的復(fù)合文檔中被明顯地引用的對(duì)象(平面文件、代碼段或其它復(fù)合文檔)。這些明顯地被引用的對(duì)象被包括在組合文檔160中。這種包含處理是遞歸的,可以進(jìn)行下去,直到葉層(leaf level)對(duì)象(即沒(méi)有被引用的復(fù)合文檔對(duì)象的對(duì)象)最后被控制器122檢索到為止。
其次,所需文檔可以是剛被檢索的某一類文件的未被引用的處理程序,所需處理程序的標(biāo)識(shí)由被嵌入文檔的屬性字段確定。例如,如果平面文件142b是WAV聲音文件,而控制器122當(dāng)前在當(dāng)?shù)氐貌坏絎AV聲音文件處理程序并且該處理程序沒(méi)有在復(fù)合文檔140a中被引用,則控制器122就將向所有被連網(wǎng)的設(shè)備110發(fā)送要求合適的聲音處理器的請(qǐng)求。一旦接收到該處理程序,控制器122將安裝該處理程序并根據(jù)相關(guān)的平面文件142的內(nèi)容開(kāi)始執(zhí)行該處理程序?;蛘?,控制器122能夠把該處理程序與相關(guān)的平面文件一道暫存在存儲(chǔ)器空間126.7中,并在組合文檔160的余下部分做好了輸出準(zhǔn)備時(shí)播放該平面文件。
在所有嵌入復(fù)合文檔已被遞歸地檢索之后(即在建立了組合文檔160之后),控制器122就產(chǎn)生完整的輸出文檔170,控制器122把該完整的輸出文檔輸出給多重模態(tài)輸出設(shè)備130(260)。在文件類型的基礎(chǔ)上,輸出文檔170的不同部分被傳送給輸出設(shè)備的不同部分。例如,在平面文件是聲音文件的情況下,其相應(yīng)的輸出文檔170b被傳送給輸出設(shè)備130的聲音部分130b。文檔140a的其它被嵌入文檔,所有這些被嵌入文檔都是與圖形有關(guān)的被包括在輸出給輸出設(shè)備130的顯示部分130a的輸出文檔170a中。在某些平面文件142和/或可執(zhí)行代碼段144涉及到視頻數(shù)據(jù)的產(chǎn)生的情況下,這些對(duì)象也被輸出給顯示部分130a?;蛘?,控制器122能夠當(dāng)組合文檔160的完整部分一做好準(zhǔn)備就把它們輸出給輸出設(shè)備。
一旦完整的組合文檔已輸出給輸出設(shè)備130,控制器122就為用戶的交互作用提供保證,在這種用戶交互作用中,用戶能夠從用戶輸入設(shè)備132選擇各種任選項(xiàng)(260)。如果用戶選擇需要控制器通過(guò)網(wǎng)絡(luò)取出文檔的任選項(xiàng),就重復(fù)該方法的所有上述步驟。當(dāng)然,在某些情況下,例如在圖3所示的情況下,用戶能夠選擇遙控設(shè)備120本身的任選項(xiàng),例如“設(shè)定時(shí)間”212a′、“設(shè)定顯示參數(shù)”212b′或“設(shè)定聲音參數(shù)”212c′。
最佳實(shí)施例涉及被連網(wǎng)的、計(jì)算機(jī)控制的家庭娛樂(lè)設(shè)備和可被用來(lái)根據(jù)下裝的復(fù)合文檔控制各個(gè)部件的兼容的計(jì)算機(jī)控制的遙控設(shè)備。但是,該最佳實(shí)施例的系統(tǒng)和方法也適用于計(jì)算機(jī)網(wǎng)絡(luò)。
例如,在圖6所示的一替代的實(shí)施例中,設(shè)備外殼110被Web服務(wù)器310代替,而遙控120被Web客戶機(jī)代替。在Web客戶機(jī)上運(yùn)行的Web瀏覽程序322執(zhí)行以上對(duì)于控制器122所描述的各種復(fù)合文檔文件檢索、處理以及輸出操作。某些控制器的動(dòng)作,例如因用戶選擇引用而下裝唯一指定的文檔已經(jīng)由許多Web瀏覽程序執(zhí)行。但是,前述與該替代實(shí)施例不同,沒(méi)有配置Web瀏覽程序以下裝然后運(yùn)行(可任選地以實(shí)時(shí)方式)在Web文檔中被引用或被嵌入的可執(zhí)行代碼段。這些能力由該替代實(shí)施例按照三種不同范圍進(jìn)行提供。
首先,對(duì)代碼段的引用可被嵌入HTML(復(fù)合)文檔中,以便該引用由Web瀏覽程序作為超連接進(jìn)行顯示,這種選擇使瀏覽程序下裝并運(yùn)行該代碼段。其次,對(duì)代碼段的引用可被嵌入HTML文檔中,以便一旦接收到包括該代碼段的Web頁(yè),Web瀏覽程序就自動(dòng)地檢索并運(yùn)行該代碼段。這種被包括的代碼段在提供動(dòng)態(tài)知識(shí)方面是有用的,不管使用什么樣的瀏覽程序總是與某一頁(yè)面相關(guān)。例如,利用了本發(fā)明的這一特點(diǎn)的Web頁(yè)可以提供嵌入式應(yīng)用,該嵌入式應(yīng)用根據(jù)(為該嵌入式程序)所知道的網(wǎng)絡(luò)活動(dòng)模型和時(shí)刻從若干可供選擇的服務(wù)器中為引用文檔選擇最好的(即最不忙的)服務(wù)器。最后,如在上述聲音文件的情況下,根據(jù)該可替換實(shí)施例操作的Web瀏覽程序能夠在以前接收的數(shù)據(jù)文件的屬性的基礎(chǔ)上或當(dāng)處理程序的URL在引用兼容的平面文件的似同一HTML的文檔中被規(guī)定時(shí)下裝合適的處理程序。
在WWW環(huán)境中將起不同作用的最佳實(shí)施例的一個(gè)特點(diǎn)是服務(wù)器登記,這是服務(wù)器使客戶機(jī)知道它們的存在的過(guò)程。在WWW環(huán)境中,服務(wù)器和客戶機(jī)的連接不是直接的。因此,新的Web服務(wù)器的名字服務(wù)器不能夠利用Web客戶機(jī)的名字服務(wù)器來(lái)簡(jiǎn)單地登記它們的名字和地址。但是,可以實(shí)現(xiàn)另一簡(jiǎn)單的登記過(guò)程,在這一過(guò)程中,一旦進(jìn)行聯(lián)機(jī)或改變它們的Internet地址,Web服務(wù)器就利用合適的目錄、例如Yahoo自動(dòng)地進(jìn)行登記。客戶機(jī)的名字服務(wù)器然后可以沿該目錄周期性地登記新的服務(wù)器。
總之,圖6的替代實(shí)施例是實(shí)施本發(fā)明方法和系統(tǒng)的Web瀏覽程序和一組兼容的似HTML的復(fù)合文檔。具體來(lái)說(shuō),該替代的Web瀏覽程序322能夠處理似HTML的文檔可執(zhí)行代碼段的顯式引用或在與數(shù)據(jù)文件相關(guān)的屬性字段中被暗指的引用。在該替代實(shí)施例中,幾乎不需要對(duì)已有Web服務(wù)器310進(jìn)行改動(dòng),在Web服務(wù)器側(cè)的僅有的真正的變化是被存儲(chǔ)在各個(gè)服務(wù)器上的HTML文檔的形式。就是說(shuō),在該替代實(shí)施例中,給HTML文檔增加新的字段來(lái)嵌入可執(zhí)行代碼段和提供可能為要被Web瀏覽程序322下裝的合適的處理程序所需的任何附加文件屬性,由此使Web瀏覽程序在沒(méi)有關(guān)于文件格式的任何先驗(yàn)知識(shí)或者在當(dāng)?shù)氐貌坏胶线m的處理程序的情況下也能夠顯示/處理任何類型的平面文件。
雖然相對(duì)于一些具體實(shí)施例描述了本發(fā)明,但這些描述都是作為本發(fā)明的例證,不應(yīng)被看作是對(duì)本發(fā)明的限制。在不脫離本發(fā)明權(quán)利要求所限定的本發(fā)明的構(gòu)思和范圍,本領(lǐng)域的技術(shù)人員可以作出各種改進(jìn)。
權(quán)利要求
1.用于網(wǎng)絡(luò)中客戶機(jī)的存儲(chǔ)器,該網(wǎng)絡(luò)包括與所說(shuō)網(wǎng)絡(luò)連接的至少一個(gè)服務(wù)器和至少一個(gè)客戶機(jī),所述服務(wù)器和所述客戶機(jī)各包括一計(jì)算機(jī)控制器和一存儲(chǔ)器并具有唯一的網(wǎng)絡(luò)ID,所述客戶機(jī)的所述存儲(chǔ)器包括一復(fù)合文檔,其含有至少一個(gè)對(duì)嵌入式應(yīng)用的引用,所述引用選自顯式引用或隱式引用,使得一旦通過(guò)所述網(wǎng)絡(luò)從所述服務(wù)器接收到所述復(fù)合文檔,所述客戶機(jī)就被配置,以便借助于所述客戶機(jī)的計(jì)算機(jī)控制器來(lái)下裝并執(zhí)行所述被引用的嵌入式應(yīng)用。
2.如權(quán)利要求1的存儲(chǔ)器,其中,所述復(fù)合文檔包括對(duì)平面文件的引用,其中對(duì)嵌入式應(yīng)用的一種所述顯式引用是對(duì)所述平面文件處理程序的引用,使得一旦通過(guò)所述網(wǎng)絡(luò)從所述服務(wù)器接收到所述復(fù)合文檔,所述客戶機(jī)就被配置來(lái)下裝所述平面文件和所述處理程序、然后利用所述處理程序處理所述平面文件,如果所述處理程序未駐留在所述客戶機(jī)上,所述客戶機(jī)就不能夠處理所述平面文件。
3.如權(quán)利要求1的存儲(chǔ)器,其中,所述復(fù)合文檔包括對(duì)可確定類型的平面文件的引用,其中一種所述隱式引用是對(duì)由所述可確定類型的所述隱平面文件處理程序的引用,使得一旦通過(guò)所述網(wǎng)絡(luò)從所述服務(wù)器接收到所述復(fù)合文檔,所述客戶機(jī)就被配置來(lái)下裝所述平面文件并根據(jù)所述可確定的類型從所述服務(wù)器之一下裝所述處理程序、然后利用所述下裝的處理程序處理所述平面文件,如果所述處理程序未駐留在所述客戶機(jī)上,所述客戶機(jī)就不能夠處理所述平面文件。
4.如權(quán)利要求1的存儲(chǔ)器,其中,所述復(fù)合文檔具有對(duì)包括所述嵌入式應(yīng)用的多個(gè)嵌入式文檔的引用,所述存儲(chǔ)器包括被配置來(lái)將沒(méi)有存儲(chǔ)在所述客戶機(jī)的存儲(chǔ)器中的所述多個(gè)嵌入式文檔下裝到所述客戶機(jī)的請(qǐng)求程序模塊。
5.一種通過(guò)網(wǎng)絡(luò)傳送嵌入式文檔的系統(tǒng),該網(wǎng)絡(luò)包括與所說(shuō)網(wǎng)絡(luò)連接的至少一個(gè)服務(wù)器和至少一個(gè)客戶機(jī),所述服務(wù)器和所述客戶機(jī)各包括一計(jì)算機(jī)控制器和一存儲(chǔ)器并具有唯一的網(wǎng)絡(luò)ID,所述系統(tǒng)包括在客戶機(jī)的計(jì)算機(jī)控制器上可執(zhí)行的請(qǐng)求程序,所述請(qǐng)求程序被配置來(lái)控制由所述客戶機(jī)在所述網(wǎng)絡(luò)上發(fā)送的信息,所述信息包括指令特定的一個(gè)所述服務(wù)器向所述客戶機(jī)傳送特定復(fù)合文檔的文檔請(qǐng)求信息,其中復(fù)合文檔包括對(duì)多個(gè)所述嵌入文檔的引用,所述嵌入文檔具有選自可執(zhí)行代碼段、平面文檔和其它復(fù)合文檔的類型;以及在服務(wù)器的計(jì)算機(jī)控制器上可執(zhí)行的供給程序,所述供給程序被配置來(lái)對(duì)提供給所述服務(wù)器的所述信息作出響應(yīng),所述供給程序被配置來(lái)通過(guò)使所述服務(wù)器向所述客戶機(jī)傳送所述特定復(fù)合文檔來(lái)響應(yīng)所述文檔請(qǐng)求信息;使得一旦接收到所述特定復(fù)合文檔,所述請(qǐng)求程序就被配置來(lái)利用文檔請(qǐng)求信息對(duì)未存儲(chǔ)在所述客戶機(jī)的存儲(chǔ)器中的所述特定復(fù)合文檔引用的所述嵌入文檔的至少一個(gè)子集進(jìn)行檢索然后產(chǎn)生包括所述平面文檔和所述可執(zhí)行代碼段的組合復(fù)合文檔。
6.如權(quán)利要求5的系統(tǒng),其中,所述客戶機(jī)還包括由所述請(qǐng)求程序控制的多重模態(tài)輸出設(shè)備;所述請(qǐng)求程序被配置來(lái)向所述輸出設(shè)備輸出一個(gè)輸出復(fù)合文檔,其中所述輸出復(fù)合文檔包括相應(yīng)于所述組合復(fù)合文檔中所包括的所述平面文檔的正文圖象;以及所述可執(zhí)行代碼段的表示,所述表示由所述請(qǐng)求程序執(zhí)行的所述代碼段中產(chǎn)生。
7.如權(quán)利要求5的系統(tǒng),其中,所述請(qǐng)求程序是多任務(wù)操作系統(tǒng);所述客戶機(jī)還包括被所述請(qǐng)求程序控制的多模態(tài)輸出設(shè)備;所述請(qǐng)求程序被配置來(lái)向所述輸出設(shè)備輸出一個(gè)輸出復(fù)合文檔,其中所述輸出復(fù)合文檔包括相應(yīng)于所述組合復(fù)合文檔中所包括的所述平面文檔的正文圖象;以及所述可執(zhí)行代碼段的表示,所述表示由所述請(qǐng)求程序從執(zhí)行的所述代碼段中而產(chǎn)生;使得所述請(qǐng)求程序被配置來(lái)在輸出所述正文圖象的時(shí)候還同時(shí)以實(shí)時(shí)執(zhí)行多個(gè)所述代碼段。
8.如權(quán)利要求5的系統(tǒng),其中,被檢索的可執(zhí)行代碼段封裝為其執(zhí)行所需的所有數(shù)據(jù)和例行程序并被編碼,以使其可由所述客戶機(jī)執(zhí)行。
9.如權(quán)利要求6的系統(tǒng),其中,所述可執(zhí)行代碼段的至少一個(gè)子集選自以下構(gòu)成的組可執(zhí)行的聲音剪輯;可執(zhí)行的模擬;可執(zhí)行的電影剪輯;可執(zhí)行的自動(dòng)收?qǐng)?bào)機(jī)紙帶形式的信息;以及用于所述平面文檔的處理程序;所述客戶機(jī)被配置來(lái)執(zhí)行所述可執(zhí)行的代碼段。
10.如權(quán)利要求5的系統(tǒng),其中,還包括與所述客戶機(jī)連接的名字服務(wù)器,所述名字服務(wù)器保持有對(duì)來(lái)自所述客戶機(jī)的信息作出響應(yīng)的所述網(wǎng)絡(luò)上的所術(shù)服務(wù)器的至少一個(gè)子集的表,所述名字服務(wù)器被配置來(lái)每當(dāng)由所述客戶機(jī)請(qǐng)求時(shí)就將來(lái)自所述表的信息返回給所述客戶機(jī)。
11.如權(quán)利要求5的系統(tǒng),其中,所述服務(wù)器是Web服務(wù)器,所述客戶機(jī)是Web客戶機(jī),所述網(wǎng)絡(luò)是Internet。
12.一種通過(guò)網(wǎng)絡(luò)傳送嵌入文檔的方法,該網(wǎng)絡(luò)包括與所述網(wǎng)絡(luò)連接的至少一個(gè)服務(wù)器和至少一個(gè)客戶機(jī),所述服務(wù)器和所述客戶機(jī)各包括一計(jì)算機(jī)控制器和一存儲(chǔ)器并具有唯一的網(wǎng)絡(luò)ID,所述方法包括以下步驟(1)所述客戶機(jī)通過(guò)所述網(wǎng)絡(luò)向一特定的服務(wù)器發(fā)送文檔請(qǐng)求信息,所述文檔請(qǐng)求信息指定由所述特定服務(wù)器返回給所述客戶機(jī)的特定復(fù)合文檔;(2)響應(yīng)所述文檔請(qǐng)求信息,所述特定服務(wù)器將所述特定復(fù)合文檔返回給所述客戶機(jī),其中復(fù)合文檔包括對(duì)多個(gè)嵌入文檔的引用,每一所述嵌入文檔具有選自可執(zhí)行代碼段、平面文檔和其它復(fù)合文檔的類型;(3)一旦從所述服務(wù)器接收到所述復(fù)合文檔,所述客戶機(jī)就發(fā)送多個(gè)document_request信息,以便通過(guò)所述網(wǎng)絡(luò)檢索沒(méi)有被存儲(chǔ)在所述客戶機(jī)的存儲(chǔ)器中的所述復(fù)合文檔引用的任何平面文檔和所述可執(zhí)行代碼段;以及(4)產(chǎn)生包括所述平面文檔和所述可執(zhí)行代碼段的組合復(fù)合文檔。
13.如權(quán)利要求12的方法,其中,所述方法還包括以下步驟所述客戶機(jī)向所述多模態(tài)輸出設(shè)備輸出所述組合的輸出復(fù)合文檔,所述輸出步驟包括在所述多模態(tài)輸出設(shè)備上顯示相應(yīng)于所述組合復(fù)合文檔中所包括的所述平面文檔的正文圖象;以及執(zhí)行所述可執(zhí)行的代碼段并向所述多模態(tài)輸出設(shè)備輸出所述代碼段執(zhí)行的表示。
14.如權(quán)利要求13的方法,其中,顯示所述平面文檔的所述步驟由所述執(zhí)行代碼段的至少一個(gè)子集來(lái)執(zhí)行,所述每一個(gè)子集是與至少一個(gè)所述平面文檔兼容的數(shù)據(jù)處理程序。
15.如權(quán)利要求12的方法,其中,所述方法還包括以下步驟所述客戶機(jī)向多模態(tài)輸出設(shè)備輸出所述組合的輸出復(fù)合文檔,所述輸出步驟包括在所述多模態(tài)輸出設(shè)備上顯示相應(yīng)于所述組合復(fù)合文檔中所包括的所述平面文檔的正文圖象;以及執(zhí)行所述可執(zhí)行的代碼段并向所述多模態(tài)輸出設(shè)備輸出所述代碼段執(zhí)行的表示;使得所述執(zhí)行步驟被實(shí)時(shí)地和與所述顯示步驟同時(shí)地被執(zhí)行。
16.如權(quán)利要求15的方法,其中,顯示所述平面文檔的所述步驟由所述執(zhí)行代碼段的至少一個(gè)子集來(lái)執(zhí)行,所述子集的每一個(gè)是與至少一個(gè)所述平面文檔兼容的數(shù)據(jù)處理程序。
全文摘要
在網(wǎng)絡(luò)中傳送嵌入式應(yīng)用的系統(tǒng)和方法,計(jì)算機(jī)控制的網(wǎng)絡(luò)客戶機(jī)用戶,能夠請(qǐng)求和接收包括嵌入式應(yīng)用和/或數(shù)據(jù)文件的復(fù)合文檔,它只能夠被沒(méi)有駐留在該客戶機(jī)上的處理程序進(jìn)行處理(即成像或放音),每當(dāng)客戶機(jī)接收到復(fù)合文檔,就確定它是否能獲得其中被引用的所有文檔,如果不,就請(qǐng)求得不到的文檔,請(qǐng)求程序包括一多任務(wù)實(shí)時(shí)內(nèi)核,客戶機(jī)用戶能夠從包括嵌入式應(yīng)用的服務(wù)器中下裝文檔,當(dāng)其在該客戶機(jī)上被執(zhí)行時(shí),允許該客戶機(jī)利用從服務(wù)器下裝的命令控制服務(wù)器。
文檔編號(hào)H04L12/28GK1154514SQ9612201
公開(kāi)日1997年7月16日 申請(qǐng)日期1996年10月22日 優(yōu)先權(quán)日1995年10月23日
發(fā)明者詹姆斯·A·戈斯林 申請(qǐng)人:太陽(yáng)微系統(tǒng)有限公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1