打印系统及其控制方法和打印方法、主设备及所用打印机的制作方法

文档序号:6443958阅读:104来源:国知局
专利名称:打印系统及其控制方法和打印方法、主设备及所用打印机的制作方法
技术领域
本发明涉及一种打印系统,该打印系统通过使用双向接口连接打印机和包括用于错误恢复的页存储器的主设备。
背景技术
在包括主设备和打印机的打印系统中,为了从错误例如卡纸中恢复,通过向打印机提供页存储器,从而当错误例如卡纸发生时,打印页存储器中存储的数据的方法通常用于错误恢复。
在这种错误恢复方法中,除非打印机包括具有能够存储至少一页的打印数据的存储能力的存储器,否则错误恢复是不可能的。此外,为了使打印机在打印机引擎的最大打印速度下打印,必须并行地进行多页纸张的输送、打印和排出。因而,除非打印机包括具有能够存储大约3到6页的打印数据的存储能力的存储器,否则错误恢复是不可能的。因而,尤其是在高分辨率的或者用于大的数据容量的彩色打印机的情况下,需要海量存储器,用于存储一页的打印数据,因而引起增加打印机的成本的问题。
为了解决这个问题,其中借助于提供具有用于错误恢复的页存储器的主设备把打印机的存储容量减到最小的技术是公知的(例如见日本专利公开第8-258375和9-282114号)。
不过,这些技术具有使打印机性能变劣的问题,这是因为,在直到一个打印作业完成的期间,打印机都被占据,从而阻止被另一个打印作业中断,因而,打印机必须被连续地占用,直到打印作业的最后页被排出,打印操作正常地结束。此外,另一个打印作业的页不能被连续地打印,因而引起在作业之间的停机时间。

发明内容
为了解决上述问题,本发明把作业之间的停机时间减到最小。
按照本发明的一个方面,提供一种打印系统,其包括用于错误恢复的页存储器的至少一个主设备;打印机;以及用于连接主设备和打印机的双向接口,其中主设备包括命令装置,用于当打印作业开始时,命令打印机改变到被占用状态,并且当打印作业的打印数据传送完成时,命令打印机改变为空出状态,而不等待来自打印机的打印完成通知;以及打印机包括用于响应来自主设备的指令使打印机改变为占用状态和空出状态之一的装置。
按照本发明的另一个方面,提供一种用于控制打印系统的方法。该打印系统包括具有用于错误恢复的页存储器的至少一个主设备、打印机以及用于连接主设备和打印机的双向接口,方法包括以下步骤在主设备开始打印作业之前命令打印机改变为占用状态;在完成打印作业的打印数据传送之后,命令打印机改变为空出状态而不等待来自打印机的打印完成通知;以及响应来自主设备的指令,使打印机改变为占用状态和空出状态之一。
按照本发明的另一个方面,提供一种打印方法,该方法包括以下步骤在向打印机传送打印作业数据之前向打印机传送占用请求;当完成打印作业的数据传送时,向打印机发送空出请求;以及在向打印机发送空出请求之后,监视打印机的状态;以及当检测到错误时,在向打印机传送打印作业数据之前,向打印机传送占用请求。
按照本发明的另一个方面,提供一种程序,用于执行上述的打印方法。
按照本发明的另一个方面,提供一种主设备,其包括第一装置,用于在向打印机传送打印作业数据之前向打印机发送占用请求;第二装置,用于当第一装置完成打印作业数据传送时向打印机发送空出请求;以及第三装置,用于在向打印机发送空出请求之后监视打印机的状态;并且当检测到错误时,在向打印机传送打印作业数据之前传送占用请求。
按照本发明的另一个方面,提供一种打印方法,包括以下步骤当收到占用请求时确定是否检测到错误作业;当检测到错误作业时,则确定发送占用请求的作业是否和错误作业匹配;以及当发送占用请求的作业和错误作业匹配时,发送正常响应,以及当发送占用请求的作业和错误作业不匹配时发送错误响应。
按照本发明的另一个方面,提供一种程序,其允许计算机执行上述的打印方法。
按照本发明的另一个方面,提供一种打印机,其包括用于当收到占用请求时确定是否检测到错误作业的装置;用于当检测到错误作业时,确定发送占用请求的作业是否和错误作业匹配的装置;以及用于当发送占用请求的作业和错误作业匹配时,发送正常响应,当发送占用请求的作业和错误作业不匹配时发送错误响应的装置。
按照本发明的另一个方面,提供一种打印机,其包括第一装置,其响应来自第一作业的占用请求,把第一作业设置为打印机占用状态,并响应来自第一作业的空出请求,撤销第一作业的占用状态;以及第二装置,其在由第二作业占用打印机的期间,响应第一作业中的错误撤销第二作业的打印机占用状态。
按照本发明的另一个方面提供一种打印方法,所述方法包括响应来自第一作业的打印机占用请求,把第一作业设置为打印机占用状态;响应来自第一作业的空出请求,撤销第一作业的占用状态;以及在由第二作业占用打印机的期间,响应第一作业中的错误,撤销第二作业的占用状态。
按照本发明的另一个方面,提供一种程序,其允许计算机执行上述打印方法的各个步骤。
按照本发明的另一个方面,提供一种信息处理设备,其包括第一命令装置,用于当打印作业开始时,命令打印机改变为被占用状态,在打印作业的打印数据传送完成之后,命令打印机改变为空出状态,而不等待来自打印机的打印完成通知;以及第二命令装置,用于在由第一命令装置把打印机改变为空出状态之后,进行状态监视,并当检测到错误时命令打印机改变为被占用状态。
按照本发明的另一个方面,提供一种打印方法,所述方法包括当开始打印作业时命令打印机改变到占用状态;在完成打印作业的打印数据的传输之后命令打印机改变到空出状态而不等待来自打印机的打印完成通知;在打印机改变为空出状态之后进行状态监视;以及,当检测到错误时命令打印机改变为占用状态。
按照本发明的另一个方面,提供一种程序,其允许计算机执行上述的打印方法。
由下面结合附图进行的优选实施方式的说明可以清楚地看出本发明的其它特征和优点。


