Abstract:
Aspects for managing print jobs for a printer are described. The aspects include an examination of a print queue of print jobs based on a level of consumable resources available in the printer. Further, an order of the print jobs in the printer is adjusted to prioritize printing of the print jobs that can be completely printed with the consumable resources available, wherein the printer realizes increased throughput and minimized downtime.

Description:
FIELD OF THE INVENTION 
     The present invention relates to high speed, self-service printers, and more particularly to managing print jobs in a high speed, self-service printer to maximize throughput. 
     BACKGROUND OF THE INVENTION 
     High speed printers need to maximize throughput. One aspect of ensuring maximum throughput is minimizing printer downtime for replenishment of consumable resources. Many printers today provide some alert when certain printer resources are close to becoming depleted or have been depleted. For instance, printers typically include a small Liquid Crystal Display (LCD) screen to display a message that toner is low, paper is out, etc. Alternatively, the printer driver may send a message for display at a computer connected to the printer indicating which resource is low/depleted. To implement such alert systems, sensors are used to detect when a resource is depleted. For instance, the paper tray would include an electrical or electromechanical sensor to detect when the paper tray is empty. A toner and oil cartridge would include sensors to detect when the toner level is near or at empty. The sensor, upon detecting that the resource is close to or at depletion, would signal the printer processor and the printer processor would, in response, send an alert message to an LCD screen at the printer or to a printer management software program running on an attached computer. 
     Normally, network-connected self-service printers depend on the printer user to replenish consumable resources that have been depleted. Thus, if a printer runs out of a consumable after a job starts, the printer stops and waits for service. Throughput drops to zero. Such inefficiency creates a need for managing print jobs in a manner that eliminates or minimizes printers stopping in the middle of a job due to a lack of consumable resources. 
     SUMMARY OF THE INVENTION 
     Aspects for managing print jobs for a printer are described. The aspects include an examination of a print queue of print jobs based on a level of consumable resources available in the printer. Further, an order of the print jobs in the printer is adjusted to prioritize printing of the print jobs that can be completely printed with the consumable resources available, wherein the printer realizes increased throughput and minimized downtime. 
     By taking into consideration the level of consumable resources available and needed, the present invention provides greater efficiency in managing print jobs to increase throughput. In a straightforward manner, the printer keeps operating as much as possible with the available resources to minimize printer downtime. These and other advantages of the aspects of the present invention will be more fully understood in conjunction with the following detailed description and accompanying drawings. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  illustrates a printer environment in which aspects of the invention are implemented. 
         FIG. 2  illustrates a block flow diagram of a main print queue process that utilizes a consumable resources-based print queue priority of the present invention. 
         FIG. 3  illustrates a block flow diagram of a resource services handler of the present invention. 
     
    
    
     DETAILED DESCRIPTION 
     The present invention relates to maximizing throughput in high speed, self-service printers. The following description is presented to enable one of ordinary skill in the art to make and use the invention and is provided in the context of a patent application and its requirements. Various modifications to the preferred embodiment and the generic principles and features described herein will be readily apparent to those skilled in the art. Thus, the present invention is not intended to be limited to the embodiments shown but is to be accorded the widest scope consistent with the principles and features described herein. 
       FIG. 1  illustrates a printer environment in which aspects of the invention are implemented. A plurality of computers  2  are in communication with a printer  4  over a network  6 . The computer(s)  2  may comprise any computing system known in the art, such as a personal computer, laptop, palm top, telephony device, desktop system, mainframe, etc. The network  6  may comprise any computer network known in the art, including a Local Area Network (LAN), Wide Area Network (WAN), Ethernet, the Internet, etc. The printer  4  may comprise any type of high speed, self-service printer known in the art, including, for example, IBM Infoprint  20 . The printer  4  includes a printer central processing unit (CPU)  8  and a plurality of consumable resources  10 ,  12 , and  14 . The resources may comprise any type of resource consumed by the printer  4 , such as paper, toner, fuser oil, etc. For each of the resources  10 ,  12 , and  14  there is a resource sensor  16 ,  18 , and  20  that detects a level of the resource, particularly when the resource is approximately depleted. For paper resources, the resource sensor would comprise an electromechanical sensor that detects paper in the input tray. For toner and fuser oil, the sensor may comprise an electrical sensor in the toner and fuser oil cartridge that detects the level of toner and fuser oil. 
     In accordance with the present invention, a resource monitor and queue manager  24  is included that takes into consideration the level of consumable resources on hand when managing print jobs in a print queue  22 . Preferably, the process is provided as a program instructions of a suitable programming language and stored on a computer readable medium for performance by the printer CPU  8 , e.g., is provided as part of the printer&#39;s firmware. In an alternate embodiment, a computer set up as a print queue manager for the printer could also be used, and the process could be provided as an application program running in that computer. 
       FIG. 2  illustrates a block flow diagram of a main print queue process that utilizes a consumable resources-based print queue priority. The process begins by selecting a first/next active job from the print queue  22  (step  26 ). A determination is made for the selected print job based on the level of consumable resources available in the printer  4  and the level of consumable resources needed for the selected print job (step  28 ). As is well understood in the art, the approximate amount of remaining paper, toner and ink is known and reported by many printers today. The number of pages in a print job is also known. When enough resources are available to complete the job, the job is printed (step  30 ). The process then returns to step  26  to repeat the process with a next active job in the print queue. 
     When there are not enough resources to complete the job (i.e., step  28  is negative), the job is marked inactive/placed on hold in the print queue ( 22 ), and the job owner is notified that the printer requires service (step  32 ). When there are still jobs in the queue to be checked (as determined via step  34 ), the process proceeds to step  26  to check a next active job in the print queue. In this manner, the print queue is searched for another job to print, where the search criterion is to find the next scheduled job that can be completed with the remaining resources. Any job found that cannot be completed will also be put on hold and its owner notified. In general, the large jobs will be put on hold and smaller jobs will be selected to keep the printer printing while users are notified that the printer needs service. Once all jobs in the print queue that can complete with the available consumable resources have been processed, the first job in the print queue will be started even if there are insufficient consumable resources to complete the job (step  36 ). 
     During the process of print queue management, the resource monfior and print queue manager  24  also checks for the replenishment of the printer supplies, shown as step  40  of  FIG. 3 . At any time, the printer may be serviced. This will cause all of the job hold flags to be cleared (step  42 ) and the normal print queue order will be restored. 
     Through the present invention, a straightforward and effecient approach to print queue management by a printer takes into consideration the level of consumable resources on hand when selecting the next job to print. In this manner, the printer keeps operating as much as possible with the available resources to aid in increased throughput and in minimized printer downtime. 
     Although the present invention has been described in accordance with the embodiments shown, one of ordinary skill in the art will readily recognize that there could be variations to the embodiments and those variations would be within the spirit and scope of the present invention. Accordingly, many modifications may be made by one of ordinary skill in the art without departing from the spirit and scope of the appended claims.