Title of Invention

METHOD FOR AUTO ARBITRATION OF MULTIPLE PAGE DESCRIPTION LANGUAGE EMULATORS IN A PRINTER

Abstract In modern printers whenever a job comes, its header is parsed to look for the file type subsequently to determine the type of PDL emulator to be used in order to successfully render the document onto physical medium. The invention provides a method for the auto arbitration of multiple page description language emulations in a printer firmware by evaluating the job stream header for error with respect to the emulations that are turned on. It confers robust error recovery mechanism to ensure that it is not just the PDL header that dictates the emulator module to be loaded. The method allows the user to switch off certain emulators that are not relevant for the incoming print ready file, but maintaining the default emulator, thereby reducing the time taken to arbitrate an incoming print ready file to a particular emulator module.
Full Text FIELD OF INVENTION
The present invention relates, in general, to the field of digital printers. Further, this invention relates to high-end printer firmware. More particularly, the invention applies to the mechanisms for fortifying the digital printers equipped with sufficient hardware using advanced logic so that auto arbitration of multiple page description language emulations in the printer firmware is possible.
DESCRIPTION OF RELATED ART
The printing technology has so ripened in the recent times that the modern printers are capable of supporting more than one Page Description Languages (PDL). In these printers whenever a job comes, its header is parsed to look for the file type subsequently to determine the type of PDL emulator to be used in order to successfully render the document onto physical medium. The Emulator i.e. the logic built into firmware, interprets and renders particular file formats. Later on the PDL emulator is loaded into memory and is given control of the job stream. This emulator then interprets and renders the incoming data. US Patent No. 5,475,801 is mentioned herein as a reference.
Normally there are four PDL emulators in a particular printer. For an incoming job, the PDL header is checked for the file type identifier in its header and depending on the file type, the emulator is loaded. In many PDLs, the header is just a formality to identify the file format, so that the correct emulator can be given the
control of the job. In times when a print ready file has been downloaded from the Internet and directly fired to the printer there is a fair chance that the PDL header identifying the file type doesn't get downloaded properly due to problems in downloading. Therefore hence looking just at the header doesn't give knowledge about the file format and consequently each emulator needs to be loaded and given over the control of the job. There is no robust error detecting and quantifying mechanism according to the state of art. Similarly even if the user is only sending over PCL jobs to the printer, the sequence of current operations demand that there be arbitration between all the emulators, only to find out that the PCL emulator is the suitable candidate to take up the job. In abstract the prior art doesn't provide any option to choose a particular emulator even when he/she is aware of the type of the print job being executed i.e. the knowledge of the user is not paid the due respect. In order to remedy the above difficulties the present invention provides robust error recovery mechanism to ensure that it is not just the PDL header that dictates the emulator module to be loaded.
SUMMARY OF THE INVENTION
The primary object of this invention is therefore to provide a method for the auto arbitration of multiple page description language emulations in a printer firmware by evaluating the job stream header for error with respect to the emulations that are turned on.
It is another object of the invention to provide a method, which allows the user to switch off certain emulators that are not relevant for the incoming print ready file, but maintaining the default emulator, thereby reducing the time taken to arbitrate an incoming print ready file to a particular emulator module.
It is yet another object of the invention to ensure that only minimum time is required for the arbitration between different emulators.
It is also an object of the invention to ascertain that a default emulator is always on so that there is no failure in receiving a print out.
Accordingly, this invention provides a process for auto arbitration of multiple page description language emulations in a printer firmware, which provides a user interface to confer the user with sufficient freedom to select among available emulations thereby making him responsible for the time taken to print a file, the process comprising the steps of:
a) transferring the job header of the print ready file from the Job Stream Manager to the Registrar, which has the knowledge of which emulators are turned on;
b) checking the job header for the total weightage amongst all available emulations which are turned on by contacting the respective configuration files associated with the emulators and choosing the emulator amounting the highest weightage for the said print ready file;
c) handing over the print job to the emulator with the maximum total weightage and loading the respective PDL into main memory by the
Registrar; and
d) allowing the above said PDL to talk to Job Stream Manager directly to collect the job stream for interpretation by the corresponding emulator so as to render it onto physical medium
The other objects, features and advantages of the invention will become more clearly apparent from the following description of the embodiments of the invention given as non-restrictive example only taken in conjunction with the accompanying drawings.
BRIEF DESCRIPTION OF THE ACCOMPANYING DRAWINGS
Figure 1 depicts a printer firmware architecture having multiple PDL emulators built into it.
Figure 2 is a diagrammatic representation of the process of selecting the suitable emulator according to the invention.
DETAILED DESCRIPTION OF THE INVENTION
The preferred embodiments of the present invention will now be explained with reference to the accompanying drawings. It should be understood however that the disclosed embodiments are merely exemplary of the invention, which may be embodied in various forms. The following description and drawings are not to be construed as limiting the invention and numerous specific details are described to provide a thorough understanding of the present invention, as the basis for the claims and as a basis for teaching one skilled in the art on how to make and/or use the invention. However, in certain instances, well-known or conventional details are not described in order not to unnecessarily obscure the present invention in detail.
Imagine a printer firmware architecture having multiple PDL emulators built into it. As already mentioned in the prior art description, the header every incoming print ready file is normally checked to determine the file format that follows. But the drawback here is that it may not be possible recover from files incorrectly formed. Also in many PDL formats, the header is only ornamental and merely serves to let know the format that it is following. It is also worth mentioning here that any file that doesn't contain the tag in its header describing the file format may still be a valid file. Therefore the applicant proposes herein a solution, which respects the knowledge of the user also instead of directly checking the header and arbitrating between different emulators. The invention confers the user with the freedom to switch ON or OFF the emulators. It strengthens the error recovery mechanism of a printer towards several erroneous print ready jobs and takes into consideration of the knowledge of the user regarding the print ready file format that he/she wishes to send to the printer.
Prior to describing the various aspects and details of the present invention in detail, the interactions between the different components of the system are illustrated here with reference to the block diagram in Fig 1. ON and OFF alongside each emulator indicates whether the user has switched on or switched off that particular emulation.
There are a few background notes to make certain assumptions about the user interface component of the printer. The printer control panel has a menu/items, which enlists all the emulations present in the system. Upon selection of the particular emulation, the user interface should allow the user to turn on or turn off that particular emulation. However, there is default emulation in the printer system that should not be turned off.
When a print ready file comes to the printer, this file is collected by JSM (Job Stream Manager), which is entrusted with handing over a certain number of bytes from the beginning of the file to the Registrar. The Registrar has the knowledge of what emulators are turned on. To help the registrar to arbitrate the job to all the available emulations that are turned on, there is a configuration file associated with all the emulators present in the system. The configuration file should contain the weightage (a number indicating the relevance of the particular keyword or sequence to that particular file format) of a keyword/sequence against the keyword or the sequence. Every PDL format has its own keywords or a sequence of keywords that are unique to that particular format.
It should be remarked here that there is no universal method of forming such configuration files. This has to be done using a mix of trial and error, common
sense and experience and familiarity with various PDL formats. The formation of such files is left to the vendor. The responsibility of forming the configuration file lies with the development team. The configuration file can be different for each printer depending on what the priority of emulations is, for that printer. For e.g., let us suppose that a keyword in some PDL PDL1 is 'Font' and this is also a keyword in another PDL PDL2. Now, if in one printer P1 PDL1 is given a higher priority over PDL2, then one line in the configuration file for PDL1 can look like
Font 20
Font is the keyword and its weight is 20.
And the corresponding line in the configuration file for PDL2 can look like Font 10
If yet another printer P2 gives more priority to PDL2 over PDL1 then the line in the configuration file for PDL1 can look like
Font 10
And the corresponding line in the configuration file for PDL2 can look like Font 20
However, please note that forming the configuration file is outside the scope of this patent and is left to the vendor.
The Registrar, who is having the knowledge of what emulators are turned on, contacts the configuration files and provisions the arbitration of different emulators. The job header is now checked for the total weightage amongst all available emulations. Subsequently the job is handed over to the emulator with the maximum total weightage. The PDL that gets the job is now loaded into main memory by the Registrar and is allowed to talk to JSM directly, to collect the job stream. The job stream is now interpreted by the emulator and is rendered onto physical medium.
It can be remarked that any incoming job can be so malformed that no amount of error recovery can be enough to be able to interpret the file format correctly. However, all emulators have presented their respective weightage values for the particular job. It is obvious that for files that are extremely malformed, the maximum weightage will be very low in magnitude. Deciding the cut off weightage value is also left to the vendor. To this effect, there can be a cut off weightage, so that any weightage value falling below could be treated as trivial. In this way, if all emulators don't provide sufficiently large weightage values, then an error page can be generated to this effect, informing the user.
The error page can be an internal page (the bitmap or any suitable format) that informs the user that the document that he has sent over for printing is malformed.
The major advantage of the invention is that by allowing the user to select the emulators to be switched on from among all available emulators present in the
system, the time taken to arbitrate the jobs amongst available emulators is found to reduce significantly since the awareness of the user gets consideration. Moreover, this technique does not check the header of the incoming job alone instead does a pseudo parsing of the file itself for recognized tokens.
In an alternate embodiment of the invention, the registrar could load each emulator in weigh mode in turn and hand over the header to it when a job header comes, instead of having a configuration file for emulators. This approach has the advantage that the Registrar component is not hardwired into the system. However, the time required to arbitrate could be significantly longer than in the current design.
The foregoing description of illustrated embodiments of the present invention, including what is described in the Abstract, is not intended to be exhaustive or to limit the invention to the precise forms disclosed herein. While specific embodiments of, and examples for, the invention are described herein for illustrative purposes only, various equivalent modifications are possible within the spirit and scope of the present invention, as those skilled in the relevant art will recognize and appreciate. As indicated, these modifications may be made to the present invention in light of the foregoing description of illustrated embodiments of the present invention and are to be included within the spirit and scope of the present invention.
Thus, while the present invention has been described herein with reference to particular embodiments thereof, a latitude of modification, various changes and substitutions are intended in the foregoing disclosures, and it will be appreciated that in some instances some features of embodiments of the invention will be employed without a corresponding use of other features without departing from the scope and spirit of the invention as set forth. Therefore, many modifications may be made to adapt a particular situation or material to the essential scope and spirit of the present invention. It is intended that the invention not be limited to the particular terms used in following claims and/or to the particular embodiment disclosed as the best mode contemplated for carrying out this invention, but that the invention will include any and all embodiments and equivalents falling within the scope of the appended claims.






