控制裝置和圖像形成系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開控制裝置和圖像形成系統(tǒng)??刂蒲b置包括:輸出單元,其獲取圖像形成信息項并且執(zhí)行按次序輸出上述信息項的輸出處理;發(fā)送單元,其從存儲單元獲取該信息項并且執(zhí)行將該信息項發(fā)送至圖像形成單元的發(fā)送處理;輸出歷史生成單元,其生成輸出歷史,在輸出歷史中記錄有執(zhí)行構(gòu)成輸出處理的單位處理的次序;發(fā)送歷史生成單元,其生成發(fā)送歷史,在發(fā)送歷史中記錄有執(zhí)行構(gòu)成發(fā)送處理的單位處理的次序;檢查單元,其檢查上述兩個執(zhí)行單位處理的次序是否匹配;確定信息生成單元,其生成確定信息項,確定信息項用于確定單位處理之中的在輸出歷史中已經(jīng)由檢查單元檢查的單位處理和單位處理之中的在發(fā)送歷史中已經(jīng)由檢查單元檢查的單位處理。
【專利說明】控制裝置和圖像形成系統(tǒng)
【技術(shù)領域】
[0001 ] 本發(fā)明涉及控制裝置和圖像形成系統(tǒng)。
【背景技術(shù)】
[0002]在日本未審查的專利申請公開N0.2007-18306中披露了,在與主機裝置等連接且執(zhí)行打印的打印機中,即使例如當在通信數(shù)據(jù)項的任意部分中發(fā)生數(shù)據(jù)丟失或數(shù)據(jù)損壞時,也能確定地檢測出數(shù)據(jù)丟失或數(shù)據(jù)損壞以防止發(fā)生異常打印。在日本未審查的專利申請公開N0.2007-18306中披露了如下構(gòu)造:將打印數(shù)據(jù)項劃分成多個塊的構(gòu)造,其中,對于每個塊判斷表示塊的尺寸的塊尺寸是否超過預定閾值,并且當塊尺寸超過預定閾值時,放棄打印任務;以及能夠根據(jù)通信環(huán)境等將作為異常數(shù)據(jù)判斷標準的閾值設定為任何適當值的構(gòu)造。
[0003]提供了這樣一種系統(tǒng):所述系統(tǒng)包括上級裝置和圖像形成裝置,上級裝置和圖像形成裝置彼此連接,從而在彼此之間發(fā)送/接收數(shù)據(jù)項,并且圖像形成裝置基于從上級裝置發(fā)送來的數(shù)據(jù)項來執(zhí)行圖像形成。在該系統(tǒng)中,在執(zhí)行多個打印任務的情況下,上級裝置可以暫時地存儲多個輸出指令和輸出數(shù)據(jù)項,并且可以依次地將數(shù)據(jù)項發(fā)送和輸出到圖像形成裝置。在該情況下,可以請求基于打印指令按次序來執(zhí)行打印任務。
【發(fā)明內(nèi)容】
[0004]本發(fā)明的目的在于,在檢查基于多個輸出指令的圖像形成處理是否按正確次序執(zhí)行的情況下,避免不完全的檢查。
[0005]根據(jù)本發(fā)明的第一方面,提供了一種控制裝置,其包括輸出單元、發(fā)送單元、輸出歷史生成單元、發(fā)送歷史生成單元、檢查單元和確定信息生成單元。輸出單元獲取要在用于形成圖像的圖像形成單元的圖像形成處理中使用的圖像形成信息項,并且執(zhí)行按次序輸出所述圖像形成信息項的輸出處理,以便使暫時地存儲圖像形成信息項的存儲單元存儲所述圖像形成信息項。發(fā)送單元從所述存儲單元獲取所述圖像形成信息項,并且執(zhí)行將所述圖像形成信息項發(fā)送至所述圖像形成單元的發(fā)送處理。輸出歷史生成單元生成輸出歷史,在所述輸出歷史中記錄有執(zhí)行構(gòu)成所述輸出處理的單位處理的次序。發(fā)送歷史生成單元生成發(fā)送歷史,在所述發(fā)送歷史中記錄有執(zhí)行構(gòu)成所述發(fā)送處理的單位處理的次序。檢查單元檢查記錄在所述輸出歷史中的執(zhí)行單位處理的次序和記錄在所述發(fā)送歷史中的執(zhí)行單位處理的次序是否匹配。確定信息生成單元生成確定信息項,所述確定信息項用于確定所述單位處理之中的在所述輸出歷史中已經(jīng)由所述檢查單元檢查過的單位處理和所述單位處理之中的在所述發(fā)送歷史中已經(jīng)由所述檢查單元檢查過的單位處理。
[0006]根據(jù)本發(fā)明的第二方面,在根據(jù)第一方面的控制裝置中,所述檢查單元從順序位置與利用所述確定信息項確定的單位處理的順序位置相符的單位處理起按執(zhí)行單位處理的次序依次檢查單位處理。
[0007]根據(jù)本發(fā)明的第三方面,根據(jù)第一方面或第二方面的控制裝置還包括分別地生成輸出歷史文件和發(fā)送歷史文件的文件生成單元,多個輸出歷史以基于預定條件的單位記錄在所述輸出歷史文件中,多個發(fā)送歷史以基于預定條件的單位記錄在所述發(fā)送歷史文件中。所述檢查單元從記錄在已經(jīng)生成的所述輸出歷史文件和所述發(fā)送歷史文件的最早文件中的輸出歷史和發(fā)送歷史起按優(yōu)先次序檢查所述輸出歷史和所述發(fā)送歷史。
[0008]根據(jù)本發(fā)明的第四方面,根據(jù)第三方面的控制裝置還包括移除單元,所述移除單元移除在所述文件生成單元生成的所述輸出歷史文件和所述發(fā)送歷史文件之中已經(jīng)由所述檢查單元完成所有單位處理的檢查的文件。
[0009]根據(jù)本發(fā)明的第五方面,提供了一種圖像形成系統(tǒng),其包括圖像形成單元、輸出單元、發(fā)送單元、輸出歷史生成單元、發(fā)送歷史生成單元、檢查單元和確定信息生成單元。圖像形成單元形成圖像。輸出單元獲取要在所述圖像形成單元的圖像形成處理中使用的圖像形成信息項,并且執(zhí)行按次序輸出所述圖像形成信息項的輸出處理,以便使暫時地存儲圖像形成信息項的存儲單元存儲所述圖像形成信息項。發(fā)送單元從所述存儲單元獲取所述圖像形成信息項,并且執(zhí)行將所述圖像形成信息項發(fā)送至所述圖像形成單元的發(fā)送處理。輸出歷史生成單元生成輸出歷史,在所述輸出歷史中記錄有執(zhí)行構(gòu)成所述輸出處理的單位處理的次序。發(fā)送歷史生成單元生成發(fā)送歷史,在所述發(fā)送歷史中記錄有執(zhí)行構(gòu)成所述發(fā)送處理的單位處理的次序。檢查單元檢查記錄在所述輸出歷史中的執(zhí)行單位處理的次序和記錄在所述發(fā)送歷史中的執(zhí)行單位處理的次序是否匹配。確定信息生成單元生成確定信息項,所述確定信息項用于確定所述單位處理之中的在所述輸出歷史中已經(jīng)由所述檢查單元檢查過的單位處理和所述單位處理之中的在所述發(fā)送歷史中已經(jīng)由所述檢查單元檢查過的單位處理。
[0010]在根據(jù)第一方面的控制裝置中,在檢查基于多個輸出指令的圖像形成處理是否按正確次序執(zhí)行的情況下,避免了不完全的檢查。
[0011]在根據(jù)第二方面的控制裝置中,與控制裝置不具有本構(gòu)造的情況相比,能夠有效地檢查出已經(jīng)執(zhí)行的單位處理的次序的異常。
[0012]在根據(jù)第三方面的控制裝置中,能夠以文件為單位管理單位處理的歷史,并且能夠執(zhí)行多個文件中的完全檢查。
[0013]在根據(jù)第四方面的控制裝置中,與控制裝置不具有本構(gòu)造的情況相比,能夠基于以文件為單位管理的單位處理的歷史有效地檢查出已經(jīng)執(zhí)行的單位處理的次序的異常。
[0014]根據(jù)第五方面,能夠?qū)崿F(xiàn)如下的圖像形成系統(tǒng):在檢查基于多個輸出指令的圖像形成處理是否按正確次序執(zhí)行的情況下,避免不完全的檢查。
【專利附圖】
【附圖說明】
[0015]將基于以下附圖詳細描述本發(fā)明的示例性實施例,其中:
[0016]圖1是示出根據(jù)本示例性實施例的圖像形成系統(tǒng)的構(gòu)造的實例的示意圖;
[0017]圖2是示出根據(jù)本示例性實施例的打印服務器的功能構(gòu)造的實例的示意圖;
[0018]圖3是示出打印服務器的硬件構(gòu)造的實例的示意圖;
[0019]圖4是示出由打印管理單元執(zhí)行的輸出處理的程序的流程圖;
[0020]圖5是示出在接收到取消指令的情況下由打印管理單元執(zhí)行的處理的程序的流程圖;[0021]圖6是示出由存儲單元和打印控制單元執(zhí)行的發(fā)送處理的程序的系統(tǒng)流程圖;
[0022]圖7A和圖7B是示出輸出次序列表和打印次序列表的實例的示意圖;
[0023]圖8是用于說明輸出次序文件和打印次序文件的構(gòu)造的示意圖;
[0024]圖9A和圖9B分別為示出用于檢查打印次序的由檢查單元執(zhí)行的檢查處理的程序的流程圖的第一部分和第二部分;
[0025]圖10示出用于說明對象信息確定處理和文件管理處理的文件構(gòu)造的具體實例;
[0026]圖11是示出對象信息確定處理的程序的流程圖;以及
[0027]圖12是示出文件管理處理的程序的流程圖。
【具體實施方式】
[0028]下文中,將參照附圖對本發(fā)明的示例性實施例進行詳細說明。
[0029]系統(tǒng)構(gòu)造
[0030]圖1是示出根據(jù)本示例性實施例的圖像形成系統(tǒng)的構(gòu)造的實例的示意圖。
[0031]圖1所示的圖像形成系統(tǒng)包括打印服務器100和圖像形成裝置200。打印服務器100管理打印任務,打印任務為基于打印指令(輸出指令)的處理。圖像形成裝置200在打印服務器100的控制之下執(zhí)行打印處理(圖像形成處理)。打印服務器100和圖像形成裝置200彼此直接地連接或經(jīng)由網(wǎng)絡等連接,從而在彼此之間發(fā)送和接收數(shù)據(jù)。此外,打印服務器100經(jīng)由局域網(wǎng)(LAN)與主機服務器300連接。
[0032]作為控制裝置的實例提供的打印服務器100是利用例如具有網(wǎng)絡功能的個人計算機實現(xiàn)的。打印服務器100接收來自主機服務器300的打印指令和打印數(shù)據(jù)(輸出數(shù)據(jù)),并且存儲(保存)打印數(shù)據(jù)。然后,打印服務器100將存儲的打印數(shù)據(jù)發(fā)送到圖像形成裝置200,并且使圖像形成裝置200執(zhí)行打印處理。而且,根據(jù)本示例性實施例的打印服務器100檢查是否基于從主機服務器300獲取的打印指令按正確次序?qū)D像形成裝置200執(zhí)行打印控制。下文將對打印服務器100的具體功能構(gòu)造進行說明。
[0033]作為圖像形成單元的實例提供的圖像形成裝置200獲取來自打印服務器100的打印數(shù)據(jù),并且基于獲取的打印數(shù)據(jù)利用圖像形成材料在諸如紙張(片材)等記錄介質(zhì)上形成(打印)和輸出圖像。在本示例性實施例中不特別限制在記錄介質(zhì)上形成圖像的機構(gòu),并且可以使用諸如所謂的電子照相型系統(tǒng)和噴墨式系統(tǒng)等現(xiàn)有的各種類型的方案。
[0034]主機服務器300是利用例如具有網(wǎng)絡功能的計算機來實現(xiàn)的,并且包括保存打印數(shù)據(jù)的存儲裝置310。主機服務器300接受打印指令,從存儲裝置310讀出由打印指令指定的打印對象(打印數(shù)據(jù)),并且將打印對象發(fā)送到打印服務器100。從例如與主機服務器300連接的終端裝置320輸入打印指令。終端裝置320是利用例如具有如鍵盤等輸入裝置的個人計算機來實現(xiàn)的。
[0035]打印服務器的功能構(gòu)造
[0036]圖2是示出打印服務器100的功能構(gòu)造的實例的示意圖。
[0037]如圖2所示,根據(jù)本示例性實施例的打印服務器100包括打印管理單元110、存儲單元120和打印控制單元130。打印管理單元110獲取打印數(shù)據(jù),并且執(zhí)行數(shù)據(jù)處理。存儲單元120存儲打印數(shù)據(jù)。打印控制單元130控制圖像形成裝置200。此外,根據(jù)本示例性實施例的打印服務器100還包括檢查單元,檢查單元檢查對打印數(shù)據(jù)進行打印的打印次序。[0038]作為輸出單元和輸出歷史生成單元的實例提供的打印管理單元110從主機服務器300獲取打印指令和打印數(shù)據(jù),將獲取的打印數(shù)據(jù)轉(zhuǎn)換成中間數(shù)據(jù),并且使存儲單元120存儲中間數(shù)據(jù)。從主機服務器300接收到的打印數(shù)據(jù)以頁面描述語言(PDL)來描寫。因此,打印管理單元110分析接收到的打印數(shù)據(jù),并且將接收到的打印數(shù)據(jù)轉(zhuǎn)換成不太依賴裝置類型或數(shù)據(jù)處理環(huán)境的中間數(shù)據(jù)。然后,打印管理單元110將生成的中間數(shù)據(jù)發(fā)送到存儲單元120。而且,本示例性實施例中的打印管理單元110生成歷史信息項(下文稱為“輸出次序列表”)。在輸出次序列表中,記錄已經(jīng)執(zhí)行輸出打印數(shù)據(jù)(中間數(shù)據(jù))的處理(下文稱為“輸出處理”)(以將打印數(shù)據(jù)存儲在存儲單元120中)的次序。
[0039]作為存儲單元的實例提供的存儲單元120暫時地存儲已被打印管理單元110轉(zhuǎn)換成中間數(shù)據(jù)的打印數(shù)據(jù)。因為將圖像物理地形成在記錄介質(zhì)上的圖像形成裝置200的處理速度低于打印服務器100的數(shù)據(jù)處理速度,所以存儲打印數(shù)據(jù)以吸收打印服務器100的數(shù)據(jù)處理速度和圖像形成裝置200的處理速度之間的速度差。因此,在短時間段內(nèi)提供多個打印指令的情況下,可將對應于打印指令的多個打印數(shù)據(jù)存儲在存儲單元120中。當圖像形成裝置200變得能夠接受打印數(shù)據(jù)時,將存儲的打印數(shù)據(jù)依次讀出并轉(zhuǎn)移到打印控制單元 130。
[0040]作為發(fā)送單元和發(fā)送歷史生成單元的實例提供的打印控制單元130是所謂的打印機驅(qū)動器。當圖像形成裝置200能夠接受打印數(shù)據(jù)時,打印控制單元130從存儲單元120獲取打印數(shù)據(jù),并且將打印數(shù)據(jù)發(fā)送到圖像形成裝置200。如上所述,在多個打印數(shù)據(jù)存儲在存儲單元120中的情況下,每當由圖像形成裝置200執(zhí)行的打印處理結(jié)束時,打印控制單元130就逐一地獲取存儲的打印數(shù)據(jù)中的一個,并且將打印數(shù)據(jù)發(fā)送到圖像形成裝置200。此外,本示例性實施例中的打印控制單元130生成歷史信息項(下文稱為“打印次序列表”)。在打印次序列表中,記錄已經(jīng)執(zhí)行從存儲單元120獲取打印數(shù)據(jù)以及將打印數(shù)據(jù)發(fā)送到圖像形成裝置200的處理(下文稱為“發(fā)送處理”)的次序。打印次序列表是由例如在打印控制單元130的發(fā)送控制功能(為向圖像形成裝置200執(zhí)行發(fā)送的功能)的控制下的語言監(jiān)控器或端口監(jiān)控器來生成的。注意的是,因為打印處理是圖像形成裝置200基于通過發(fā)送處理發(fā)送的打印數(shù)據(jù)來執(zhí)行的,所以通過打印處理輸出圖像的輸出次序與執(zhí)行發(fā)送處理且記錄在打印次序列表中的次序相同。
[0041]此處,在現(xiàn)有的圖像形成系統(tǒng)中使用的存儲單元120中,存在具有一定規(guī)格的存儲單元120,并且在一些規(guī)格中,在存儲多個打印數(shù)據(jù)的情況下,不能確保從存儲單元120讀出打印數(shù)據(jù)的次序。換言之,存儲多個打印數(shù)據(jù)的次序和讀出多個打印數(shù)據(jù)的次序可能彼此不同。在這種系統(tǒng)中,例如,即使在打印任務A、B和C的打印指令按次序提供的情況下,當從存儲單元120中讀出打印數(shù)據(jù)時,也可能改變了次序,例如,圖像形成裝置200可能按次序執(zhí)行打印任務A、C和B。
[0042]相反,在執(zhí)行多個打印任務的情況下,可能請求按提供打印指令的次序來輸出打印結(jié)果。在該情況下,在具有符合上述規(guī)格的存儲單元120的圖像形成系統(tǒng)中,輸出打印結(jié)果的次序不一定匹配打印指令的次序。因此,需要例如手動地檢查輸出打印結(jié)果的次序。在本示例性實施例中,如下文所述,利用檢查單元140來檢查打印控制單元130執(zhí)行的發(fā)送處理。
[0043]作為檢查單元和確定信息生成單元的實例提供的檢查單元140將由打印管理單元110生成的輸出次序列表與由打印控制單元130生成的打印次序列表進行比較,從而檢查執(zhí)行輸出處理的次序和執(zhí)行發(fā)送處理的次序是否彼此不同。然后,當執(zhí)行輸出處理的次序和執(zhí)行發(fā)送處理的次序彼此不同時,檢查單元140執(zhí)行出錯處理。下文將對檢查單元140執(zhí)行的處理的細節(jié)進行說明。
[0044]假設存在這樣的情況:在打印數(shù)據(jù)被存儲在存儲單元120中之后,讀取到取消執(zhí)行被存儲打印數(shù)據(jù)之前的打印任務的指令(取消指令)。在該情況下,不從存儲單元120讀出作為取消指令對象的打印數(shù)據(jù),并且不利用圖像形成裝置200來執(zhí)行基于打印數(shù)據(jù)的打印任務。然后,在打印次序列表中不記錄與發(fā)送打印數(shù)據(jù)的發(fā)送處理有關(guān)的信息項,該打印數(shù)據(jù)為取消指令對象。因此,執(zhí)行輸出處理且記錄在輸出次序列表中的次序和執(zhí)行發(fā)送處理且記錄在打印次序列表中的次序不匹配。然而,執(zhí)行基于有效取消指令的處理(取消處理),并且因此,發(fā)生輸出次序列表和打印次序列表之間的失配。因此,無需執(zhí)行出錯處理。
[0045]出于此原因,當打印管理單元110接收到來自主機服務器300的取消指令時,檢查單元140從打印管理單元110獲取表示已提供該取消指令的信息項,并且保存該信息項。然后,當將輸出次序列表和打印次序列表相互比較并且檢測到它們之間的失配時,檢查單元140基于與取消指令有關(guān)的信息項來判斷是否執(zhí)行出錯處理。注意的是,由檢查單元140獲取的與取消指令有關(guān)的信息項可以是打印管理單元110用來通知檢查單元140已提供取消指令的特定通知信息項,或者可以為取消指令本身。此外,可以通過在輸出次序列表中記錄已提供取消指令的事實,將該事實被通知給檢查單元140。在本示例性實施例中,將在輸出次序列表中記錄與取消指令有關(guān)的信息項的情況作為實例進行說明。
[0046]硬件構(gòu)造的實例
[0047]圖3是示出打印服務器100的硬件構(gòu)造的實例的示意圖。
[0048]圖3所示的計算機包括作為計算單元的中央處理單元(CPU) 100a以及作為主存儲器的存儲器100c。此外,該計算機還包括作為外部裝置的磁盤裝置(硬盤驅(qū)動器(HDD))100g、網(wǎng)絡接口 100f、顯示機構(gòu)100d、聲音機構(gòu)100h、諸如鍵盤或鼠標等輸入裝置100i等。
[0049]在圖3所示的構(gòu)造的實例中,存儲器100c和顯示機構(gòu)100d經(jīng)由系統(tǒng)控制器100b與CPUlOOa連接。而且,網(wǎng)絡接口 100f、磁盤裝置100g、聲音機構(gòu)100h和輸入裝置100i經(jīng)由1/0控制器100e與系統(tǒng)控制器100b連接。上述各個元件經(jīng)由諸如系統(tǒng)總線和輸入/輸出總線等各種類型的總線彼此連接。
[0050]注意的是,圖3僅示出了應用了本示例性實施例的計算機的硬件構(gòu)造的實例。本示例性實施例廣泛地應用于管理作為基于打印指令(輸出指令)的處理的打印任務的系統(tǒng),并且本示例性實施例的實現(xiàn)不限于使用圖3所示的構(gòu)造實現(xiàn)。
[0051]在圖3所示的計算機中,用于實現(xiàn)打印服務器100的各項功能的程序存儲在磁盤裝置100g中。該程序裝載到存儲器100c中,并且利用CPUlOOa來執(zhí)行基于程序的處理,從而實現(xiàn)各種類型的功能。
[0052]更具體地,CPUlOOa根據(jù)作為例如應用程序準備的程序來執(zhí)行打印管理單元110中的各項處理。注意的是,從主機服務器300接收打印指令和打印數(shù)據(jù)是通過例如網(wǎng)絡接口 100f來執(zhí)行的。另外,在對打印數(shù)據(jù)進行轉(zhuǎn)換的情況下,存儲器100c用作工作存儲器。而且,打印管理單元110所生成的輸出次序列表存儲在諸如存儲器100c或磁盤裝置100g等存儲器中。[0053]存儲單元120通過使用諸如存儲器100c或磁盤裝置100g等存儲器而實現(xiàn)為在CPUlOOa的控制之下保存打印數(shù)據(jù)的單元,CPUlOOa執(zhí)行作為例如操作系統(tǒng)(0S)的功能的一部分而準備的程序模塊。
[0054]CPUlOOa根據(jù)作為例如0S的功能的一部分而準備的程序模塊來執(zhí)行打印控制單元130中的各個處理。打印控制單元130所生成的打印次序列表存儲在諸如存儲器100c或磁盤裝置100g等存儲器中。
[0055]CPUlOOa根據(jù)作為例如應用程序而準備的程序來執(zhí)行檢查單元140中的各個處理。在通知打印服務器100的操作員已發(fā)生錯誤的情況下,例如,CPUlOOa執(zhí)行控制以使檢查單元140執(zhí)行如下處理作為出錯處理:利用顯示機構(gòu)100d顯示出錯消息的處理或者利用聲音機構(gòu)100h輸出警告聲音的處理。
[0056]注意的是,使計算機實現(xiàn)本示例性實施例中的各個部件的功能的程序例如不僅可以由通信單元提供,而且可以由存儲在如光盤只讀存儲器(CD-ROM)等記錄介質(zhì)中來提供。
[0057]打印管理單元的操作
[0058]圖4是示出由打印管理單元110執(zhí)行的輸出處理的程序的流程圖。
[0059]當打印管理單元110開始對作為處理對象的打印任務(下文稱為“對象(當前)任務”)執(zhí)行輸出處理(步驟401)時,打印管理單元110將表示對象任務的輸出處理已經(jīng)開始的歷史信息項(開始信息項)登記在輸出次序列表中(步驟402)。更具體地,例如,打印管理單元110將開始信息項寫入由圖3所示的存儲器100c保存的輸出次序列表的數(shù)據(jù)區(qū)域中。開始信息項以從頂部填入輸出次序列表的方式依次寫入輸出次序列表中。不特別限制各個開始信息項的形式,但是至少可以記錄對象任務的識別信息項(任務名稱、任務號等)和如下的信息項:借助該信息項將包括該信息項的開始信息項識別為開始信息項。
[0060]接下來,打印管理單元110輸出打印數(shù)據(jù)(中間數(shù)據(jù)),并且將打印數(shù)據(jù)存儲在存儲單元120中。更具體地,首先,打印管理單元110判斷是否已接收到取消指令(步驟403)。當打印管理單元110沒有接收到取消指令時,打印管理單元110輸出打印數(shù)據(jù)的與一頁對應的部分,并且將打印數(shù)據(jù)的與一頁對應的部分存儲在存儲單元120中(步驟404)。反復執(zhí)行這些處理,直到對打印數(shù)據(jù)的與所有頁對應的所有部分執(zhí)行了處理為止(步驟405)。
[0061]在輸出了打印數(shù)據(jù)的與對象任務的所有頁對應的所有部分(步驟405中結(jié)果為否)之后或者當已接收到取消指令(步驟403中結(jié)果為是)時,打印管理單元110結(jié)束對象任務的輸出處理(步驟406)。然后,打印管理單元110將表示對象任務的輸出處理已經(jīng)結(jié)束的歷史信息項(結(jié)束信息項)登記在輸出次序列表中(步驟407)。如同開始信息項的情況,將結(jié)束信息項依次寫入例如由圖3所示的存儲器100c保存的輸出次序列表的數(shù)據(jù)區(qū)域中。不特別限制每個結(jié)束信息項的形式,但是至少可以記錄對象任務的識別信息項以及如下的信息項:借助該信息項將包括該信息項的結(jié)束信息項識別為結(jié)束信息項。
[0062]圖5是示出在接收到取消指令的情況下打印管理單元110執(zhí)行的處理的程序的流程圖。
[0063]在打印管理單元110在圖4所示的步驟403中已接收到取消指令的情況下,打印管理單元110結(jié)束如圖4所示的輸出處理,并且移除在步驟404和405中存儲在存儲單元120中的打印數(shù)據(jù)(步驟501)。然后,打印管理單元110將表示對象任務的取消指令已被提供的歷史信息項(取消信息項)登記在輸出次序列表中(步驟502)。如同開始信息項和結(jié)束信息項的情況,將取消信息項依次寫入例如由圖3所示的存儲器100c保存的輸出次序列表的數(shù)據(jù)區(qū)域中。不特別限制各取消信息項的形式,但是至少可以記錄對象任務的識別信息項以及如下的信息項:借助該信息項將包括該信息項的取消信息項識別為取消信息項。
[0064]此處,可能在對象任務的輸出處理結(jié)束之后提供對象任務的取消指令。在該情況下,因為輸出處理已經(jīng)結(jié)束,所以在圖4所示的程序中,不執(zhí)行基于取消指令的操作。然而,執(zhí)行圖5所示的打印數(shù)據(jù)的移除(步驟501)和取消信息項的登記(步驟502)。注意的是,假設存在這樣一種系統(tǒng):在打印控制單元130從存儲單元120讀出打印數(shù)據(jù)之后,從存儲單元120中移除讀出的打印數(shù)據(jù)。在該系統(tǒng)中,在從存儲單元120中讀出打印數(shù)據(jù)后提供取消指令的情況下,即使當打印管理單元110試圖移除打印數(shù)據(jù)時(步驟501),存儲單元120中也可能不存在作為對象的打印數(shù)據(jù)。在該情況下,簡單地,僅執(zhí)行取消信息項的登記(步驟 502)。
[0065]打印控制單元的操作
[0066]圖6是示出存儲單元120和打印控制單元130執(zhí)行的發(fā)送處理的程序的系統(tǒng)流程圖。
[0067]在圖6中,示出保存打印數(shù)據(jù)(為打印控制單元130的處理對象(發(fā)送對象))的存儲單元120的操作以及負責打印控制單元130的發(fā)送控制功能的語言監(jiān)控器132和端口監(jiān)控器133的操作。此處,當圖像形成裝置200能夠接受打印數(shù)據(jù)時,存儲單元120依次地輸出存儲的打印數(shù)據(jù)。語言監(jiān)控器132經(jīng)由端口監(jiān)控器133將從存儲單元120輸出的打印數(shù)據(jù)發(fā)送到圖像形成裝置200。此外,語言監(jiān)控器132輸出表示發(fā)送處理進展的歷史信息項。端口監(jiān)控器133將從語言監(jiān)控器132接收到的打印數(shù)據(jù)發(fā)送到圖像形成裝置200,并且監(jiān)控發(fā)送處理進展。
[0068]當圖像形成裝置200能夠接受打印數(shù)據(jù)時,首先,存儲單元120確定對象任務,并且輸出打印開始指令(步驟601)。該打印開始指令經(jīng)由打印控制單元130的語言監(jiān)控器132和端口監(jiān)控器133發(fā)送到圖像形成裝置200。在該情況下,關(guān)于對象任務的確定,存儲單元120可具有依照在存儲單元120中存儲打印數(shù)據(jù)的次序確定作為發(fā)送處理對象的對象任務的規(guī)格,但是存儲單元120的規(guī)格不限于上述。注意的是,例如,端口監(jiān)控器133將詢問信號發(fā)送到圖像形成裝置200,并且將來自圖像形成裝置200的響應發(fā)送到存儲單元120,從而利用存儲單元120來判斷圖像形成裝置200是否能夠接受打印數(shù)據(jù)。
[0069]當語言監(jiān)控器132接收到打印開始指令時,語言監(jiān)控器132將表示對象任務的發(fā)送處理已開始的歷史信息項(開始信息項)登記在打印次序列表中(步驟611)。更具體地,例如,語言監(jiān)控器132將開始信息項寫入由圖3所示的存儲器100c保存的打印次序列表的數(shù)據(jù)區(qū)域中。開始信息項以從頂部填入打印次序列表的方式依次寫入打印次序列表。不特別限制各個開始信息項的形式,但是至少可以記錄對象任務的識別信息項(任務名稱、任務號等)以及如下的信息項:借助該信息項將包括該信息項的開始信息項識別為開始信息項。
[0070]接下來,存儲單元120逐頁依次地讀出打印數(shù)據(jù)的與對象任務的頁對應的部分,并且將打印數(shù)據(jù)轉(zhuǎn)移到打印控制單元130 (步驟602)。打印控制單元130利用語言監(jiān)控器132和端口監(jiān)控器133將獲取的打印數(shù)據(jù)發(fā)送到圖像形成裝置200。
[0071]當發(fā)送了對象任務的打印數(shù)據(jù)的所有部分時,存儲單元120輸出對象任務的打印結(jié)束指令(步驟603)。打印結(jié)束指令經(jīng)由打印控制單元130的語言監(jiān)控器132和端口監(jiān)控器133發(fā)送到圖像形成裝置200。此后,當端口監(jiān)控器133接收到表示已完成從圖像形成裝置200輸出對象任務的打印數(shù)據(jù)的所有部分的通知時,端口監(jiān)控器133將該通知發(fā)送到語言監(jiān)控器132 (步驟621)。
[0072]當語言監(jiān)控器132從端口監(jiān)控器133接收到已從圖像形成裝置200接收到的通知時,語言監(jiān)控器132將表示對象任務的發(fā)送處理已結(jié)束的歷史信息項(結(jié)束信息項)登記到打印次序列表中(步驟612)。如同開始信息項的情況,將結(jié)束信息項依次地寫入例如由圖3所示的存儲器100c保存的打印次序列表的數(shù)據(jù)區(qū)域中。不特別限制各個結(jié)束信息項的形式,但是至少可以記錄對象任務的識別信息項以及如下的信息項:借助該信息項將包括該信息項的結(jié)束信息項識別為結(jié)束信息項。
[0073]以此方式,一個打印任務的發(fā)送處理結(jié)束。此后,在另一打印任務的打印數(shù)據(jù)存儲在存儲單元120中的情況下,類似地,重復發(fā)送處理。參照圖6,依次地執(zhí)行下一對象任務的發(fā)送處理(參見步驟604、步驟605和步驟613)。然后,在執(zhí)行發(fā)送處理的同時,提供取消指令。
[0074]如圖5所示,當打印管理單元110接收到取消指令時,打印管理單元110移除存儲在存儲單元120中的打印數(shù)據(jù)(參見步驟501)。當存儲單元120執(zhí)行打印數(shù)據(jù)的移除時,存儲單元120輸出與打印數(shù)據(jù)有關(guān)的打印任務的打印取消指令(圖6中的步驟606)。
[0075]當語言監(jiān)控器132接收到打印取消指令時,語言監(jiān)控器132將表示對象任務的發(fā)送處理已經(jīng)取消的歷史信息項(取消信息項)登記在打印次序列表中(步驟614)。如同開始信息項和結(jié)束信息項的情況,將取消信息項依次寫入例如由圖3所示的存儲器100c保存的打印次序列表的數(shù)據(jù)區(qū)域中。不特別限制各個取消信息項的形式,但是至少可以記錄對象任務的識別信息項以及如下的信息項:借助該信息項將包括該信息項的取消信息項識別為取消信息項。
[0076]注意的是,作為輸出打印取消指令的定時,考慮如下三個定時:在與打印取消指令對應的打印任務的發(fā)送處理開始之前;在執(zhí)行發(fā)送處理的同時;以及在發(fā)送處理完成之后。在發(fā)送處理開始之前提供取消指令的情況下,因為發(fā)送處理尚未執(zhí)行,所以圖像形成裝置200不執(zhí)行打印處理。在執(zhí)行發(fā)送處理的同時提供取消指令的情況下,圖像形成裝置200對在提供取消指令之前打印數(shù)據(jù)的經(jīng)過發(fā)送處理的部分執(zhí)行打印處理。圖像形成裝置200不對在提供取消指令時打印數(shù)據(jù)的尚未經(jīng)過發(fā)送處理的其余部分執(zhí)行打印處理。在發(fā)送處理完成之后提供取消指令的情況下,因為打印任務的打印數(shù)據(jù)的所有部分已經(jīng)過了發(fā)送處理,所以圖像形成裝置200輸出打印任務的所有圖像。在任一情況下,從語言監(jiān)控器132輸出取消信息項,并且將取消信息項登記在打印次序列表中。
[0077]輸出次序列表和打印次序列表的構(gòu)造的實例
[0078]圖7A和圖7B是示出輸出次序列表和打印次序列表的實例的示意圖。
[0079]圖7A示出了輸出次序列表111。在該輸出次序列表111中,記錄有與六個打印任務A至F的輸出處理有關(guān)的歷史信息項(各歷史信息項為開始信息項、結(jié)束信息項或取消信息項)。歷史信息項中的每個均包括任務名稱和信息項類型。例如,包含在頂行中的歷史信息項為與打印任務A有關(guān)的開始信息項,并且為“任務A:開始”。類似地,包括在第二行中的歷史信息項為與打印任務A有關(guān)的結(jié)束信息,并且為“任務A:結(jié)束”。此外,包括在第十三行中的歷史信息項為與打印任務E有關(guān)的取消信息項,并且為“任務E:取消”。[0080]圖7B示出了打印次序列表131。在該打印次序列表131中,記錄有與六個打印任務A至F的發(fā)送處理有關(guān)的歷史信息項(各歷史信息項為開始信息項或結(jié)束信息項)。如同圖7A中所示的輸出次序列表111的歷史信息項的情況,歷史信息項中的每項均包括任務名稱和信息項類型。
[0081]此處,當將圖7A中所示的輸出次序列表111和圖7B中所示的打印次序列表131相互比較時,在輸出次序列表111中,第三行包括與任務B有關(guān)的開始信息項,第四行包括與任務B有關(guān)的結(jié)束信息項,第五行包括與任務C有關(guān)的開始信息項,并且第六行包括與任務C有關(guān)的結(jié)束信息項。同時,在打印次序列表131中,第三行包括與任務C有關(guān)的開始信息項,第四行包括與任務C有關(guān)的結(jié)束信息項,第五行包括與任務B有關(guān)的開始信息項,并且第六行包括與任務B有關(guān)的結(jié)束信息項。換言之,任務B和任務C的輸出處理的順序位置按執(zhí)行輸出處理的次序相互交換,從而按執(zhí)行發(fā)送處理的次序得到任務B的發(fā)送處理的順序位置和任務C的發(fā)送處理的順序位置。
[0082]此外,因為已經(jīng)提供任務E的取消指令,所以在打印次序列表131中不存在與任務E有關(guān)的歷史信息項。因此,在輸出次序列表111中,第九行和第十行分別包括與任務E有關(guān)的開始信息項和結(jié)束信息項,并且第十一行和第十二行分別包括與任務F有關(guān)的開始信息項和結(jié)束信息項。同時,在打印次序列表131中,第九行和第十行分別包括與任務F有關(guān)的開始信息項和結(jié)束信息項。注意的是,在打印次序列表131中沒有記錄與任務E有關(guān)的取消信息項。原因在于,圖7B所示的打印次序列表131表示在從打印控制單元130的語言監(jiān)控器132中輸出取消信息項之前打印次序列表131的狀態(tài)。
[0083]接下來,將說明輸出次序列表111和打印次序列表131的文件的單元。
[0084]圖8是用于說明輸出次序文件和打印次序文件的構(gòu)造的示意圖。
[0085]在本示例性實施例中,當打印服務器100啟動時,生成要寫入輸出次序列表111的文件(下文稱為“輸出次序文件”)和要寫入打印次序列表131的文件(下文稱為“打印次序文件”)。例如,如圖8所示,通過啟動打印服務器100分別生成第一輸出次序文件Fil和第一打印次序文件Fol。然后,把與輸出處理和發(fā)送處理有關(guān)的各歷史信息項記錄在第一輸出次序文件Fil和第一打印次序文件Fol中。
[0086]此外,在本示例性實施例中,基于在每個文件中執(zhí)行歷史信息項的寫入直到所寫入的歷史信息項的行數(shù)達到一定數(shù)目的這種預定情況,停止在該文件中寫入歷史信息項,并且將下一歷史信息項寫入新文件的第一行中。在圖8所示的實例中,因為在第一輸出次序文件Fil和第一打印次序文件Fol各者中所寫入的歷史信息項的行數(shù)達到1000,所以停止在第一輸出次序文件Fil和第一打印次序文件Fol的每一者中記錄歷史信息項。然后,將新的歷史信息項記錄到新生成的第二輸出次序文件Fi2和第二打印次序文件Fo2中。
[0087]注意的是,如上所述,在本示例性實施例中,當打印服務器100啟動時,輸出次序文件和打印次序文件都是新生成的。因此,例如,在打印服務器100重新啟動的情況下,與打印服務器100重新啟動之前已經(jīng)執(zhí)行的輸出處理和打印處理有關(guān)的歷史信息項被寫入在打印服務器100重新啟動之前已作為用于記錄歷史信息項的對象提供的文件中。然而,與在打印服務器100重新啟動之后執(zhí)行的輸出處理和打印處理有關(guān)的歷史信息項被寫入在打印服務器100重新啟動之后新生成的其它文件中。
[0088]更具體地,如圖8所示,例如,假定如下情況:在已經(jīng)執(zhí)行寫在第二輸出次序文件Fi2的第202行中的打印任務K且已經(jīng)執(zhí)行寫在第二打印次序文件Fo2的第202行中的打印任務K之后,打印服務器100重新啟動。
[0089]在這種情況下,打印任務K被寫入第二輸出次序文件Fi2和第二打印次序文件Fo2的每一者中。然后,結(jié)束將歷史信息項寫入到第二輸出次序文件Fi2和第二打印次序文件Fo2。
[0090]在打印服務器100重新啟動之后,生成作為新文件的第三輸出次序文件Fi3和第三打印次序文件Fo3。打印任務L是與基于打印服務器100重新啟動之后新接收到的打印任務的輸出處理和發(fā)送處理有關(guān)的歷史信息項,并且被寫入新生成的第三輸出次序文件Fi3和第三打印次序文件Fo3的每一者的第一行中。
[0091]此外,檢查單元140將信息項添加多個生成的文件中,借助該信息項能辨識各文件生成的時間順序。作為添加能用來辨識時間順序的信息項的方案,例如,可以使用將與文件生成的時間有關(guān)的信息項添加至各文件的方案或者將按時間排序的文件名添加至各文件的方案。
[0092]檢查單元的操作
[0093]檢查單元140將記錄在輸出次序列表111中的歷史信息項和記錄在打印次序列表131中的歷史信息項進行比較,從而檢查執(zhí)行打印任務的輸出處理的次序和執(zhí)行打印任務的發(fā)送處理的次序是否相同。檢查單元140以打印任務為單位來檢查處理執(zhí)行的次序。因此,可以僅針對歷史信息項中的開始信息項或結(jié)束信息項相互比較各列表(輸出次序列表111和打印次序列表131)中的處理的次序。在本示例性實施例中,利用開始信息項來檢查執(zhí)行打印任務的各項處理(輸出處理和發(fā)送處理)的次序。
[0094]此外,檢查單元140按適當?shù)臅r間間隔(例如,每隔幾秒)檢查打印次序列表131。當?shù)怯浽诖蛴〈涡蛄斜?31中的數(shù)據(jù)數(shù)量與當檢查單元140緊之前檢查打印次序列表131時獲得的數(shù)據(jù)數(shù)量相比較已經(jīng)增加時,檢查單元140執(zhí)行檢查處理。以此方式,在沒有執(zhí)行新的發(fā)送處理的情況下,可以省略檢查處理??梢酝ㄟ^打開打印次序列表131的數(shù)據(jù)文件并且檢查登記數(shù)據(jù)的數(shù)量或者僅基于打印次序列表131的文件尺寸來確定登記在打印次序列表131中的數(shù)據(jù)數(shù)量是否已經(jīng)增加。
[0095]此外,檢查單元140存儲用來確定輸出次序列表111和打印次序列表131中已經(jīng)檢查的行的最后一行的信息項(下文稱為“比較完成信息項”)。如下述圖9A和圖9B所示,在每個列表(輸出次序列表111和打印次序列表131)中的對象信息項更新之后執(zhí)行比較完成信息項的存儲(參見下述步驟905)。
[0096]更具體地,當完成與某一打印任務有關(guān)的歷史信息的檢查(比較)時,存儲與被包含在列表中且已檢查的歷史信息項被寫入的行的“行號”有關(guān)的信息項。此外,在本示例性實施例中,分別以作為輸出次序文件和打印次序文件的文件為單位來管理輸出次序列表111和打印次序列表131。因此,比較完成信息項被存儲為表示歷史信息項的檢查已完成的文件的信息項。換言之,檢查單元140將表示“文件名”和“行號”的信息項保存為比較完成信息項。
[0097]注意的是,檢查單元140可以生成如下信息項:借助該信息項可以稍后確定歷史信息項的檢查已經(jīng)完成的文件。例如,在已經(jīng)檢查的歷史信息項中設置能辨識歷史信息項已被檢查的事實的標志,或者,相反,可以生成表示歷史信息項尚未檢查的信息項。[0098]圖9A和圖9B分別為示出檢查打印次序的由檢查單元140執(zhí)行的檢查處理的程序的流程圖的第一部分和第二部分。
[0099]首先,檢查單元140執(zhí)行對象信息確定處理,對象信息確定處理是確定要首先用作檢查對象的歷史信息項(下文稱為“對象信息項”)的處理(步驟901)。在本示例性實施例中,作為由對象信息確定處理確定的歷史信息項的開始信息項被確定為對象信息項。注意的是,下面將詳細說明對象信息確定處理。
[0100]接下來,檢查單元140將包括在確定的對象信息項中的任務名稱相互比較(步驟902)。
[0101]在包括于被比較的對象信息項中的任務名稱匹配的情況下(步驟902中結(jié)果為是),這表明,關(guān)于由對象信息項指定的打印任務,就執(zhí)行發(fā)送處理的次序而言打印任務的發(fā)送處理的順序位置(即,就圖像形成裝置200執(zhí)行打印處理的次序而言打印任務的打印處理的順序位置)和就執(zhí)行輸出處理的次序而言打印任務的輸出處理的順序位置(即,就打印服務器100接收到打印指令的次序而言打印任務的打印指令的順序位置)是相同的。因此,因為就接收到打印指令的次序而言打印任務的打印指令的順序位置和就執(zhí)行打印處理的打印次序而言打印任務的打印處理的順序位置彼此相同,所以檢查單元140將如下的檢查結(jié)果以及包含在對象信息項中的任務名稱輸出到歷史文件:該檢查結(jié)果表示就執(zhí)行發(fā)送處理的次序而言打印任務的發(fā)送處理的順序位置(就執(zhí)行打印處理的打印次序而言打印任務的打印處理的順序位置)為正常位置(步驟903)。不特別限制記錄在歷史文件中的信息項的形式,但是至少可以記錄打印任務的識別信息項(此處為任務名稱)和表示檢查結(jié)果的細節(jié)的信息項(此處,該信息項表示就執(zhí)行發(fā)送處理的次序而言打印任務的發(fā)送處理的順序位置為正常位置)。利用諸如圖3所示的存儲器100c或磁盤裝置100g等存儲器來保存包括檢查結(jié)果的歷史文件,并且這允許例如圖像形成系統(tǒng)的操作員來查看歷史文件。
[0102]接下來,檢查單元140將對象信息項更新成各列表中的下一歷史信息項(開始信息項)(步驟904)。然后,檢查單元140將與文件(輸出次序文件和打印次序文件)名有關(guān)的信息項存儲為比較完成信息項,其中緊接在對象信息項更新之前檢查的歷史信息項被寫入該信息項,并且緊接在對象信息項更新之前檢查的歷史信息項的行的行號被寫入該信息項(步驟905)。此后,檢查單元140判斷對象信息項要更新成的歷史信息項是否存在,S卩,是否能夠更新對象信息項(步驟906)。
[0103]然后,當能夠更新對象信息項(步驟906中結(jié)果為是)時,檢查單元140將更新的對象信息項相互比較(步驟902)。在將歷史信息項檢查到輸出次序列表111和打印次序列表131中的任一列表中的最后一個歷史信息項的情況下,因為不再能夠更新對象信息項(步驟906中結(jié)果為否),所以檢查處理結(jié)束。然后,檢查完成之后,檢查單元140執(zhí)行將所有歷史信息項都已經(jīng)檢查的文件移除的文件管理處理(步驟920)。注意的是,下面將詳細說明文件管理處理。
[0104]在當對象信息項相互比較時任務名稱不匹配的情況下(步驟902中結(jié)果為否),接下來,檢查單元140檢查與包括在輸出次序列表111的對象信息項中的任務名稱有關(guān)的取消信息項是否存在于輸出次序列表111中(步驟907)。
[0105]在存在取消信息項的情況下,已經(jīng)取消執(zhí)行具有打印任務名稱的打印任務。因此,任務名稱之間的該失配不表明已發(fā)生打印次序異常。因此,檢查單元140不將任何檢查結(jié)果輸出到歷史文件。然而,為了表示已取消打印任務的執(zhí)行,將包括在取消信息項中的任務名稱記錄在取消信息列表中(步驟912)。然后,檢查單元140僅將輸出次序列表111的對象信息項更新成下一歷史信息項(開始信息項),并且存儲比較完成信息項(步驟913、905和906)。此后,檢查單元140將輸出次序列表111的對象信息項與打印次序列表131的對象信息項進行比較(步驟902 )。
[0106]在當對象信息項相互比較時任務名稱不匹配(步驟902中結(jié)果為否)且不存在與包含在輸出次序列表111的對象信息項中的任務名稱有關(guān)的取消信息項(步驟907中結(jié)果為否)的情況下,接著,檢查單元140檢查包含在輸出次序列表111的對象信息項中的任務名稱是否存在于包括目前已獲得的檢查結(jié)果在內(nèi)的歷史文件中(步驟908)。
[0107]在包含在對象信息項中的任務名稱存在于包括檢查結(jié)果的歷史文件中的情況下,這表示,已經(jīng)執(zhí)行過具有該任務名稱的打印任務,并且已發(fā)生打印次序異常。此外,就輸出次序列表111中的執(zhí)行輸出處理的次序而言對象信息項的順序位置為應當按執(zhí)行發(fā)送處理的次序執(zhí)行具有該任務名稱的打印任務的發(fā)送處理的順序位置。因此,檢查單元140將如下的檢查結(jié)果(異常1)以及包含在輸出次序列表111的對象信息項中的任務名稱輸出到歷史文件:該檢查結(jié)果表示應當按執(zhí)行發(fā)送處理的次序執(zhí)行打印任務的發(fā)送處理的順序位置(步驟914)。然后,檢查單元140僅將輸出次序列表111的對象信息項更新成下一歷史信息項(開始信息項),并且存儲比較完成信息項(步驟915、905和906)。此后,檢查單元140將輸出次序列表111的對象信息項與打印次序列表131的對象信息項進行比較(步驟902)。
[0108]在當對象信息項相互比較時任務名稱不匹配(步驟902中結(jié)果為否)、與包含在輸出次序列表111的對象信息項中的任務名稱有關(guān)的取消信息項不存在(步驟907中結(jié)果為否)、以及包含在輸出次序列表111的對象信息項中的任務名稱不存在于包括目前已獲得的檢查結(jié)果在內(nèi)的歷史文件中(步驟908中結(jié)果為否)的情況下,接下來,檢查單元140檢查包含在打印次序列表131的對象信息項中的任務名稱是否存在于輸出次序列表111中尚未檢查的歷史信息項的范圍內(nèi)(步驟909)。
[0109]在包含在打印次序列表131的對象信息項中的任務名稱存在于輸出次序列表111中尚未檢查的歷史信息項的范圍內(nèi)的情況下,這表示,應當按執(zhí)行發(fā)送處理的次序執(zhí)行具有該任務名稱的打印任務的發(fā)送處理的順序位置晚于當前順序位置,并且已發(fā)生打印次序異常。因此,檢查單元140將如下的檢查結(jié)果(異常2)以及包含在打印次序列表131的對象信息項中的任務名稱輸出到歷史文件:該檢查結(jié)果表示在比應當按執(zhí)行發(fā)送處理的次序執(zhí)行打印任務的發(fā)送處理的順序位置早的順序位置處執(zhí)行打印任務的發(fā)送處理(步驟916)。然后,檢查單元140僅將打印次序列表131的對象信息項更新成下一歷史信息項(開始信息項),并且存儲比較完成信息項(步驟917、905和906)。此后,檢查單元140將打印次序列表131的對象信息項與輸出次序列表111的對象信息項進行比較(步驟902)。
[0110]在當對象信息項相互比較時任務名稱不匹配(步驟902中結(jié)果為否)、不存在與包含在輸出次序列表111的對象信息項中的任務名稱有關(guān)的取消信息項(步驟907中結(jié)果為否)、包含在輸出次序列表111的對象信息項中的任務名稱不存在于包括目前已獲得的檢查結(jié)果的歷史文件中(步驟908中結(jié)果為否)以及包含在打印次序列表131的對象信息項中的任務名稱不存在于輸出次序列表111中尚未檢查的歷史信息項的范圍內(nèi)(步驟909中結(jié)果為否)的情況下,接下來,檢查單元140檢查包含在打印次序列表131的對象信息項中的任務名稱是否存在于取消信息列表中(步驟910)。
[0111]在包含在對象信息項中的任務名稱存在于取消信息列表中的情況下,這表示,雖然提供了具有該任務名稱的打印任務的取消指令,但是在從存儲單元120移除打印數(shù)據(jù)之前,已經(jīng)執(zhí)行了該打印任務的發(fā)送處理。于是,已經(jīng)執(zhí)行了打印任務,從而已經(jīng)在與按提供打印指令的次序提供打印任務的打印指令的順序位置不同的按執(zhí)行打印處理的次序的順序位置處執(zhí)行打印任務的打印處理。因此,已經(jīng)發(fā)生了打印次序異常。因此,檢查單元140將如下的檢查結(jié)果(異常2)以及包含在打印次序列表131的對象信息項中的任務名稱輸出到歷史文件:該檢查結(jié)果表示在比應當按執(zhí)行發(fā)送處理的次序執(zhí)行打印任務的發(fā)送處理的順序位置早的順序位置處執(zhí)行打印任務的發(fā)送處理(步驟918)。然后,檢查單元140僅將打印次序列表131的對象信息項更新成下一歷史信息項(開始信息項),并且存儲比較完成信息項(步驟919、905和906)。此后,檢查單元140將打印次序列表131的對象信息項與輸出次序列表111的對象信息項進行比較(步驟902)。
[0112]在當對象信息項相互比較時任務名稱不匹配(步驟902中結(jié)果為否)、與包含在輸出次序列表111的對象信息項中的任務名稱有關(guān)的取消信息項不存在(步驟907中結(jié)果為否)、包含在輸出次序列表111的對象信息項中的任務名稱不存在于包括目前已經(jīng)獲得的檢查結(jié)果的歷史文件中(步驟908中結(jié)果為否)、包含在打印次序列表131的對象信息項中的任務名稱不存在于輸出次序列表111中尚未檢查的歷史信息項的范圍內(nèi)(步驟909中結(jié)果為否)以及包含在打印次序列表131的對象信息項中的任務名稱不存在于取消信息列表中(步驟910中結(jié)果為否)的情況下,極可能已經(jīng)發(fā)生不同于打印次序簡單改變的異常。檢查單元140通知打印服務器100的操作員已經(jīng)發(fā)生異常(步驟911)。發(fā)生異常的通知是通過例如利用圖3所示的顯示機構(gòu)100d顯示出錯消息或者通過利用圖3所示的聲音機構(gòu)100h輸出警告聲音來執(zhí)行的。此外,在異常極可能嚴重地影響圖像形成系統(tǒng)的情況下,可以執(zhí)行控制以強迫停止打印任務的執(zhí)行。
[0113]在本示例性實施例中,如上所述,假設存在四種類型的情況(參見圖9A和圖9B中所示的步驟907至步驟910)作為輸出次序列表111和打印次序列表131不匹配的情況。在這些情況中,在除了取消執(zhí)行打印任務的情況之外的情況下(參見步驟907),打印任務均按不正確的次序執(zhí)行。因此,檢查單元140執(zhí)行通知例如打印服務器100的操作員已發(fā)生打印次序異常的出錯處理。在上述實例中,作為出錯處理,檢查單元140執(zhí)行記錄如下信息項的處理:該信息項表示在包括檢查結(jié)果且能夠由例如打印服務器100的操作員查看的歷史文件中已發(fā)生打印次序異常。可選地,如同在步驟911中通知異常的情況,檢查單元140可以利用顯示機構(gòu)100d來執(zhí)行例如出錯消息的顯示或者利用聲音機構(gòu)100h來執(zhí)行警告聲音的輸出。
[0114]檢查單元140可以針對執(zhí)行出錯處理的情況的類型來執(zhí)行不同的出錯處理。例如,在比應當按執(zhí)行發(fā)送處理的次序執(zhí)行打印任務的發(fā)送處理的順序位置早的順序位置處執(zhí)行打印任務的發(fā)送處理的情況下(參見步驟909),可以執(zhí)行出錯消息的顯示或警告聲音的輸出。在其它情況下,不執(zhí)行出錯消息的顯示或警告聲音的輸出,可以僅執(zhí)行在歷史文件中記錄信息項。關(guān)于每種情況應用哪種出錯處理,可以接受由例如根據(jù)本示例性實施例的圖像形成系統(tǒng)的用戶選擇的出錯處理,并且可以設定所選的出錯處理。
[0115]注意的是,在檢查單元140的上述操作實例中,在步驟907中存在與包含在輸出次序列表ill的對象信息項中的任務名稱有關(guān)的取消信息項的情況下,將包含在取消信息項中的任務名稱記錄在取消信息列表中(參見步驟912)。然后,在步驟910中,檢查包含在打印次序列表131的對象信息項中的任務名稱是否存在于取消信息列表中,從而判斷是否已提供打印任務的取消指令。此處,不生成取消信息列表,而是在步驟910中檢查取消信息列表,可以檢查取消信息項是否存在于輸出次序列表111中尚未檢查的歷史信息項的范圍內(nèi)。然而,每當判斷是否存在取消信息項時,從包含在頂行中的歷史信息項起在記錄有大量歷史信息項的輸出次序列表111中按次序搜索取消信息項。這導致極多的處理重復,并且因此處理效率低。此外,因為打印服務器100所具有的存儲器的存儲容量有限,所以關(guān)于輸出次序列表111和打印次序列表131,基于下面描述的預定條件以文件為單位來移除登記的數(shù)據(jù)。
[0116]出于此原因,獨立于輸出次序列表111地生成取消信息列表,并且在步驟910中,在該取消信息列表中搜索任務名稱。這實現(xiàn)了處理效率的提高,并且使得甚至在從輸出次序列表111中移除取消信息項時也可以搜索取消信息項。此外,例如打印服務器100的操作員保存且能夠查看取消信息列表。因此,這使得例如操作員可以檢查已提供打印任務的取消指令。
[0117]接下來,將詳細地說明在步驟901中執(zhí)行的對象信息確定處理和在步驟920中執(zhí)行的文件管理處理。
[0118]圖10示出用于說明對象信息確定處理和文件管理處理的文件構(gòu)造的具體實例。
[0119]圖11是示出對象信息確定處理的程序的流程圖。
[0120]圖12是示出文件管理處理的程序的流程圖。
[0121]在圖10中,示出了第二輸出次序文件Fi2、第二打印次序文件Fo2、第三輸出次序文件Fi3、第三打印次序文件Fo3。此處,在圖10所示的實例中,第二輸出次序文件Fi2和第二打印次序文件Fo2是在如下情況下的文件:當上次啟動打印服務器100時,在對文件執(zhí)行檢查處理期間且整個文件的檢查尚未完成時打印服務器100就被關(guān)閉。在圖10所示的實例中,已經(jīng)執(zhí)行到198行(行號為198)的打印任務X為止的打印任務的檢查,并且利用比較完成信息項確定已經(jīng)完成到198行的打印任務X為止的打印任務的比較。此外,第三輸出次序文件Fi3和第三打印次序文件Fo3是打印服務器100重新啟動之后新生成的文件。
[0122]首先,將說明對象信息確定處理。
[0123]如圖11所示,在對象信息確定處理中,首先,搜索最早的文件(輸出次序文件和打印次序文件)(步驟1101)。
[0124]在圖10所示的實例中,例如,第二輸出次序文件Fi2和第二打印次序文件Fo2被選擇為最早的文件。注意的是,當只有一個文件(只有一個輸出次序文件且只有一個打印次序文件)存在時,該一個文件被認為是最早的文件。
[0125]判斷是否利用比較完成信息項確定了已經(jīng)在步驟1101中搜索到的每個最早的文件的行(歷史信息項)(步驟1102)。
[0126]然后,當利用比較完成信息項確定了文件的行(步驟1102中結(jié)果為是)時,位于利用比較完成信息項確定的行的下一行中的歷史信息項被確定為對象信息項(步驟1103)。然后,如參考圖9A的步驟902所述,執(zhí)行包含在已經(jīng)由對象信息確定處理確定的對象信息項中的任務名稱的比較。[0127]在圖10所示的實例中,利用比較完成信息項,確定已經(jīng)完成到第二輸出次序文件Fi2的198行中的打印任務X為止的打印任務的比較,并且已經(jīng)完成到第二打印次序文件Fo2的198行中的打印任務X為止的打印任務的比較。因此,對第二輸出次序文件Fi2的199行和其后的行中的歷史信息項(打印任務B和其后的打印任務)和第二打印次序文件Fo2的199行和其后的行中的歷史信息項(打印任務C和其后的打印任務)執(zhí)行檢查處理。
[0128]注意的是,圖10中所示的實例中,在打印服務器100重新啟動之后執(zhí)行的檢查處理中,檢測到第二輸出次序文件Fi2中的打印任務B和C的次序和第二打印次序文件Fo2中的打印任務C和B的次序(即,打印任務B和打印任務C的執(zhí)行次序)彼此不同。
[0129]然后,在完成第二輸出次序文件Fi2和第二打印次序文件Fo2中的歷史信息項的檢查之后,對第三輸出次序文件Fi3的第一行中的打印任務F和第三打印次序文件Fo3的第一行中的打印任務F執(zhí)行檢查處理。
[0130]相反,當利用比較完成信息項沒有確定任一文件的行(步驟1102中結(jié)果為否)時,文件的第一行中的歷史信息項被確定為對象信息項(步驟1104)。然后,如參考圖9A的步驟902所述,執(zhí)行包含在由對象信息確定處理確定的對象信息項中的任務名稱的比較。
[0131]注意的是,這種情況是例如如下情況:當之前操作打印服務器100時已經(jīng)完成對所有歷史信息項的檢查處理,打印服務器100被正常關(guān)閉,以及之后啟動打印服務器100。
[0132]接下來,將詳細說明文件管理處理。
[0133]在檢查處理中確定是否能夠更新文件而隨后沒有文件被更新的情況下,判斷是否已經(jīng)完成對包含在作為對象的文件中的所有行的歷史信息項的比較(步驟1201)。
[0134]注意的是,在如同本示例性實施例將歷史信息項之中的開始信息項用作比較時的對象信息項的情況下,處理在如下假設下進行:已經(jīng)對作為與該開始信息項對應的結(jié)束信息項的歷史信息項所寫入的行完成比較。
[0135]然后,當完成對包含在文件中的所有行的歷史信息項的比較時(步驟1201中結(jié)果為是),執(zhí)行文件的移除(步驟1202)。
[0136]相反,當尚未完成對包含在文件中的所有行的歷史信息項的比較時(步驟1201中結(jié)果為否),在步驟1201中,再次判斷是否已經(jīng)完成對包含在作為對象的文件中的所有行的歷史信息項的比較。
[0137]注意的是,在圖10所示的實例中,已經(jīng)完成對第二輸出次序文件Fi2和第二打印次序文件Fo2的所有行中的歷史信息項的比較,因而,分別將第二輸出次序文件Fi2和第二打印次序文件Fo2移除。
[0138]此外,由于第二輸出次序文件Fi2和第二打印次序文件Fo2的移除,因此在對象信息確定處理中作為搜索對象的最早文件是第三輸出次序文件Fi3和第三打印次序文件Fo30
[0139]如上所述,在本示例性實施例中,在對象信息確定處理中,基于文件生成的次序和比較完成信息項執(zhí)行歷史信息項的檢查。對最早的文件執(zhí)行歷史信息項的檢查,并且基于比較完成信息項對尚未比較的歷史信息項執(zhí)行歷史信息項的檢查。因此,例如,即使在打印服務器100由于某種原因關(guān)閉然后打印服務器100重新啟動的情況下,仍能夠?qū)⒁呀?jīng)過檢查的歷史信息項與尚未檢查的歷史信息項彼此區(qū)分。結(jié)果,在根據(jù)本示例性實施例的打印服務器100中,能夠完全檢測出打印次序的異常。[0140]此外,因為基于比較完成信息項執(zhí)行歷史信息項的檢查,所以能夠跳過已經(jīng)過比較的歷史信息項所寫入的行,并且能夠以從尚未比較的歷史信息項開始檢查的方式來執(zhí)行歷史信息項的檢查。因此,例如,與從文件的第一行中的歷史信息項簡單地按次序順序地比較歷史信息項的情況相比,能夠有效地檢查歷史信息項。而且,因為例如在打印服務器100重新啟動之前已經(jīng)檢測到處理執(zhí)行次序的異常,并且在打印服務器100重新啟動之后再次檢測到異常,所以能夠防止冗余地執(zhí)行已經(jīng)執(zhí)行的出錯處理的情況。
[0141]此外,按從最早的行(具有最小行號的行)到最新的行(具有最大行號的行)的時間順序?qū)π羞M行不正確打印次序的搜索,使得可以迅速地檢測出在較早的時間出現(xiàn)的打印次序的異常,并且通知用戶發(fā)生錯誤。通常,在對實際上已經(jīng)打印的打印介質(zhì)的打印次序搜索打印次序的不正確部分的情況下,打印次序的第一個不正確部分的辨識使搜索任務更容易。因此,需要首先辨識打印次序的第一個異常部分。因此,可以迅速地檢測到打印次序中的較早時間發(fā)生的異常,并且可以通知用戶發(fā)生錯誤。
[0142]更具體地,例如,在當需要關(guān)閉打印服務器100時又重新啟動打印服務器100的情況下,假設大負荷施加于打印服務器100的處理上。在這種情況下,認為在打印服務器100重新啟動之前,有較大可能頻繁發(fā)生執(zhí)行輸出處理的次序和執(zhí)行發(fā)送處理的次序彼此不同的現(xiàn)象。因此,在按從最新的行到最早的行的時間順序檢測處理執(zhí)行次序的異常的情況下,需要一定的時間來檢測打印次序的第一個異常部分。為此,在本示例性實施例的檢查處理中,使用如下構(gòu)造:按從最早的行到最新的行的時間順序執(zhí)行比較。
[0143]另外,利用文件管理處理移除包含已經(jīng)過檢查的歷史信息項的文件,由此提供了有規(guī)律地移除一定量的歷史信息項的機會,并且能夠按處理執(zhí)行次序有效地執(zhí)行異常的檢測。此外,利用文件管理處理移除包含已經(jīng)過檢查的歷史信息項的文件,由此還實現(xiàn)了存儲器的有限存儲區(qū)域的有效利用。
[0144]注意的是,在本示例性實施例中,例如,如圖7A和圖7B所示,關(guān)于輸出處理,在利用打印服務器100的存儲單元120完成一個打印任務的接收之后,開始向存儲單元120發(fā)送下一打印任務。然而,本發(fā)明不限于此。
[0145]例如,可以使用如下構(gòu)造:多個打印任務共同輸出到存儲單元120。換言之,關(guān)于輸出處理,輸出處理可能執(zhí)行成使得在利用存儲單元120完成一個打印任務的接收之前,開始向存儲單元120發(fā)送另一打印任務。然而,在這種情況下,關(guān)于從存儲單元120向圖像形成裝置200發(fā)送打印數(shù)據(jù)的發(fā)送處理,容易出現(xiàn)上述執(zhí)行輸出處理的次序和執(zhí)行發(fā)送處理的次序彼此不同的現(xiàn)象。
[0146]然而,在根據(jù)本示例性實施例的系統(tǒng)中,使用如下構(gòu)造:在執(zhí)行輸出處理的次序和執(zhí)行發(fā)送處理的次序彼此不同的情況下執(zhí)行出錯處理。因此,能夠執(zhí)行諸如通知用戶打印介質(zhì)的打印次序出現(xiàn)異常的處理等處理。因此,能夠在使用輸出處理的圖像形成系統(tǒng)中提供特別有效的系統(tǒng)。
[0147]盡管已經(jīng)描述了本示例性實施例,本發(fā)明的技術(shù)范圍不限于前面的示例性實施例中所描述的范圍。從權(quán)利要求書的描述中顯而易見的是,可以對前面的示例性實施例進行各種變型和改進,并且這樣的變型和改進也落在本發(fā)明的技術(shù)范圍之內(nèi)。
[0148]出于示例和說明的目的提供了本發(fā)明的示例性實施例的上述說明。其意圖不在于窮舉或?qū)⒈景l(fā)明限制為所公開的確切形式。顯然,對于本【技術(shù)領域】的技術(shù)人員可以進行許多修改和變型。選擇和說明本示例性實施例是為了更好地解釋本發(fā)明的原理及其實際應用,因此使得本【技術(shù)領域】的其他人能夠為實現(xiàn)各種實施例理解本發(fā)明和各種適合于所構(gòu)想的特定應用的修改。目的在于通過所附權(quán)利要求書及其等同內(nèi)容限定本發(fā)明的范圍。
【權(quán)利要求】
1.一種控制裝置,包括:輸出單元,其獲取要在用于形成圖像的圖像形成單元的圖像形成處理中使用的圖像形成信息項,并且執(zhí)行按次序輸出所述圖像形成信息項的輸出處理,以便使暫時地存儲圖像形成信息項的存儲單元存儲所述圖像形成信息項;發(fā)送單元,其從所述存儲單元獲取所述圖像形成信息項,并且執(zhí)行將所述圖像形成信息項發(fā)送至所述圖像形成單元的發(fā)送處理;輸出歷史生成單元,其生成輸出歷史,在所述輸出歷史中記錄有執(zhí)行構(gòu)成所述輸出處理的單位處理的次序;發(fā)送歷史生成單元,其生成發(fā)送歷史,在所述發(fā)送歷史中記錄有執(zhí)行構(gòu)成所述發(fā)送處理的單位處理的次序;檢查單元,其檢查記錄在所述輸出歷史中的執(zhí)行單位處理的次序和記錄在所述發(fā)送歷史中的執(zhí)行單位處理的次序是否匹配;以及確定信息生成單元,其生成確定信息項,所述確定信息項用于確定所述單位處理之中的在所述輸出歷史中已經(jīng)由所述檢查單元檢查過的單位處理和所述單位處理之中的在所述發(fā)送歷史中已經(jīng)由所述檢查單元檢查過的單位處理。
2.根據(jù)權(quán)利要求1所述的控制裝置,其中,所述檢查單元從順序位置與利用所述確定信息項確定的單位處理的順序位置相符的單位處理起按執(zhí)行單位處理的次序依次檢查單位處理。
3.根據(jù)權(quán)利要求1或2所述的控制裝置,還包括分別地生成輸出歷史文件和發(fā)送歷史文件的文件生成單元,多個輸出歷史以基于預定條件的單位記錄在所述輸出歷史文件中,多個發(fā)送歷史以基于預定條件的單位記錄在所述發(fā)送歷史文件中,其中,所述檢查單元從記錄在已經(jīng)生成的所述輸出歷史文件和所述發(fā)送歷史文件的最早文件中的輸出歷史和發(fā)送歷史起按優(yōu)先次序檢查所述輸出歷史和所述發(fā)送歷史。
4.根據(jù)權(quán)利要求3所述的控制裝置,還包括移除單元,所述移除單元移除在所述文件生成單元生成的所述輸出歷史文件和所述發(fā)送歷史文件之中已經(jīng)由所述檢查單元完成所有單位處理的檢查的文件。
5.一種圖像形成系統(tǒng),包括:圖像形成單元,其形成圖像;輸出單元,其獲取要在所述圖像形成單元的圖像形成處理中使用的圖像形成信息項,并且執(zhí)行按次序輸出所述圖像形成信息項的輸出處理,以便使暫時地存儲圖像形成信息項的存儲單元存儲所述圖像形成信息項;發(fā)送單元,其從所述存儲單元獲取所述圖像形成信息項,并且執(zhí)行將所述圖像形成信息項發(fā)送至所述圖像形成單元的發(fā)送處理;輸出歷史生成單元,其生成輸出歷史,在所述輸出歷史中記錄有執(zhí)行構(gòu)成所述輸出處理的單位處理的次序;發(fā)送歷史生成單元,其生成發(fā)送歷史,在所述發(fā)送歷史中記錄有執(zhí)行構(gòu)成所述發(fā)送處理的單位處理的次序;檢查單元,其檢查記錄在所述輸出歷史中的執(zhí)行單位處理的次序和記錄在所述發(fā)送歷史中的執(zhí)行單位處理 的次序是否匹配;以及確定信息生成單元,其生成確定信息項,所述確定信息項用于確定所述單位處理之中的在所述輸出歷史中已經(jīng)由所述檢查單元檢查過的單位處理和所述單位處理之中的在所述發(fā)送歷史中已經(jīng)由所述檢 查單元檢查過的單位處理。
【文檔編號】G06F3/12GK103645866SQ201310553336
【公開日】2014年3月19日 申請日期:2013年11月8日 優(yōu)先權(quán)日:2012年11月28日
【發(fā)明者】松下一清 申請人:富士施樂株式會社