图1是表示在本发明的第一实施方式中的主设备的配置的方框图;图2是表示在第一实施方式中的打印机的配置的示意的方框图;图3是表示在第一实施方式中作业管理信息的数据结构的例子的方框图;图4是表示在第一实施方式中的语言监视器的处理的流程图;图5是表示图4所示的数据传输处理的详细的流程图;图6是表示状态监视处理的详细流程图;图7是表示图1所示的打印机中的指令处理流程图;图8是表示图1所示的打印机的打印的流程图;图9是表示在本发明的第二实施方式中的语言监视器的处理的流程图;图10是表示在第二实施方式中的打印机的打印的流程图;图11表示当发生错误时由作业占用状态到作业空出状态的改变。
具体实施例方式
下面参照

本发明的示例性实施方式。下面的实施方式说明一种方法,其中,在通过借助于双向接口连接多个主设备和打印机而形成的系统中,在从主设备向打印机发送的打印作业之间的停机时间被减到最小。
第一实施方式图1是表示在本发明的第一实施方式中主设备的配置的方框图。参见图1,计算机1(或计算机11),例如个人计算机或工作站,作为主设备,并具有硬件(未示出)例如中央处理单元(CPU)、硬盘、软盘驱动器、键盘、监视器和网络接口。操作系统2(或操作系统12)管理计算机1(或计算机11)的硬件和例如应用程序的软件模块、打印机驱动器、语言监视器和网络端口驱动器。
应用程序3(或应用程序13)例如是软件,例如文字处理软件,其响应用户的指令进行文件准备或打印。打印机驱动器(driver)4(或打印机驱动器14)通过操作系统2(或操作系统12)接收应用程序3发送的打印指令,并把打印指令转换成可由语言监视器5(或语言监视器15)和打印机7编译的打印机指令,这在后面进行说明。语言监视器5(或语言监视器15)接收从打印机驱动器4(或打印机驱动器14)输出的打印机指令,并通过网络端口驱动器6(或网络端口驱动器16)把打印指令传送到打印机7,这在后面进行说明。
在第一实施方式中,根据从应用程序3(或应用程序13)发出的打印指令,打印机驱动器4(或打印机驱动器14)把数据转换成压缩的图像数据,并将压缩的图像数据和页开始指令以及图像数据结束指令一起输出,所述页开始指令用于指定纸大小、图像数据的行长度、以及图像数据的行数,所述图像数据结束指令表示图像数据的结束。
在计算机1(或计算机11)的存储器中定义页缓冲器,其细节将在后面说明,所述页缓冲器存储来自打印机驱动器4(或打印机驱动器14)的压缩的图像数据。
网络端口驱动器6(或网络端口驱动器16)通过网络接口向打印机7发送由语言监视器5(或语言监视器15)输出的打印机指令。此外,当接收到来自打印机7的状态时,网络端口驱动器6(或16)输出该状态到语言监视器5(或语言监视器15)。打印机7接收从网络端口驱动器6(或网络端口驱动器16)输出的打印机指令,并按照打印指令进行打印。
图2是表示在第一实施方式中的打印机7的配置的示意方框图。在第一实施方式中,电子照像激光束打印机被描述为打印机7。不过,本发明不仅可以应用于电子照相激光束打印机,而且能够用于喷墨打印机。
参见图2,打印机7包括网络接口21,其控制通过网络和计算机1(或11)的数据通信。例如,网络接口21接收来自计算机1(或11)的上述的打印机指令,并向计算机1(或11)发送打印机状态。FIFO(先进先出)存储器22存储由网络接口21接收的压缩的图像数据。译码器电路23从FIFO存储器22读出压缩的图像数据,将读出的图像数据译码,并向打印机引擎24输出译码的图像数据(后面说明)。响应来自控制电路25(后面说明)的指令,打印机引擎24按照由译码电路23输出的图像数据进行打印。控制电路25例如由单芯片的CPU构成,用于控制网络接口21、FIFO存储器22、译码电路23和打印机引擎24。
下面说明由上述的计算机1和11以及打印机7构成的打印系统的打印操作的概况。
当操作者使用计算机1内的应用程序3命令打印机7打印文件时,通过操作系统2从应用程序3向打印机驱动器4发送打印指令。这允许打印机驱动器4根据应用程序3发出的打印指令进行转换并压缩成压缩的图像数据(位图数据),并和页开始指令以及图像数据结束指令一道输出,所述页开始指令用于指定纸大小、图像数据的行长度、以及图像数据的行数,所述图像数据结束指令表示图像数据的结束。
在从打印机驱动器4输出打印指令并且操作系统2通知语言监视器5作业开始之后,操作系统2向语言监视器5按顺序发送由打印机驱动器4输出的打印机指令。当语言监视器5开始打印作业时,其通过网络端口驱动器6向打印机7发送占用请求指令。
当这使得语言监视器5成功地占用打印机7时,从操作系统2接收的打印机指令通过网络端口驱动器6按顺序传递给打印机7。在向打印机7传递图像数据指令之前,语言监视器5传递状态请求指令,获得打印机7的状态,确认可以发送图像数据指令。在语言监视器5完成一页的打印机指令的传递之后,语言监视器5发送打印请求指令。
此外,当在打印机7中的控制电路25通过网络接口21收到打印请求指令时,控制电路25命令打印引擎24开始打印。这使得打印引擎24输送纸张,并且当所述纸到达一个预定位置时请求输出图像数据。响应图像数据输出的请求,译码电路23从FIFO存储器22中读出压缩的图像数据,并向打印引擎24输出借助于译码获得的原始图像数据。此时,从FIFO存储器22读出的图像数据被从FIFO存储器22中删除。
此后,当语言监视器5从打印机7获得表示打印已经正常完成的状态时,在打印机7中的相应的页存储器被释放。当语言监视器5从打印机7获得表示打印尚未正常完成的状态时,语言监视器5则尝试从打印尚未正常完成的页开始再次发送。
在语言监视器5以上述方式完成一个打印作业中的所有页的打印机指令的传送之后,语言监视器5不等待纸的完全排出便发送一个空出指令。此外,在语言监视器5发出空出指令之后,语言监视器5继续获得打印机7的状态。当获得的状态表示页的打印已经正常完成时,在打印机7中的相应的页存储器被释放。当语言监视器5检测到错误时,语言监视器5便再次发送占用请求指令,并尝试恢复错误的页。
下面参照图3说明由语言监视器5管理的作业管理信息的数据结构。
图3是表示在第一实施方式中作业管理信息的数据结构的例子。如图3所示,作业队列数据(作业队列)301表示作业管理信息310的开始地址。作业管理信息310包括形成链表的下一个作业数据(下一个作业)。当由操作系统2报告作业开始时,则下一个作业数据(下一个作业)311在链表的末尾链接新的作业管理信息。
当前作业数据(当前作业)302表示尚未被传递的作业管理信息的开始地址。当一个作业中的所有页的打印机指令传送完成时,根据下一个作业(下一个作业)数据311,当前作业数据(当前作业)302被更新,从而表示下一个作业管理信息。
作业管理信息310包括用于识别作业的作业编号数据(作业号)313。响应占用请求指令由打印机7报告的编号被存储在作业编号数据(作业编号)313中。作业管理信息310还包括表示由作业管理信息310管理的页管理信息320的开始地址的页队列数据(页队列)312。页管理信息320包括形成链表的下一页数据(下一页)321。当一页的图像数据从操作系统2被发送时,下一页数据(下一页)321便在链表的末尾链接新的页管理信息。
当前页数据(当前页)303表示尚未完成发送的页管理信息的开始地址。当一页的所有的打印机指令发送完成时,当前页数据(当前页)303被更新,以便根据这个页管理信息的下一页数据(下一页)表示下一页管理信息的地址。
页管理信息320还包括用于识别页的页编号数据(页编号)322。从在占用请求时间确定的基准页编号的下一个开始的顺序号被设置在页编号数据(页编号)322中。页管理信息320包括缓冲器数据(缓冲器)323,其表示由页管理信息320管理的页缓冲器数据(页缓冲器)330的开始地址。在页缓冲器数据(页缓冲器)330中,设置用于形成页的连续的打印机指令。
当前指令数据(当前指令)304表示其传送尚未完成的打印机指令的开始地址。当一个打印机指令被发送时,当前指令数据(当前指令)304被更新,以便表示下一个打印机指令。
当语言监视器5从打印机7收到表示由当前页数据(当前页)303表示的页的打印已经正常完成的状态时,语言监视器5便释放页缓冲器数据(页缓冲器)330和与该页相关的页管理信息320,并更新在作业管理信息310中的页队列数据(页队列)312,以便表示下一个页管理信息。随后,由当前指令数据(当前指令)304表示的所有的打印机指令,以及由当前作业数据(当前作业)302表示的作业管理信息310内的页队列数据(页队列)312表示的所有页的打印都正常结束,因而允许所有的页管理信息320被释放。此后,用于这个作业的作业管理信息310被释放,并且当前作业数据(当前作业)302被更新,以便表示下一个作业管理信息的地址。
下面参照图4说明在第一实施方式中的语言监视器5的处理的细节。
图4是表示在第一实施方式中的语言监视器5的处理的流程图。在步骤S1,语言监视器5进行状态监视处理(后面参照图6说明),获得打印机7的状态。在步骤S2,通过参考在步骤S1获得的状态,语言监视器5确定是否发生错误。当错误发生时,语言监视器5进行步骤S3,设置所有的作业和每一页都处于不传送状态。具体地说,在图3所示的当前作业数据(当前作业)302中,设置被存储在作业队列数据(作业队列)301中的作业管理信息310的地址。在当前页数据(当前页)303中,设置在作业管理信息310的页队列数据(页队列)312中存储的页管理信息320的地址。此外,在当前指令数据(当前指令)304中,设置在页管理信息320的缓冲器数据(缓冲器)323中存储的页缓冲器的开始地址。当在步骤S2确定未发生错误时,语言监视器5的处理进入步骤S4。
在步骤S4,语言监视器5确定是否检测到不被传送的作业。如果没有检测到不被传送的作业,则语言监视器5返回S1,并等待操作系统2报告作业开始。如果检测到不被传送的作业,则语言监视器5进入步骤S5,并发送占用请求指令。当发送占用请求指令时,语言监视器5报告作为参数的作业管理信息310的作业编号。作业编号数据(作业编号)313的初始值是0。因而,当最初这个作业占用打印机7时,语言监视器5报告0。
在步骤S6,语言监视器5收到对占用请求指令的响应。如果收到的响应不是正常的响应,则表示打印机7的占用失败,语言监视器5的处理返回步骤S1,并尝试占用打印机7。如果收到的响应是正常响应,则报告的作业编号被记录在作业编号数据(作业编号)313中并被存储在当前占用打印机7的作业的作业编号(未示出)中。在步骤S7,语言监视器5进行状态监视处理。
在步骤S8,通过参考在步骤S7获得的状态,语言监视器5确定是否发生错误。如果未发生错误,则语言监视器5进入步骤S9,并确定打印机7是否正在打印。如果打印机7未正在打印,则语言监视器5进入步骤S10,并设置0作为传送页的编号。在步骤S11,语言监视器5传送数据清除指令。此时,设置0作为页编号的初始值。
在步骤S9,如果打印机7正在打印,则语言监视器5进入步骤S12。在步骤S12,通过参考在步骤S7获得的状态,语言监视器5设置打印开始页编号作为传送页编号。在步骤S13,语言监视器5进行数据传送处理,这在后面参照图5进行说明。当在处理中的作业中的所有页的传送完成时,这是正常情况,或者检测到错误时,数据传送处理结束,语言监视器5进入步骤S14。在步骤S14,通过参考在步骤S13获得的最近状态,语言监视器5确定是否发生错误。如果没有发生错误,则处理中的作业中的所有页的传送结束。因而,语言监视器5进入步骤S15,并传送空出指令。此时,清除当前占用打印机7的作业的作业编号。然后,语言监视器5的处理返回步骤S1。
此后,执行由步骤S1,S2和S4形成的循环。当在作业中的所有页的打印正常结束时,在步骤S1中的状态监视处理中执行作业结束处理。在作业中的所有页的打印正常结束之前,当发生错误时,语言监视器5进行步骤S3-S5,占用打印机7,并从发生错误的页重试数据传送。
在作业中的所有页的打印正常完成之前向语言监视器5报告下一个作业的开始时,语言监视器5进行到步骤S5,并占用打印机7用于上述的处理。如果不发生错误,则在步骤S13,语言监视器5进行新的作业中的数据传送。
此后,在步骤S8或S14,如果错误发生,则语言监视器5处理步骤S16,并设置作业和页为不被传送状态。在步骤S17,通过参考获得的最近的状态,语言监视器5确定在打印机状态中的开始作业编号是否和当前占用打印机7的作业的作业编号匹配。如果两个编号彼此匹配,则语言监视器5进入步骤S10,并从发生错误的页重试数据传送。
在另一方面,如果两个编号不匹配,即当新的作业在结束前一个作业之前开始,并且在前一个作业的页打印中发生错误时,语言监视器5则进入步骤S15,并在返回步骤S1之前发送空出指令。
此后,语言监视器5进入步骤S1,并尝试占用打印机7。如后所述,如果在打印机7中的开始作业是由相应的主设备发出的作业,则立即允许占用打印机7,并从发生错误的页重试数据传送。如果不是,则占用被拒绝,直到在打印机7中的开始作业在进行错误恢复之后正常完成。
图5是表示图4所示的步骤S13中的数据传输处理的详细的流程图。在步骤S30中,确定是否检测到要被传输的打印数据。如果打印数据未被检测到,则处理立即结束。如果打印数据已被检测到,则处理进入步骤S31,使传送页编号加1,并将其设置在页管理信息320中的页编号数据(页编号)322中。在步骤S32,进行状态监视处理。在步骤S33,确定是否发生错误。如果发生错误,则状态监视处理立即结束,如果未发生错误,则处理进入步骤S34,并通过参考在步骤S32获得的打印机状态,确定是否可以发送打印数据。
如果在步骤S34确定打印数据可被发送,则处理进入步骤S37,并发送打印数据。在步骤S38,确定是否对一页的数据发送结束。如果对一页的数据发送尚未结束,则处理返回步骤S32,并继续发送当前发送页的数据。如果对一页的数据发送结束,则处理进入步骤S9,并确定是否发出关于这一页的打印请求。如果已经发出打印请求,则处理返回步骤S30,并进行下一页的数据发送。如果打印请求没有发出,则处理进入步骤S40。在步骤S40,发送打印请求指令,处理返回步骤S30。
如果在步骤S34确定打印数据不能被发送,则处理进入步骤S35,并确定是否已经发出对这一页的打印请求。如果确定对这一页的打印请求已经发出,则处理返回步骤S32,并且语言监视器5等待打印数据成为可发送的。如果确定对这一页的打印请求尚未发出,则处理进入步骤S36。在步骤S36,通过参考在步骤S32获得的打印机状态,确定前一页的图像数据的输出是否完成。如果在步骤S36确定前一页图像数据的输出未完成,则语言监视器5返回步骤S32,并等待打印数据成为可发送的,因为前一页的图像数据的一部分存储在打印机7中的FIFO存储器22中。
如果在步骤S36确定前一页的图像数据的输出已经完成,则处理进入步骤S41,因为在打印机7中的FIFO存储器22根本没有存储前一页的图像数据,因而不可能具有空出的存储容量。在步骤S41,发送打印请求指令,处理进入步骤S32。
图6是表示状态监视处理的详细流程图。在步骤S51,向打印机7发送状态请求指令,并确定是否发生错误。如果发生错误,则立即结束状态监视处理。如果未发生错误,则状态监视处理进入步骤S53,并确定是否检测到完成的打印页。
具体地说,为了确定是否检测到完成的打印页,状态监视处理比较收到的状态中的完成的打印页的页编号和页管理信息320的页编号数据(页编号)322。如果检测到相等的页编号,则确定该页的打印已完成。如果没有检测到相等的页编号,则状态监视处理立即结束。如果检测到相等的页编号,则状态监视处理进入步骤S56,并删除相应于该页的页缓冲器数据(页缓冲器)330和页管理信息320。
在步骤S57,确定已完成打印的页所属的作业的所有页的打印是否完成。如果打印尚未完成,则状态监视处理立即结束。如果打印已完成,则状态监视处理进入步骤S58,并删除关于该作业的作业管理信息310,状态监视处理结束。
下面参照图7说明由打印机7中的控制电路25执行的指令处理,打印机7接收来自上述的语言监视器5的打印机指令。
图7是表示打印机7中的指令处理流程图。在步骤S101,处理等待网络接口21接收打印机指令。当网络接口21收到打印机指令时,处理进入步骤S102,并确定收到的指令是否被识别为占用请求指令。如果收到的指令被识别为占用请求指令,则处理进入步骤S121,并确定打印机7是否当前被占用。如果打印机7被占用,则处理进入步骤S126,并在返回步骤S101之前发送错误响应。
如果打印机7当前未被占用,则处理进入步骤S122,确定是否检测到错误,即,是否检测到其值不为0的错误的作业编号。如果未检测到错误的作业,则处理进入步骤S123,把下一个作业编号设置为占用作业编号。在步骤S124,下一个作业编号加1。下一个作业编号的初始值是1。在步骤S125,和占用作业编号一道传送正常响应,处理返回步骤S101。
如果在步骤S122确定检测到错误的作业,则处理进入步骤S141,确定错误的作业编号是否和附加在占用请求指令上的作业编号匹配。如果两个编号不互相匹配,则处理进入步骤S145,并在返回步骤S101之前发送错误响应。如果两个编号互相匹配,则处理进入步骤S142,并设置错误作业编号为占用作业编号。在步骤S143,错误作业编号被清除。在步骤S144,和占用作业编号一道接收正常响应,处理返回步骤S101。
如果在步骤S102确定接收的指令不是占用请求指令,则处理进入步骤S103,确定接收的指令是否是数据清除指令。如果接收的指令是数据清除指令,则处理进入步骤S131,并在返回步骤S101之前进行数据清除处理。具体地说,在这个数据清除处理中,存储在FIFO存储器22中的图像数据和存储在控制电路25中的工作区域内的页开始指令被清除,由数据清除指令指定的页编号被设置为打印开始页编号、图像输出完成页编号或打印完成页编号。
在步骤S103,如果接收的指令不是数据清除指令,则处理进入步骤S104,确定接收的指令是否被识别为打印数据指令。如果接收的指令是打印数据指令,则处理进入步骤S132,并在返回步骤S101之前进行打印数据处理。具体地说,在这个打印数据处理中,如果收到作为打印数据指令的图像数据指令,则图像数据被存储到FIFO存储器22中。此外,如果收到页开始指令,则图像数据被存储到控制电路25的工作区域中。
如果在步骤S104确定收到的指令不是打印数据指令,则处理进入步骤S105,确定收到的指令是否是打印请求指令。如果收到的指令是打印请求指令,则处理进入步骤S133,并在返回步骤S101之前进行打印开始请求处理。在这个打印开始请求处理中,具体地说,请求打印引擎24响应已经收到的页开始指令开始打印,并使打印开始页编号加1。
如果在步骤S105确定接收的指令不是打印请求指令,则处理进入步骤S106,确定接收的指令是否被识别为状态请求指令。如果接收的指令是状态请求指令,则处理进入步骤S134,并通过发送状态响应报告打印机状态。报告的打印机状态包括开始作业编号、错误状态、打印开始页编号、图像输出完成页编号,以及打印完成页编号。然后处理返回步骤S101。
如果在步骤S106确定收到的指令不是状态请求指令,则表示收到空出指令。因而,处理进入步骤S135,并清除占用作业编号,处理返回步骤S101。
下面参照图8说明和上述指令处理并行地执行的打印处理。
图8是表示在第一实施方式中的打印机7的打印处理的流程图。在步骤S201,确定是否检测到正常打印的页。如果未检测到正常打印的页,则打印处理进入步骤S211。如果检测到正常打印的页,则打印处理进入步骤S202,使打印完成页编号加1。在步骤S203,确定正常打印的页所属的作业的所有页的打印是否完成。如果所有页的打印尚未正常完成,则打印处理进入步骤S211(后面说明)。如果所有页的打印已经正常完成,则打印处理进入步骤S204,并执行开始作业终止处理。在步骤S205,确定是否检测到未完成的作业。如果检测到未完成的作业,则打印处理进入步骤S206,更新开始作业编号。此后,打印处理进入步骤S211。如果未检测到未完成的作业,则打印处理进入步骤S207,并清除开始作业编号。打印处理进入步骤S211。
在步骤S211,确定是否检测到。如果未检测到在其上完成图像输出的页,则打印处理直接进入步骤S221。如果检测到其上完成图像输出的页,则打印处理进入步骤S212。在步骤S212,使图像输出完成页编号加1,并且打印处理进入步骤S221。
在步骤S221,确定是否发生错误。如果错误尚未发生,则打印处理返回步骤S201。如果发生错误,则打印处理进入步骤S222,进行不是开始作业的一个作业的发送处理。在步骤S223,确定是否开始作业当前占用打印机7,即,是否开始作业编号和占用作业编号彼此匹配。如果开始作业当前占用打印机7,则打印处理返回步骤S201,如果开始作业当前未占用打印机7,则打印处理进入步骤S224。在步骤S224,开始作业编号被设置为错误作业编号,并打印处理返回步骤S201。
如上所述,按照第一实施方式,当主设备完成一个打印作业中的所有页的传送时,借助于空出打印机7而不等待发出完成通知,可以立即开始下一个打印作业的数据传输,因而消除作业之间的停机时间。此外,借助于使主设备具有用于错误恢复的页存储器,即使发生错误,也可以进行正确的错误恢复。
第二实施方式下面参照