WE CLAIM
1. A process for auto arbitration of multiple page description language emulations in a printer firmware, which provides a user interface to confer the user with sufficient freedom to select among available emulations thereby making him/her responsible for the time taken to print a file, the process comprising the steps of:
(a) transferring the job header of the print ready file from the Job Stream Manager to the Registrar, which has the knowledge of which emulators are turned on;
(b) checking the job header for the total weightage amongst all available emulations which are turned on by contacting the respective configuration files associated with the emulators and choosing the emulator amounting the highest weightage for the said print ready file;
(c) handing over the print job to the emulator with the maximum total weightage and loading the respective PDL into main memory by the Registrar; and
(d) allowing the above said PDL to talk to Job Stream Manager directly to collect the job stream for interpretation by the corresponding emulator so as to render it onto physical medium.
2. The process as claimed in claim 1 wherein an error page is generated for informing the user when the files are extremely malformed so that the maximum weightage will be very low in magnitude.
3. The process as claimed in claim 2 wherein there is a cut off weightage value for deciding whether the file is malformed.
4. The process as claimed in claim 1 wherein the default emulator is always switched on.
5. A system for auto arbitration of multiple page description language emulations in a printer firmware, which provides a user interface to confer the user with sufficient freedom to select among available emulations thereby making him/her responsible for the time taken to print a file.
6. A process for auto arbitration of multiple page description language emulations in a printer firmware, which provides a user interface to confer the user with sufficient freedom to select among available emulations thereby making him/her responsible for the time taken to print a file, substantially as herein above described and illustrated with reference to the accompanying drawings.

