專利名稱:用于并行ipds和非ipds打印處理的方法和控制單元的制作方法
技術(shù)領(lǐng)域:
本發(fā)明一般涉及附加打印機的高端、工作組和主機,并且具體涉及在IPDSTM(智能打印機數(shù)據(jù)流TM)處理期間更為有效地使用打印機資源。
背景技術(shù):
商務和相應的通信已變得非常復雜。頁面上的變量包括色彩、文本、圖像和圖形。產(chǎn)品選擇包括常規(guī)的平版印刷、數(shù)字高速打印、連續(xù)式打印和單頁紙打印。遞送選項包括HTML、電子郵件、傳真和屏幕。進一步使生產(chǎn)過程變得復雜的是行業(yè)格式的多樣性,包括EPS、PDF、TIFF、JPEG、XML PostScript和PCL。
由IBM開發(fā)的IPDSTM(智能打印機數(shù)據(jù)流TM)是作為主機到打印機的數(shù)據(jù)流或語言,用于控制和管理可逐點訪問的打印機,以允許顯現(xiàn)含有廣泛的不同數(shù)據(jù)類型的頁面。在不提供細節(jié)的情況下,IPDS含有對于識別、監(jiān)視和控制在高端工作組和主機環(huán)境(以及其它環(huán)境)中使用的某些打印機的功能必要的信息。該信息包括打印機的特性,尤其是其分辨率、其可用資源及其存儲器。通過允許在打印時合并不同的、獨立的源數(shù)據(jù)的輸出,最終得到完整的、混合數(shù)據(jù)打印的頁面,可以以最高的可能的速度以及在最大使用其功能的情況下驅(qū)動IPDS兼容的打印機。
然而,一旦已由主機將IPDS作業(yè)提交給打印機,并且已開啟IPDS會話,該IPDS會話就“擁有”打印機并且希望沒有其它的打印作業(yè)。因此,當非IPDS打印作業(yè)被發(fā)送到打印機時,其必須等待,直到IPDS主機在光柵化(rasterizing)(或柵格化(ripping))非IPDS數(shù)據(jù)確實可以開始之前放棄打印機。如果在已經(jīng)柵格化一些數(shù)據(jù)之后打印開始(“并行柵格化和打印”),但打印機打印卻快于可用的已柵格化的數(shù)據(jù),則打印機必須暫停。然而,暫??赡軗p害諸如連續(xù)式打印機的某些打印機。因此,在開始打印之前完全柵格化數(shù)據(jù)是優(yōu)選的。然而,因為柵格化大的打印作業(yè)可能需要長時間,所以在此期間打印機可能保持空閑直到柵格化完成,這在時間和資源兩方面都是浪費。
因此,更為有效地使用打印機資源仍然是值得期待的。
發(fā)明內(nèi)容
本發(fā)明提供了并行IPDS和非IPDS打印處理。因為通常不可以中斷IPDS打印會話,所以通過打印機控制單元中單獨的、非IPDS通道接收非IPDS打印數(shù)據(jù)。使用空閑處理周期光柵化(“柵格化”)所述非IPDS數(shù)據(jù),并且將其存儲在柵格化緩沖池(rip spool)。在適當?shù)臅r間,例如當完全光柵化所述數(shù)據(jù)時,可以向然后控制所述打印機的IPDS主機提交中斷請求。當所述IPDS主機放棄對所述打印機的控制時,例如當已經(jīng)完成所述IPDS打印作業(yè)時,所述已光柵化的非IPDS打印數(shù)據(jù)可以被釋放(de-spool)到打印引擎并且被打印。因而,提供了對打印資源更為有效的使用。
圖1是可以在其中實現(xiàn)本發(fā)明的打印機控制單元的框圖;以及圖2是本發(fā)明的方法的流程圖。
具體實施例方式
圖1是可以在其中實現(xiàn)本發(fā)明的打印機控制單元100的框圖??刂茊卧?00通過IPDS主機接口12和非IPDS主機接口22分別連到諸如IPDS主機10和非IPDS主機20的一個或多個主機設備。非IPDS主機20可以使用諸如EPS、PDF、TIFF、JPEG、XML PostScriptPCL和/或其它的非IPDS打印格式。在功能上耦合于控制單元100中的IPDS接口12的是IPDS光柵器(rasterizer)110,用于將輸入的IPDS打印數(shù)據(jù)光柵化或“柵格化”成指示將要在頁面上的何處打印點的比特。類似地,在功能上耦合于控制單元100中的非IPDS接口22的是非IPDS光柵器120,用于光柵化或柵格化輸入的非IPDS打印數(shù)據(jù)。可以將已光柵化的IPDS數(shù)據(jù)從IPDS光柵器110發(fā)送到用于臨時存儲的柵格化緩沖池130,并且通過接口32到達打印引擎30,在這里完成打印作業(yè)??蛇x地,IPDS光柵器110可以通過接口32將已光柵化的數(shù)據(jù)直接發(fā)送到打印引擎30??梢詫⒁压鈻呕姆荌PDS數(shù)據(jù)從非IPDS光柵器120發(fā)送到用于臨時存儲的柵格化緩沖池130,并且通過接口32到達打印引擎30。本發(fā)明使用兩個數(shù)據(jù)路徑,一個用于IPDS打印作業(yè),并且另一個用于非IPDS打印作業(yè)。固件140為組件提供控制。控制單元100可以被集成到打印引擎30中,或者可以在打印引擎30的外部。
參照圖2的流程圖,在操作中,“收聽者”會檢測來自于非IPDS主機20對打印機連接的請求,例如經(jīng)由TCP/IP連接(步驟200)。進行檢查以確定IPDS打印會話是否有效。有效IPDS打印會話的典型的例子是正在處理IPDS打印數(shù)據(jù)。如果是這樣的話,則正在執(zhí)行的IPDS會話“擁有”打印機并且阻止其它的、非IPDS打印作業(yè)被打印。然而,依照本發(fā)明,控制單元100開啟非IPDS路徑(步驟202),并且從主機接收非IPDS打印數(shù)據(jù)(步驟204)。如果非IPDS打印作業(yè)已經(jīng)被分配了高優(yōu)先級(步驟206),則它被重新分配較低的優(yōu)先級(步驟208)。可選地,可以在最初為非IPDS打印作業(yè)分配比IPDS打印作業(yè)更低的優(yōu)先級,從而避免稍后在過程中重新分配優(yōu)先級。
使用空閑處理周期,光柵化非IPDS數(shù)據(jù)(步驟210)并且將結(jié)果存儲在柵格化緩沖池130中(步驟212)。因而,當IPDS會話有效時,包括當正在處理IPDS數(shù)據(jù)時,非IPDS處理可以有效地并行發(fā)生。在已經(jīng)完全光柵化并且存儲非IPDS數(shù)據(jù)之后,控制單元100可以向IPDS主機10提交諸如MID(“管理IPDS對話”)請求的中斷請求(步驟214)??蛇x地,控制單元100可以在完全光柵化非IPDS數(shù)據(jù)之前提交中斷請求。例如,在已經(jīng)至少部分光柵化非IPDS數(shù)據(jù)之后,控制單元100可以檢查非IPDS的已經(jīng)光柵化的部分、可以光柵化剩余部分的速度,以及打印引擎30可以打印特定打印作業(yè)的頁面的速度??刂茊卧?00然后可以在所計算的適當?shù)臅r間提交中斷請求,以確保如果準予請求,則控制單元100將能夠光柵化非IPDS數(shù)據(jù)的剩余部分至少與打印引擎30可以打印得一樣快。這樣的過程通過減少或消除打印引擎30中的空閑時間而提高了效率。
在接收到中斷請求時,IPDS主機10可以中斷IPDS會話,并且允許釋放和打印已光柵化的非IPDS??蛇x地,IPDS主機可以忽略請求(并且一些IPDS會話也許從不接受MID請求)。如果控制單元100不提交中斷請求,或者如果這樣的請求被忽略,則控制單元100等待直到完成IPDS會話并且IPDS主機10已經(jīng)放棄對打印機的控制(步驟216)。然后可以將已光柵化的非IPDS打印作業(yè)從柵格化緩沖池130釋放到打印引擎30打印(步驟218)。優(yōu)選地,可以處理多于一個的非IPDS打印作業(yè),并且將其存儲在柵格化緩沖池130中,直到已經(jīng)完成IPDS會話。
重要的是注意到,雖然已經(jīng)在完全起作用的數(shù)據(jù)處理系統(tǒng)的情況下描述了本發(fā)明,但是本領(lǐng)域的普通技術(shù)人員可以認識到能夠以指令和各種形式的計算機可讀介質(zhì)的形式散播本發(fā)明的過程,并且本發(fā)明的應用與實際用于實現(xiàn)散播的特定類型的信號承載介質(zhì)無關(guān)。計算機可讀介質(zhì)的例子包括諸如軟盤、硬盤驅(qū)動器、RAM和CD-ROM的可記錄型介質(zhì),以及諸如數(shù)字和模擬通信鏈路的傳輸型介質(zhì)。
已經(jīng)出于說明和描述的目的給出了本發(fā)明的描述,但并不旨在以所公開的形式窮舉或限制本發(fā)明。對本領(lǐng)域的普通技術(shù)人員來說,很多修改和變形是顯而易見的。所選擇和描述的實施例是為了最好地解釋本發(fā)明的原理、實際應用,以及使本領(lǐng)域的普通技術(shù)人員能夠針對各種實施例以及適于預期的特定用途的各種修改理解本發(fā)明。此外,盡管以上關(guān)于方法和系統(tǒng)進行了描述,然而利用計算機程序產(chǎn)品或者用于部署計算基礎(chǔ)設施的方法也可以滿足本領(lǐng)域的需求,其中所述計算機程序產(chǎn)品含有用于隨IPDS打印作業(yè)并行處理非IPDS打印作業(yè)的指令,所述方法包括將計算機可讀代碼集成到計算系統(tǒng)中,用于隨IPDS打印作業(yè)并行處理非IPDS打印作業(yè)。
權(quán)利要求
1.一種用于隨有效IPDS打印會話并行處理非IPDS打印作業(yè)的方法,所述方法包括當IPDS打印會話在打印機中有效時,從主機接收處理非IPDS打印作業(yè)的請求;開啟來自于所述主機的路徑;接收非IPDS打印數(shù)據(jù);光柵化所述非IPDS數(shù)據(jù);存儲所述已光柵化的非IPDS數(shù)據(jù);等待直到所述IPDS會話的所述主機放棄所述打印機;以及在放棄所述打印機之后,打印所述非IPDS作業(yè)。
2.根據(jù)權(quán)利要求1的方法,其中所述接收所述非IPDS打印數(shù)據(jù)包括當所述IPDS打印會話在IPDS通道中有效時,通過非IPDS通道接收所述非IPDS打印數(shù)據(jù)。
3.根據(jù)權(quán)利要求1的方法,其中所述光柵化所述非IPDS打印數(shù)據(jù)包括在空閑IPDS處理周期期間,光柵化所述非IPDS打印數(shù)據(jù)。
4.根據(jù)權(quán)利要求1的方法,其進一步包括將比分配給所述IPDS打印作業(yè)的優(yōu)先級更低的優(yōu)先級分配給所述非IPDS打印作業(yè),由此光柵化所述非IPDS打印數(shù)據(jù)發(fā)生在空閑IPDS處理周期期間。
5.根據(jù)權(quán)利要求1的方法,其進一步包括向所述IPDS打印會話的主機提交中斷請求;以及等待直到所述IPDS會話的所述主機放棄所述打印機。
6.根據(jù)權(quán)利要求5的方法,其中所述提交所述中斷請求包括在已完全光柵化所述非IPDS數(shù)據(jù)之前提交所述中斷請求。
7.一種用于打印機的控制單元,所述控制單元包括IPDS通道,通過所述IPDS通道處理由IPDS主機提交的有效IPDS打印作業(yè);非IPDS通道,通過所述非IPDS通道處理非IPDS打印作業(yè),所述非IPDS通道包括接口,通過所述接口從主機接收處理所述非IPDS打印作業(yè)的請求;開啟裝置,所述開啟裝置用于開啟來自于所述主機的路徑,通過所述路徑接收非IPDS打印數(shù)據(jù);以及非IPDS光柵器,所述非IPDS光柵器可操作以在所述IPDS打印會話有效時光柵化所述非IPDS打印數(shù)據(jù);臨時存儲器,所述臨時存儲器用于存儲已光柵化的非IPDS打印數(shù)據(jù);以及傳輸裝置,所述傳輸裝置用于在所述IPDS會話的所述主機放棄對所述打印機的控制時,將所存儲的已光柵化的非IPDS打印數(shù)據(jù)傳輸至打印引擎。
8.根據(jù)權(quán)利要求7的控制單元,其中所述光柵化所述非IPDS打印作業(yè)包括用于在空閑IPDS處理周期期間光柵化所述非IPDS打印數(shù)據(jù)的裝置。
9.根據(jù)權(quán)利要求7的控制單元,其進一步包括用于降低分配給所述非IPDS打印作業(yè)的優(yōu)先級的裝置,由此光柵化所述非IPDS打印數(shù)據(jù)發(fā)生在空閑IPDS處理周期期間。
10.根據(jù)權(quán)利要求7的控制單元,其進一步包括提交裝置,所述提交裝置用于在已經(jīng)至少部分光柵化并且存儲所述非IPDS打印數(shù)據(jù)之后,向所述IPDS主機提交中斷請求;以及傳輸裝置,所述傳輸裝置用于在所述IPDS會話的所述主機放棄對所述打印機的控制時,將所存儲的已光柵化的非IPDS打印數(shù)據(jù)傳輸至所述打印引擎。
全文摘要
本發(fā)明提供了并行IPDS和非IPDS打印處理。因為通常不可以中斷IPDS打印會話,所以通過打印機控制單元中單獨的、非IPDS通道接收非IPDS打印數(shù)據(jù)。使用空閑處理周期光柵化(“柵格化”)所述非IPDS數(shù)據(jù),并且將其存儲在柵格化緩沖池。在適當?shù)臅r間,例如當完全光柵化時,可以向然后控制所述打印機的IPDS主機提交中斷請求。當所述IPDS主機放棄對所述打印機的控制時,例如當已經(jīng)完成所述IPDS打印作業(yè)時,所述已光柵化的非IPDS打印數(shù)據(jù)可以被釋放到打印引擎并且被打印。
文檔編號G06F3/12GK101046731SQ20071008911
公開日2007年10月3日 申請日期2007年3月19日 優(yōu)先權(quán)日2006年3月31日
發(fā)明者D·M·卡尼, A·A·赫倫 申請人:國際商業(yè)機器公司