專利名稱:分布式外圍設(shè)備控制系統(tǒng)和方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種分布式外圍設(shè)備控制系統(tǒng)和方法。
背景技術(shù):
一部具有打印文檔能力的設(shè)備通常需要擁有對(duì)以下信息和軟件的訪問權(quán)(a)文檔數(shù)據(jù);(b)可下載和處理文檔的應(yīng)用程序軟件,以及其他需要提供給該文檔的數(shù)據(jù),例如字體庫;(c)由應(yīng)用程序軟件使用以便以可顯示的方式產(chǎn)生輸出的操作系統(tǒng)圖形和打印軟件;以及(d)設(shè)備驅(qū)動(dòng)程序,其是由打印系統(tǒng)使用以產(chǎn)生適合于特定類型打印機(jī)(程序生成工具和型號(hào))的輸出的軟件模塊;打印機(jī)的每一種類型可以需要一個(gè)不同的設(shè)備驅(qū)動(dòng)程序。
這些程序和數(shù)據(jù)通常消耗大量的計(jì)算機(jī)存儲(chǔ)器和硬盤空間,并且為打印文檔而做的準(zhǔn)備可能需要一個(gè)相當(dāng)大的處理量。
典型的移動(dòng)信息設(shè)備,例如個(gè)人數(shù)字助理(PDA)或者移動(dòng)電話,它們?cè)谫Y源和處理速度方面比桌上型電腦要有限得多,因此不具備在本地支持大多數(shù)文檔類型的全部打印功能。此外,隨著無線連接技術(shù)、諸如IrDA、藍(lán)牙和無線LAN的使用率的增長(zhǎng),在一特定基礎(chǔ)上,移動(dòng)設(shè)備的用戶潛在地?fù)碛幸粋€(gè)廣域的打印機(jī)訪問權(quán)。
采用有限的文檔瀏覽應(yīng)用程序和使用了普通的、“最低級(jí)公共的標(biāo)準(zhǔn)(denominator)”的打印機(jī)驅(qū)動(dòng)程序的系統(tǒng)軟件,手持PDA通常具備刪節(jié)文檔處理和打印能力。諸如移動(dòng)電話的小型設(shè)備通常根本不具備打印或文檔處理能力。
附圖中的圖1示出了用于從一臺(tái)個(gè)人計(jì)算機(jī)(PC)2到一臺(tái)局域連接的打印機(jī)12進(jìn)行打印的典型架構(gòu)。下列對(duì)使用如圖1所示設(shè)備的典型打印處理描述是基于微軟Windows操作系統(tǒng)的。
應(yīng)用程序4發(fā)布圖形命令給操作系統(tǒng),公知的圖形命令有圖形設(shè)備界面(GDI)命令。當(dāng)操作系統(tǒng)6接收到足夠的GDI命令以呈現(xiàn)完整頁面時(shí),將數(shù)據(jù)轉(zhuǎn)換成發(fā)送到設(shè)備驅(qū)動(dòng)程序8的設(shè)備驅(qū)動(dòng)界面(DDI)命令。設(shè)備驅(qū)動(dòng)程序8將這些DDI命令轉(zhuǎn)換成原始的設(shè)備命令(打印機(jī)命令)。將這些原始設(shè)備命令(打印機(jī)命令)返回到操作系統(tǒng)6,操作系統(tǒng)6通過打印機(jī)端口10將數(shù)據(jù)發(fā)送到打印機(jī)12以便打印。
采用此架構(gòu),打印所需的所有軟件都位于PC 2上。在打印可以發(fā)生之前,必須通過以下方式建立該系統(tǒng)為附接到PC 2上的特定的打印機(jī)12安裝設(shè)備驅(qū)動(dòng)程序8,并且配置打印機(jī)12所連接的打印機(jī)端口10。
附圖中圖2示出了用于從網(wǎng)絡(luò)上的PC 2到連接到位于網(wǎng)絡(luò)上的服務(wù)器14的打印機(jī)12進(jìn)行打印的一種架構(gòu)。這種架構(gòu)使得PC 2可以使用連接到網(wǎng)絡(luò)服務(wù)器上的一定數(shù)量的打印機(jī)中任何一個(gè)進(jìn)行打印。US-5,699,495,標(biāo)題為“Point-and-point in a distributed environment”,描述了使用這種架構(gòu)的系統(tǒng)。
圖2中的架構(gòu)在兩個(gè)重要方面不同于關(guān)于圖1中所描述的架構(gòu)。首先,設(shè)備驅(qū)動(dòng)程序8最初存儲(chǔ)在服務(wù)器14上,并且只有在客戶(如,PC 2)需求時(shí),才由服務(wù)器14的操作系統(tǒng)16傳送到網(wǎng)絡(luò)上。其次,由設(shè)備驅(qū)動(dòng)程序8輸出的原始設(shè)備命令(打印機(jī)命令)經(jīng)由網(wǎng)絡(luò)傳送給服務(wù)器14,該服務(wù)器14通過打印機(jī)12所連接的打印機(jī)端口10發(fā)送命令。
US-6,201,611,標(biāo)題為“Providing local printing on a thin client”的文獻(xiàn),描述了用于打印到一個(gè)局域連接的打印機(jī)的系統(tǒng),然而該系統(tǒng)使用了位于服務(wù)器上的資源以提供大量的處理。運(yùn)行在客戶端的應(yīng)用程序軟件發(fā)布圖形命令給客戶操作系統(tǒng)。勝于調(diào)用一個(gè)本地設(shè)備驅(qū)動(dòng)程序以產(chǎn)生原始打印數(shù)據(jù),將命令轉(zhuǎn)換成不依靠設(shè)備(device-independent)的打印文件。然后將依靠設(shè)備的數(shù)據(jù)傳送給網(wǎng)絡(luò)上的服務(wù)器,服務(wù)器使用位于服務(wù)器上的設(shè)備驅(qū)動(dòng)程序?qū)⒉灰揽吭O(shè)備的數(shù)據(jù)轉(zhuǎn)換成依靠設(shè)備(device-dependent)的數(shù)據(jù)。然后將依靠設(shè)備的數(shù)據(jù)經(jīng)由客戶端從服務(wù)器傳送到打印機(jī)。通過控制從服務(wù)器到客戶端的依靠設(shè)備的數(shù)據(jù)流避免了在客戶端的打印數(shù)據(jù)的本地假脫機(jī)??梢詫⒋蛴C(jī)連接到客戶端、而不是連接到正在運(yùn)行應(yīng)用程序的客戶端。在US-6,201,611中沒有描述特定打印機(jī)配置的方法。該文獻(xiàn)假設(shè)該服務(wù)器(或者網(wǎng)絡(luò)上另一臺(tái)服務(wù)器)已經(jīng)依照給定打印機(jī)的驅(qū)動(dòng)程序進(jìn)行了配置。
US-A-2002/0018234,標(biāo)題為“Printer driver system for remote printing”的文獻(xiàn),描述了一種系統(tǒng),其中使用安裝在服務(wù)器上的“通用的”打印機(jī)驅(qū)動(dòng)程序來處理打印任務(wù),以產(chǎn)生通用的打印文件,所述打印文件是可以直接發(fā)送到打印機(jī)的一般的文件類型。
可以認(rèn)為EP-A-1291786,GB-A-2365599,WO 01/042894,WO 02/041107和JP-2003-114773均披露了一種分布式外圍設(shè)備的控制方法,用于控制介于信息設(shè)備及與該信息設(shè)備通信的外圍設(shè)備之間的交互,該方法包括請(qǐng)求外圍設(shè)備執(zhí)行特定的任務(wù);發(fā)送標(biāo)識(shí)外圍設(shè)備的設(shè)備標(biāo)識(shí)信息至與該信息設(shè)備通信的外圍設(shè)備,該服務(wù)器有至少一個(gè)外圍設(shè)備驅(qū)動(dòng)程序的訪問權(quán);依靠設(shè)備標(biāo)識(shí)信息,選擇一個(gè)對(duì)應(yīng)于外圍設(shè)備的設(shè)備驅(qū)動(dòng)程序;并且代表該信息設(shè)備及使用所選擇的設(shè)備驅(qū)動(dòng)程序、利用該服務(wù)器執(zhí)行依靠外圍設(shè)備的處理操作,該操作涉及執(zhí)行產(chǎn)生依靠設(shè)備的數(shù)據(jù)的任務(wù)。
US 2002/0196478披露了一個(gè)系統(tǒng),該系統(tǒng)包括移動(dòng)計(jì)算設(shè)備,掃描儀或多功能打印機(jī)以及服務(wù)器。掃描儀將紙件文檔掃描成要發(fā)送給服務(wù)器的電子文檔。沒有由服務(wù)器請(qǐng)求的依靠設(shè)備的處理,該服務(wù)器在電子文檔由移動(dòng)計(jì)算設(shè)備檢索之前擔(dān)當(dāng)臨時(shí)存儲(chǔ)器。移動(dòng)計(jì)算設(shè)備不擔(dān)當(dāng)掃描儀和服務(wù)器之間的網(wǎng)關(guān)。
發(fā)明內(nèi)容
根據(jù)本發(fā)明的第一個(gè)方面,提供了一種分布式外圍設(shè)備控制方法,該方法用于控制信息設(shè)備和與該信息設(shè)備通信的外圍設(shè)備之間的交互,該方法包括請(qǐng)求外圍設(shè)備執(zhí)行特定任務(wù);發(fā)送標(biāo)識(shí)外圍設(shè)備的設(shè)備標(biāo)識(shí)信息至與該信息設(shè)備通信的服務(wù)器,所述服務(wù)器擁有對(duì)至少一個(gè)外圍設(shè)備驅(qū)動(dòng)程序的訪問權(quán);依靠設(shè)備標(biāo)識(shí)信息選擇一個(gè)對(duì)應(yīng)于外圍設(shè)備的設(shè)備驅(qū)動(dòng)程序;代表信息設(shè)備并使用所選擇的設(shè)備驅(qū)動(dòng)程序、利用服務(wù)器以執(zhí)行外圍依靠設(shè)備的處理操作,所述處理操作涉及執(zhí)行產(chǎn)生依靠設(shè)備數(shù)據(jù)任務(wù);其特點(diǎn)是在服務(wù)器建立虛擬端口以形成服務(wù)器與信息設(shè)備之間的通信鏈路的一部分;并將虛擬端口與所選擇的設(shè)備驅(qū)動(dòng)程序相關(guān)聯(lián);并發(fā)送依靠設(shè)備數(shù)據(jù)至該虛擬端口,以便經(jīng)由該信息設(shè)備向前傳送至外圍設(shè)備以使得外圍設(shè)備能夠執(zhí)行特定的任務(wù)。
建立虛擬端口并將其與所選擇的設(shè)備驅(qū)動(dòng)程序相關(guān)聯(lián),以便使服務(wù)器的操作系統(tǒng)看似通向外圍設(shè)備附接的物理端口的接口,然而其中任何發(fā)送至該虛擬端口的數(shù)據(jù)都在通信鏈路上向前傳送到信息設(shè)備,而非直接傳向外圍設(shè)備。
所述服務(wù)器可以擁有至少一個(gè)外圍設(shè)備驅(qū)動(dòng)程序的訪問權(quán),該方法還包括依靠要執(zhí)行的特定任務(wù)選擇應(yīng)用程序的步驟,并且其中依靠設(shè)備的處理操作是在所選擇的應(yīng)用程序的控制下,在與所選擇的設(shè)備驅(qū)動(dòng)程序的交互中執(zhí)行的。應(yīng)用程序不需要執(zhí)行任何依靠設(shè)備的處理操作。
所述服務(wù)器可以擁有多數(shù)應(yīng)用程序的訪問權(quán),所述應(yīng)用程序用于執(zhí)行不依靠設(shè)備的處理操作,該方法還包括選擇應(yīng)用程序,并利用服務(wù)器、使用所選擇的應(yīng)用程序來執(zhí)行代表信息設(shè)備的不依靠設(shè)備的處理操作??梢砸揽恳獔?zhí)行的特定任務(wù)選擇所述應(yīng)用程序。
該方法還可以包括在服務(wù)器緩沖依靠設(shè)備的數(shù)據(jù)的步驟,以控制數(shù)據(jù)傳送至信息設(shè)備的速率。在服務(wù)器緩沖依靠設(shè)備數(shù)據(jù)可以由依靠從外圍設(shè)備接收的控制信號(hào)控制,該控制信號(hào)指示外圍設(shè)備的狀態(tài)。在服務(wù)器上緩沖依靠設(shè)備的數(shù)據(jù)可以由存儲(chǔ)器的飽滿度控制,該存儲(chǔ)器用于在信息設(shè)備端緩沖依靠設(shè)備的數(shù)據(jù)。
該方法還可以包括在信息設(shè)備上緩沖依靠設(shè)備數(shù)據(jù)的步驟,以控制數(shù)據(jù)傳送至外圍設(shè)備的速率。
在所有需要執(zhí)行從服務(wù)器接收的特定任務(wù)的依靠設(shè)備數(shù)據(jù)之前,信息設(shè)備開始發(fā)送依靠設(shè)備數(shù)據(jù)至外圍設(shè)備。
該方法還可以包括在服務(wù)器端壓縮依靠設(shè)備數(shù)據(jù)以及在信息設(shè)備端為依靠設(shè)備數(shù)據(jù)解壓縮的步驟。
該方法還可以包括在將依靠設(shè)備數(shù)據(jù)發(fā)送至外圍設(shè)備之前,在信息設(shè)備端處理依靠設(shè)備數(shù)據(jù)的步驟。因而發(fā)送至外圍設(shè)備的依靠設(shè)備數(shù)據(jù)可以不必與在信息設(shè)備端接收的依靠設(shè)備數(shù)據(jù)相同。
外圍設(shè)備可以包括輸出設(shè)備。
外圍設(shè)備可以是打印機(jī),在這種情況下,特定任務(wù)可能是執(zhí)行打印所選擇的文檔的打印操作并且所述依靠設(shè)備數(shù)據(jù)是打印機(jī)命令。該方法還可以包括從信息設(shè)備發(fā)送所選擇的文檔至服務(wù)器的步驟,或者還包括從文檔服務(wù)器中檢索所選擇的文檔的步驟。所述文檔服務(wù)器位于可由服務(wù)器訪問的獨(dú)立的設(shè)備中,可以通過檢驗(yàn)文檔類型選擇應(yīng)用程序,例如通過檢驗(yàn)文檔的文件擴(kuò)展名。
外圍設(shè)備可以包括輸入設(shè)備。在這種情況下,該方法可以還包括在外圍設(shè)備端執(zhí)行特定任務(wù)以產(chǎn)生依靠設(shè)備數(shù)據(jù)的步驟以及為向前傳送給服務(wù)器而發(fā)送依靠設(shè)備數(shù)據(jù)至信息設(shè)備的步驟。在服務(wù)器端執(zhí)行的依靠設(shè)備的操作可以用來處理依靠設(shè)備數(shù)據(jù),由選擇的應(yīng)用程序產(chǎn)生供使用的不依靠設(shè)備的數(shù)據(jù)??梢愿鶕?jù)在外圍設(shè)備執(zhí)行的特定任務(wù)選擇應(yīng)用程序??梢砸揽繌耐鈬O(shè)備接收的控制信號(hào)控制依靠設(shè)備數(shù)據(jù)傳送至信息設(shè)備的速率,該控制信號(hào)指示外圍設(shè)備的狀態(tài)??梢砸揽看鎯?chǔ)器的飽滿度控制依靠設(shè)備數(shù)據(jù)傳送至信息設(shè)備的速率,該存儲(chǔ)器用于在信息設(shè)備端緩沖依靠設(shè)備的數(shù)據(jù)。該方法還可以包括在信息設(shè)備上緩沖依靠設(shè)備的數(shù)據(jù),以控制數(shù)據(jù)傳送至服務(wù)器的速率的步驟。該方法還可以包括在信息設(shè)備端壓縮該依靠設(shè)備數(shù)據(jù)以及在服務(wù)器端為依靠設(shè)備數(shù)據(jù)解壓縮的步驟。該方法還可以包括在將依靠設(shè)備的數(shù)據(jù)發(fā)送至服務(wù)器之前,在信息設(shè)備端處理依靠設(shè)備數(shù)據(jù)的步驟。
所述輸入設(shè)備可以是掃描儀,所述特定任務(wù)可以是執(zhí)行掃描文檔的掃描操作并且所述依靠設(shè)備數(shù)據(jù)可以是用于控制掃描儀執(zhí)行特定任務(wù)的掃描命令。
根據(jù)本發(fā)明的第二方面,提供一種分布式外圍設(shè)備控制方法,用于控制信息設(shè)備和與該信息設(shè)備通信的外圍設(shè)備之間的交互,該方法包括請(qǐng)求外圍設(shè)備執(zhí)行產(chǎn)生依靠設(shè)備數(shù)據(jù)的特定任務(wù),發(fā)送標(biāo)識(shí)外圍設(shè)備的服務(wù)標(biāo)識(shí)信息至與該信息設(shè)備通信的服務(wù)器,所述服務(wù)器擁有對(duì)至少一個(gè)外圍設(shè)備驅(qū)動(dòng)程序的訪問權(quán),依靠設(shè)備標(biāo)識(shí)信息選擇一個(gè)對(duì)應(yīng)于外圍設(shè)備的設(shè)備驅(qū)動(dòng)程序,其特點(diǎn)是在服務(wù)器建立虛擬端口以形成服務(wù)器與信息設(shè)備之間的通信鏈路的一部分,并將虛擬端口與所選擇的設(shè)備驅(qū)動(dòng)程序相關(guān)聯(lián),為在虛擬端口接收、從外圍設(shè)備經(jīng)由信息設(shè)備發(fā)送依靠設(shè)備的數(shù)據(jù)至該服務(wù)器,代表信息設(shè)備并使用所選擇的設(shè)備驅(qū)動(dòng)程序、利用服務(wù)器對(duì)在虛擬端口接收到的依靠設(shè)備數(shù)據(jù)執(zhí)行外圍依靠設(shè)備的處理操作。
建立虛擬端口并將其與所選的設(shè)備驅(qū)動(dòng)程序相聯(lián)系,以便使服務(wù)器的操作系統(tǒng)看似通向外圍設(shè)備附接的物理端口的接口,如此以致任何在虛擬端口接收的數(shù)據(jù)都看似發(fā)自于外圍設(shè)備。
所述服務(wù)器擁有多數(shù)應(yīng)用程序的訪問權(quán),該方法還可以包括依靠在外圍設(shè)備端要執(zhí)行的特定任務(wù)來選擇應(yīng)用程序的步驟,并且依靠設(shè)備處理操作可以在所選應(yīng)用程序的控制下、在與所選擇的設(shè)備驅(qū)動(dòng)程序的交互中執(zhí)行。應(yīng)用程序不需要執(zhí)行不依靠設(shè)備的處理操作。
所述服務(wù)器擁有多數(shù)應(yīng)用程序的訪問權(quán),所述應(yīng)用程序用于執(zhí)行依靠設(shè)備的處理操作,并且該方法還包括選擇應(yīng)用程序的步驟,以及采用服務(wù)器、使用所選擇的應(yīng)用程序來執(zhí)行代表信息設(shè)備的不依靠設(shè)備的處理操作的步驟。
在服務(wù)器端執(zhí)行的依靠設(shè)備的處理操作可以用于處理依靠設(shè)備的數(shù)據(jù)以產(chǎn)生供所選應(yīng)用程序使用的不依靠設(shè)備的數(shù)據(jù)。
外圍設(shè)備可以包括用于產(chǎn)生依靠設(shè)備數(shù)據(jù)的輸入設(shè)備。
所述輸入設(shè)備可以是掃描儀,并且特定任務(wù)可以是執(zhí)行掃描文檔的掃描操作。
在第一或第二方面中,所述通信鏈路可以是第一通信鏈路,并且信息設(shè)備可以通過第二通信鏈路與外圍設(shè)備通信,并且該方法還可以包括在信息設(shè)備端創(chuàng)建虛擬端口的步驟,所述虛擬端口形成第二通信鏈路的一部分。
所述通信鏈路可以是第一通信鏈路,并且信息設(shè)備可以通過第二通信鏈路與外圍設(shè)備通信,并且該方法還可以包括在信息設(shè)備端創(chuàng)建虛擬端口的步驟,所述虛擬端口形成第一通信鏈路的一部分。
該方法還可以包括通過即插即用規(guī)范從外圍設(shè)備獲得設(shè)備標(biāo)識(shí)信息的步驟。多數(shù)外圍設(shè)備驅(qū)動(dòng)程序中的至少一個(gè)是位于服務(wù)器中的。多數(shù)外圍設(shè)備驅(qū)動(dòng)程序中的至少一個(gè)是位于獨(dú)立的設(shè)備驅(qū)動(dòng)程序服務(wù)器中的,所述服務(wù)器可以訪問該設(shè)備驅(qū)動(dòng)程序服務(wù)器。該方法的步驟可以由信息設(shè)備進(jìn)行控制。建立每一個(gè)虛擬端口都是在信息設(shè)備的控制下進(jìn)行的。該方法可進(jìn)一步包括在信息設(shè)備端執(zhí)行外圍的不依靠設(shè)備的處理操作的步驟。
所述服務(wù)器擁有多數(shù)外圍設(shè)備驅(qū)動(dòng)程序的訪問權(quán)。
第一和第二通信鏈路可以是無線鏈路,例如藍(lán)牙,IrDA或WiFi鏈路。所述鏈路可以遵循IEEE802.11標(biāo)準(zhǔn)。
另一方面,第一和第二通信鏈路可以是物理鏈路,例如USB或串行電纜鏈路。
第一和第二通信鏈路可以是電話通信鏈路,例如移動(dòng)電話通信和/或互聯(lián)網(wǎng)鏈路。
該信息設(shè)備可以是受限資源信息設(shè)備并可以是便攜式信息設(shè)備,例如個(gè)人數(shù)字助理或移動(dòng)電話。
根據(jù)本發(fā)明的第三個(gè)方面,提供一種分布式外圍設(shè)備控制系統(tǒng),該系統(tǒng)用于控制系統(tǒng)的信息設(shè)備和與該信息設(shè)備通信的系統(tǒng)的外圍設(shè)備之間的交互,所述系統(tǒng)包括用于請(qǐng)求外圍設(shè)備執(zhí)行特定任務(wù)的裝置;用于發(fā)送標(biāo)識(shí)外圍設(shè)備的服務(wù)標(biāo)識(shí)信息至與該信息設(shè)備通信的服務(wù)器的裝置,所述服務(wù)器擁有對(duì)至少一個(gè)外圍設(shè)備驅(qū)動(dòng)程序的訪問權(quán);用于依靠設(shè)備標(biāo)識(shí)信息選擇對(duì)應(yīng)于外圍設(shè)備的設(shè)備驅(qū)動(dòng)程序的裝置,代表信息設(shè)備并使用所選擇的設(shè)備驅(qū)動(dòng)程序;用于利用服務(wù)器以執(zhí)行外圍依靠設(shè)備的處理操作的裝置,所述處理操作涉及執(zhí)行產(chǎn)生依靠設(shè)備數(shù)據(jù)任務(wù);其特點(diǎn)是包括用于在服務(wù)器建立虛擬端口并且將虛擬端口與所選擇的設(shè)備驅(qū)動(dòng)程序相關(guān)聯(lián)的裝置,所述虛擬端口形成服務(wù)器與信息設(shè)備之間的通信鏈路的一部分;以及用于發(fā)送依靠設(shè)備的數(shù)據(jù)至該虛擬端口的裝置,以便經(jīng)由該信息設(shè)備向前傳送至外圍設(shè)備以使得外圍設(shè)備能夠執(zhí)行特定的任務(wù)。
根據(jù)本發(fā)明的第四個(gè)方面,提供了一種分布式外圍設(shè)備控制系統(tǒng),該系統(tǒng)用于控制系統(tǒng)的信息設(shè)備和與該信息設(shè)備通信的系統(tǒng)的外圍設(shè)備之間的交互,所述系統(tǒng)包括用于請(qǐng)求外圍設(shè)備執(zhí)行產(chǎn)生依靠設(shè)備數(shù)據(jù)的特定任務(wù)的裝置;用于發(fā)送標(biāo)識(shí)外圍設(shè)備的服務(wù)標(biāo)識(shí)信息至與該信息設(shè)備通信的服務(wù)器的裝置;所述服務(wù)器擁有對(duì)至少一個(gè)外圍設(shè)備驅(qū)動(dòng)程序的訪問權(quán),用于依靠設(shè)備標(biāo)識(shí)信息選擇對(duì)應(yīng)于外圍設(shè)備的設(shè)備驅(qū)動(dòng)程序的裝置;其特點(diǎn)是還包括用于在服務(wù)器建立虛擬端口并將虛擬端口與所選擇的設(shè)備驅(qū)動(dòng)程序相關(guān)聯(lián)的裝置,所述虛擬端口形成服務(wù)器與信息設(shè)備之間的通信鏈路的一部分;為在虛擬端口接收、用于從外圍設(shè)備經(jīng)由信息設(shè)備發(fā)送依靠設(shè)備的數(shù)據(jù)至該服務(wù)器的裝置;代表信息設(shè)備并使用所選擇的設(shè)備驅(qū)動(dòng)程序,采用服務(wù)器對(duì)在虛擬端口接收到的依靠設(shè)備的數(shù)據(jù)執(zhí)行外圍依靠設(shè)備的處理操作的裝置。
根據(jù)本發(fā)明的第五個(gè)方面,提供一種操作程序,用于控制信息處理設(shè)備或者分布式外圍設(shè)備控制系統(tǒng)以執(zhí)行根據(jù)本發(fā)明第一或第二方面的方法??梢詫⒃摬僮鞒绦蛴涊d在載體介質(zhì)上,例如傳送介質(zhì)或者存儲(chǔ)介質(zhì)。
根據(jù)本發(fā)明的第六個(gè)方面,提供一種信息處理設(shè)備,適用于根據(jù)本發(fā)明第一或第二方面的方法。
根據(jù)本發(fā)明的第七個(gè)方面,提供一種服務(wù)器,適用于根據(jù)本發(fā)明第一或第二方面的方法。
通過舉例的方式,現(xiàn)在對(duì)附圖進(jìn)行說明,其中
圖1,已在上文中討論過,示出了從個(gè)人計(jì)算機(jī)到局域連接的打印機(jī)的用于打印的典型架構(gòu);圖2,也已在上文中討論過,示出了從網(wǎng)絡(luò)上的個(gè)人計(jì)算機(jī)到連接到服務(wù)器上的網(wǎng)絡(luò)打印機(jī)的用于打印的架構(gòu);圖3是示出了根據(jù)本發(fā)明第一實(shí)施例的分布式打印系統(tǒng)的框圖;圖4是用于說明如圖3所表示的分布式打印系統(tǒng)的操作的流程圖;以及圖5是示出了根據(jù)本發(fā)明第二實(shí)施例的分布式掃描系統(tǒng)的框圖。
具體實(shí)施例方式
圖3是示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的分布式打印系統(tǒng)的框圖。該分布式打印系統(tǒng)包括PDA20、打印機(jī)28以及服務(wù)器30。PDA20與打印機(jī)28以及服務(wù)器30通信。PDA20包括打印服務(wù)客戶程序22,打印機(jī)控制器24和端口仿真程序26。打印服務(wù)客戶22與端口仿真程序26以及打印機(jī)控制器24通信,后兩者還相互直接通信。服務(wù)器30包括與文檔服務(wù)器32通信的文檔打印服務(wù)程序36,驅(qū)動(dòng)程序數(shù)據(jù)庫34,虛擬打印機(jī)端口38,打印機(jī)驅(qū)動(dòng)程序40以及一個(gè)應(yīng)用程序42。其中后三者與服務(wù)器30的操作系統(tǒng)44進(jìn)行通信。
現(xiàn)在將參照?qǐng)D4的流程圖描述圖3中示出的分布式打印系統(tǒng)的操作。
PDA20上的客戶軟件22通過通信端口建立與打印機(jī)28之間的連接(步驟S1)。在該實(shí)施例中,通信端口由端口仿真程序26提供,端口仿真程序26經(jīng)由無線鏈接傳送并接收數(shù)據(jù),例如藍(lán)牙或IrDA。于是客戶PDA20在網(wǎng)絡(luò)上建立至服務(wù)器30的文檔打印服務(wù)程序36的連接(步驟S2)。
客戶軟件22獲得關(guān)于打印機(jī)28的類型(例如,制造和樣式)的信息(步驟S3)。舉個(gè)例子,即插即用外部COM設(shè)備規(guī)范提出一個(gè)機(jī)制,該機(jī)制提供通過串行通信端口連接外圍設(shè)備的自動(dòng)架構(gòu),并且有為平行端口和其他類型的連接相似的規(guī)范。打印機(jī)中的大多數(shù)為個(gè)人計(jì)算機(jī)使用而設(shè)計(jì),遵循即插即用規(guī)范,該規(guī)范允許自動(dòng)識(shí)別外圍設(shè)備的類型。
于是PDA20發(fā)送關(guān)于打印機(jī)28的打印機(jī)類型信息給服務(wù)器30(步驟S4)。服務(wù)器30使用打印機(jī)類型信息在驅(qū)動(dòng)程序數(shù)據(jù)庫34中尋找需要的打印機(jī)驅(qū)動(dòng)程序(步驟S5)。假定驅(qū)動(dòng)程序數(shù)據(jù)庫34供應(yīng)與打印機(jī)28匹配的設(shè)備驅(qū)動(dòng)程序。PDA20向服務(wù)器30發(fā)送所請(qǐng)求文檔的打印請(qǐng)求(步驟S6)。
于是服務(wù)器30創(chuàng)建虛擬打印機(jī)端口38。對(duì)于操作系統(tǒng)44而言,虛擬通信端口是一個(gè)作為物理通信端口的軟件成分。任何從該端口寫入或讀出的數(shù)據(jù)被發(fā)送到其它過程或從那里接收,而不是發(fā)送到附接到一個(gè)物理端口的設(shè)備。在這種情況下,將寫入到虛擬打印機(jī)端口38的數(shù)據(jù)通過網(wǎng)絡(luò)發(fā)送到PDA20,從那里將數(shù)據(jù)經(jīng)由端口仿真程序26發(fā)送到打印機(jī)28。
在操作系統(tǒng)的環(huán)境中,“打印機(jī)”可以通常被視為一種介于設(shè)備驅(qū)動(dòng)程序和通信端口之間的關(guān)聯(lián),所述設(shè)備驅(qū)動(dòng)程序諸如圖3中的打印機(jī)驅(qū)動(dòng)程序40,所述通信端口諸如圖3的虛擬打印機(jī)端口。配置打印系統(tǒng)的提取(extract)過程取決于服務(wù)器的操作系統(tǒng)。在Windows操作系統(tǒng)的情況下,通過指定端口和設(shè)備驅(qū)動(dòng)程序以及打印處理器和端口監(jiān)視器來配置打印機(jī)。通過這種方式,可以配置該系統(tǒng)以便使用預(yù)先選擇的設(shè)備驅(qū)動(dòng)程序和虛擬打印機(jī)端口進(jìn)行打印。
為了完成安裝,客戶PDA20創(chuàng)建打印機(jī)控制器24,打印機(jī)控制器24控制介于虛擬打印機(jī)端口38和端口仿真程序26之間的數(shù)據(jù)流。
服務(wù)器30從文檔服務(wù)器32和與文檔相聯(lián)系的應(yīng)用程序檢索請(qǐng)求的文檔(步驟S7)。假定該系統(tǒng)可以將文檔聯(lián)系到正確的應(yīng)用程序上。例如,在Windows操作系統(tǒng)中通過使用文件擴(kuò)展名判定關(guān)聯(lián)。另一種可選情況是,用戶通過使用客戶界面來明確指定應(yīng)用程序。
執(zhí)行應(yīng)用程序42,并且命令由文檔打印服務(wù)程序36事先創(chuàng)建的打印機(jī)來打印文檔。在這種方法中,可以依靠操作系統(tǒng)和應(yīng)用程序完成上述操作。典型地,通過指定應(yīng)用程序來執(zhí)行應(yīng)用程序42并打印該文檔,文檔的文件路徑和打印機(jī)名作為命令程序行(command-line)的參數(shù)。在Windows操作系統(tǒng)環(huán)境下,命令解釋程序(shell)打印命令常常與文檔類型相關(guān)聯(lián)。在這種情況下,將打印機(jī)設(shè)置成系統(tǒng)的默認(rèn)打印機(jī)是足夠的,于是執(zhí)行文檔的命令解釋程序(shell)打印命令。
當(dāng)打印文檔時(shí),應(yīng)用程序向操作系統(tǒng)的圖形API(應(yīng)用程序編程界面)發(fā)布圖形設(shè)備界面(GDI)命令。操作系統(tǒng)44將圖形API的調(diào)用轉(zhuǎn)換成設(shè)備驅(qū)動(dòng)程序界面(DDI)調(diào)用,打印系統(tǒng)發(fā)送該調(diào)用至設(shè)備(打印機(jī))驅(qū)動(dòng)程序40以產(chǎn)生設(shè)備-指定的原始打印命令(步驟S8)。
打印系統(tǒng)將指定設(shè)備打印機(jī)命令寫至虛擬打印機(jī)端口38,該端口又越過網(wǎng)絡(luò)發(fā)送數(shù)據(jù)至PDA20上的打印機(jī)控制器24(步驟S9)。打印機(jī)控制器20經(jīng)由端口仿真程序26傳送從服務(wù)器30檢索到的打印數(shù)據(jù)至打印機(jī)28(步驟S10)。
總之,根據(jù)本發(fā)明實(shí)施例的分布式打印系統(tǒng)的操作包括以下步驟(a)自動(dòng)標(biāo)識(shí)和下載給定打印機(jī)的適當(dāng)?shù)脑O(shè)備驅(qū)動(dòng)程序;(b)通過移動(dòng)設(shè)備從服務(wù)器的打印系統(tǒng)傳送輸出至打印機(jī);(c)使用位于服務(wù)器上的軟件應(yīng)用程序來處理打印的文檔;(d)使用由(a)獲得的設(shè)備驅(qū)動(dòng)程序來自動(dòng)配置服務(wù)器打印系統(tǒng),以便進(jìn)一步處理來自于應(yīng)用程序的輸出以產(chǎn)生打印機(jī)指定的數(shù)據(jù),并且由步驟(b)傳送數(shù)據(jù)至打印機(jī);以及(e)控制來自于移動(dòng)設(shè)備的上述步驟。
虛擬打印機(jī)端口38接收數(shù)據(jù)的速度很可能超過數(shù)據(jù)傳送給打印機(jī)28的速度。為了將客戶PDA20的緩存需求的存儲(chǔ)量減到最小,打印機(jī)控制器24可以遙控虛擬打印機(jī)端口38以便將打印數(shù)據(jù)緩存在服務(wù)器端30。
盡管在本實(shí)施例中驅(qū)動(dòng)程序數(shù)據(jù)庫34表示為位于服務(wù)器30中,但驅(qū)動(dòng)程序數(shù)據(jù)庫34也可以位于集中式網(wǎng)頁服務(wù)程序中,所述集中式網(wǎng)頁服務(wù)程序提供的大的、定期更新打印機(jī)驅(qū)動(dòng)程序數(shù)據(jù)庫。在集中式網(wǎng)頁服務(wù)程序中這種驅(qū)動(dòng)程序數(shù)據(jù)庫34可以由文檔打印服務(wù)程序36訪問和下載,使得系統(tǒng)支持多種打印機(jī)。一旦下載,服務(wù)器30可以將經(jīng)常使用的驅(qū)動(dòng)程序就地緩存。
實(shí)現(xiàn)本發(fā)明的分布式打印系統(tǒng)允許在特定基礎(chǔ)下使用打印機(jī),而無需用戶為每一臺(tái)打印機(jī)配置客戶機(jī)或服務(wù)器。系統(tǒng)可以為任何一臺(tái)打印機(jī)可利用的驅(qū)動(dòng)程序的服務(wù)器操作系統(tǒng)工作??梢酝ㄟ^紅外端口、藍(lán)牙連接或無線LAN連接實(shí)現(xiàn)來自PDA的無線連接。
應(yīng)用程序、字體、打印機(jī)驅(qū)動(dòng)程序和操作系統(tǒng)組件(圖形和打印子系統(tǒng))位于服務(wù)器上,而不是在PDA上。同樣,使PDA的負(fù)擔(dān)最小化,以避免當(dāng)轉(zhuǎn)換文檔為通用格式時(shí)的這種折衷辦法。
該分布式打印系統(tǒng)使用驅(qū)動(dòng)程序數(shù)據(jù)庫來標(biāo)識(shí)打印機(jī)并且載入適當(dāng)?shù)脑O(shè)備驅(qū)動(dòng)程序。這避免使用“通用”打印機(jī)驅(qū)動(dòng)程序的折衷辦法。正如上文所提到的,為了避免在服務(wù)器上加載每一種可能的打印機(jī)驅(qū)動(dòng)程序,驅(qū)動(dòng)程序數(shù)據(jù)庫可以在一個(gè)獨(dú)立的、在多服務(wù)器并可能是分布式共享的系統(tǒng)中,該系統(tǒng)可能是一個(gè)網(wǎng)頁服務(wù)程序。
從服務(wù)器30發(fā)送至PDA20的數(shù)據(jù)已經(jīng)譯成打印機(jī)命令。這具備以下技術(shù)上的優(yōu)勢(shì)。除了經(jīng)PDA20發(fā)送給打印機(jī)的數(shù)據(jù),沒有打印數(shù)據(jù)處理發(fā)生在PDA20上。這減少了需要由PDA20執(zhí)行的處理。數(shù)據(jù)可能是從服務(wù)器30至PDA20的流,由此通過在接收到所有數(shù)據(jù)之前開始打印以節(jié)省PDA20上的存儲(chǔ)容量并節(jié)省時(shí)間。另一方面,預(yù)提交的打印數(shù)據(jù)并不比原文檔更加緊湊。然而,可以在服務(wù)器30上壓縮打印數(shù)據(jù),并在客戶PDA20端解壓縮。
該系統(tǒng)能支持與打印機(jī)28的雙向通信。舉個(gè)例子,如果打印機(jī)28的紙用完了,打印機(jī)控制器24可以接收這樣的通知信息。響應(yīng)該問題,客戶端可以通知用戶并指示服務(wù)器30暫停執(zhí)行從虛擬打印機(jī)端口38傳送打印數(shù)據(jù)直到打印機(jī)28就緒。
沒有必要對(duì)操作系統(tǒng)進(jìn)行修改。實(shí)現(xiàn)本發(fā)明的分布式打印系統(tǒng)可以使用標(biāo)準(zhǔn)操作系統(tǒng)的特征和組件。
實(shí)現(xiàn)本發(fā)明的分布式打印系統(tǒng)在沒有文檔數(shù)據(jù)、應(yīng)用程序軟件、完整的圖形打印系統(tǒng)、字體和安裝在移動(dòng)設(shè)備上的打印機(jī)驅(qū)動(dòng)程序的情況下,允許有限資源移動(dòng)信息設(shè)備的用戶在附近的打印上打印文檔。通過這種方式,減小了在有限資源信息設(shè)備的負(fù)擔(dān)。
系統(tǒng)使用位于遠(yuǎn)程服務(wù)器上的軟件和數(shù)據(jù)來提供大部分的存儲(chǔ)容量和對(duì)需打印文檔的處理。使用運(yùn)行在服務(wù)器上的應(yīng)用程序和系統(tǒng)軟件來向該系統(tǒng)提供可相當(dāng)于桌上型電腦PC的文檔提交(document-rendering)的能力。移動(dòng)設(shè)備的角色被限制用于提供用戶界面,在服務(wù)器和外圍設(shè)備之間傳送數(shù)據(jù),并且控制所述過程。
該系統(tǒng)需要移動(dòng)信息設(shè)備(上述實(shí)施例中描述的PDA,然而這可能是任何一個(gè)足夠功能的移動(dòng)信息設(shè)備)能夠與附近的打印機(jī)通信。PDA與打印機(jī)之間的通信可以經(jīng)由無線鏈接之上的仿真串行端口連接來實(shí)現(xiàn),所述無線鏈路諸如上文所描述的實(shí)施例涉及的IrDA或者藍(lán)牙。可作為選擇的是,所述連接可能是實(shí)時(shí)并行或者串行打印機(jī)電纜,USB,或者LAN,或任何其它適用的鏈路。
PDA也需要與在網(wǎng)絡(luò)上的遠(yuǎn)程服務(wù)器相連接。這種連接可以是在LAN、WAN、互聯(lián)網(wǎng)或者電話網(wǎng)絡(luò),或者任何其它適用的通信鏈路上,例如移動(dòng)電話通信鏈路。
服務(wù)器需要訪問已經(jīng)選擇打印的文檔。本發(fā)明的實(shí)施例不涉及瀏覽和選擇打印的文檔的方法,而是假定已經(jīng)選擇好了一份打印文檔,并且該服務(wù)器可經(jīng)某種方式對(duì)該文件進(jìn)行訪問。在上面所描述的實(shí)施例中,將文檔數(shù)據(jù)從PDA20發(fā)送到服務(wù)器30并存儲(chǔ)在服務(wù)器30上??蛇x擇的是,也可以在另一臺(tái)機(jī)器上從文檔服務(wù)器那里獲得該文檔,或者使用URL(或任何其它用于定位文檔的文檔參考類型)訪問該文檔,并下載至服務(wù)器。因此該文檔服務(wù)器可以是網(wǎng)頁服務(wù)器(文檔在其上可以是web頁或者從web頁上與其鏈接的文件),或者文檔服務(wù)器可以是對(duì)等文件共享服務(wù)器,或任何其它能夠提供所請(qǐng)求文檔類型的服務(wù)器。
在上文所描述的實(shí)施例中,系統(tǒng)由運(yùn)行在服務(wù)器上的軟件服務(wù)程序(稱作打印服務(wù)程序)以及運(yùn)行在PDA上的客戶軟件程序來執(zhí)行。
在上文所描述的實(shí)施例語境中,術(shù)語“受限資源(resource-limited)”意思是對(duì)常規(guī)的打印處理任務(wù)不具備充足的處理速度和/或資源,例如存儲(chǔ)器/存儲(chǔ)容量資源,這與下述情況有相似性在設(shè)備上可獲得的資源相比,執(zhí)行打印處理工作可能常常需要花費(fèi)太長(zhǎng)時(shí)間或需要更多存儲(chǔ)器。由于減少了設(shè)備上的負(fù)擔(dān),因此本發(fā)明的實(shí)施方式對(duì)于這種受限資源設(shè)備尤其有用。然而,可以理解的是,如果存在一些為什么步驟的發(fā)生不在設(shè)備上是必要的或更好的其它原因,那么即使當(dāng)信息設(shè)備不是那樣的受限資源設(shè)備時(shí),實(shí)現(xiàn)本發(fā)明的系統(tǒng)仍然可以有益。舉個(gè)例子,本發(fā)明的實(shí)施例可以用于由于適用的驅(qū)動(dòng)程序不能從該設(shè)備獲得因而信息設(shè)備不能直接控制外圍設(shè)備的地方,或者用于不需要下載和安裝驅(qū)動(dòng)程序(可能由與安全的原因)的地方。
盡管上面是一個(gè)其外圍設(shè)備為打印機(jī)實(shí)施例的描述,但是所述方法同樣可適用于使用其它的硬件。所述硬件的必要條件在于(a)可通過標(biāo)準(zhǔn)I/O端口連接的設(shè)備,所述連接包括串行、并型、USB、VGA和諸如藍(lán)牙或IrDA的無線連接;以及(b)服務(wù)器操作系統(tǒng)可利用的設(shè)備驅(qū)動(dòng)程序及其能夠利用這種設(shè)備輸入和/或輸出的應(yīng)用程序。這包括這樣的實(shí)施例,其中外圍設(shè)備是一個(gè)圖形或文本輸出設(shè)備而非打印機(jī)。
還有的實(shí)施例包括那樣的系統(tǒng),其中外圍設(shè)備是掃描儀、照相機(jī)或其它圖形輸出設(shè)備。在外圍設(shè)備是輸入設(shè)備的情況下,將來自于改設(shè)備的輸出從該外圍設(shè)備傳送至用于處理和/或存儲(chǔ)的服務(wù)器上的驅(qū)動(dòng)程序和應(yīng)用程序。
圖5是示出了根據(jù)本發(fā)明第二實(shí)施例的分布式掃描系統(tǒng)的框圖。該分布式掃描系統(tǒng)包括PDA20’、掃描儀28’和服務(wù)器30’。PDA20’與掃描儀28’和服務(wù)器30’進(jìn)行通信。PDA20’包括掃描服務(wù)客戶程序22’,掃描控制器24’以及端口仿真程序26’。掃描服務(wù)客戶與端口仿真程序26’以及掃描控制器24’通信,其中后兩者也互相直接通信。服務(wù)器30’包括文檔掃描服務(wù)程序36’,該文檔掃描服務(wù)程序36’與文檔存儲(chǔ)部分32’、驅(qū)動(dòng)程序數(shù)據(jù)庫34’、虛擬掃描端口38’、掃描器驅(qū)動(dòng)程序40’及應(yīng)用程序42’進(jìn)行通信。其中后三者與服務(wù)器30’的操作系統(tǒng)44’進(jìn)行通信。圖5所示的分布式掃描系統(tǒng)的操作類似于參考圖3和圖4描述的分布式打印系統(tǒng)的操作,對(duì)本領(lǐng)域技術(shù)人員而言如何將分布式掃描系統(tǒng)(在該系統(tǒng)中外圍設(shè)備是輸出設(shè)備)修改成為分布式掃描系統(tǒng)(在該系統(tǒng)中外圍設(shè)備是輸入設(shè)備)是顯而易見的。在圖3和圖5中,將相似或相應(yīng)的部分標(biāo)定為相同的參考標(biāo)記,但是通過前綴符號(hào)相區(qū)別;例如圖3的打印機(jī)的參考標(biāo)記為28,而圖5中掃描儀的參考標(biāo)記為28’。
盡管在上面所描述的實(shí)施例中,所有的數(shù)據(jù)處理都發(fā)生在服務(wù)器上,但同樣可適用于在移動(dòng)設(shè)備上進(jìn)行進(jìn)一步處理的情況。這包括這樣的實(shí)施例,其中應(yīng)用程序是分布式應(yīng)用程序,由運(yùn)行在PDA上的用戶界面和執(zhí)行絕大部分輸出處理的服務(wù)器程序組成??赡艿目蛻舳颂幚淼牧硪恍?shí)施例包括但不局限于下列處理根據(jù)初始文檔創(chuàng)建較小的數(shù)據(jù)組(諸如從用于打印的字處理器文檔中選擇單頁);將來自于數(shù)據(jù)庫或XML文檔的數(shù)據(jù)表達(dá)成可顯示格式,諸如HTML;以圖形格式輸出數(shù)據(jù)的應(yīng)用程序,所述圖形格式諸如繪圖程序;以及由運(yùn)行在客戶端設(shè)備上的程序產(chǎn)生的文檔的任何情況。
盡管在以上描述中服務(wù)器30/30’對(duì)存有多數(shù)設(shè)備驅(qū)動(dòng)程序的驅(qū)動(dòng)程序數(shù)據(jù)庫34/34’擁有訪問權(quán),但是應(yīng)當(dāng)認(rèn)識(shí)到,服務(wù)器30/30’本可以僅僅擁有對(duì)適用于多個(gè)外圍設(shè)備28/28’的單個(gè)、通用的設(shè)備驅(qū)動(dòng)程序的訪問權(quán)。
可以以硬件形式或運(yùn)行在該分布式外圍設(shè)備控制系統(tǒng)的其它部分上的操作程序來執(zhí)行操作,所述操作由移動(dòng)設(shè)備和該分布式外圍設(shè)備控制系統(tǒng)的其它部分執(zhí)行,該操作用以控制移動(dòng)設(shè)備與外圍設(shè)備之間的交互。所述操作程序可以存儲(chǔ)在計(jì)算機(jī)可讀介質(zhì)上,或者該操作程序例如可以以諸如從互聯(lián)網(wǎng)網(wǎng)站提供的可下載數(shù)據(jù)信號(hào)的信號(hào)方式實(shí)現(xiàn)。隨之附上的權(quán)利要求書應(yīng)解釋為覆蓋了操作程序自身,或者作為載體上的記錄,或作為信號(hào),或以其它任何形式。
權(quán)利要求
1.一種分布式外圍設(shè)備控制方法,該方法用于控制信息設(shè)備和與該信息設(shè)備通信的外圍設(shè)備之間的交互,該方法包括請(qǐng)求外圍設(shè)備執(zhí)行特定任務(wù);發(fā)送標(biāo)識(shí)外圍設(shè)備的設(shè)備標(biāo)識(shí)信息至與該信息設(shè)備通信的服務(wù)器,所述服務(wù)器擁有對(duì)至少一個(gè)外圍設(shè)備驅(qū)動(dòng)程序的訪問權(quán);依靠設(shè)備標(biāo)識(shí)信息選擇一個(gè)相應(yīng)于該外圍設(shè)備的設(shè)備驅(qū)動(dòng)程序;利用服務(wù)器以執(zhí)行依靠外圍設(shè)備的處理操作,該服務(wù)器代表信息設(shè)備并使用所選擇的設(shè)備驅(qū)動(dòng)程序,所述處理操作涉及執(zhí)行產(chǎn)生依靠設(shè)備數(shù)據(jù)任務(wù);其特征在于在服務(wù)器建立虛擬端口以形成該服務(wù)器與該信息設(shè)備之間的通信鏈路的一部分;并將虛擬端口與所選擇的設(shè)備驅(qū)動(dòng)程序相關(guān)聯(lián);并發(fā)送依靠設(shè)備的數(shù)據(jù)至該虛擬端口,以便經(jīng)由該信息設(shè)備向前傳送至外圍設(shè)備以使得外圍設(shè)備能夠執(zhí)行特定的任務(wù)。
2.如權(quán)利要求1所述的方法,其中建立虛擬端口并將其與所選擇的設(shè)備驅(qū)動(dòng)程序相關(guān)聯(lián),以便使服務(wù)器的操作系統(tǒng)看似通向外圍設(shè)備附接的物理端口的接口,然而其中任何發(fā)送至該虛擬端口的數(shù)據(jù)都在通信鏈路上向前傳送到信息設(shè)備,而非直接傳向外圍設(shè)備。
3.如權(quán)利要求1或2所述的方法,其中所述服務(wù)器擁有對(duì)多數(shù)應(yīng)用程序的訪問權(quán),該方法還包括依靠要執(zhí)行的特定任務(wù)選擇應(yīng)用程序的步驟,并且其中依靠設(shè)備的處理操作是在所選擇的應(yīng)用程序的控制下、在與所選擇的設(shè)備驅(qū)動(dòng)程序的交互中執(zhí)行的。
4.如權(quán)利要求1,2或3所述的方法,其中所述服務(wù)器擁有對(duì)多數(shù)應(yīng)用程序的訪問權(quán),以便執(zhí)行不依靠設(shè)備的處理操作,該方法還包括選擇應(yīng)用程序,并且使用服務(wù)器、利用所選擇所應(yīng)用程序來執(zhí)行代表信息設(shè)備的不依靠設(shè)備的處理操作的步驟。
5.如權(quán)利要求4所述的方法,其中依靠要執(zhí)行的特定任務(wù)來選擇應(yīng)用程序。
6.如前任一權(quán)利要求所述的方法,還包括在服務(wù)器緩沖依靠設(shè)備數(shù)據(jù),以控制將數(shù)據(jù)傳送至信息設(shè)備的速率的步驟。
7.如權(quán)利要求6所述的方法,其中在服務(wù)器緩沖依靠設(shè)備數(shù)據(jù)是依靠從外圍設(shè)備接收的控制信號(hào)控制的,該控制信號(hào)指示外圍設(shè)備的狀態(tài)。
8.如權(quán)利要求6或7所述的方法,其中在服務(wù)器上緩沖依靠設(shè)備數(shù)據(jù)是由存儲(chǔ)器的飽滿度控制的,該存儲(chǔ)器用于在信息設(shè)備端緩沖依靠設(shè)備數(shù)據(jù)。
9.如前任一權(quán)利要求所述的方法,還包括在信息設(shè)備上緩沖依靠設(shè)備數(shù)據(jù)、以控制數(shù)據(jù)傳送至外圍設(shè)備的速率的步驟。
10.如前任一權(quán)利要求所述的方法,其中在從服務(wù)器接收?qǐng)?zhí)行特定任務(wù)的所有依靠設(shè)備數(shù)據(jù)之前,信息設(shè)備開始發(fā)送依靠設(shè)備數(shù)據(jù)至外圍設(shè)備。
11.如前任一權(quán)利要求所述的方法,還包括在服務(wù)器端壓縮依靠設(shè)備數(shù)據(jù)以及在信息設(shè)備端為依靠設(shè)備數(shù)據(jù)解壓縮的步驟。
12.如前任一權(quán)利要求所述的方法,還包括在將依靠設(shè)備數(shù)據(jù)發(fā)送至外圍設(shè)備之前,在信息設(shè)備端處理依靠設(shè)備數(shù)據(jù)的步驟。
13.如前任一權(quán)利要求所述的方法,其中外圍設(shè)備包括輸出設(shè)備。
14.如權(quán)利要求13所述的方法,其中輸出設(shè)備是打印機(jī),特定任務(wù)是執(zhí)行打印所選擇的文檔的打印操作,并且所述依靠設(shè)備數(shù)據(jù)是打印機(jī)命令。
15.如權(quán)利要求14所述的方法,還包括從信息設(shè)備發(fā)送所選擇的文檔至服務(wù)器的步驟。
16.如權(quán)利要求14所述的方法,還包括從文檔服務(wù)器中檢索所選擇的文檔的步驟。
17.如權(quán)利要求16所述的方法,其中文檔服務(wù)器位于可由服務(wù)器訪問的獨(dú)立的設(shè)備中。
18.如權(quán)利要求14至17的任一所述的方法,其中服務(wù)器擁有對(duì)多數(shù)應(yīng)用程序的訪問權(quán),該方法還包括依靠所要執(zhí)行的任務(wù)而選擇應(yīng)用程序的步驟,并且其中在所選應(yīng)用程序的控制下、與所選擇的設(shè)備驅(qū)動(dòng)程序交互地執(zhí)行依靠設(shè)備的處理操作,并且其中通過檢驗(yàn)文檔類型來選擇應(yīng)用程序。
19.如權(quán)利要求18所述的方法,其中通過檢驗(yàn)文檔的擴(kuò)展名來選擇應(yīng)用程序。
20.如前任一權(quán)利要求所述的方法,其中所述外圍設(shè)備包括輸入設(shè)備。
21.如權(quán)利要求20所述的方法,其中輸入設(shè)備是掃描儀,特定任務(wù)是執(zhí)行掃描文檔的掃描操作,并且所述依靠設(shè)備數(shù)據(jù)是用于控制掃描儀執(zhí)行特定任務(wù)的掃描命令。
22.一種分布式外圍設(shè)備控制方法,該方法用于控制信息設(shè)備和與該信息設(shè)備通信的外圍設(shè)備之間的交互,該方法包括請(qǐng)求外圍設(shè)備執(zhí)行產(chǎn)生依靠設(shè)備數(shù)據(jù)的特定任務(wù);發(fā)送標(biāo)識(shí)外圍設(shè)備的設(shè)備標(biāo)識(shí)信息至與該信息設(shè)備通信的服務(wù)器,所述服務(wù)器擁有對(duì)至少一個(gè)外圍設(shè)備驅(qū)動(dòng)程序的訪問權(quán);依靠設(shè)備標(biāo)識(shí)信息選擇對(duì)應(yīng)于外圍設(shè)備的設(shè)備驅(qū)動(dòng)程序;其特征在于在服務(wù)器建立虛擬端口以形成服務(wù)器與信息設(shè)備之間的通信鏈路的一部分,并將所述虛擬端口與所選擇的設(shè)備驅(qū)動(dòng)程序相關(guān)聯(lián);為在虛擬端口接收,從外圍設(shè)備經(jīng)由信息設(shè)備發(fā)送依靠設(shè)備數(shù)據(jù)至該服務(wù)器;代表信息設(shè)備并使用所選擇的設(shè)備驅(qū)動(dòng)程序,利用服務(wù)器對(duì)在虛擬端口接收的依靠設(shè)備數(shù)據(jù)執(zhí)行外圍依靠設(shè)備的處理操作。
23.如權(quán)利要求22所述的方法,其中建立所述虛擬端口并將其與所選的設(shè)備驅(qū)動(dòng)程序相關(guān)聯(lián),以便使服務(wù)器的操作系統(tǒng)看似通向外圍設(shè)備附接的物理端口的接口,如此以致任何在虛擬端口接收的數(shù)據(jù)都看似發(fā)自于外圍設(shè)備。
24.如權(quán)利要求22或23所述的方法,其中所述服務(wù)器擁有對(duì)多數(shù)應(yīng)用程序的訪問權(quán),該方法還包括依靠在外圍設(shè)備端所要執(zhí)行的特定任務(wù)來選擇應(yīng)用程序的步驟,并且其中依靠設(shè)備處理操作是在所選擇的應(yīng)用程序的控制下、在與所選擇的設(shè)備驅(qū)動(dòng)程序的交互中執(zhí)行的。
25.如權(quán)利要求22,23或24所述的方法,其中所述服務(wù)器擁有對(duì)多數(shù)應(yīng)用程序的訪問權(quán),所述應(yīng)用程序用于執(zhí)行依靠設(shè)備的處理操作,并且該方法還包括選擇應(yīng)用程序的步驟,以及代表信息設(shè)備利用服務(wù)器執(zhí)行依靠設(shè)備處理操作的步驟,所述服務(wù)器使用所選擇的應(yīng)用程序。
26.如權(quán)利要求24或25所述的方法,其中在服務(wù)器端執(zhí)行的依靠設(shè)備處理操作用于處理依靠設(shè)備的數(shù)據(jù)以產(chǎn)生供所選應(yīng)用程序使用的不依靠設(shè)備的數(shù)據(jù)。
27.如權(quán)利要求22至26中任一所述的方法,其中外圍設(shè)備包括用于產(chǎn)生依靠設(shè)備數(shù)據(jù)的輸入設(shè)備。
28.如權(quán)利要求27所述的方法,其中輸入設(shè)備是掃描儀,并且特定任務(wù)是執(zhí)行掃描文檔的掃描操作。
29.如前任一權(quán)利要求所述的方法,其中所述通信鏈路是第一通信鏈路,所述信息設(shè)備通過第二通信鏈路與外圍設(shè)備進(jìn)行通信,并且該方法還包括在信息設(shè)備端創(chuàng)建虛擬端口的步驟,所述虛擬端口形成第二通信鏈路的一部分。
30.如前任一權(quán)利要求所述的方法,其中所述通信鏈路是第一通信鏈路,所述信息設(shè)備通過第二通信鏈路與外圍設(shè)備進(jìn)行通信,并且該方法還包括在信息設(shè)備端創(chuàng)建虛擬端口的步驟,所述虛擬端口形成第一通信鏈路的一部分。
31.如前任一權(quán)利要求所述的方法,該方法還包括通過即插即用規(guī)范從外圍設(shè)備獲得設(shè)備標(biāo)識(shí)信息的步驟。
32.如前任一權(quán)利要求所述的方法,其中多數(shù)外圍設(shè)備驅(qū)動(dòng)程序中的至少一個(gè)是位于服務(wù)器中的。
33.如前任一權(quán)利要求所述的方法,其中多數(shù)外圍設(shè)備驅(qū)動(dòng)程序中的至少一個(gè)是位于獨(dú)立的設(shè)備驅(qū)動(dòng)程序服務(wù)器中的,所述服務(wù)器可以訪問該獨(dú)立的設(shè)備驅(qū)動(dòng)程序服務(wù)器。
34.如前任一權(quán)利要求所述的方法,其中所述步驟由信息設(shè)備進(jìn)行控制。
35.如前任一權(quán)利要求所述的方法,其中所述或每一個(gè)虛擬端口的建立都是在信息設(shè)備的控制下進(jìn)行的。
36.如前任一權(quán)利要求所述的方法,其中信息設(shè)備是受限資源的信息設(shè)備。
37.如前任一權(quán)利要求所述的方法,該方法還包括在信息設(shè)備端執(zhí)行外圍的不依靠設(shè)備的處理操作的步驟。
38.如前任一權(quán)利要求所述的方法,其中所述服務(wù)器擁有對(duì)多數(shù)外圍設(shè)備驅(qū)動(dòng)程序的訪問權(quán)。
39.一種分布式外圍設(shè)備控制系統(tǒng),該系統(tǒng)用于控制該系統(tǒng)的信息設(shè)備和與該信息設(shè)備通信的系統(tǒng)的外圍設(shè)備之間的交互,該系統(tǒng)包括用于請(qǐng)求外圍設(shè)備執(zhí)行特定任務(wù)的裝置;用于發(fā)送標(biāo)識(shí)外圍設(shè)備的設(shè)備標(biāo)識(shí)信息至與該信息設(shè)備通信的服務(wù)器的裝置,該服務(wù)器擁有對(duì)至少一個(gè)外圍設(shè)備驅(qū)動(dòng)程序的訪問權(quán);用于依靠設(shè)備標(biāo)識(shí)信息選擇一個(gè)相應(yīng)于外圍設(shè)備的設(shè)備驅(qū)動(dòng)程序的裝置;代表信息設(shè)備并使用所選擇的設(shè)備驅(qū)動(dòng)程序,用于利用服務(wù)器以執(zhí)行外圍依靠設(shè)備處理操作的裝置,所述處理操作涉及執(zhí)行產(chǎn)生依靠設(shè)備數(shù)據(jù)任務(wù);其特征在于包括用于在服務(wù)器建立虛擬端口并且將所選擇的設(shè)備驅(qū)動(dòng)程序與該虛擬端口相關(guān)聯(lián)的裝置,所述虛擬端口形成服務(wù)器與信息設(shè)備之間的通信鏈路的一部分;以及用于發(fā)送依靠設(shè)備數(shù)據(jù)至該虛擬端口的裝置,以便經(jīng)由該信息設(shè)備向前傳送至外圍設(shè)備以使得外圍設(shè)備能夠執(zhí)行特定的任務(wù)。
40.一種分布式外圍設(shè)備控制系統(tǒng),該系統(tǒng)用于控制介于該系統(tǒng)的信息設(shè)備以及與該信息設(shè)備通信的系統(tǒng)的外圍設(shè)備之間的交互,該系統(tǒng)包括用于請(qǐng)求外圍設(shè)備執(zhí)行產(chǎn)生依靠設(shè)備數(shù)據(jù)的特定任務(wù)的裝置;用于發(fā)送標(biāo)識(shí)外圍設(shè)備的設(shè)備標(biāo)識(shí)信息至與該信息設(shè)備通信的服務(wù)器的裝置,所述服務(wù)器擁有對(duì)至少一個(gè)外圍設(shè)備驅(qū)動(dòng)程序的訪問權(quán);用于依靠設(shè)備標(biāo)識(shí)信息選擇一個(gè)相應(yīng)于外圍設(shè)備的設(shè)備驅(qū)動(dòng)程序的裝置;其特征在于還包括用于在服務(wù)器建立虛擬端口并將所選擇的設(shè)備驅(qū)動(dòng)程序與該虛擬端口相關(guān)聯(lián)的裝置,所述虛擬端口形成服務(wù)器與信息設(shè)備之間的通信鏈路的一部分;為在虛擬端口接收,用于經(jīng)由信息設(shè)備從外圍設(shè)備發(fā)送依靠設(shè)備的數(shù)據(jù)至該服務(wù)器的裝置;以及代表信息設(shè)備并使用所選擇的設(shè)備驅(qū)動(dòng)程序,利用服務(wù)器對(duì)在虛擬端口接收到的依靠設(shè)備數(shù)據(jù)執(zhí)行外圍依靠設(shè)備的處理操作的裝置。
41.一種操作程序,用于控制信息處理設(shè)備或者分布式外圍設(shè)備控制系統(tǒng)以執(zhí)行如權(quán)利要求1至38中任何一項(xiàng)所述的方法。
42.如權(quán)利要求41所述的操作程序,其記載在載體介質(zhì)上。
43.如權(quán)利要求42所述的操作程序,其中所述載體介質(zhì)是傳送介質(zhì)。
44.如權(quán)利要求42所述的操作程序,其中所述載體介質(zhì)是存儲(chǔ)介質(zhì)。
45.一種信息處理設(shè)備,適用于如權(quán)利要求1至38中任何一項(xiàng)所述的方法
46.一種服務(wù)器,適用于如權(quán)利要求1至38中任何一項(xiàng)所述的方法。
全文摘要
一種分布式外圍設(shè)備控制方法,該方法用于控制信息設(shè)備(20)和與該信息設(shè)備(20)通信的外圍設(shè)備(28)之間的交互,該方法包括請(qǐng)求外圍設(shè)備(28)執(zhí)行特定任務(wù);發(fā)送標(biāo)識(shí)外圍設(shè)備(28)的設(shè)備標(biāo)識(shí)信息至與該信息設(shè)備(20)通信的服務(wù)器(30),所述服務(wù)器(30)擁有對(duì)至少一個(gè)外圍設(shè)備驅(qū)動(dòng)程序(34)的訪問權(quán);依靠設(shè)備標(biāo)識(shí)信息選擇對(duì)應(yīng)于外圍設(shè)備(28)的設(shè)備驅(qū)動(dòng)程序(40);利用服務(wù)器(30)來執(zhí)行依靠外圍設(shè)備的處理操作,所述服務(wù)器代表信息設(shè)備(20)并使用所選擇的設(shè)備驅(qū)動(dòng)程序(40),所述處理操作涉及執(zhí)行產(chǎn)生依靠設(shè)備數(shù)據(jù)的任務(wù);其特點(diǎn)是在服務(wù)器(30)建立虛擬端口(38)以形成服務(wù)器(30)與信息設(shè)備(20)之間的通信鏈路的一部分;并將虛擬端口(38)與所選擇的設(shè)備驅(qū)動(dòng)程序(40)相關(guān)聯(lián);以及發(fā)送依靠設(shè)備的數(shù)據(jù)至虛擬端口(38),以便經(jīng)由信息設(shè)備(20)向前傳送至外圍設(shè)備(28)以使得外圍設(shè)備(28)能夠執(zhí)行特定的任務(wù)。
文檔編號(hào)B41J29/38GK1622028SQ200410043018
公開日2005年6月1日 申請(qǐng)日期2004年4月22日 優(yōu)先權(quán)日2003年4月22日
發(fā)明者M·懷斯 申請(qǐng)人:夏普株式會(huì)社