Multi-function peripheral apparatus for processing unified job steps

Abstract
The respective jobs of copying, printing, scanning, and faxing processed by an integrated application are unitarily divided into four job steps. A package of function modules 41A selectively used in the respective jobs is classified into four groups of input, create, edit, and output function modules 410 to 412 according to the division. A data format is unified into bitmap by a create function module 411A, and the bitmap data is processed by an edit function module 411B for pagination or aggregation, etc. In response to receiving setting information and a job code, a job controlling module 43A creates job step control blocks 440 to 442 and writes the information therein to create a job. Each of job step controlling (JSC) modules 450 to 452 starts a function module for each page, and after the completion thereof, creates a thread control block for the next downstream side JSC module.
Description

BRIEF DESCRIPTION OF THE DRAWINGS


FIG. 1 is a schematic block diagram showing a whole configuration of application software for constituting a multi-function peripheral apparatus according to a first embodiment of the present invention;



FIG. 2 is an illustration showing a plurality of function modules classified into three groups and selectively executed according to a job kind;



FIG. 3 is an illustration showing a table for use in a job controlling module, and a corresponding relation between job codes of copying, printing, scanning, and fax transmitting and receiving and codes of function modules except edit modules selectively executed in respective jobs;



FIGS. 4A to 4E each are schematic sequence diagrams showing function modules sequentially started when executing jobs of copying, printing, scanning, and fax transmitting and receiving;



FIG. 5A is an illustration showing a configuration of a job step control (JSC) block, FIGS. 5B to 5D are illustrations showing an example of information described in an input JSC block, a process JSC block, and an edit JSC block, respectively;



FIG. 6 is a block diagram showing hardware resource managing software relating to an image input;



FIG. 7A is an illustration showing thread control blocks as controlling information of every page handled in a process JSC module and an output JSC module, FIG. 7B is an illustration showing thread control states;



FIG. 8 is a flow chart showing a processing of the process JSC module or the output JSC module according to a job order indicated by a job ID queue;



FIGS. 9A and 9B are illustrations showing contents of job ID queues before and after changing the job execution order, respectively;



FIGS. 10A and 10B are illustrations showing a change operation of job execution order;



FIGS. 11A and 11B are illustrations showing a change operation of job execution order, followed by FIG. 10B;



FIG. 12 is a schematic block diagram showing a whole configuration of application software for constituting a multi-function peripheral apparatus according to a second embodiment of the present invention;



FIG. 13 is an illustration showing a plurality of function modules classified into four groups and selectively executed according to a job kind;



FIG. 14 is an illustration showing a table for use in a job controlling module, and a corresponding relation between job codes of copying, printing, scanning, and fax transmitting and receiving and codes of function modules except edit modules selectively executed in respective jobs;



FIGS. 15A to 15E each are schematic sequence diagrams showing function modules sequentially started when executing jobs of copying, printing, scanning, and fax transmitting and receiving;



FIG. 16A is a schematic time chart showing a print job operating example of a second embodiment of the present invention, FIGS. 16B and 16C are schematic time charts showing print job operating examples compared with FIG. 16A in order to indicate an advantage of FIG. 16A's operation;



FIG. 17 is an illustration showing starting conditions of a create, an edit, and an output function modules for improving throughput;



FIG. 18 is a thread state transition diagram of a create module control state CCS, an edit module control state ECS, and output module control state OCS;



FIG. 19 is an illustration showing a thread control block corresponding to a state change of FIG. 18 at times t1 to t6 shown in FIG. 16A;



FIG. 20 is a schematic block diagram showing a hardware configuration of a multi-function peripheral apparatus according to embodiments of the present invention.