本发明的第二实施方式的细节。在第一实施方式中,当和占用打印机7的一个打印作业不同的打印作业相关的错误发生时,打印机7被主设备命令改变为空出状态。不过,在第二实施方式中,当和与占用打印机7的打印作业不同的作业相关的错误发生时,打印机7便强迫撤销空出状态。
在第二实施方式中,主设备和打印机7和图1、图2所示主设备和打印机的配置相同,因而,省略其详细说明。
和第一实施方式类似,在第二实施方式中,根据图3所示的作业管理信息,语言监视器5管理打印作业。
下面参照图11说明当错误发生时,打印机7从作业占用状态到空出状态的改变。
在时刻T1,打印机7响应作业A的占用请求被作业A占用。在时刻T2,当基于作业A的传送完成时,作业A的占用被撤销。
在时刻T3,响应作业B的占用请求,打印机7被作业B占用。此后,当在时刻T4检测到作业A中的错误时,在第一实施方式中在时刻T5,响应来自主设备的指令,作业B的占用被撤销。此外,在第二实施方式中在时刻T6,作业B的占用被打印机7撤销。
在周期T7,打印机7只接受来自作业A的占用请求。例如,如果在时刻T8收到来自作业C的占用请求,则该占用请求不被打印机7接受。
在时刻T9,作业A根据其占用请求占用打印机7,进行错误恢复。此后,当基于作业A的传送在时刻T10完成时,作业A的占用被撤销。
接着,因为作业B的占用中途(在时刻T4)被撤销,作业B请求占用并占用打印机7以便再次传送。当在时刻T12完成基于作业B的传送时,作业B的占用被撤销。
下面参照图9说明在第二实施方式中语言监视器5的处理的细节。图9所示的步骤S301-S316和第一实施方式中图4所示的步骤S1-S16的相同。因而,下面只说明第二实施方式的不同的部分。
图9是表示在第二实施方式中语言监视器5的处理的流程图。和第一实施方式类似,在由操作系统2通知语言监视器5作业开始后,并向打印机7发送占用请求指令之后,在打印一个作业中的所有页正常完成之前,当语言监视器5被通知下一个作业开始时,语言监视器5占用打印机7,并进行新的作业的数据传送处理。当在状态监视处理期间发生错误时,语言监视器5的处理从步骤S308或S314到步骤S316。
在步骤S316,语言监视器5设置该作业和每页成为不被发送状态。在步骤S317,通过参考获得的最近的状态,语言监视器5确定当前占用打印机7的作业的作业编号是否是0。如果当前占用打印机7的作业的作业编号不是0,则表示打印机7继续被占用,并且语言监视器5的处理进入步骤S310,并从发生错误的页重试数据传送。
如果当前占用打印机7的作业的作业编号是0,则表示在前面一个不同的作业中的错误使打印机7空出,并且语言监视器5的处理返回步骤S301。此后,在步骤S305,语言监视器5尝试占用打印机7。换句话说,如果在打印机7中的开始作业是由主设备发出的作业,则占用立即被允许,并且从发生错误的页重试数据传送。如果不是,则占用被拒绝,直到在错误恢复之后开始作业正常完成。
下面说明在第二实施方式中打印机7的打印处理。由打印机7中的控制电路25执行的指令处理和参照图7所述的第一实施方式的指令处理相同。因而,省略在第二实施方式中的指令处理的说明。
下面参照图10说明和上述的指令处理并行执行的打印处理。图10所示的步骤S401-S407、S411-S412、S421-S424和第一实施方式的图8所示的步骤S201-S207、S211-S212和S221-S224相同,因而,下面只说明不同的部分。
图10是表示第二实施方式中打印机7的打印处理的流程图。和第一实施方式类似,当在页的打印开始和作业结束而检查打印机7之后,进行结束处理或执行不同于开始作业的作业。确定开始作业是否当前正在占用打印机7,即,开始作业的编号和占用作业编号是否相互匹配。如果开始作业没有占用打印机7,则打印处理进行步骤S424,并设置开始作业编号为错误的作业编号。在步骤S425,通过设置“0”作为占用的作业编号,所述占用被强制撤销,并且打印处理返回步骤S401。
如上所述,按照第二实施方式,当和未占用打印机7的不同的作业相关的错误发生时,则打印机7强制撤销所述的占用,因而把作业之间的停机时间减到最短。
本发明可用于由多个设备(例如主计算机,接口装置,读取器,打印机等)构成的系统,也适用于单个的设备(例如复印机,传真机等)。
此外,可以向一个系统或设备提供含有实现上述实施方式中功能的记录介质,该记录介质含有实现上述功能的软件的程序代码,并且在所述系统或设备中的计算机(CPU或MPU(微处理单元))读出并执行在记录介质上的程序代码。
在这种情况下,从记录介质读出的程序代码本身实现上述实施方式中的功能。
用于提供程序代码的记录介质的类型的例子包括,例如软盘、硬盘、光盘、磁光盘CD-ROM(致密盘-ROM)、CD-R(致密盘-可记录的)、磁带、非易失存储器和只读存储器。
此外,通过执行由计算机读出的程序代码,不仅能够实现上述实施方式中的功能,而且在所述计算机上运行的操作系统(或其类似物)能够根据程序代码的指令执行所有的实际处理或一部分的实际处理,因而所述的处理实现上述实施方式中的功能。
此外,在从记录介质读出的程序代码被写入存储器中之后,该存储器由被插入计算机中的内插板或和计算机相连的内插单元提供,内插板或内插单元中提供的CPU(或其类似物)执行所有的实际处理或一部分的实际处理,因而所述的处理实现上述实施方式中的功能。
按照本发明的上述实施方式,在作业之间的停机时间可以被减到最小因而可以改善打印系统的性能。
虽然参照目前认为是优选的实施方式对本发明进行了说明,但是应当理解,本发明不限于披露的实施方式。与此相反,本发明旨在覆盖被包括在所附权利要求的构思和范围内的各种改型和等效的结构。下面的权利要求的范围应当给予最宽的解释,使得包括所有这些改变和等效结构与功能。
本申请要求在2003年12月15日申请的日本专利申请第2003-416727号、在2004年5月31日申请的日本专利申请第2004-161573号的优先权,这些专利申请通过引用并入本申请中。
权利要求
1.一种打印系统,其包括包括用于错误恢复的页存储器的至少一个主设备;打印机;以及用于连接所述主设备和所述打印机的双向接口,其中所述主设备包括命令装置,用于当打印作业开始时,命令打印机改变到被占用状态,并且当打印作业的打印数据传送完成时,命令打印机改变为空出状态,而不等待来自打印机的打印完成通知;以及所述打印机包括用于响应来自主设备的指令使打印机改变为占用状态和空出状态之一的装置。
2.如权利要求1所述的打印系统,其中在命令打印机改变为占用状态之后,所述主设备监视打印机的状态;以及当页打印正常完成时所述主设备释放页存储器。
3.如权利要求1所述的打印系统,其中在命令打印机改变为空出状态之后,所述主设备监视打印机的状态;以及当检测到错误时,所述主设备命令打印机改变为占用状态,并重新传送发生错误的页的打印数据。
4.如权利要求1所述的打印系统,其中在命令打印机改变为占用状态之后,所述主设备监视打印机的状态;以及当检测到和不同的打印作业相关的错误时,所述主设备命令打印机改变为空出状态。
5.如权利要求1所述的打印系统,其中当一页未被正常地打印时,打印机拒绝来自另一主设备的改变为占用状态的指令,该另一主设备和所述命令打印机打印所述页的主设备不同。
6.如权利要求1所述的打印系统,其中当检测到和未占用打印机的不同的打印作业相关的错误时,所述打印机改变为空出状态。
7.一种用于控制打印系统的方法,所述打印系统包括具有用于错误恢复的页存储器的至少一个主设备、打印机以及用于连接所述主设备和所述打印机的双向接口,所述方法包括以下步骤在主设备开始打印作业之前命令打印机改变为占用状态;在完成所述打印作业的打印数据传送之后,命令打印机改变为空出状态而不等待来自打印机的打印完成通知;以及响应来自主设备的指令,使打印机改变为占用状态和空出状态之一。
8.一种打印方法,所述方法包括以下步骤在向打印机传送打印作业数据之前向打印机传送占用请求;当完成所述打印作业的数据传送时,向打印机发送空出请求;以及在向打印机发送空出请求之后,监视打印机的状态;以及当检测到错误时,在向打印机传送打印作业数据之前,向打印机传送占用请求。
9.一种程序,用于允许计算机执行权利要求8所述的方法。
10.一种主设备,其包括第一装置,用于在向打印机传送打印作业数据之前向打印机发送占用请求;第二装置,用于当所述第一装置完成打印作业数据传送时向打印机发送空出请求;以及第三装置,用于在向打印机发送空出请求之后监视打印机的状态;并且当检测到错误时,在向打印机传送打印作业数据之前传送占用请求。
11.一种打印方法,包括以下步骤当收到占用请求时确定是否检测到错误作业;当检测到错误作业时,则确定发送所述占用请求的作业是否和错误作业匹配;以及当发送占用请求的作业和错误作业匹配时,发送正常响应,以及当发送所述占用请求的作业和错误作业不匹配时发送错误响应。
12.一种程序,其允许计算机执行权利要求11所述的方法。
13.一种打印机,其包括用于当收到占用请求时确定是否检测到错误作业的装置;用于当检测到错误作业时,确定发送所述占用请求的作业是否和错误作业匹配的装置;以及用于当发送占用请求的作业和错误作业匹配时,发送正常响应,当发送所述占用请求的作业和错误作业不匹配时发送错误响应的装置。
14.如权利要求13所述的打印机,其中当发送占用请求的作业和错误作业不匹配时,所述打印机改变为空出状态。
15.一种打印机,其包括第一装置,其响应来自第一作业的占用请求,把所述第一作业设置为打印机占用状态,并响应来自所述第一作业的空出请求,撤销所述第一作业的占用状态;以及第二装置,其在由第二作业占用打印机的期间,响应第一作业中的错误,撤销所述第二作业的打印机占用状态。
16.如权利要求15所述的方法,其中所述第二装置响应第一作业中的错误,撤销第二作业的占用状态,并且在由第二作业占用打印机的期间内只接收来自第一作业的占用请求。
17.一种打印方法,所述方法包括以下步骤响应来自第一作业的打印机占用请求,把所述第一作业设置为打印机占用状态;响应来自所述第一作业的空出请求,撤销第一作业的占用状态;以及在由第二作业占用打印机的期间,响应第一作业中的错误,撤销所述第二作业的占用状态。
18.如权利要求17所述的打印方法,其中撤销第二作业的占用状态还包括只接受来自第一作业的占用请求。
19.一种程序,其允许计算机执行权利要求18所述的方法。
20.一种程序,其允许计算机执行权利要求17所述的方法。
21.一种信息处理设备,其包括第一命令装置,用于当打印作业开始时,命令打印机改变为被占用状态,在打印作业的打印数据传送完成之后,命令打印机改变为空出状态,而不等待来自打印机的打印完成通知;以及第二命令装置,用于在由第一命令装置把打印机改变为空出状态之后,进行状态监视,并当检测到错误时命令打印机改变为被占用状态。
22.一种打印方法,所述方法包括当开始打印作业时命令打印机改变到占用状态;在完成所述打印作业的打印数据的传输之后,命令打印机改变到空出状态而不等待来自打印机的打印完成通知;在打印机改变为空出状态之后进行状态监视;以及当检测到错误时命令打印机改变为占用状态。
23.一种程序,其允许计算机执行权利要求22所述的方法。
全文摘要
本申请公开了一种打印方法,当开始打印作业时,主设备命令打印机改变为被占用状态,以便把作业之间的停机时间减到最小。在打印机响应来自所述主设备的指令改变为被占用状态,并且主设备完成打印作业的传送之后,所述主设备命令打印机改变为空出状态而不等待来自打印机的打印完成通知。响应来自主设备的命令,打印机改变为空出状态。
文档编号G06F3/12GK1628990SQ20041009870
公开日2005年6月22日 申请日期2004年12月14日 优先权日2003年12月15日
发明者坂本阳一 申请人:佳能株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1