Documents:

1426-CHE-2005 AMENDED CLAIMS 16-07-2012.pdf

1426-CHE-2005 AMENDED PAGES OF SPECIFICATION 16-07-2012.pdf

1426-CHE-2005 EXAMINATION REPORT REPLY RECEIVED 16-07-2012.pdf

1426-che-2005 form-1 19-06-2006.pdf

1426-CHE-2005 FORM-1 16-07-2012.pdf

1426-CHE-2005 FORM-13 16-07-2012.pdf

1426-CHE-2005 FORM-5 16-07-2012.pdf

1426-CHE-2005 POWER OF ATTORNEY 16-07-2012.pdf

1426-che-2005 abstract.pdf

1426-che-2005 claims.pdf

1426-che-2005 correspondence others.pdf

1426-che-2005 description (complete).pdf

1426-che-2005 drawings.pdf

1426-che-2005 form 1.pdf

1426-che-2005 form 13.pdf

1426-che-2005 form 18.pdf

1426-che-2005 power of attorney.pdf


Patent Number 253443
Indian Patent Application Number 1426/CHE/2005
PG Journal Number 30/2012
Publication Date 27-Jul-2012
Grant Date 20-Jul-2012
Date of Filing 06-Oct-2005
Name of Patentee SAMSUNG INDIA SOFTWARE OPERATIONS PRIVATE LIMITED
Applicant Address BAGMANE LAKEVIEW, BLOCK B, NO.66/1, BAGMANE TECH PARK, C V RAMAN NAGAR, BYRASANDRA, BANGALORE-560093.
Inventors:
# Inventor's Name Inventor's Address
1 SASWATA BANERJEE EMPLOYED AT SAMSUNG ELECTRONICS CO.LTD., INDIA SOFTWARE OPERATIONS (SISO) HAVING ITS OFFICE AT,J.P. TECHO PARK, 3/1, MILLERS ROAD, BANGLORE 560 052, KARNATAKA, INDIA
PCT International Classification Number B41J29/38
PCT International Application Number N/A
PCT International Filing date
PCT Conventions:
# PCT Application Number Date of Convention Priority Country
1 NA