Claims
  • 1. A multi-function peripheral apparatus, comprising: a processor operated according to a program;a storage means coupled to the processor to store the program;a plurality of image data inputting means coupled to the processor;a plurality of image data outputting means coupled to the processor; andan instruction inputting means coupled to the processor;wherein the apparatus executes a job selected from a plurality of image forming functions by an instruction through the instruction inputting means,wherein the program comprises:a package of function modules to be executed by the processor in each job step of each job having an input job step of inputting image data from a corresponding one of the plurality of image data inputting means, an image processing job step of processing the image data input at the inputting job step, and an output job step of providing the processed image data to corresponding one of the plurality of image data outputting means; anda job execution controlling program for, according to a job selection and a starting instruction through the instruction inputting means, causing the processor to execute function modules corresponding to respective job steps of the selected job so that the selected job is executed in order of the input job step, the image processing job step and the output job step with respect to each page of the selected job.
  • 2. The multi-function peripheral apparatus according to claim 1, wherein the storage means further stores a job identification code queue as job controlling information, wherein the job execution controlling program further causes the processor: (a) to determine a job identification code according to the job selection and starting instruction through the instruction inputting means,(b) to add the job identification code into the queue,(c) to read a job identification code in the job identification code queue in alignment order,(d) to execute function modules of the respective job steps of the job indicated by the job identification code read.
  • 3. The multi-function peripheral apparatus according to claim 2, wherein the job execution controlling program causes the processor, in each of the image processing job step and the output job step, to execute the step (c), and to execute, in the step (d), a corresponding function module if there is an unprocessed job step of an uncompleted executable job.
  • 4. The multi-function peripheral apparatus according to claim 3, wherein the storage means further stores job step controlling information having a page number of a page to be processed and a processing state of the page, with respect to each job step, wherein the job execution controlling program causes the processor, in the step (c), to refer the job step controlling information in order to determine if there is an unprocessed job step of an uncompleted executable job.
  • 5. The multi-function peripheral apparatus according to claim 2, further comprising a display means coupled to the processor, wherein the job step controlling information further includes information having a job identification code of an uncompleted job, and having information about a completed page number related to the uncompleted job,wherein the program further includes a job state displaying component which causes the processor, on the basis of the job identification code queue and the job step controlling information, to display job state information in a job execution order on the display means in response to a job state displaying instruction through the instruction inputting means, the job state information having information associated with a job identification code of an uncompleted job and having information associated with a completed page number.
  • 6. The multi-function peripheral apparatus according to claim 5, wherein the program further includes a job execution order changing component which causes the processor to change the alignment order of the job identification codes in the job identification code queue according to a job execution order changing instruction through the instruction inputting means.
  • 7. The multi-function peripheral apparatus according to claim 6, wherein the job state displaying component further causes the processor to change the display order of the job state information according to the job execution order changing instruction when the job state information is displayed on the display means.
  • 8. The multi-function peripheral apparatus according to claim 1, wherein the image processing job step has a create job step for transforming a data format of image data input at the input job step, and an edit job step for editing the transformed image data; wherein the package of the function modules includes function modules executed by the processor in the create job step and the edit job step,wherein the job execution controlling program causes the processor to-start the create job step and then the edit job step in regard to the image processing job step.
  • 9. The multi-function peripheral apparatus according to claim 8, wherein the storage means further stores function module combining information for associating function module identifiers identifying respective function modules executed in the respective job steps of a job of each image forming function with the respective job steps, wherein the job execution controlling program comprises:a job controlling component which causes the processor, according to the job selecting instruction, to extracting corresponding function module identifiers from the function module combining information to distribute them to the respective job steps, and to distribute setting information to the respective job steps; anda job step controlling component which causes the processor, on the basis of the distributed identifiers and setting information, to start function modules corresponding to the input job step, the create job step, the edit job step, and the output job step in this order with respect to the same page of the same job.
  • 10. The multi-function peripheral apparatus according to claim 9, wherein each function module of the create job step transforms a data format of image data input at the input job step into a specific data format common to the respective jobs.
  • 11. The multi-function peripheral apparatus according to claim 10, wherein the specific data format is a bitmap format.
  • 12. The multi-function peripheral apparatus according to claim 8, wherein each function module of the create job step transforms a data format of image data input at the input job step into a specific data format common to the respective jobs; and wherein the edit function module is common to each job.
  • 13. The multi-function peripheral apparatus according to claim 9, wherein the editing of the transformed image data includes a pagination processing or an aggregating processing of reducing the image data of a plurality of pages to arrange them on one page.
  • 14. The multi-function peripheral apparatus according to claim 8, wherein the storage means further stores a job identification code queue as job controlling information, wherein the job execution controlling program comprises:a job execution order controlling component which causes the processor(a) to determine a job identification code according to the job selection and starting instruction through the instruction inputting means,(b) to add the job identification code into the queue,(c) to read a job identification code in the job identification code queue in alignment order,(d) to execute function modules of the respective job steps of the job indicated by the job identification code read; anda job execution order changing component which causes the processor to change the alignment order of the job identification codes in the job identification code queue according to a job execution order changing instruction through the instruction inputting means.
  • 15. The multi-function peripheral apparatus according to claim 14, wherein the job execution order controlling component causes the processor: to execute the step (c) in each of the image processing job step and the output job step; andto execute, in the step (d), a corresponding function module if there is an unprocessed job step of an uncompleted executable job.
  • 16. The multi-function peripheral apparatus according to claim 15, wherein the storage means further stores, for each job step, job step controlling information having a combination of a job identification code of an uncompleted job, a job kind, and information about a completed page number, wherein the job identification code queue is included in the job step controlling information,wherein the job execution order changing component causes the processor, with reference to the job step controlling information:to display a job state with respect to each job identification code on the display means in an alignment order of the job identification codes in the job identification code queue, the job state having the job identification code of the uncompleted job, the job kind, and the information about the completed page number of the respective job steps, andto changes the order of the job states on the display means in response to the instruction through the instruction inputting means.
  • 17. The multi-function peripheral apparatus according to claim 16, wherein the job execution order changing component further causes the processor, with respect to each job identification code, to estimate job completion times on the basis of the information about the completed page numbers of the respective job steps, wherein the job completion times are included in the corresponding job state.
  • 18. The multi-function peripheral apparatus according to claim 17, wherein the job step controlling information further includes, with respect to each job step, related information of an identifier of a function module to be executed, a page number of a page to be processed, and a processing state of the page, and wherein the job execution order controlling component causes the processor to refer the job step controlling information in order to determine at the step (c) if there is an unprocessed job step of an uncompleted executable job.
  • 19. The multi-function peripheral apparatus according to claim 8, wherein the job execution controlling component further causes the processor: in response to a completion of processing corresponding image data of page n (n≧1) using a first function module at the create job step, to start a second function module at the edit job step to process image data of the page n,in response to a completion of processing at this edit job step, to start the first function module at the create job step to process image data of page (n+1), and at the same time to start a third function module at the output job step to process corresponding image data of the page n.
Priority Claims (5)
Number Date Country Kind
2006-019838 Jan 2006 JP national
2006-019839 Jan 2006 JP national
2006-019840 Jan 2006 JP national
2006-019841 Jan 2006 JP national
2006-019842 Jan 2006 JP national