JP2001228991A - Image processor and its control method - Google Patents

Image processor and its control method

Info

Publication number
JP2001228991A
JP2001228991A JP2000041749A JP2000041749A JP2001228991A JP 2001228991 A JP2001228991 A JP 2001228991A JP 2000041749 A JP2000041749 A JP 2000041749A JP 2000041749 A JP2000041749 A JP 2000041749A JP 2001228991 A JP2001228991 A JP 2001228991A
Authority
JP
Japan
Prior art keywords
memory
area
drawing work
task
interpreting means
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2000041749A
Other languages
Japanese (ja)
Other versions
JP3373476B2 (en
Inventor
Osamu Fukui
修 福井
Hiroaki Miyamune
宏昭 宮宗
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic System Solutions Japan Co Ltd
Panasonic Holdings Corp
Original Assignee
Matsushita Graphic Communication Systems Inc
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matsushita Graphic Communication Systems Inc, Matsushita Electric Industrial Co Ltd filed Critical Matsushita Graphic Communication Systems Inc
Priority to JP2000041749A priority Critical patent/JP3373476B2/en
Publication of JP2001228991A publication Critical patent/JP2001228991A/en
Application granted granted Critical
Publication of JP3373476B2 publication Critical patent/JP3373476B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To attain the effective use of a memory and also to shorten the printing time even when the different languages/tasks are used between the current and next print jobs for processing these jobs. SOLUTION: When a memory full state occurs while an interpreter task 401B is executing its translation processing, an answer control part 506 of a memory management part 307 prolongs its transmission of a command <OK> until notification of end job of the precedent job is detected as long as the precedent job of a language different from the current job exists. Thus, the task 401B stands by translation of the PDL data when a memory full state occurs, releases the memory area occupied by the language/task that process the precedent job and then carries on the translation processing after an idle area is enlarged. As a result, the normal printing is carried out as long as the same print data are available and even when another language/task that process the precedent job of a different language is occupying or not occupying a global memory area 603.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、ホスト装置から受
信した複数のページ記述言語の印刷データを解釈し、印
刷を行う画像処理装置およびその制御方法に関する。
[0001] 1. Field of the Invention [0002] The present invention relates to an image processing apparatus for interpreting print data in a plurality of page description languages received from a host apparatus and performing printing, and a control method therefor.

【0002】[0002]

【従来の技術】従来、ページプリンタにおいて印刷を行
う場合には、ホストコンピュータから送信されるページ
記述言語の印刷データを印刷装置のインタプリタ部を中
間言語(以下、「ディスプレイリスト(DLデータ)」
という)に翻訳する。このDLデータを印刷装置のラス
タライズ部で画素データに変換する。このとき、ラスタ
ライズ部は、印刷処理の高速化を図るため、DLデータ
を所定のバンド毎に画素データ(以下、「バンドデー
タ」という)に変換する。このバンドデータは、メモリ
に割り当てられたバンドメモリ領域に格納される。プリ
ンタエンジンは、バンドメモリ領域にバンドデータが格
納される毎に順次印刷を行う。
2. Description of the Related Art Conventionally, when printing is performed by a page printer, print data of a page description language transmitted from a host computer is interpreted by an interpreter of a printing apparatus in an intermediate language (hereinafter, "display list (DL data)").
Translate). The DL data is converted into pixel data by a rasterizing unit of the printing apparatus. At this time, the rasterizing unit converts the DL data into pixel data (hereinafter, referred to as “band data”) for each predetermined band in order to speed up the printing process. This band data is stored in a band memory area allocated to the memory. The printer engine sequentially performs printing each time band data is stored in the band memory area.

【0003】このページプリンタのプリンタコントロー
ラでは、通常、印刷制御を複雑にすることなく複数のペ
ージ記述言語に対応するために、インタプリタ部および
ラスタライズ部(以下、言語・タスクという)を複数個
設けている。
A printer controller of this page printer usually has a plurality of interpreters and rasterizers (hereinafter referred to as languages / tasks) in order to support a plurality of page description languages without complicating printing control. I have.

【0004】[0004]

【発明が解決しようとする課題】複数の言語・タスクが
設けられたページプリンタのプリンタコントローラで
は、印刷ジョブを受信するとそのページ記述言語に対応
する言語・タスクが呼び出される。言語・タスクは、メ
モリ管理部に対してメインメモリ上のグローバルメモリ
領域内に、DL格納メモリ領域、ワークバンド、フォン
トキャッシュ領域等の必要なメモリ領域の割り当てを要
求する。言語・タスクは、割り当てられたメモリ領域を
使って処理を実行するので、印刷ジョブの完了まで割り
当てられたメモリ領域のほとんどを占有することにな
る。
In a printer controller of a page printer provided with a plurality of languages / tasks, when a print job is received, a language / task corresponding to the page description language is called. The language / task requests the memory management unit to allocate a necessary memory area such as a DL storage memory area, a work band, and a font cache area in the global memory area on the main memory. The language / task executes processing using the allocated memory area, and therefore occupies most of the allocated memory area until the print job is completed.

【0005】このように現在の印刷ジョブを処理中の言
語・タスクが、グローバルメモリ領域の一部を占有して
いる状態で、プリンタコントローラが次の印刷ジョブを
受信したとき、この印刷ジョブのページ記述言語が現在
の印刷ジョブと同じ場合は、現在ジョブのDLデータを
格納する分の領域を必要とするだけなのでメモリフルが
すぐに発生する可能性は低いが、現在ジョブの言語が異
なる場合は、グローバルメモリ領域の空き領域に新たな
言語用のフォントキャッシュ領域等のワーク領域を最初
に確保する必要があるためメモリフルが発生しやすくな
る。
When the printer controller receives the next print job while the language / task currently processing the current print job occupies a part of the global memory area, the page of this print job is displayed. If the description language is the same as the current print job, it is unlikely that memory full will occur immediately because only the area for storing the DL data of the current job is needed, but if the language of the current job is different, Since it is necessary to first secure a work area such as a font cache area for a new language in a free area of the global memory area, the memory is likely to be full.

【0006】言語・タスクは、ページ記述言語をDLデ
ータに翻訳しメモリに格納している最中にメモリの空き
領域がなくなると、いわゆる分割印刷などの所定のメモ
リ不足対応の処理を実行するようになっている。上述の
ように、グローバルメモリ領域を複数の言語・タスクが
併用する際、例えば、次の印刷ジョブを処理する上記他
の言語・タスクがフリー領域にワークデータまたはDL
データを格納している最中にグローバルメモリ領域が一
杯になることがある。この場合、他の言語・タスクは、
グローバルメモリ領域を前の言語・タスクが占有してい
るのか、自分が占有しているのかに関わらず、メモリ不
足対応の処理を実行してしまう。このため、もし前の言
語・タスクがグローバルメモリ領域を占有しているので
なければ正常に印刷できるデータにも関わらず、他の言
語・タスクは印刷不可と判断するので、前の言語・タス
クから他の言語・タスクに処理が切り替わるときとそう
でないときとで、同一の印刷データの処理結果が異なっ
てしまうという不都合が生じる。プリンタでは、同一の
印刷データは同一の処理結果になることが設計上重要で
ある。よって、このような現象が発生することはプリン
タ設計上好ましくない。
The language / task executes a predetermined memory shortage process such as so-called divided printing when a free space in the memory is exhausted while the page description language is translated into DL data and stored in the memory. It has become. As described above, when a plurality of languages / tasks use the global memory area together, for example, the above-mentioned other languages / tasks for processing the next print job store work data or DL in the free area.
The global memory area may become full while data is being stored. In this case, other languages / tasks
Regardless of whether the previous language / task occupies the global memory area or whether it is occupied by itself, the processing corresponding to the memory shortage is executed. For this reason, if the previous language / task does not occupy the global memory area, other languages / tasks are determined to be unprintable even though the data can be printed normally. There is a disadvantage that the processing result of the same print data is different between when the processing is switched to another language / task and when it is not. In a printer, it is important in design that the same print data result in the same processing. Therefore, occurrence of such a phenomenon is not preferable in printer design.

【0007】特開平4−257478号公報には、プリ
ンタの動作を制御するためのプログラム(エミュレー
タ)を複数備えたプリンタにおいて、上位装置からのプ
ログラム指令命令により新たなプログラムが指定された
場合、その時動作中のプログラムが使用しているメモリ
エリアを開放した後、前記指定されたプログラムを動作
させると共に前記解放されたメモリエリアを前記指定さ
れたプログラムで使用することを特徴とするプログラム
方式が開示されている。このプログラム方式は、プログ
ラム切替時のメモリ不足を解消するものである。しか
し、このプログラム方式では、前ジョブの処理が完了す
るまで、現ジョブを行うエミュレータは、ホストコンピ
ュータからのデータの受信とデータの解釈を始めること
ができない。この結果、メモリ不足は解消するものの印
刷に長時間を要するという不都合がある。
Japanese Patent Application Laid-Open No. Hei 4-257478 discloses that in a printer having a plurality of programs (emulators) for controlling the operation of a printer, when a new program is designated by a program command from a higher-level device, the A program method is disclosed in which, after releasing a memory area used by a running program, the specified program is operated and the released memory area is used by the specified program. ing. This program method eliminates a memory shortage at the time of program switching. However, in this program system, the emulator that performs the current job cannot start receiving data from the host computer and interpreting the data until the processing of the previous job is completed. As a result, although the memory shortage is solved, there is an inconvenience that printing takes a long time.

【0008】本発明は、相異なるページ記述言語を解釈
する複数の言語・タスクが一つのメモリ領域を共用する
場合であっても、メモリ領域を有効に利用し、処理を短
時間で行うことができる画像処理装置およびその制御方
法を提供することを目的とする。
According to the present invention, even when a plurality of languages / tasks interpreting different page description languages share one memory area, the memory area can be effectively used and processing can be performed in a short time. It is an object of the present invention to provide an image processing apparatus and a control method thereof.

【0009】[0009]

【課題を解決するための手段】本発明は、上述の課題を
解決するために、同一のメモリ領域内に描画ワークエリ
アを夫々展開する、相異なるページ記述言語を解釈して
画素データを生成する複数の解釈手段とを備えた画像処
理装置において、一の解釈手段は、他の解釈手段が前記
描画ワークエリアとして前記メモリ領域の一部を占有し
ている場合であっても前記描画ワークエリアの空き領域
を使って前記ページ記述言語の解釈を開始し、解釈中に
前記空き領域が不足したならば前記他の解釈手段が前記
描画ワークエリアを解放するまで前記解釈を待機するこ
ととした。
According to the present invention, in order to solve the above-mentioned problems, pixel data is generated by interpreting different page description languages for developing drawing work areas in the same memory area. In the image processing apparatus provided with a plurality of interpreting means, one interpreting means may include a part of the drawing work area even when another interpreting means occupies a part of the memory area as the drawing work area. The interpretation of the page description language is started using a free area, and if the free area becomes insufficient during the interpretation, the interpretation is waited until the other interpreting means releases the drawing work area.

【0010】これにより、一の解釈手段が解釈中にメモ
リ不足が発生した場合に他の解釈手段が描画ワークエリ
アを解放して空き領域が拡大するまで一の解釈手段によ
るページ記述言語の解釈を延期するので、他の解釈手段
がメモリ領域の一部を占有しているタイミングで一の解
釈手段が解釈を開始しても正常に印刷することができ
る。従って、同一の印刷データがホスト装置からの指示
のタイミングによって異なる処理結果となるのを防止す
ることができる。
Thus, when a shortage of memory occurs during interpretation by one interpreting means, the other interpreting means releases the drawing work area and the interpretation of the page description language by the one interpreting means until the free area is enlarged. Since the postponement is postponed, printing can be performed normally even if one interpreter starts interpretation at the timing when another interpreter occupies a part of the memory area. Therefore, it is possible to prevent the same print data from having different processing results depending on the timing of an instruction from the host device.

【0011】ここで、「描画ワークエリア」とは、解釈
手段がページ記述言語を解釈して画素データを生成する
にあたり、ジョブ情報、ページ情報、描画情報等の、印
刷の完了(例えば、排紙完了、ジョブ完了)まで保存さ
れ、その後削除されるような中間的または一時的なデー
タを格納する領域をいう。
Here, the term "drawing work area" means that when interpreting means interprets a page description language to generate pixel data, printing of job information, page information, drawing information, etc. is completed (for example, paper discharge). Completion, job completion), and stores intermediate or temporary data that is deleted afterwards.

【0012】[0012]

【発明の実施の形態】本発明の第1の態様に係る画像処
理装置は、同一のメモリ領域内に描画ワークエリアを夫
々展開する、相異なるページ記述言語を解釈して画素デ
ータを生成する複数の解釈手段とを備えた画像処理装置
であって、一の解釈手段は、他の解釈手段が前記描画ワ
ークエリアとして前記メモリ領域の一部を占有している
場合であっても前記メモリ領域の空き領域を使って前記
ページ記述言語の解釈を開始し、解釈中に前記空き領域
が不足したならば前記他の解釈手段が前記描画ワークエ
リアを解放するまで前記解釈を待機することとした。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An image processing apparatus according to a first aspect of the present invention develops a plurality of drawing work areas in the same memory area, and interprets different page description languages to generate pixel data. And an interpreting means, wherein one interpreting means is provided in the memory area even when another interpreting means occupies a part of the memory area as the drawing work area. The interpretation of the page description language is started using a free area, and if the free area becomes insufficient during the interpretation, the interpretation is waited until the other interpreting means releases the drawing work area.

【0013】この構成により、一の解釈手段が解釈中に
メモリ不足が発生した場合に他の解釈手段が描画ワーク
エリアを解放して空き領域が拡大するまで一の解釈手段
によるページ記述言語の解釈を延期するので、他の解釈
手段がメモリ領域の一部を占有しているタイミングで一
の解釈手段が解釈を開始しても正常に印刷し、同一の印
刷データがホスト装置からの指示のタイミングによって
異なる印刷結果となるのを防止する。
With this configuration, if a memory shortage occurs during the interpretation by one of the interpreting means, the interpreting means interprets the page description language until the other interpreting means releases the drawing work area and expands the free area. Therefore, even if one interpreter starts interpretation at the timing when another interpreter occupies a part of the memory area, the printing is normally performed, and the same print data is transmitted at the timing of the instruction from the host device. To prevent different printing results.

【0014】本発明の第2の態様は、第1の態様に係る
画像処理装置において、解釈手段は、前記ページ記述言
語を中間言語に翻訳する翻訳手段と、前記中間言語を画
素データに変換する画素変換手段とで構成され、前記翻
訳手段は、前記中間言語を前記描画ワークエリアに蓄積
し、前記中間言語が不要になった後前記中間言語を削除
して前記描画ワークエリアを解放することとした。
According to a second aspect of the present invention, in the image processing apparatus according to the first aspect, the interpreting means translates the page description language into an intermediate language, and converts the intermediate language into pixel data. Pixel conversion means, wherein the translation means accumulates the intermediate language in the drawing work area, deletes the intermediate language after the intermediate language is no longer needed, and releases the drawing work area. did.

【0015】この構成により、中間言語によってメモリ
領域が一杯になっても、一の解釈手段の翻訳手段は、例
えば、印刷手段による印刷が完了して中間言語が不要に
なった後他の解釈手段が中間言語を削除して描画ワーク
エリアを解放して空き領域が拡大した後、翻訳を再開す
るので、他の解釈手段の中間言語がメモリ領域の一部を
占有しているタイミングで一の解釈手段が解釈を開始し
ても正常に処理することができる。
With this configuration, even if the memory area becomes full due to the intermediate language, the interpreting means of the one interpreting means can execute another interpreting means after the printing by the printing means is completed and the intermediate language becomes unnecessary. After the intermediate language is deleted and the drawing work area is released and the free area is expanded, the translation is restarted. Therefore, one interpretation is performed at the timing when the intermediate language of the other interpreter occupies a part of the memory area. Even if the means starts interpretation, it can be processed normally.

【0016】本発明の第3の態様は、第1または第2の
態様に係る画像処理装置において、メモリ領域に対する
データの格納を管理するメモリ管理部をさらに具備し、
前記メモリ管理部は、一の解釈手段が前記描画ワークエ
リアにデータの格納を要求した場合前記データを格納す
るに十分な空き領域がない場合、他の解釈手段が前記描
画ワークエリアとして前記メモリ領域の一部を占有して
いるか否か判定し、前記他の解釈手段が前記メモリ領域
を占有している場合、前記他の解釈手段が前記描画ワー
クエリアを解放するまで前記一の解釈手段に前記データ
を格納するのを待機させることとした。
According to a third aspect of the present invention, in the image processing apparatus according to the first or second aspect, the image processing apparatus further comprises a memory management unit for managing storage of data in a memory area,
The memory management unit is configured such that when one interpreting unit requests storage of data in the drawing work area, if there is not enough free space to store the data, another interpreting unit sets the memory area as the drawing work area. It is determined whether a part of the drawing work area is occupied, and if the other interpreting means occupies the memory area, the one interpreting means until the other interpreting means releases the drawing work area. We decided to wait for data to be stored.

【0017】この構成により、メモリ管理部の内部処理
により、他の解釈手段がメモリ領域の一部を占有してい
るか否か判定し、前記描画ワークエリアを解放するまで
一の解釈手段を待機させるので、一の解釈手段は、他の
解釈手段がメモリ領域の一部を占有しているか否か調べ
たり、その情報を蓄積する必要がない。
With this configuration, the internal processing of the memory management unit determines whether another interpreting unit occupies a part of the memory area, and causes one interpreting unit to wait until the drawing work area is released. Therefore, one interpreting means does not need to check whether another interpreting means occupies a part of the memory area or store the information.

【0018】本発明の第4の態様は、第1または第2の
態様に係る画像処理装置において、解釈手段は、データ
を格納するに際して描画ワークエリアに十分な空き領域
がない場合、他の解釈手段に対して前記描画ワークエリ
アとしてメモリ領域の一部を占有しているか否か問合
せ、前記他の解釈手段が前記メモリ領域の一部を占有し
ている場合前記他の解釈手段が前記描画ワークエリアを
解放したことを通知するまで前記データを格納するのを
待機することとした。
According to a fourth aspect of the present invention, in the image processing apparatus according to the first or second aspect, the interpreting means, when there is not enough free space in the drawing work area when storing data, performs another interpretation. Means as to whether or not a part of the memory area is occupied as the drawing work area; if the other interpreting means occupies a part of the memory area, the other The storage of the data is to be waited until the release of the area is notified.

【0019】この構成により、一の解釈手段の他に、メ
モリ領域の一部を占有しているか否か調べたり、その情
報を蓄積する手段を設ける必要がない。
With this configuration, it is not necessary to provide a means for checking whether or not a part of the memory area is occupied and for storing the information, in addition to the one interpretation means.

【0020】本発明の第5の態様は、第1または第2の
態様に係る画像処理装置において、一の解釈手段は、デ
ータを格納するに際して描画ワークエリアに十分な空き
領域がない場合、他の解釈手段に対して前記描画ワーク
エリアとしてメモリ領域の一部を占有しているか否か判
定し、前記他の解釈手段が前記メモリ領域の一部を占有
している場合前記描画ワークエリアを解放し得るような
前記他の解釈手段のステータス変化を検知するまで前記
データを格納するのを待機することとした。
According to a fifth aspect of the present invention, in the image processing apparatus according to the first or second aspect, one of the interpreting means is provided when there is not enough free space in the drawing work area when storing data. The interpreting means determines whether or not a part of the memory area is occupied as the drawing work area, and releases the drawing work area if the other interpreting means occupies a part of the memory area. The storage of the data is waited until a possible change in the status of the other interpreting means is detected.

【0021】この構成により、一の解釈手段の他に、メ
モリ領域の一部を占有しているか否か調べたり、その情
報を蓄積する手段を設ける必要がない。
With this configuration, it is not necessary to provide a means for checking whether or not a part of the memory area is occupied and for storing the information in addition to the one interpretation means.

【0022】本発明の第6の態様は、請求項1から請求
項5のいずれかに係る画像処理装置を搭載した印刷装置
である。
According to a sixth aspect of the present invention, there is provided a printing apparatus equipped with the image processing apparatus according to any one of the first to fifth aspects.

【0023】本発明の第7の態様に係る画像処理装置の
制御方法は、同一のメモリ領域内に描画ワークエリアを
夫々展開する、相異なるページ記述言語を解釈して画素
データを生成する複数の解釈手段とを備えた画像処理装
置の制御方法であって、一の解釈手段に、他の解釈手段
が前記描画ワークエリアとして前記メモリ領域の一部を
占有している場合であっても前記メモリ領域の空き領域
を使って前記ページ記述言語の解釈を開始させ、解釈中
に前記空き領域が不足したならば前記他の解釈手段が前
記描画ワークエリアを解放するまで前記解釈を待機させ
ることとした。
A method for controlling an image processing apparatus according to a seventh aspect of the present invention is a method for controlling a plurality of image processing devices, each of which develops a drawing work area in the same memory area and interprets different page description languages to generate pixel data. A method for controlling an image processing apparatus, comprising: an interpreting means, wherein one interpreting means is used even when another interpreting means occupies a part of the memory area as the drawing work area. The interpretation of the page description language is started using the free area of the area, and if the free area is insufficient during the interpretation, the interpretation is made to wait until the other interpreting means releases the drawing work area. .

【0024】この方法により、一の解釈手段が解釈中に
メモリ不足が発生した場合に他の解釈手段が描画ワーク
エリアを解放して空き領域が拡大するまで一の解釈手段
によるページ記述言語の解釈を延期するので、他の解釈
手段がメモリ領域の一部を占有しているタイミングで一
の解釈手段が解釈を開始しても正常に印刷し、同一の印
刷データがホスト装置からの指示のタイミングによって
異なる印刷結果となるのを防止する。
According to this method, when a memory shortage occurs during the interpretation by one interpreting means, the other interpreting means releases the drawing work area and expands the free area until the free space is enlarged. Therefore, even if one interpreter starts interpretation at the timing when another interpreter occupies a part of the memory area, the printing is normally performed, and the same print data is transmitted at the timing of the instruction from the host device. To prevent different printing results.

【0025】本発明の第8の態様は、第7の態様に係る
画像処理装置の制御方法において、一の解釈手段が描画
ワークエリアにデータの格納を要求した場合に前記デー
タを格納するに十分な空き領域がない場合、他の解釈手
段が前記描画ワークエリアとしてメモリ領域の一部を占
有しているか否か判定し、前記他の解釈手段が前記メモ
リ領域の一部を占有している場合、前記他の解釈手段が
前記描画ワークエリアを解放するまで前記一の解釈手段
に前記データを格納するのを待機させることとした。
According to an eighth aspect of the present invention, in the control method of the image processing apparatus according to the seventh aspect, when one of the interpreting means requests storage of the data in the drawing work area, it is sufficient to store the data. If there is no free space, it is determined whether another interpreting means occupies a part of the memory area as the drawing work area, and if the other interpreting means occupies a part of the memory area. The one interpreting means waits for storing the data until the other interpreting means releases the drawing work area.

【0026】この方法により、一の解釈手段は、他の解
釈手段がメモリ領域の一部を占有しているか否か調べた
り、その情報を蓄積する必要がない。
According to this method, one interpreting means does not need to check whether or not another interpreting means occupies a part of the memory area or to accumulate the information.

【0027】本発明の第9の態様は、第7の態様に係る
画像処理装置の制御方法において、データを格納するに
際して描画ワークエリアに十分な空き領域がない場合、
一の解釈手段に、他の解釈手段に対して前記描画ワーク
エリアとしてメモリ領域の一部を占有しているか否か問
合せ、前記他の解釈手段が前記メモリ領域を占有してい
る場合前記他の解釈手段が前記描画ワークエリアを解放
したことを通知するまで前記データを格納するのを待機
させることとした。
According to a ninth aspect of the present invention, in the control method of the image processing apparatus according to the seventh aspect, when there is not enough free space in the drawing work area when storing data,
Inquiring to one interpreting means whether or not another interpreting means occupies a part of the memory area as the drawing work area; if the other interpreting means occupies the memory area, the other The storage of the data is waited until the interpreting means notifies that the drawing work area has been released.

【0028】この方法により、一の解釈手段の他に、メ
モリ領域の一部を占有しているか否か調べたり、その情
報を蓄積する手段を設ける必要がない。
According to this method, there is no need to provide a means for checking whether or not a part of the memory area is occupied or for storing the information, in addition to one interpretation means.

【0029】本発明の第10の態様は、第7の態様に係
る画像処理装置の制御方法において、データを格納する
に際して描画ワークエリアに十分な空き領域がない場
合、一の解釈手段に、他の解釈手段に対して前記描画ワ
ークエリアとしてメモリ領域の一部を占有しているか否
か判定させ、前記他の解釈手段が前記メモリ領域の一部
を占有している場合前記描画ワークエリアを解放し得る
ような前記他の解釈手段のステータス変化を検知するま
で前記データを格納するのを待機させることとした。
According to a tenth aspect of the present invention, in the control method of the image processing apparatus according to the seventh aspect, if there is not enough free space in the drawing work area when storing data, one interpretation means is added to the other. Of the memory area as the drawing work area, and releases the drawing work area when the other interpreting means occupies a part of the memory area. The storage of the data is waited until a status change of the other interpreting means is detected.

【0030】この方法により、一の解釈手段の他に、メ
モリ領域の一部を占有しているか否か調べたり、その情
報を蓄積する手段を設ける必要がない。
According to this method, there is no need to provide a means for checking whether or not a part of the memory area is occupied or for storing the information in addition to one interpreting means.

【0031】本発明の第11の態様は、同一のメモリ領
域内に描画ワークエリアを夫々展開する、相異なるペー
ジ記述言語を解釈して画素データを生成する複数の解釈
手段とを備えた画像処理装置の制御するプログラムであ
って、一の解釈手段に、他の解釈手段が前記描画ワーク
エリアとして前記メモリ領域の一部を占有している場合
であっても前記メモリ領域の空き領域を使って前記ペー
ジ記述言語の解釈を開始させ、解釈中に前記空き領域が
不足したならば前記他の解釈手段が前記描画ワークエリ
アを解放するまで前記解釈を待機させるプログラムを記
録したコンピュータ読み取り可能な記憶媒体である。
According to an eleventh aspect of the present invention, there is provided an image processing system comprising: a plurality of interpreting means for developing drawing work areas in the same memory area and interpreting different page description languages to generate pixel data. A program controlled by the apparatus, wherein one interpreting means uses a free area of the memory area even when another interpreting means occupies a part of the memory area as the drawing work area. A computer-readable storage medium storing a program for starting the interpretation of the page description language, and waiting for the interpretation until the other interpretation means releases the drawing work area if the free space is insufficient during the interpretation. It is.

【0032】本発明の第12の態様は、第11の態様に
おいて、プログラムは、一の解釈手段が描画ワークエリ
アにデータの格納を要求した場合に前記データを格納す
るに十分な空き領域がない場合、他の解釈手段が前記描
画ワークエリアとしてメモリ領域の一部を占有している
か否か判定し、前記他の解釈手段が前記メモリ領域の一
部を占有している場合、前記他の解釈手段が前記描画ワ
ークエリアを解放するまで前記一の解釈手段に前記デー
タを格納するのを待機させることとした。
In a twelfth aspect of the present invention based on the eleventh aspect, the program is such that when one of the interpretation means requests storage of the data in the drawing work area, there is not enough free space to store the data. If the other interpretation means occupies a part of the memory area as the drawing work area, it is determined whether the other interpretation means occupies a part of the memory area. The one interpreting means waits for storing the data until the means releases the drawing work area.

【0033】本発明の第13の態様は、プログラムは、
データを格納するに際して描画ワークエリアに十分な空
き領域がない場合、一の解釈手段に、他の解釈手段に対
して前記描画ワークエリアとしてメモリ領域の一部を占
有しているか否か問合せ、前記他の解釈手段が前記メモ
リ領域を占有している場合前記他の解釈手段が前記描画
ワークエリアを解放したことを通知するまで前記データ
を格納するのを待機させることとした。
According to a thirteenth aspect of the present invention, a program comprises:
If there is not enough free space in the drawing work area when storing data, one interpreting means is inquired to another interpreting means as to whether or not a part of the memory area is occupied as the drawing work area. When another interpreting means occupies the memory area, the storing of the data is waited until the other interpreting means notifies that the drawing work area has been released.

【0034】本発明の第14の態様は、第11の態様に
おいて、プログラムは、データを格納するに際して描画
ワークエリアに十分な空き領域がない場合、一の解釈手
段に、他の解釈手段に対して前記描画ワークエリアとし
てメモリ領域の一部を占有しているか否か判定させ、前
記他の解釈手段が前記メモリ領域の一部を占有している
場合前記描画ワークエリアを解放し得るような前記他の
解釈手段のステータス変化を検知するまで前記データを
格納するのを待機させることとした。
According to a fourteenth aspect of the present invention, in the eleventh aspect, the program is arranged such that if there is not enough free space in the drawing work area when storing data, the program is sent to one interpreting means and to another interpreting means. It is determined whether or not a part of the memory area is occupied as the drawing work area, and the drawing work area can be released when the other interpreting means occupies a part of the memory area. The storage of the data is waited until a status change of another interpreting means is detected.

【0035】以下、本発明の実施の形態1,2につい
て、図面を参照して詳細に説明する。
Hereinafter, embodiments 1 and 2 of the present invention will be described in detail with reference to the drawings.

【0036】(実施の形態1)図1は、本発明の実施の
形態1に係る印刷装置としてのレーザビームプリンタが
動作するネットワークを示す概略図である。レーザビー
ムプリンタ1は、複数の、相異なる伝送路を介して複数
のホスト装置に接続されている。すなわち、レーザビー
ムプリンタ1は、パラレルケーブル2を介してパーソナ
ルコンピュータ(以下、PCという)3に接続されてい
る。また、IEEE1394等のシリアルケーブル4を
介して分離型コピア(スキャナ)5に接続されている。
また、LAN、インタネット等のコンピュータネットワ
ーク6を介してPC7,8が接続されている。また、I
rDAに準拠した赤外線通信路(以下、IrDAとい
う)9などの無線通信路を介してモバイルPC10が接
続されている。さらに、アナログ・デジタル公衆電話回
線網(PSTN/ISDN)11を介してFAX12が
接続されている。
(Embodiment 1) FIG. 1 is a schematic diagram showing a network in which a laser beam printer as a printing apparatus according to Embodiment 1 of the present invention operates. The laser beam printer 1 is connected to a plurality of host devices via a plurality of different transmission paths. That is, the laser beam printer 1 is connected to a personal computer (hereinafter, referred to as PC) 3 via the parallel cable 2. Further, it is connected to a separation type copier (scanner) 5 via a serial cable 4 such as IEEE1394.
PCs 7 and 8 are connected via a computer network 6 such as a LAN and the Internet. Also, I
The mobile PC 10 is connected via a wireless communication path such as an infrared communication path (hereinafter referred to as IrDA) 9 conforming to rDA. Further, a FAX 12 is connected via an analog / digital public telephone network (PSTN / ISDN) 11.

【0037】図2は、本実施の形態1に係るレーザビー
ムプリンタの内部構造図である。レーザビームプリンタ
1には、給紙カセット101が底部に設置されている。
給紙カセット101内の記録紙束102から最上面の記
録紙がピックアップローラ103によって取り出され
る。給紙カセット101から取り出された記録紙は、レ
ジストローラ104へ渡される。レジストローラ104
の先には、転写ユニット105が設置されている。
FIG. 2 is an internal structural view of the laser beam printer according to the first embodiment. The laser beam printer 1 has a paper feed cassette 101 installed at the bottom.
The uppermost recording sheet is taken out of the recording sheet bundle 102 in the sheet cassette 101 by the pickup roller 103. The recording paper taken out of the paper feed cassette 101 is transferred to a registration roller 104. Registration roller 104
, A transfer unit 105 is provided.

【0038】転写ユニット105は、4色の画像が重ね
られる転写フィルム106と廃トナーのクリーニング装
置107とを有し、それらがカバー108で覆われてい
る。転写フィルム106が記録紙に接触する部分に転写
フィルム搬送ローラ109が配置されている。この転写
フィルム搬送ローラ109に転写ローラ110が対向し
て設置されている。
The transfer unit 105 has a transfer film 106 on which images of four colors are superimposed and a cleaning device 107 for waste toner, which are covered with a cover 108. A transfer film transport roller 109 is disposed at a portion where the transfer film 106 contacts the recording paper. A transfer roller 110 is provided opposite to the transfer film transport roller 109.

【0039】3本の転写フィルム搬送ローラ109の内
側には、廃トナーボックス111が格納されている。廃
トナーボックス111は、クリーニング装置107と図
示しないパイプを介して接続されている。クリーニング
装置107が転写フィルム106から除去した廃トナー
がこのパイプを通って廃トナーボックス111に収納さ
れるようになっている。
A waste toner box 111 is stored inside the three transfer film transport rollers 109. The waste toner box 111 is connected to the cleaning device 107 via a pipe (not shown). The waste toner removed from the transfer film 106 by the cleaning device 107 passes through this pipe and is stored in the waste toner box 111.

【0040】プロセスユニット113が転写ユニット1
05に隣接して設置されている。プロセスユニット11
3は、4色のプロセスカートリッジ114を備える。レ
ーザ駆動装置、ポリゴンミラー等で構成されるLSU1
15によって、カートリッジ毎に設けられた感光体11
6に静電潜像が形成される。感光体116に形成された
静電潜像は、転写フィルム106の同一位置に重ねられ
て画像が形成される。転写フィルム106に形成された
画像は、転写フィルム搬送ローラ109と転写ローラ1
10との間を通過する際、記録紙に転写される。
The process unit 113 is the transfer unit 1
It is installed adjacent to 05. Process unit 11
Reference numeral 3 includes a process cartridge 114 of four colors. LSU1 composed of laser drive device, polygon mirror, etc.
15, the photoconductor 11 provided for each cartridge
6, an electrostatic latent image is formed. The electrostatic latent image formed on the photoconductor 116 is overlaid on the same position on the transfer film 106 to form an image. The image formed on the transfer film 106 is transferred to the transfer film transport roller 109 and the transfer roller 1.
10 and is transferred to a recording paper.

【0041】画像が転写された記録紙の搬送先には、定
着ユニット117が設けられている。定着ユニット11
7は、定着ローラ118および加圧ローラ119と、定
着ローラ118に残留したトナーの剥離性を高めるオイ
ルを塗布するクリーニングローラ120とを備えてい
る。定着ユニット117の出口に排出ローラ121が設
けられている。排出ローラ121の近傍に排出センサ1
22が設けられている。排出センサ122は、記録紙の
排出が完了したか検出する。
A fixing unit 117 is provided at the destination of the recording paper on which the image has been transferred. Fixing unit 11
Reference numeral 7 includes a fixing roller 118 and a pressure roller 119, and a cleaning roller 120 for applying oil for improving the releasability of the toner remaining on the fixing roller 118. A discharge roller 121 is provided at an exit of the fixing unit 117. Discharge sensor 1 near discharge roller 121
22 are provided. The discharge sensor 122 detects whether the discharge of the recording paper has been completed.

【0042】図3は、本実施の形態1に係るレーザビー
ムプリンタのプリンタコントローラを示すブロック図で
ある。
FIG. 3 is a block diagram showing a printer controller of the laser beam printer according to the first embodiment.

【0043】プリンタコントローラ200において、R
OM201は、フォントデータ、制御プログラムコード
および初期設定パラメータなどを記憶する。RAM20
2は、送受信データを格納する送受信バッファ領域、言
語データを解釈して得られるDLデータを格納するDL
格納メモリ領域、DLデータをバンド毎にラスタライズ
して得られるバンドデータを格納するバンドメモリ領
域、環境変数データベース(DB)などを有する。
In the printer controller 200, R
The OM 201 stores font data, control program codes, initialization parameters, and the like. RAM 20
Reference numeral 2 denotes a transmission / reception buffer area for storing transmission / reception data, and a DL for storing DL data obtained by interpreting language data.
It has a storage memory area, a band memory area for storing band data obtained by rasterizing DL data for each band, an environment variable database (DB), and the like.

【0044】また、プリンタコントローラ200は、L
ANインタフェース203、パラレルインタフェース2
04、IEEE1394インタフェース205およびI
rDAインタフェース206の各種外部I/Oインタフ
ェースを備えている。さらに、プリンタコントローラ2
00は、FAXユニット207のようなオプションボー
ドを内部接続するためのオプションインタフェース20
8を備えている。
Further, the printer controller 200
AN interface 203, parallel interface 2
04, IEEE 1394 interface 205 and I
Various external I / O interfaces of the rDA interface 206 are provided. Further, the printer controller 2
00 is an option interface 20 for internally connecting an option board such as the FAX unit 207.
8 is provided.

【0045】また、プリンタコントローラ200は、図
2に示す給紙機構、搬送機構、感光・現像機構、排紙機
構などのプリンタエンジン209を接続するためのプリ
ンタエンジンインタフェース210を備えている。ま
た、プリンタコントローラ200には、ディスプレイ、
ボタン、キーを備えた操作パネル211が接続されてい
る。
The printer controller 200 has a printer engine interface 210 for connecting a printer engine 209 such as a paper feed mechanism, a transport mechanism, a photosensitive / developing mechanism, and a paper discharge mechanism shown in FIG. The printer controller 200 includes a display,
An operation panel 211 having buttons and keys is connected.

【0046】さらに、上記各構成要素はシステムバス2
12を介して接続され、プリンタコントローラ200
は、これらの各構成要素を制御するCPU220を備え
ている。
Further, each of the above components is connected to the system bus 2.
12 and the printer controller 200
Has a CPU 220 for controlling these components.

【0047】図4は、上記実施の形態1に係るレーザビ
ームプリンタの主要なソフトウエア構成を示すブロック
図である。上記実施の形態1に係るレーザビームプリン
タは、2つのページ記述言語を解釈し、印刷することが
できるものとする。
FIG. 4 is a block diagram showing the main software configuration of the laser beam printer according to the first embodiment. The laser beam printer according to the first embodiment can interpret and print two page description languages.

【0048】このレーザビームプリンタ1は、ホスト装
置との間で双方向通信を行う。すなわち、ホスト装置か
らレーザビームプリンタ1へは、印刷データとしてホス
ト装置のプリンタドライバが生成したPDLデータおよ
びジョブ制御/ステータス管理言語データが送信され、
レーザビームプリンタ1の設定値(システムパラメー
タ)の更新要求、現在設定値の問合せ要求、レーザビー
ムプリンタ1のステータス要求などとしてジョブ制御/
ステータス管理言語データが送信される。これらのデー
タをフォワードデータと呼ぶ。
The laser beam printer 1 performs bidirectional communication with a host device. That is, PDL data and job control / status management language data generated by the printer driver of the host device are transmitted from the host device to the laser beam printer 1 as print data,
Job control / renewal of a setting value (system parameter) of the laser beam printer 1, an inquiry request of a current setting value, a status request of the laser beam printer 1, etc.
Status management language data is sent. These data are called forward data.

【0049】一方、レーザビームプリンタ1からホスト
装置へは、レーザビームプリンタ1のステータス(ジャ
ム発生、トナー残量状況等)や、現在設定値や装置プロ
ファイル(モデル名、カセット段数、オプション設備
等)などの問合せ応答としてのジョブ制御/ステータス
管理言語データが送信される。これらのデータをリバー
スデータまたは装置状態データと呼ぶ。ステータスに
は、印刷異常を示すエラー情報、印刷が正常に完了した
ことを示すコンプリート情報、現在印刷が進行中である
ことやレーザビームプリンタ1が待機であることなどを
示すカレントステータス情報などが含まれる。
On the other hand, from the laser beam printer 1 to the host device, the status of the laser beam printer 1 (jam occurrence, remaining toner amount, etc.), current set values and device profiles (model name, number of cassette stages, optional equipment, etc.) The job control / status management language data is transmitted as a response to the inquiry such as. These data are called reverse data or device status data. The status includes error information indicating a printing error, complete information indicating that printing has been completed normally, current status information indicating that printing is currently in progress, that the laser beam printer 1 is on standby, and the like. It is.

【0050】インタフェースタスク(以下、I/F・タ
スクという)301は、フォワードデータの受信および
リバースデータ送信を制御する。
An interface task (hereinafter referred to as an I / F task) 301 controls reception of forward data and transmission of reverse data.

【0051】I/F・タスク301は、上記インタフェ
ース203〜206のそれぞれについて用意された各種
インタフェースドライバを管理する複数の下位タスクを
含んでいる。下位タスクは、例えば、ネットワークタス
ク、パラレル・タスク、IEEE1394タスクおよび
IrDAタスクなどである。
The I / F task 301 includes a plurality of lower tasks for managing various interface drivers prepared for each of the interfaces 203 to 206. The lower tasks are, for example, a network task, a parallel task, an IEEE 1394 task, and an IrDA task.

【0052】ジョブ制御/ステータス管理言語・タスク
(以下、JS・タスクという)302は、フォワード方
向としては、受信した印刷データの中からジョブ制御/
ステータス管理言語データを解釈する一方で、PDLデ
ータを抽出し、PDL言語が何かを判定し、該当するP
DL・タスク303に渡す。JS・タスク302は、印
刷データ中でPDLデータの上に付加された、印刷ジョ
ブ制御情報(部数、解像度、ジョブ名称など)を取得
し、取得した印刷ジョブ制御情報を環境変数として、後
述するメイン・タスク304の環境変数データベース3
06に保存する。
The job control / status management language / task (hereinafter referred to as “JS task”) 302 has a job control / status
While interpreting the status management language data, extract PDL data, determine what the PDL language is,
Transfer to DL task 303. The JS / task 302 acquires print job control information (number of copies, resolution, job name, and the like) added above the PDL data in the print data, and uses the acquired print job control information as an environment variable to execute a main・ Environment variable database 3 of task 304
06.

【0053】また、リバース方向としては、環境変数デ
ータベース306から読み出した環境変数および後述の
プリンタ・タスク305からのステータスをジョブ制御
/ステータス管理言語データとしてI/F・タスク30
1へ渡す。
As the reverse direction, the environment variables read from the environment variable database 306 and the status from the printer task 305 described later are used as job control / status management language data as the I / F task 30.
Pass to 1.

【0054】ジョブ制御/ステータス管理言語は、例え
ば、ヒューレッドパッカード社のPrinter Jo
b Language (PJL)や、国際標準のSi
mple Network Management P
rotocol(SNMP)である。
The job control / status management language is, for example, Printer Job of Hewlett-Packard Company.
b Language (PJL) and international standard Si
Mple Network Management P
protocol (SNMP).

【0055】図5は、上記実施の形態1に係るレーザビ
ームプリンタにおける、各タスクとメモリ管理部との関
係を示したブロック図である。
FIG. 5 is a block diagram showing the relationship between each task and the memory management unit in the laser beam printer according to the first embodiment.

【0056】(次文と同じなので削除)言語1・タスク
303Aは、JS・タスク302から渡された言語1か
らなるPDLデータをページ毎に解釈、ラスタライズを
する。言語1・タスク303Aは、言語1データを解釈
してDLデータを生成するインタプリタ(IT)・タス
ク401Aと、DLデータをバンドデータに変換するラ
スタライズ(RAS)・タスク402Aとで構成されて
いる。インタプリタ・タスク401Aにより生成された
DLデータは、RAM202のDL格納メモリ領域に一
時的に格納された後、ラスタライズ・タスク402Aに
より読み出される。ラスタライズ・タスク402AがD
Lデータを変換したバンドデータは、RAM202のバ
ンドメモリ領域に格納される。言語2・タスク303B
も言語1・タスク303Aと同様の機能を有するインタ
プリタ・タスク401Bおよびラスタライズ・タスク4
02Bを備え、JS・タスク302から渡された言語2
データを解釈する。
The language 1 task 303A interprets and rasterizes PDL data of language 1 passed from the JS task 302 for each page. The language 1 task 303A includes an interpreter (IT) task 401A that interprets language 1 data to generate DL data, and a rasterize (RAS) task 402A that converts the DL data into band data. The DL data generated by the interpreter task 401A is temporarily stored in the DL storage memory area of the RAM 202, and is thereafter read by the rasterization task 402A. Rasterize task 402A is D
The band data obtained by converting the L data is stored in the band memory area of the RAM 202. Language 2 Task 303B
Also has an interpreter task 401B and a rasterizing task 4 having the same functions as the language 1 task 303A.
02B, language 2 passed from JS task 302
Interpret the data.

【0057】メイン・タスク304は、レーザビームプ
リンタ1全体の動作を決定すると共に、環境変数/装置
設定の管理、オンライン/オフラインの指示、プリント
出力制御等を行う。
The main task 304 determines the operation of the entire laser beam printer 1 and manages environment variables / device settings, instructs online / offline, and controls print output.

【0058】また、メイン・タスク304は、環境変数
データベース306を備え、この環境変数データベース
306は、JS・タスク302が取得した環境変数やパ
ネル入力された環境変数を管理する。
The main task 304 includes an environment variable database 306. The environment variable database 306 manages the environment variables obtained by the JS task 302 and the environment variables input to the panel.

【0059】プリンタ・タスク305は、言語・タスク
303A、303Bのラスタライズ・タスク402A、
Bが変換したバンドデータをバンドメモリ領域から読み
出し、プリンタエンジン209を制御して印刷を行う。
また、プリンタ・タスク305は、JS・タスク302
からのステータス要求に応答して、または、ステータス
に変化があったときに随時、現在のプリンタエンジン2
09各部のステータスを取得し、JS・タスク302へ
応答する。
The printer task 305 includes a rasterization task 402A of the language tasks 303A and 303B,
The band data converted by B is read from the band memory area, and the printer engine 209 is controlled to perform printing.
Also, the printer task 305 is the JS task 302
The current printer engine 2 in response to a status request from
09 to obtain the status of each unit and respond to the JS task 302.

【0060】メモリ管理部307は、I/F・タスク3
01、JS・タスク302、および、メイン・タスク3
04からの制御命令に従って、RAM202内に送受信
バッファ領域、DL格納メモリ領域、バンドメモリ領
域、フォントキャッシュ用の領域などの各種領域を確保
する。
The memory management unit 307 has an I / F task 3
01, JS task 302 and main task 3
In accordance with the control command from the CPU 04, various areas such as a transmission / reception buffer area, a DL storage memory area, a band memory area, and a font cache area are secured in the RAM 202.

【0061】ホスト装置から新しいジョブ(ジョブ制御
/ステータス管理言語データ+PDLデータ)が来る
と、JS・タスク302は、このうちジョブ制御/ステ
ータス管理言語データを解析する。解析した結果をジョ
ブ情報(ドキュメント名、部数、言語種別など)として
記憶するためメモリ管理部307にメモリの取得を要求
する。この要求は、図5中に示すようにメモリ管理部3
07の<Create_Job>関数を呼び出すことにより行わ
れる。JS・タスク302は、メモリ管理部307から
獲得したメモリにジョブ情報を格納する。その後、JS
・タスク302は、抽出したPDLデータを該当する方
の言語・タスク303A、303Bに渡す。ここでは、
言語は言語2であり、言語2・タスク303Bに渡した
と仮定して説明する。
When a new job (job control / status management language data + PDL data) comes from the host device, the JS / task 302 analyzes the job control / status management language data. It requests the memory management unit 307 to acquire a memory in order to store the analyzed result as job information (document name, number of copies, language type, etc.). This request is sent to the memory management unit 3 as shown in FIG.
07 <Create_Job> function is called. The JS task 302 stores job information in the memory acquired from the memory management unit 307. After that, JS
The task 302 transfers the extracted PDL data to the corresponding language task 303A or 303B. here,
The description is made on the assumption that the language is language 2 and has been passed to language 2 task 303B.

【0062】ジョブの開始を知った言語2・タスク30
3Bは、新しいジョブの開始をメイン・タスク304に
通知する。この後、言語・タスク303B内では、1ペ
ージごとに、インタプリタ・タスク401BでのPDL
データの解釈とラスタライザタスクでのバンド生成を繰
り返す。生成されたバンドデータはメイン・タスク30
4を経由してプリンタ・タスク305から記録される。
Language 2 task 30 that knows the start of the job
3B notifies main task 304 of the start of a new job. Thereafter, in the language / task 303B, the PDL in the interpreter / task 401B is set for each page.
Repeat data interpretation and band generation in the rasterizer task. The generated band data is stored in the main task 30
4 from the printer task 305.

【0063】ここでインタプリタ・タスク401Bは、
PDLデータを解釈して、1ページ分の情報(用紙サイ
ズ、給紙カセット指定など)をメモリ管理部307から
獲得したメモリにページ情報として格納する。また、必
要に応じて描画情報(DL、パレット、キャッシュされ
たフォントなど)をメモリ管理部307から取得したメ
モリに格納する。描画情報は、DL群などの1ページの
印刷が完了すれば消去しても良いデータ(以下、描画情
報タイプAという)と、パレット、ダウンロードフォン
ト、キャッシュされたフォント、ワークバンドなどの、
複数のページにわたって使用され、ジョブが完了するま
で保存しておくデータ(以下、描画情報タイプBとい
う)に大別される。インタプリタ・タスク401Bは、
図5中、で示すように、メモリ管理部307の<Crea
te_Page>関数を呼び出して、ページ情報を格納するメ
モリを取得する。一方、−a、−bで示すように、
<Create_DrawWorK>関数を呼び出して描画情報を格納
するメモリを呼び出し、このとき、タイプAであればa
を、タイプBであればbをそれぞれ引数とすることで、
描画情報を格納するためのメモリを区別している。
Here, the interpreter task 401B
By interpreting the PDL data, information of one page (paper size, sheet cassette designation, etc.) is stored as page information in the memory obtained from the memory management unit 307. Also, drawing information (DL, palette, cached font, etc.) is stored in the memory acquired from the memory management unit 307 as necessary. The drawing information includes data (hereinafter referred to as drawing information type A) that can be deleted when printing of one page such as a DL group is completed, and palettes, download fonts, cached fonts, work bands, and the like.
Data is used over a plurality of pages and is stored until the job is completed (hereinafter referred to as drawing information type B). The interpreter task 401B
In FIG. 5, as shown by <Crea> in the memory management unit 307,
Call the te_Page> function to get the memory that stores the page information. On the other hand, as shown by -a and -b,
Call the <Create_DrawWorK> function to call the memory that stores the drawing information.
And, for type B, b as an argument.
The memory for storing the drawing information is distinguished.

【0064】メイン・タスク304から排紙完了通知
(図5中)を受けた言語2・タスク303Bは、1ペ
ージ分のページ情報と描画情報タイプAを削除するため
に、メモリ管理部307にそれぞれ削除を指示する。こ
の指示は、図5中−a、−bで示すように、<Dele
te_Page>関数および<Delete_DrawWork>関数(引数
a)を呼び出すことにより行われる。
The language 2 task 303 B, which has received the paper ejection completion notification (FIG. 5) from the main task 304, sends the page information for one page and the drawing information type A to the memory management unit 307, respectively. Instruct deletion. This instruction is, as shown by -a and -b in FIG.
This is performed by calling the <te_Page> function and the <Delete_DrawWork> function (argument a).

【0065】また、排紙完了通知がジョブの最終ページ
のものであると判断すると、言語2・タスク303Bは
エンドジョブ通知(図中)をメイン・タスク304に
送信するとともに、描画情報タイプBの削除をメモリ管
理部に削除指示する。この削除指示は、<Delete_DrawW
ork>関数(引数b)を呼び出すことにより行われる(図
中)。
If it is determined that the paper ejection completion notification is that of the last page of the job, the language 2 task 303B transmits an end job notification (shown in the figure) to the main task 304, The deletion is instructed to the memory management unit. This delete instruction is <Delete_DrawW
ork> by calling a function (argument b) (in the figure).

【0066】エンドジョブ通知を受け取ったメイン・タ
スク304は、メモリ管理部307に対して、ジョブ情
報の削除指示するために、<Delete_Job>関数(図5中
)を呼び出す。
The main task 304, having received the end job notification, calls the <Delete_Job> function (in FIG. 5) to instruct the memory management unit 307 to delete the job information.

【0067】このように、JS・タスク302、言語・
タスク303A、Bおよびメイン・タスク304は、一
つのグローバルメモリ領域内から必要なメモリを取得
し、必要がなくなればこれを解放している。
As described above, the JS task 302, the language
The tasks 303A and 303B and the main task 304 acquire necessary memory from one global memory area, and release the memory when it becomes unnecessary.

【0068】上述のような本実施の形態1でのメモリ管
理について、インタプリタ・タスクのレベルで見ると、
インタプリタ・タスク401A、Bは、PDLコマンド
を解釈したときに、ページ情報や描画情報をメモリに書
き込む必要が生じた場合、描画情報を格納するためのエ
リア(以下、情報格納エリアという)を取得することを
メモリ管理部307に要求する。この要求はメモリ取得
関数を用いて行われる。メモリ取得関数には、引数とし
て必要なメモリサイズが付加されている。
Regarding the memory management in the first embodiment as described above, looking at the interpreter task level,
When interpreting the PDL command, if interpreter tasks 401A and 401B need to write page information and drawing information to a memory, they acquire an area for storing drawing information (hereinafter referred to as an information storage area). Request to the memory management unit 307. This request is made using a memory acquisition function. The required memory size is added to the memory acquisition function as an argument.

【0069】メモリ管理部307は、インタプリタ・タ
スク401A、Bに要求された情報格納エリアをRAM
202のグローバルメモリ領域603中の空きから取得
することを試みる。メモリ管理部307は、この試みの
結果について、インタプリタ・タスク401A,Bに対
して応答する。応答は、完了コードにOKまたはNGを
セットし、これを返す。完了コードOKの場合には情報
格納エリアのポインタ(開始アドレス)が付加される。
The memory management unit 307 stores the information storage area requested by the interpreter tasks 401A and 401B in RAM.
Attempt to acquire from a free space in the global memory area 603 of 202. The memory manager 307 responds to the interpreter tasks 401A, B with the result of this attempt. The response sets OK or NG to the completion code and returns this. If the completion code is OK, a pointer (start address) of the information storage area is added.

【0070】また、メモリ管理部307は、前ジョブ判
定を行う。前ジョブ判定とは、グローバルメモリ領域6
03に別言語の前ジョブがあるか否かの判定である。こ
の判定は、例えば、JS・タスク302がメモリに格納
したジョブ情報の中にある言語種別フラグを調べること
により実現することができる。
The memory management unit 307 performs a previous job determination. The previous job determination means that the global memory area 6
This is to determine whether or not there is a previous job in another language in 03. This determination can be realized by, for example, checking the language type flag in the job information stored in the memory by the JS task 302.

【0071】図6は、上記実施の形態1に係るレーザビ
ームプリンタにおけるメインメモリのメモリマップを示
す図である。レーザビームプリンタ1は、起動時にメイ
ン・タスク304がROM201に格納されたヘッダフ
ァイルに記述された設定値に基いて、図6に示すよう
に、RAM202上に、システム管理領域601、プロ
グラム領域602、グローバルメモリ領域603、送受
信バッファ604、バンドメモリ605、OSワーク領
域606および内部フォント領域607を夫々割り当て
る。言語1・タスク303Aおよび言語2・タスク30
3Bは、グローバルメモリ領域603に必要なメモリを
随時取得および解放しながら、共用している。
FIG. 6 is a diagram showing a memory map of the main memory in the laser beam printer according to the first embodiment. When the laser beam printer 1 is activated, the main task 304 executes a system management area 601, a program area 602, and the like on the RAM 202 based on the set values described in the header file stored in the ROM 201 as shown in FIG. The global memory area 603, the transmission / reception buffer 604, the band memory 605, the OS work area 606, and the internal font area 607 are respectively allocated. Language 1 task 303A and Language 2 task 30
3B shares the memory required for the global memory area 603 while acquiring and releasing the memory as needed.

【0072】次に、上記のようなソフトウエア構成を有
するレーザビームプリンタ1がホスト装置から送信され
た印刷ジョブを処理するフローについて説明する。
Next, a flow in which the laser beam printer 1 having the above-described software configuration processes a print job transmitted from the host device will be described.

【0073】図7は、上記実施の形態1に係るレーザビ
ームプリンタのインタプリタ・タスクの解釈処理手順を
示すフロー図である。図8は、上記実施の形態1に係る
レーザビームプリンタのメモリ管理部でのメモリ取得手
順を示すフロー図である。まず、言語1・タスク303
Aが言語1の前ジョブの最終ページを処理中に、言語2
の印刷データを受信し、言語2・タスク303Bが現ジ
ョブを処理する場合であって、言語1・タスク303A
が格納した描画情報等でグローバルメモリ領域603の
一部が占有されているが言語2・タスク303Bが起動
するのに十分な空き領域がある場合について説明する。
FIG. 7 is a flowchart showing the interpretation processing procedure of the interpreter task of the laser beam printer according to the first embodiment. FIG. 8 is a flowchart showing a memory acquisition procedure in the memory management unit of the laser beam printer according to the first embodiment. First, language 1 task 303
A is processing the last page of the previous job in language 1 and language 2
Is received when the language 2 task 303B processes the current job, and the language 1 task 303A
A case where a part of the global memory area 603 is occupied by the drawing information and the like stored by the user but there is a sufficient free area for activating the language 2 task 303B will be described.

【0074】図7に示すように、言語2・タスク303
Bのインタプリタ・タスク401Bは、PDLデータの
コマンドを1つ解釈する(ST701)。次に、コマン
ドが改ページコマンドまたはジョブ完了コマンドか否か
判定する(ST702)。改ページコマンドまたはジョ
ブ完了コマンドでなければ、情報格納エリアをグローバ
ルメモリ領域603に取得する必要があるか否か判定す
る(ST703)。ここで、情報格納エリアの取得が不
要である場合(例えば、用紙サイズコマンドや給紙カセ
ット指定コマンドなど)、ST701に戻って次のPD
Lコマンドの解釈を行う。
As shown in FIG. 7, language 2 task 303
The interpreter task 401B of B interprets one PDL data command (ST701). Next, it is determined whether the command is a page break command or a job completion command (ST702). If it is not a page break command or a job completion command, it is determined whether or not the information storage area needs to be acquired in global memory area 603 (ST703). If it is not necessary to obtain the information storage area (for example, a paper size command or a paper cassette designation command), the process returns to ST701 to return to the next PD.
Interpret the L command.

【0075】一方、情報格納エリアの取得が必要である
場合、インタプリタ・タスク401Bは、メモリ管理部
307のメモリ取得関数を呼び出し(ST704)、メ
モリ管理部307の戻り値を見る(ST705)。
On the other hand, when it is necessary to acquire the information storage area, interpreter task 401B calls the memory acquisition function of memory management section 307 (ST704), and checks the return value of memory management section 307 (ST705).

【0076】図8に示すように、メモリ管理部307
は、呼び出しに応答して、メモリ取得関数の引数で指定
されたサイズの情報格納エリアの取得を試みる(ST8
01)。次いで、取得に成功するか否か判定する(ST
802)。
As shown in FIG. 8, the memory management unit 307
Responds to the call and attempts to acquire an information storage area of the size specified by the argument of the memory acquisition function (ST8).
01). Next, it is determined whether or not acquisition is successful (ST
802).

【0077】この例では、解釈開始の段階では、グロー
バルメモリ領域603に十分な空き領域があるので、メ
モリ管理部307はメモリ取得に成功する。そこで、メ
モリ管理部307は、インタプリタ・タスク401B
に、戻り値として、完了コード=OK、および、取得し
た情報格納エリアのポインタをセットし、これを返す
(ST803)。
In this example, at the stage of starting interpretation, there is a sufficient free area in the global memory area 603, so that the memory management unit 307 succeeds in acquiring the memory. Therefore, the memory management unit 307 sets the interpreter task 401B
As a return value, a completion code = OK and a pointer of the acquired information storage area are set and returned (ST803).

【0078】再び図7に戻り、インタプリタ・タスク4
01Bは、メモリ管理部307から戻り値を受け取る
と、完了コードがOKか否か判定する(ST705)。
ここでは、完了コードはOKであるので、情報格納エリ
アにページ情報や描画情報などの解釈の結果を格納する
(ST706)。そして、ST701に戻って、次のP
DLコマンドの解釈を開始する。
Returning again to FIG. 7, interpreter task 4
Upon receiving the return value from the memory management unit 307, 01B determines whether the completion code is OK (ST705).
Here, since the completion code is OK, the result of interpretation of page information, drawing information, and the like is stored in the information storage area (ST706). Then, returning to ST701, the next P
Start interpretation of the DL command.

【0079】このようにして、ST701〜ST706
を繰り返し、PDLコマンドの解釈およびメモリへの格
納を行っていくが、ある時点でメモリフルが発生する。
以下その場合について説明する。
In this way, ST701 to ST706
Are repeated to interpret the PDL command and store it in the memory. At some point, a memory full occurs.
Hereinafter, such a case will be described.

【0080】図8のST801において、メモリ管理部
307は、グローバルメモリ領域603に必要なメモリ
サイズの空きがないので、情報格納エリアの取得に失敗
する。この場合、メモリ管理部307の前ジョブ判定に
より、別言語の前ジョブの描画情報がグローバルメモリ
領域603内にあるか否か判定する(ST804)。こ
の例では、言語1・タスク303Aがグローバルメモリ
領域603を占有しているので、メモリ管理部307が
前ジョブの完了を検知するまで、メモリ管理部307は
待機する(ST805)。
In ST801 of FIG. 8, memory management unit 307 fails to acquire the information storage area because there is no space for the required memory size in global memory area 603. In this case, it is determined by the previous job determination of the memory management unit 307 whether or not the drawing information of the previous job in another language is in the global memory area 603 (ST804). In this example, since the language 1 task 303A occupies the global memory area 603, the memory management unit 307 waits until the memory management unit 307 detects completion of the previous job (ST805).

【0081】ここで、前ジョブの完了とは、例えば、図
5に示す<Delete_DrawWork-b>関数あるいは<Del
ete_Job>関数の呼び出し、または、最終ページについ
ての−a<Delete_Page>あるいは−b<Delete_Dr
awWork-a>関数の呼び出しがあった場合である。
Here, the completion of the previous job means, for example, the <Delete_DrawWork-b> function shown in FIG.
Call the ete_Job> function, or -a <Delete_Page> or -b <Delete_Dr for the last page
awWork-a> when a function is called.

【0082】この後、メモリ管理部307は処理を再開
して、情報格納エリアの取得を再度試みる(ST80
1)。前ジョブが完了すれば言語1・タスク303Aは
占有していたメモリを解放し、グローバルメモリ領域6
03の空き領域は拡大しているので、情報格納エリアの
取得は成功し、ST803において、完了コードOKを
インタプリタ・タスク401Bに返す。
Thereafter, memory management unit 307 restarts the process and tries to acquire the information storage area again (ST80).
1). When the previous job is completed, the language 1 task 303A releases the occupied memory, and the global memory area 6
Since the vacant area 03 has been expanded, the acquisition of the information storage area has succeeded, and a completion code OK is returned to the interpreter task 401B in ST803.

【0083】上述のように、メモリ管理部307は、メ
モリフルが発生した場合、前ジョブが完了するまでイン
タプリタ・タスク401Bへの応答を遅延させる。この
結果、インタプリタ・タスク401Bは、描画情報のメ
モリへの格納を前ジョブの完了まで待機することにな
る。
As described above, when the memory is full, the memory management unit 307 delays the response to the interpreter task 401B until the previous job is completed. As a result, the interpreter task 401B waits for storing the drawing information in the memory until the previous job is completed.

【0084】メモリフルが解消した後、インタプリタ・
タスク401Bは、ST703で改ページコマンドまた
はジョブ完了コマンドがあるまで、PDLコマンドの解
釈(ST701〜ST706)を繰り返す。改ページコ
マンドまたはジョブ完了コマンドがあったならば、ラス
タライズ・タスク402Bに対してラスタライズを指示
する(ST707)。ラスタライズ・タスク402Bは
描画情報中のDLデータを画素データに変換する。その
後、インタプリタ・タスク402Bは、コマンドがジョ
ブ完了コマンドか否か判定する(ST708)。ジョブ
完了コマンドでない(改ページコマンドである)なら
ば、ST701に戻り、PDコマンドの解釈を続行す
る。一方、ジョブ完了コマンドであるならば、エンドジ
ョブフラグを立てる(ST709)。
After the memory full is resolved, the interpreter
The task 401B repeats interpretation of the PDL command (ST701 to ST706) until there is a page break command or a job completion command in ST703. If there is a page break command or a job completion command, the rasterization task 402B is instructed to rasterize (ST707). A rasterize task 402B converts the DL data in the drawing information into pixel data. Thereafter, interpreter task 402B determines whether or not the command is a job completion command (ST708). If it is not a job completion command (it is a page break command), the process returns to ST701 to continue interpreting the PD command. On the other hand, if it is a job completion command, an end job flag is set (ST709).

【0085】言語2・タスク303Bは、各ページにつ
いて排紙が完了するたびにグローバルメモリ領域603
の当該ページのページ情報および描画情報タイプAが占
有するメモリ領域を解放する。図9は、上記実施の形態
1に係るレーザビームプリンタにおける言語・タスクの
メモリ解放手順を示すフロー図である。言語2・タスク
303Bは、図5中で示す排紙完了通知をメイン・タ
スク304から受信すると(ST901)、メモリ管理
部307の<Delete_Page>関数、<Delete_DrawWork-a
>関数を順次呼び出す(ST902、ST903)。次
に、言語2・タスク303Bは、エンドジョブフラグが
ONか否か判定する(ST904)。エンドジョブフラ
グがONでなければ処理を完了するが、エンドジョブフ
ラグがONであれば、図5中で示すように、メイン・
タスク304にエンドジョブ通知を出し(ST90
5)、また、図中で示すように、メモリ管理部307
の<Delete_DrawWork-b>関数を呼び出す(ST90
6)。これにより、メモリ管理部307は、各ページの
排紙完了後に当該ページのページ情報および描画情報タ
イプAをメモリから削除する。また、ジョブが完了した
ときにジョブ情報、描画情報タイプBをメモリから削除
する。言語1・タスク303Aも同様のメモリ解放手順
を行っている。
The language 2 task 303B executes the global memory area 603 every time the paper ejection for each page is completed.
Of the page information and the memory area occupied by the drawing information type A. FIG. 9 is a flowchart showing a procedure for releasing a language / task memory in the laser beam printer according to the first embodiment. When the language 2 task 303B receives the paper ejection completion notification shown in FIG. 5 from the main task 304 (ST901), the <Delete_Page> function of the memory management unit 307 and the <Delete_DrawWork-a>
> Call the functions sequentially (ST902, ST903). Next, language 2 task 303B determines whether or not the end job flag is ON (ST904). If the end job flag is not ON, the process is completed. If the end job flag is ON, as shown in FIG.
Issue end job notification to task 304 (ST90
5) Also, as shown in the figure, the memory management unit 307
<Delete_DrawWork-b> function (ST90)
6). Accordingly, the memory management unit 307 deletes the page information and the drawing information type A of each page from the memory after the discharge of each page is completed. When the job is completed, the job information and the drawing information type B are deleted from the memory. Language 1 task 303A also performs a similar memory release procedure.

【0086】次に、言語1・タスク303Aが前ジョブ
を処理していないときに、メモリフルが発生した場合に
ついて説明する。この場合、図8中ST802で情報格
納エリアの取得に失敗し、さらに、ST804で前ジョ
ブ判定が別言語の前ジョブがないと判定するので、メモ
リ管理部307はインタプリタ・タスク401に対し
て、完了コード=NGをセットし、これを返す(ST8
06)。
Next, a case where a memory full occurs when the language 1 task 303A is not processing the previous job will be described. In this case, the acquisition of the information storage area fails in ST802 in FIG. 8, and the previous job determination determines that there is no previous job in another language in ST804. Complete code = NG is set and returned (ST8)
06).

【0087】一方、図7中ST705において、インタ
プリタ・タスク401Bは、完了コード=OKでないと
判定し、異常対応動作へ移行する(ST710)。異常
対応動作としては、例えば、現在のページよりも前のペ
ージのDLデータがグローバルメモリ領域603に残っ
ている場合には、このページの印刷および排紙が完了し
た後、メモリの取得を再度試みる。また、現在のページ
のDLデータ中に画像データが含まれている場合には、
この画像データを例えば低解像度化したりより圧縮率の
高い画像フォーマットに変換するなどしてDLデータを
圧縮し、この圧縮後にメモリの取得を再度試みる。この
ような対処を行ってもメモリの取得が不可能であった場
合分割印刷を行う。分割印刷とは、メモリフルが発生す
るまでにDLデータへの翻訳が完了した描画単位につい
てのみラスタライズを行い、印刷を行う。印刷完了後D
Lデータ(描画情報タイプA)を消去して空き領域を確
保して、残りの描画単位を翻訳し、印刷を行う。このよ
うにして、メモリフルが発生しなければ1枚で印刷でき
た印刷データを、複数枚にわたって印刷することにな
る。
On the other hand, in ST705 in FIG. 7, interpreter task 401B determines that the completion code is not OK, and shifts to an abnormality handling operation (ST710). As an abnormal response operation, for example, when the DL data of a page before the current page remains in the global memory area 603, after printing and discharging of this page are completed, the acquisition of the memory is tried again. . Also, when the image data is included in the DL data of the current page,
The DL data is compressed by, for example, lowering the resolution of the image data or converting the image data into an image format having a higher compression rate. After the compression, the acquisition of the memory is attempted again. If it is not possible to acquire a memory even after taking such measures, divided printing is performed. In division printing, rasterization is performed only on a rendering unit that has been translated into DL data before the memory full occurs, and printing is performed. After printing D
The L data (drawing information type A) is erased to secure a free area, and the remaining drawing units are translated and printed. In this manner, print data that could be printed on one sheet if no memory full occurred is printed on a plurality of sheets.

【0088】また、上記説明では、言語1・タスク30
3Aが前ジョブを処理し、言語2・タスク303Bが現
ジョブを処理している場合について例示したが、反対
に、言語2・タスク303Bが前ジョブを処理し、言語
1・タスク303Aが現在タスクを処理している場合に
ついても全く同様である。
In the above description, language 1 task 30
3A processes the previous job and the language 2 task 303B processes the current job. On the contrary, the language 2 task 303B processes the previous job, and the language 1 task 303A executes the current task. The same applies to the case where is processed.

【0089】以上説明したとおり、上記実施の形態1に
係るレーザビームプリンタ1における印刷処理におい
て、インタプリタ・タスクの翻訳処理中にメモリフルが
発生した場合、メモリ管理部307は、現ジョブと異な
る言語の前ジョブが存在したならば、前ジョブのエンド
ジョブを検知するまで応答を延期する。これにより、イ
ンタプリタ・タスクは、メモリフルが発生するとPDL
コマンドの解釈を待機し、前ジョブを処理する言語・タ
スクが占有する情報格納エリアを解放し、空き領域が拡
大した後翻訳処理を続行することになる。従来、現ジョ
ブを処理する言語・タスクは、メモリフルが発生した
際、異なる言語の前ジョブを処理する他の言語・タスク
がグローバルメモリ領域603を占有しているか、また
は当該言語・タスクが処理する印刷データが大きくグロ
ーバルメモリ領域603を占有しているかの区別をする
ことなく、異常対応処理を実行している。この場合に
は、同じ印刷データであっても現ジョブを実行するタイ
ミング(前ジョブの有無)によって異なる結果を生じ
る。しかしながら、上記実施の形態1によれば、前ジョ
ブが存在する場合には前ジョブが完了するまで現ジョブ
のPDLコマンドの解釈を待機し、他の言語・タスクが
グローバルメモリ領域603を解放した後解釈を続行す
るので、他の言語・タスクがグローバルメモリ領域60
3を占有している場合であっても、そうでいない場合で
あっても、同じ印刷データであれば印刷結果は同じにな
る。言い換えれば、1ページ分のページ情報および描画
情報でグローバルメモリ領域603が一杯にならない印
刷データであれば、いかなるタイミングでホスト装置か
ら印刷指示があっても、常に正常に印刷することが可能
になる。また、グローバルメモリ領域603に十分な空
き領域があれば、前ジョブの完了まで待機することなく
印刷を実行することができる。
As described above, in the printing process of the laser beam printer 1 according to the first embodiment, when the memory full occurs during the translation process of the interpreter / task, the memory management unit 307 determines the language different from that of the current job. If the previous job exists, the response is postponed until the end job of the previous job is detected. As a result, the interpreter task will execute PDL when memory full occurs.
It waits for the interpretation of the command, releases the information storage area occupied by the language / task that processes the previous job, and continues the translation processing after the free area is expanded. Conventionally, when a memory / full condition occurs, the language / task that processes the current job occupies the global memory area 603 with another language / task that processes the previous job in a different language, or the language / task processes the current job. The abnormality handling process is executed without discriminating whether the print data to be used occupies the global memory area 603 largely. In this case, different results occur depending on the timing of executing the current job (presence or absence of a previous job) even for the same print data. However, according to the first embodiment, when the previous job exists, the interpretation of the PDL command of the current job is waited until the previous job is completed, and after the other language / task releases the global memory area 603. Since the interpretation is continued, other languages / tasks will be
Regardless of whether the print data No. 3 is occupied or not, the print result is the same if the print data is the same. In other words, if the print data does not fill the global memory area 603 with page information and drawing information for one page, it is possible to always perform normal printing even if a print instruction is issued from the host device at any timing. . Also, if there is a sufficient free area in the global memory area 603, printing can be executed without waiting for the completion of the previous job.

【0090】この他に、前ジョブから現ジョブで言語・
タスクが切り替わる場合にメモリフルが発生するのを防
止する手段として、前ジョブの最終ページの排紙が完了
するまで、現ジョブの処理を開始するのを延期すること
(以下、比較例という)も考えられる。しかし、上記実
施の形態1は、この比較例に比べて、レーザビームプリ
ンタ1の全体の印刷速度が向上することができる。この
効果について、図10および図11を参照して説明す
る。図10(a)は上記実施の形態1における処理時間
およびメモリ占有量との関係を示す図であり、図10
(b)は比較例における処理経過とメモリ占有量との関
係を示す図である。図11(a)〜(e)は、上記実施
の形態1における図10(a)に示す各処理時間におけ
るメモリマップ図である。図11には、説明の便宜上、
DL群(描画情報タイプA)およびキャッシュフォント
(描画情報タイプB)だけを示す。
In addition to the above, the language and
As a means for preventing the occurrence of memory full when the task is switched, the start of the processing of the current job may be postponed until the discharge of the last page of the previous job is completed (hereinafter referred to as a comparative example). Conceivable. However, in the first embodiment, the overall printing speed of the laser beam printer 1 can be improved as compared with the comparative example. This effect will be described with reference to FIGS. FIG. 10A shows the relationship between the processing time and the memory occupancy in the first embodiment.
(B) is a diagram showing the relationship between the processing progress and the memory occupancy in the comparative example. FIGS. 11A to 11E are memory map diagrams at the respective processing times shown in FIG. 10A in the first embodiment. In FIG. 11, for convenience of explanation,
Only the DL group (drawing information type A) and the cache font (drawing information type B) are shown.

【0091】まず、上記実施の形態1では、図11
(a)に示すように、図10(a)に示す処理時間t1
0でグローバルメモリ領域603の75%を、言語1・
タスク303Aのフォントキャッシュ1001および前
ジョブの最終ページのDL群1002が占有している。
この状態で、言語2・タスク303Bが、グローバルメ
モリ領域603の空き領域1003を使って、現ジョブ
の1ページ目の解釈を開始する。そして、図11(b)
に示すように、処理時間t15で、言語2・タスク30
3Bのフォントキャッシュ1004およびDL群100
5が空き領域1003を全て占有し、メモリフルが発生
する。ここで、言語2・タスク303Bは解釈を待機さ
せる。処理時間t20において、前ジョブの排紙が完了
すると言語1・タスク303Aがフォントキャッシュ1
001およびDL群1002を削除し、グローバルメモ
リ領域603を解放し、図11(c)に示すように、7
5%の空き領域1003が生じる。ここで、言語2・タ
スク303Bが現ジョブの解釈を再開し、処理時間t2
5で解釈を完了すると、図11(d)に示すように、言
語2・タスク303Bのフォントキャッシュ1004お
よびDL群1005は、グローバルメモリ領域603の
50%を占有する。この後、図11(e)に示すよう
に、処理時間t35で排紙が完了すると、フォントキャ
ッシュ1004およびDL群1005を削除し、グロー
バルメモリ領域603を解放する。
First, in the first embodiment, FIG.
As shown in FIG. 10A, the processing time t1 shown in FIG.
0 means 75% of the global memory area 603 is
The font cache 1001 of the task 303A and the DL group 1002 of the last page of the previous job are occupied.
In this state, the language 2 task 303B starts interpreting the first page of the current job using the free area 1003 of the global memory area 603. Then, FIG.
As shown in the figure, at the processing time t15, the language 2 task 30
3B font cache 1004 and DL group 100
5 occupies the entire free area 1003, and a memory full occurs. Here, the language 2 task 303B waits for interpretation. At the processing time t20, when the discharge of the previous job is completed, the language 1 task 303A
001 and the DL group 1002 are deleted, the global memory area 603 is released, and as shown in FIG.
A free area 1003 of 5% is generated. Here, the language 2 task 303B resumes interpretation of the current job, and the processing time t2
5, the font cache 1004 and the DL group 1005 of the language 2 task 303B occupy 50% of the global memory area 603, as shown in FIG. Thereafter, as shown in FIG. 11E, when the paper ejection is completed at the processing time t35, the font cache 1004 and the DL group 1005 are deleted, and the global memory area 603 is released.

【0092】これに対して、比較例の場合、図10
(b)に示すように、処理時間t10でグローバルメモ
リ領域603を、言語1・タスク303Aのフォントキ
ャッシュ1001および前ジョブの最終ページのDL群
1002が占有している場合、言語2・タスク303B
は現ジョブの解釈を開始せずに待機している。そして、
処理時間t20で前ジョブの排紙が完了し言語1・タス
ク303Aがグローバルメモリ領域603を解放して初
めて、言語2・タスク303Bが現ジョブの解釈を開始
する。その後、言語2・タスク303Bは、処理時間t
30で現ジョブの解釈を完了し、処理時間t40で排紙
が完了すると、フォントキャッシュ1004およびDL
群1005を削除し、グローバルメモリ領域603を解
放する。このように、比較例では処理時間t40まで係
る印刷を、上記実施の形態1によれば、処理時間t15
で言語1・タスク303Aがグローバルメモリ領域60
3の一部を占有していても、言語2・タスク303Bが
現ジョブの解釈を開始するので、印刷完了を処理時間t
35まで短縮することができる。
On the other hand, in the case of the comparative example, FIG.
As shown in (b), when the font memory 1001 of the language 1 task 303A and the DL group 1002 of the last page of the previous job occupy the global memory area 603 at the processing time t10, the language 2 task 303B
Is waiting without interpreting the current job. And
Only after the discharge of the previous job is completed at the processing time t20 and the language 1 task 303A releases the global memory area 603, the language 2 task 303B starts interpreting the current job. After that, the language 2 task 303B takes the processing time t
30 when the interpretation of the current job is completed, and when the paper ejection is completed at the processing time t40, the font cache 1004 and the DL
The group 1005 is deleted, and the global memory area 603 is released. As described above, according to the first embodiment, printing according to the processing time t15 in the comparative example is performed up to the processing time t40.
Language 1 task 303A in the global memory area 60
Even if a part of the job is occupied, the language 2 task 303B starts interpreting the current job.
It can be reduced to 35.

【0093】このように、上記実施の形態1によれば、
レーザビームプリンタ1においてグローバルメモリ領域
603を効率良く使用すると共に、印刷の総所要時間を
短縮し、さらにレーザビームプリンタ1の信頼性を向上
することができる。
As described above, according to the first embodiment,
The global memory area 603 can be efficiently used in the laser beam printer 1, the total time required for printing can be reduced, and the reliability of the laser beam printer 1 can be improved.

【0094】特に、上記実施の形態1では、メモリ管理
部307の内部処理により、言語2・タスク303Bの
インタプリタ・タスク401Bによる現ジョブの解釈
を、前ジョブの排紙完了まで待機している。これによ
り、現ジョブを処理する言語2・タスク303A(呼び
元)が前ジョブの言語が何であるかを調べたり、前ジョ
ブの情報を保持する必要がない。言語・タスクは、各ペ
ージ記述言語の開発元が配給することが多くプリンタメ
ーカーがこの中身を変更することは難しいことが多いの
で、言語・タスクを変更する必要がない点で、上記実施
の形態1は好適である。
In particular, in the first embodiment, the interpretation of the current job by the interpreter / task 401B of the language 2 / task 303B is awaited by the internal processing of the memory management unit 307 until the discharge of the previous job is completed. This eliminates the need for the language 2 task 303A (caller) that processes the current job to check the language of the previous job and to hold information on the previous job. The language / task is often distributed by the developer of each page description language, and it is often difficult for the printer manufacturer to change the contents. Therefore, it is not necessary to change the language / task. 1 is preferred.

【0095】上記実施の形態1では、図8に示すST8
05において、メモリ管理部307は、前ジョブのエン
ドジョブまで待機し、これにより、言語2・タスク30
3Bのインタプリタ・タスク401BのPDLコマンド
の解釈を遅延させている。しかしながら、言語1・タス
ク303Aがグローバルメモリ領域603を占有してい
るために、言語2・タスク303Bの処理中にメモリフ
ルが発生するケースは、上述のケースに限られない。例
えば、言語1・タスク303Aが、最終ページだけでな
く、それ以前のページのページ情報および描画情報タイ
プAをメモリに残している場合が考えられる。このよう
な場合、前ジョブのエンドジョブまで待たずに排紙完了
(<Delete_Page>関数および/または<Delete_DrawWo
rk-a>関数の呼び出し)があればインタプリタ401B
の解釈を再開するようにしても良い。
In the first embodiment, ST8 shown in FIG.
05, the memory management unit 307 waits until the end job of the previous job.
The interpretation of the PDL command of the 3B interpreter task 401B is delayed. However, since the language 1 task 303A occupies the global memory area 603, the case where the memory full occurs during the processing of the language 2 task 303B is not limited to the above case. For example, there may be a case where the language 1 task 303A leaves not only the last page but also the page information and the drawing information type A of the previous page in the memory. In such a case, the discharge is completed without waiting for the end job of the previous job (<Delete_Page> function and / or <Delete_DrawWo
rk-a> call function) interpreter 401B
May be resumed.

【0096】また、言語1・タスク303Aが前ジョブ
よりも前のジョブのジョブ情報、ページ情報および描画
情報をもメモリに残している場合も考えられる。この場
合、前ジョブのエンドジョブまで待たずに、それ以前の
ジョブのエンドジョブ(<Delete_Job>関数および/ま
たは<Delete_DrawWork-b>関数の呼び出し)があれば
インタプリタ401Bの解釈を再開するようにしても良
い。
It is also conceivable that the language 1 task 303A also retains the job information, page information and drawing information of the job preceding the previous job in the memory. In this case, without waiting for the end job of the previous job, if there is an end job of the previous job (call of the <Delete_Job> function and / or <Delete_DrawWork-b> function), the interpretation of the interpreter 401B is restarted. Is also good.

【0097】このように、本発明は、一の言語・タスク
がPDLコマンドの解釈中にメモリフルが発生したなら
ば、他の言語・タスクにおける前ジョブのエンドジョ
ブ、前ジョブの排紙完了、前ジョブ以前のジョブのエン
ドジョブなどのように他の言語・タスクがメモリを解放
するまで解釈を待機し、解放された空き領域を使って解
釈を再開することを主題の一つとするものである。
As described above, according to the present invention, if a memory full occurs while one language / task interprets a PDL command, the end job of the previous job in another language / task, the discharge completion of the previous job, One of the subjects is to wait for interpretation until another language or task releases memory, such as the end job of the job before the previous job, and resume interpretation using the released free space. .

【0098】(実施の形態2)上記実施の形態1では、
メモリ管理部307の内部処理により、言語2・タスク
303Bによる解釈を、前ジョブの排紙完了まで待機し
ている。本実施の形態2では、言語・タスク間で問合せ
を行い、現ジョブの解釈を前ジョブの排紙完了まで待機
させる場合について説明する。
(Embodiment 2) In Embodiment 1 described above,
The internal processing of the memory management unit 307 waits for the interpretation by the language 2 task 303B until the discharge of the previous job is completed. In the second embodiment, a case will be described where an inquiry is made between languages and tasks, and the interpretation of the current job is made to wait until the discharge of the previous job is completed.

【0099】上記実施の形態2に係るレーザビームプリ
ンタは、上記実施の形態1に係るレーザビームプリンタ
と実質的に同一のネットワーク構成、内部構造、ハード
ウエア構成、ソフトウエア構成からなる。よって、図1
〜図4を参照し、説明を省略する。
The laser beam printer according to the second embodiment has substantially the same network configuration, internal structure, hardware configuration, and software configuration as the laser beam printer according to the first embodiment. Therefore, FIG.
4 to FIG. 4, the description is omitted.

【0100】図12は、本発明の実施の形態2に係るレ
ーザビームプリンタ1における、主要なソフトウエア構
成のブロック図のうち、特に、メイン・タスク304お
よび言語・タスク303A、303Bに含まれる下位タ
スクを具体的に示したブロック図である。
FIG. 12 is a block diagram of a main software configuration in the laser beam printer 1 according to the second embodiment of the present invention, in particular, the lower level included in the main task 304 and the language tasks 303A and 303B. FIG. 3 is a block diagram specifically showing tasks.

【0101】図12において、図5に示す上記実施の形
態1と同様の構成については、同一の番号を付し、説明
を省略する。
In FIG. 12, the same components as those in the first embodiment shown in FIG. 5 are denoted by the same reference numerals, and description thereof will be omitted.

【0102】言語2・タスク303Bは、問合せタスク
1101を備えている。問合せタスク1101は、言語
1・タスク303Aに設けられた回答タスク1102に
対して、現在処理中のジョブがあるか否かを問い合わせ
る。問合せタスク1101は回答タスク1102から回
答があるまで問合せを行う。回答タスク1102は、言
語1・タスク303Aがエンドジョブを検知したならば
問合せタスク1101に対してジョブの完了を通知す
る。
The language 2 task 303 B has an inquiry task 1101. The inquiry task 1101 inquires of the answer task 1102 provided in the language 1 task 303A whether there is a job currently being processed. The inquiry task 1101 makes an inquiry from the answer task 1102 until there is an answer. If the language 1 task 303A detects an end job, the answer task 1102 notifies the inquiry task 1101 of the completion of the job.

【0103】次に、上記のようなソフトウエア構成を有
するレーザビームプリンタ1がホスト装置から送信され
た印刷ジョブを処理するフローについて説明する。図1
3は、上記実施の形態2に係るレーザビームプリンタの
インタプリタ・タスクの印刷処理手順を示すフロー図で
ある。
Next, a description will be given of a flow in which the laser beam printer 1 having the above-described software configuration processes a print job transmitted from the host device. FIG.
FIG. 3 is a flowchart showing a print processing procedure of an interpreter task of the laser beam printer according to the second embodiment.

【0104】上記実施の形態2のインタプリタ・タスク
401Bも、上記実施の形態1と同様に、ST701〜
ST706の手順を繰り返し、PDLコマンドを1つづ
つ解釈する。メモリフルが発生し、ST705において
メモリ管理部307から応答が完了コード=NGであっ
た場合、問合せタスク1101に、言語1・タスク30
3Aの回答タスク1102に対して問合せを行わせる
(ST1201)。次に、回答タスク1102からの回
答に基いて言語1・タスク303Aが前ジョブを処理中
か否か判定する(ST1202)。
The interpreter task 401B according to the second embodiment also has ST701 to ST701 similar to the first embodiment.
The procedure of ST706 is repeated, and PDL commands are interpreted one by one. When a memory full occurs and the response from the memory management unit 307 is “NG” in ST 705, the language task
An inquiry is made to the answer task 1102 of 3A (ST1201). Next, it is determined whether or not language 1 task 303A is processing the previous job based on the answer from answer task 1102 (ST1202).

【0105】ここで、言語1・タスク303Aが前ジョ
ブの処理中であると判定した場合、インタプリタ・タス
ク401Bは、一定時間待機し(ST1203)、再び
言語1・タスク303Aに問合せを行い、言語1・タス
ク303Aが前ジョブを処理中か否か判定する(ST1
201、ST1202)。このようにして、インタプリ
タ・タスク401Bは、言語1・タスク303Aが前ジ
ョブを完了するまで、言い換えれば前ジョブの最終ペー
ジの排紙が完了する(エンドジョブ)まで待機する。
Here, if it is determined that the language 1 task 303A is processing the previous job, the interpreter task 401B waits for a fixed time (ST1203), inquires again of the language 1 task 303A, 1. It is determined whether the task 303A is processing the previous job (ST1).
201, ST1202). In this way, the interpreter task 401B waits until the language 1 task 303A completes the previous job, in other words, until the discharge of the last page of the previous job is completed (end job).

【0106】言語1・タスク303Aが前ジョブを完了
したならば、インタプリタ・タスク401Bは、メモリ
取得関数を再び呼び出す(ST704)。次に、メモリ
管理部307は、完了コードがOKか否か判定する(S
T705)。ここで、言語1・タスク303Aが前ジョ
ブの処理を完了し、描画情報エリアを解放しているの
で、メモリフルを発生することなく、メモリ管理部30
7は、言語2・タスク303Bのための描画情報エリア
を取得することができる。従って、メモリ管理部307
からの応答は完了コード=OKであるので、インタプリ
タ・タスク401Bは、ST706に進み、描画情報を
メモリに格納する。
When language 1 task 303A completes the previous job, interpreter task 401B calls the memory acquisition function again (ST704). Next, the memory management unit 307 determines whether the completion code is OK (S
T705). Here, since the language 1 task 303A has completed the processing of the previous job and has released the drawing information area, the memory management unit 30 does not generate a memory full.
No. 7 can acquire a drawing information area for language 2 task 303B. Therefore, the memory management unit 307
Is completed code = OK, the interpreter task 401B proceeds to ST706 and stores the drawing information in the memory.

【0107】一方、言語1・タスク303Aが前ジョブ
を処理していないときに、メモリフルが発生した場合に
ついて説明する。この場合、ST705において、メモ
リ管理部307からの完了コードはNGであるので、S
T1201に進み、問合せタスク1101に言語1・タ
スク303Aに対して問合せを行わせる。しかし、言語
1・タスク303Aは処理中でないので、問合せタスク
1101は、回答タスク1102からジョブ処理中でな
い旨の回答を受信する。この場合、言語2・タスク30
3Bは、現在処理中の印刷データが大きいためにグロー
バルメモリ領域603を自ら占有しているので、インタ
プリタ・タスク401Bは待機していてもメモリに空き
は生じない。そこで、インタプリタ・タスク401B
は、ST1204に進み、異常対応処理を実行する。
On the other hand, a case where a memory full occurs when the language 1 task 303A is not processing the previous job will be described. In this case, in ST705, since the completion code from the memory management unit 307 is NG,
Proceeding to T1201, the inquiry task 1101 inquires the language 1 task 303A. However, since the language 1 task 303A is not being processed, the inquiry task 1101 receives an answer from the answer task 1102 that the job is not being processed. In this case, language 2 task 30
3B occupies the global memory area 603 by itself because the print data currently being processed is large, so that even if the interpreter task 401B is on standby, no space is left in the memory. Therefore, interpreter task 401B
Proceeds to ST1204, and executes an abnormality handling process.

【0108】なお、上記説明では、言語1・タスク30
3Aが前ジョブを処理し、言語2・タスク303Bが現
ジョブを処理している場合について例示したが、反対
に、言語2・タスク303Bが前ジョブを処理し、言語
1・タスク303Aが現在タスクを処理している場合に
ついても全く同様である。すなわち、言語1・タスク3
03Aおよび言語2・タスク303Bは、問合せタスク
1101および回答タスク1102の両方を備え、相互
に問合せおよび回答を行うようになっている。
In the above description, language 1 task 30
3A processes the previous job and the language 2 task 303B processes the current job. On the contrary, the language 2 task 303B processes the previous job, and the language 1 task 303A executes the current task. The same applies to the case where is processed. That is, language 1 task 3
03A and the language 2 task 303B include both an inquiry task 1101 and an answer task 1102, and mutually inquire and answer.

【0109】以上説明したとおり、上記実施の形態2に
係るレーザビームプリンタ1における印刷処理におい
て、言語2・タスク303Bのインタプリタ・タスク4
01Bは、メモリ管理部307が完了コード=NGを返
してきた場合、すなわち、メモリフルが発生した場合、
言語1・タスク303Aに問合せを行い、言語1・タス
ク303Aが前ジョブを処理中か否かを調べ、言語1・
タスク303Aが前ジョブを処理中であるならば処理が
完了するまで描画情報のメモリへの格納を遅らせる。こ
れにより、インタプリタ・タスク401Bは、メモリフ
ルが発生するとPDLコマンドの解釈を待機し、前ジョ
ブを処理する言語1・タスク303Aが占有する描画情
報エリアを解放し空き領域が拡大した後、解釈を続行す
ることになる。この結果、異なる言語の前ジョブを処理
する他の言語・タスクがグローバルメモリ領域603を
占有している場合であっても占有していない場合であっ
ても、同じ印刷データを正常に印刷することができる。
また、グローバルメモリ領域603に十分な空き領域が
あれば、前ジョブの完了まで待機することなく印刷を実
行することができる。
As described above, in the printing process in the laser beam printer 1 according to the second embodiment, the interpreter / task 4 of the language 2 / task 303B is used.
01B indicates that the memory management unit 307 returns a completion code = NG, that is, when a memory full occurs,
An inquiry is made to the language 1 task 303A to check whether the language 1 task 303A is processing the previous job.
If the task 303A is processing the previous job, the storage of the drawing information in the memory is delayed until the processing is completed. When the memory becomes full, the interpreter task 401B waits for the interpretation of the PDL command, releases the drawing information area occupied by the language 1 task 303A that processes the previous job, expands the free space, and then interprets the interpretation. Will continue. As a result, the same print data can be normally printed regardless of whether another language or task that processes the previous job in a different language occupies the global memory area 603 or not. Can be.
Also, if there is a sufficient free area in the global memory area 603, printing can be executed without waiting for the completion of the previous job.

【0110】このように、上記実施の形態2によれば、
実施の形態1と同様に、レーザビームプリンタ1におい
てグローバルメモリ領域603を効率良く使用すると共
に、印刷の総所要時間を短縮し、さらにレーザビームプ
リンタ1の信頼性を向上することができる。
As described above, according to the second embodiment,
As in the first embodiment, it is possible to efficiently use the global memory area 603 in the laser beam printer 1, shorten the total time required for printing, and improve the reliability of the laser beam printer 1.

【0111】特に、上記実施の形態2では、言語1・タ
スク303A、言語2・タスク303Bの間で問合せ/
回答を行うことで、言語2・タスク303Bのインタプ
リタ・タスク401Bによる現ジョブの解釈を、前ジョ
ブの完了まで待機している。これにより、メモリ管理部
307は変更する必要がないので従来と同様の仕様で済
む。
In particular, in the second embodiment, the query / language between language 1 / task 303A and language 2 / task 303B
By giving an answer, the interpretation of the current job by the interpreter task 401B of the language 2 task 303B is awaited until the previous job is completed. As a result, the memory management unit 307 does not need to be changed, so that the same specifications as in the past can be used.

【0112】上記実施の形態2では、言語2・タスク3
03Bは言語1・タスク303Aに問合せを行い、言語
1・タスク303Bから前ジョブを完了した旨の回答を
受けたならば、言語2・タスク303BはPDLコマン
ドの解釈を再開している。しかし、本発明はこれに限定
されるものではなく、例えば、実施の形態1で説明した
ように、排紙完了のように1ページの印刷が完了したこ
と、2つ以上前のジョブが完了したこと等を、言語1・
タスク303Aへ問合せ、その回答があったならば解釈
を再開するようにしても良い。さらに、言語1・タスク
303Aへメモリ使用量を問合せ、その値が減少したな
らば解釈を再開するようにしても良い。
In the second embodiment, language 2 / task 3
03B makes an inquiry to the language 1 task 303A, and upon receiving an answer from the language 1 task 303B that the previous job has been completed, the language 2 task 303B has resumed interpretation of the PDL command. However, the present invention is not limited to this. For example, as described in the first embodiment, the completion of printing of one page, such as the completion of paper ejection, and the completion of two or more previous jobs Things like language 1
An inquiry may be made to the task 303A, and the interpretation may be resumed when the answer is received. Furthermore, the memory usage may be inquired to the language 1 task 303A, and the interpretation may be resumed when the value decreases.

【0113】このように、本発明は、一の言語・タスク
がPDLコマンドの解釈中にメモリフルが発生したなら
ば、他の言語・タスクとの間で問合せおよび回答を行
い、他の言語・タスクでのメモリを解放し得るステータ
ス変化を検知し、解放された空き領域を使って解釈を再
開することを主題の一つとするものである。このよう
に、一の言語・タスクは、他の言語・タスクがメモリを
解放したことを必ずしも直接的に検知する必要はなく、
メモリを解放し得るステータス変化があれば良い。しか
し、他の言語・タスクがメモリを解放したことを直接的
に検知することも本発明の範囲内であることは言うまで
もない。
As described above, according to the present invention, when a memory full occurs while one language / task interprets a PDL command, an inquiry and an answer are made with another language / task, and another language / task is executed. One of the subjects is to detect a status change that can release memory in a task and restart interpretation using the released free space. Thus, one language / task does not necessarily need to directly detect that another language / task has released memory,
It is sufficient if there is a status change that can release the memory. However, it is needless to say that directly detecting that another language / task has released the memory is also within the scope of the present invention.

【0114】本発明は、上記実施の形態1、2に限定さ
れるものではなく、本発明の要旨を逸脱しない範囲内に
おいて種々変更を加え得ることとができる。例えば、上
記実施の形態1、2では、一の言語・タスクは、メモリ
フルが発生したならば1ページの印刷完了またはジョブ
の印刷完了で他の言語・タスクがメモリを解放するまで
解釈を待機している。しかし、他の言語・タスクは、例
えばマクロのように複数のジョブにわたって使用するデ
ータをメモリに格納している場合がある。このデータは
他の言語・タスクによる指示があるまで削除されず、メ
モリを占有している。そこで、一の言語・タスクがPD
Lデータの解釈中にメモリフルが発生した場合、他の言
語・タスクに対してこのようなメモリの解放を要求し、
他の言語・タスクがメモリを解放するまで解釈を待機す
るようにすることができる。この場合、必ずしも他の言
語・タスクがジョブの処理中でなくても良い。
The present invention is not limited to the first and second embodiments, and various changes can be made without departing from the gist of the present invention. For example, in the first and second embodiments, one language / task waits for the interpretation until the other language / task releases the memory when the printing of one page is completed or the printing of the job is completed when the memory becomes full. are doing. However, other languages and tasks may store data used over a plurality of jobs in a memory, such as a macro. This data is not deleted until instructed by another language or task, and occupies the memory. Therefore, one language / task is PD
If a memory full occurs while interpreting L data, it requests other languages / tasks to release such memory,
Interpretation can be waited until another language or task releases the memory. In this case, another language / task does not necessarily need to be in processing of the job.

【0115】また、例えば、上記実施の形態1、2で
は、レーザビームプリンタを例に挙げて説明している
が、本発明は、ページプリンタ一般に適用することがで
きる。また、本発明は、複写機、ファクシミリ装置、イ
ンターネットファクシミリ装置、複合機などのように、
画像形成装置を搭載した各種機器に適用することができ
る。
Further, for example, in the first and second embodiments, a laser beam printer is described as an example, but the present invention can be applied to a page printer in general. In addition, the present invention, such as copiers, facsimile machines, Internet facsimile machines,
The present invention can be applied to various devices equipped with an image forming apparatus.

【0116】さらに、本発明は、当業者に明らかなよう
に、上記実施の形態に記載した技術に従ってプログラム
された一般的な市販のデジタルコンピュータおよびマイ
クロプロセッサを使って実施することができる。また、
当業者に明らかなように、本発明は、上記実施の形態に
記載した技術に基いて当業者により作成されるソフトウ
エアを包含する。
Furthermore, as will be apparent to those skilled in the art, the present invention can be implemented using a general-purpose commercially available digital computer and microprocessor programmed according to the techniques described in the above embodiments. Also,
As will be apparent to those skilled in the art, the present invention includes software created by those skilled in the art based on the technology described in the above embodiments.

【0117】また、本発明を実施するコンピュータをプ
ログラムするために使用できる命令を含む記憶媒体であ
るコンピュータプログラム製品が本発明の範囲に含まれ
る。この記憶媒体は、フロッピーディスク、光ディス
ク、CDROMおよび磁気ディスク等のディスク、RO
M、RAM、EPROM、EEPROM、磁気又は光カ
ード等であるが、特にこれらに限定されるものではな
い。
Also, a computer program product that is a storage medium containing instructions that can be used to program a computer implementing the present invention is included in the scope of the present invention. This storage medium includes disks such as floppy disks, optical disks, CDROMs and magnetic disks, and ROs.
M, RAM, EPROM, EEPROM, magnetic or optical card, etc., but are not particularly limited thereto.

【0118】[0118]

【発明の効果】以上説明したように、他の解釈手段によ
ってメモリ領域を占有している場合であってもページ記
述言語の解釈を行い、メモリ領域に空き領域が不足した
ならば他の解釈手段がメモリ領域を解放するまで解釈を
待機するので、同一の印刷データがホスト装置からの指
示のタイミングによって異なる印刷結果となるのを防止
することができ、この結果、画像処理装置においてメモ
リを効率良く使用すると共に、処理時間を短縮し、さら
に画像処理装置の信頼性を向上できるという効果を奏す
る。
As described above, even if the memory area is occupied by another interpreting means, the page description language is interpreted, and if there is not enough free space in the memory area, another interpreting means is used. Waits for the interpretation until the memory area is released, it is possible to prevent the same print data from producing different print results depending on the timing of the instruction from the host device. As a result, the memory can be efficiently used in the image processing apparatus. In addition to the use, the processing time can be shortened, and the reliability of the image processing apparatus can be improved.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の実施の形態1に係るレーザビームプリ
ンタが動作するネットワークを示す概略図
FIG. 1 is a schematic diagram showing a network in which a laser beam printer according to a first embodiment of the present invention operates.

【図2】上記実施の形態1に係るレーザビームプリンタ
の内部構造図
FIG. 2 is an internal structural diagram of the laser beam printer according to the first embodiment.

【図3】上記実施の形態1に係るレーザビームプリンタ
のプリンタコントローラを示すブロック図
FIG. 3 is a block diagram showing a printer controller of the laser beam printer according to the first embodiment.

【図4】上記実施の形態1に係るレーザビームプリンタ
1のソフトウエア構成を示すブロック図
FIG. 4 is a block diagram showing a software configuration of the laser beam printer 1 according to the first embodiment.

【図5】上記実施の形態1に係るレーザビームプリンタ
における、各タスクとメモリ管理部との関係を示したブ
ロック図
FIG. 5 is a block diagram showing a relationship between each task and a memory management unit in the laser beam printer according to the first embodiment.

【図6】上記実施の形態1に係るレーザビームプリンタ
におけるメインメモリのメモリマップを示す図
FIG. 6 is a diagram showing a memory map of a main memory in the laser beam printer according to the first embodiment.

【図7】上記実施の形態1に係るレーザビームプリンタ
のインタプリタ・タスクの解釈処理手順を示すフロー図
FIG. 7 is a flowchart showing the interpretation processing procedure of the interpreter task of the laser beam printer according to the first embodiment.

【図8】上記実施の形態1に係るレーザビームプリンタ
のメモリ管理部でのメモリ取得手順を示すフロー図
FIG. 8 is a flowchart showing a memory acquisition procedure in a memory management unit of the laser beam printer according to the first embodiment.

【図9】上記実施の形態1に係るレーザビームプリンタ
における言語・タスクのメモリ解放手順を示すフロー図
FIG. 9 is a flowchart showing a language / task memory release procedure in the laser beam printer according to the first embodiment.

【図10】(a)は上記実施の形態1における処理時間
およびメモリ占有量との関係を示す図、(b)は比較例
における処理経過とメモリ占有量との関係を示す図
10A is a diagram illustrating a relationship between a processing time and a memory occupancy in the first embodiment, and FIG. 10B is a diagram illustrating a relationship between a process progress and a memory occupancy in a comparative example;

【図11】(a)〜(e)は、上記実施の形態1に係る
レーザビームプリンタにおける各処理時間でのメモリマ
ップ図
FIGS. 11A to 11E are memory map diagrams at respective processing times in the laser beam printer according to the first embodiment.

【図12】本発明の実施の形態2に係るレーザビームプ
リンタにおけるソフトウエア構成のブロック図
FIG. 12 is a block diagram of a software configuration in the laser beam printer according to the second embodiment of the present invention.

【図13】上記実施の形態2に係るレーザビームプリン
タのインタプリタ・タスクの印刷処理手順を示すフロー
FIG. 13 is a flowchart showing a print processing procedure of an interpreter task of the laser beam printer according to the second embodiment.

【符号の説明】[Explanation of symbols]

1 レーザビームプリンタ 2 パラレルケーブル 4 シリアルケーブル 6 コンピュータネットワーク 200 プリンタコントローラ 201 ROM 202 RAM 203 LANインタフェース 204 パラレルインタフェース 205 IEEE1394インタフェース 206 IrDAインタフェース 207 FAXユニット 208 オプションインタフェース 209 プリンタエンジン 210 プリンタエンジンインタフェース 211 操作パネル 212 システムバス 220 CPU 301 I/F・タスク 302 JS・タスク 303A 言語1・タスク 303B 言語2・タスク 304 メイン・タスク 305 プリンタ・タスク 307 メモリ管理部 401A,B インタプリタ・タスク 402A,B ラスタライズ・タスク 603 グローバルメモリ領域 DESCRIPTION OF SYMBOLS 1 Laser beam printer 2 Parallel cable 4 Serial cable 6 Computer network 200 Printer controller 201 ROM 202 RAM 203 LAN interface 204 Parallel interface 205 IEEE1394 interface 206 IrDA interface 207 FAX unit 208 Option interface 209 Printer engine 210 Printer engine interface 211 Operation panel 212 System Bus 220 CPU 301 I / F task 302 JS task 303A Language 1 task 303B Language 2 task 304 Main task 305 Printer task 307 Memory management unit 401A, B Interpreter task 402A, B Rasterize task 603 Global Moly area

フロントページの続き (72)発明者 宮宗 宏昭 大阪府門真市大字門真1006番地 松下電器 産業株式会社内 Fターム(参考) 2C087 AB06 BC02 BC04 BC05 BC06 BC07 BD01 BD12 BD13 BD42 5B021 AA01 CC05 DD10 EE01 9A001 BB03 DD08 JJ35 Continuation of the front page (72) Inventor Hiroaki Miyamune 1006 Kadoma, Kazuma, Osaka Prefecture F-term in Matsushita Electric Industrial Co., Ltd. (reference) 2C087 AB06 BC02 BC04 BC05 BC06 BC07 BD01 BD12 BD13 BD42 5B021 AA01 CC05 DD10 EE01 9A001 BB03 DD08 JJ35

Claims (14)

【特許請求の範囲】[Claims] 【請求項1】 同一のメモリ領域内に描画ワークエリア
を夫々展開する、相異なるページ記述言語を解釈して画
素データを生成する複数の解釈手段とを備えた画像処理
装置であって、一の解釈手段は、他の解釈手段が前記描
画ワークエリアとして前記メモリ領域の一部を占有して
いる場合であっても前記メモリ領域の空き領域を使って
前記ページ記述言語の解釈を開始し、解釈中に前記空き
領域が不足したならば前記他の解釈手段が前記描画ワー
クエリアを解放するまで前記解釈を待機することを特徴
とする画像処理装置。
1. An image processing apparatus comprising: a plurality of interpreting means for interpreting different page description languages to generate pixel data by respectively developing drawing work areas in the same memory area; The interpreter starts interpreting the page description language using a free area of the memory area even when another interpreter occupies a part of the memory area as the drawing work area. The image processing apparatus according to claim 1, wherein, if the free space is insufficient, the interpreting unit waits until the other interpreting unit releases the drawing work area.
【請求項2】 解釈手段は、前記ページ記述言語を中間
言語に翻訳する翻訳手段と、前記中間言語を画素データ
に変換する画素変換手段とで構成され、前記翻訳手段
は、前記中間言語を前記描画ワークエリアに蓄積し、前
記中間言語が不要になった後前記中間言語を削除して前
記描画ワークエリアを解放することを特徴とする請求項
1記載の画像処理装置。
2. The interpreting means comprises: a translating means for translating the page description language into an intermediate language; and a pixel converting means for converting the intermediate language into pixel data, wherein the translating means converts the intermediate language into the intermediate language. 2. The image processing apparatus according to claim 1, wherein the intermediate language is stored in a drawing work area, and after the intermediate language is no longer needed, the intermediate language is deleted to release the drawing work area.
【請求項3】 メモリ領域に対するデータの格納を管理
するメモリ管理部をさらに具備し、前記メモリ管理部
は、一の解釈手段が前記描画ワークエリアにデータの格
納を要求した場合前記データを格納するに十分な空き領
域がない場合、他の解釈手段が前記描画ワークエリアと
して前記メモリ領域の一部を占有しているか否か判定
し、前記他の解釈手段が前記メモリ領域を占有している
場合、前記他の解釈手段が前記描画ワークエリアを解放
するまで前記一の解釈手段に前記データを格納するのを
待機させることを特徴とする請求項1または請求項2記
載の画像処理装置。
A memory management unit that manages storage of data in a memory area, wherein the memory management unit stores the data when one interpretation unit requests storage of data in the drawing work area. If there is not enough free space, determine whether another interpreting means occupies a part of the memory area as the drawing work area, and if the other interpreting means occupies the memory area. 3. The image processing apparatus according to claim 1, wherein said one interpreting means waits for storing said data until said other interpreting means releases said drawing work area.
【請求項4】 一の解釈手段は、データを格納するに際
して描画ワークエリアに十分な空き領域がない場合、他
の解釈手段に対して前記描画ワークエリアとしてメモリ
領域の一部を占有しているか否か問合せ、前記他の解釈
手段が前記メモリ領域の一部を占有している場合前記他
の解釈手段が前記描画ワークエリアを解放したことを通
知するまで前記データを格納するのを待機することを特
徴とする請求項1または請求項2記載の画像処理装置。
4. An image processing apparatus according to claim 1, wherein, when storing data, if there is not enough free space in the drawing work area, the other interpreting means occupies a part of the memory area as the drawing work area. Inquiring whether the other interpreting means occupies a part of the memory area and waiting for storing the data until the other interpreting means notifies that the drawing work area has been released. The image processing apparatus according to claim 1 or 2, wherein:
【請求項5】 一の解釈手段は、データを格納するに際
して描画ワークエリアに十分な空き領域がない場合、他
の解釈手段に対して前記描画ワークエリアとしてメモリ
領域の一部を占有しているか否か判定し、前記他の解釈
手段が前記メモリ領域の一部を占有している場合前記描
画ワークエリアを解放し得るような前記他の解釈手段の
ステータス変化を検知するまで前記データを格納するの
を待機することを特徴とする請求項1または請求項2記
載の画像処理装置。
5. An interpreting means for determining whether a part of a memory area is occupied by the other interpreting means as the drawing work area when there is not enough free space in the drawing work area when storing data. If the other interpreting means occupies a part of the memory area, the data is stored until a status change of the other interpreting means is detected so as to release the drawing work area. The image processing apparatus according to claim 1, wherein the image processing apparatus waits for the image processing.
【請求項6】 請求項1から請求項5のいずれかに記載
の画像処理装置を搭載した印刷装置。
6. A printing apparatus equipped with the image processing apparatus according to claim 1.
【請求項7】 同一のメモリ領域内に描画ワークエリア
を夫々展開する、相異なるページ記述言語を解釈して画
素データを生成する複数の解釈手段とを備えた画像処理
装置の制御方法であって、一の解釈手段に、他の解釈手
段が前記描画ワークエリアとして前記メモリ領域の一部
を占有している場合であっても前記メモリ領域の空き領
域を使って前記ページ記述言語の解釈を開始させ、解釈
中に前記空き領域が不足したならば前記他の解釈手段が
前記描画ワークエリアを解放するまで前記解釈を待機さ
せることを特徴とする画像処理装置の制御方法。
7. A method for controlling an image processing apparatus, comprising: a plurality of interpreting means for developing pixel drawing work areas in the same memory area and interpreting different page description languages to generate pixel data. Even if one interpreting means occupies a part of the memory area as the drawing work area, the interpretation of the page description language is started using a free area of the memory area. Controlling the image processing apparatus to wait for the interpretation until the other interpretation means releases the drawing work area if the free space is insufficient during the interpretation.
【請求項8】 一の解釈手段が描画ワークエリアにデー
タの格納を要求した場合に前記データを格納するに十分
な空き領域がない場合、他の解釈手段が前記描画ワーク
エリアとしてメモリ領域の一部を占有しているか否か判
定し、前記他の解釈手段が前記メモリ領域の一部を占有
している場合、前記他の解釈手段が前記描画ワークエリ
アを解放するまで前記一の解釈手段に前記データを格納
するのを待機させることを特徴とする請求項7記載の画
像処理装置の制御方法。
8. When one interpreting means requests storage of data in a drawing work area and there is not enough free space to store the data, the other interpreting means sets one of the memory areas as the drawing work area. It is determined whether or not a part is occupied, and when the other interpreting means occupies a part of the memory area, the one interpreting means is used until the other interpreting means releases the drawing work area. 8. The control method according to claim 7, further comprising waiting for storing the data.
【請求項9】 データを格納するに際して描画ワークエ
リアに十分な空き領域がない場合、一の解釈手段に、他
の解釈手段に対して前記描画ワークエリアとしてメモリ
領域の一部を占有しているか否か問合せ、前記他の解釈
手段が前記メモリ領域を占有している場合前記他の解釈
手段が前記描画ワークエリアを解放したことを通知する
まで前記データを格納するのを待機させることを特徴と
する請求項7記載の画像処理装置の制御方法。
9. When storing data, if there is not enough free space in the drawing work area, one interpreting means occupies a part of the memory area as the drawing work area with respect to another interpreting means. Inquiring whether or not, if the other interpreting means occupies the memory area, it waits to store the data until the other interpreting means notifies that the drawing work area has been released. The method for controlling an image processing apparatus according to claim 7.
【請求項10】 データを格納するに際して描画ワーク
エリアに十分な空き領域がない場合、一の解釈手段に、
他の解釈手段に対して前記描画ワークエリアとしてメモ
リ領域の一部を占有しているか否か判定させ、前記他の
解釈手段が前記メモリ領域の一部を占有している場合前
記描画ワークエリアを解放し得るような前記他の解釈手
段のステータス変化を検知するまで前記データを格納す
るのを待機させることを特徴とする請求項7記載の画像
処理装置の制御方法。
10. When there is not enough free space in the drawing work area when storing data, one interpretation means includes:
When the other interpreting means occupies a part of the memory area as the drawing work area, it is determined whether the other interpreting means occupies a part of the memory area. 8. The control method according to claim 7, further comprising waiting for storing the data until a status change of the other interpreting unit that can be released is detected.
【請求項11】 同一のメモリ領域内に描画ワークエリ
アを夫々展開する、相異なるページ記述言語を解釈して
画素データを生成する複数の解釈手段とを備えた画像処
理装置の制御するプログラムであって、一の解釈手段
に、他の解釈手段が前記描画ワークエリアとして前記メ
モリ領域の一部を占有している場合であっても前記メモ
リ領域の空き領域を使って前記ページ記述言語の解釈を
開始させ、解釈中に前記空き領域が不足したならば前記
他の解釈手段が前記描画ワークエリアを解放するまで前
記解釈を待機させるプログラムを記録したコンピュータ
読み取り可能な記憶媒体。
11. A program for controlling an image processing apparatus, comprising: a plurality of interpreting means for developing drawing work areas in the same memory area and interpreting different page description languages to generate pixel data. Therefore, even if another interpreting means occupies a part of the memory area as the drawing work area, one interpreting means interprets the page description language using a free area of the memory area. A computer-readable storage medium storing a program to start and wait for the interpretation until the other interpretation means releases the drawing work area if the free space is insufficient during the interpretation.
【請求項12】 プログラムは、一の解釈手段が描画ワ
ークエリアにデータの格納を要求した場合に前記データ
を格納するに十分な空き領域がない場合、他の解釈手段
が前記描画ワークエリアとしてメモリ領域の一部を占有
しているか否か判定し、前記他の解釈手段が前記メモリ
領域の一部を占有している場合、前記他の解釈手段が前
記描画ワークエリアを解放するまで前記一の解釈手段に
前記データを格納するのを待機させることを特徴とする
請求項11記載の記憶媒体。
12. A program according to claim 1, wherein when one interpreting means requests storage of data in a drawing work area and there is not enough free space to store the data, the other interpreting means sets a memory as the drawing work area. It is determined whether or not a part of the area is occupied. If the other interpreting means occupies a part of the memory area, the one interpreting means is released until the other interpreting means releases the drawing work area. 12. The storage medium according to claim 11, wherein an interpreting unit is made to wait for storing the data.
【請求項13】 プログラムは、データを格納するに際
して描画ワークエリアに十分な空き領域がない場合、一
の解釈手段に、他の解釈手段に対して前記描画ワークエ
リアとしてメモリ領域の一部を占有しているか否か問合
せ、前記他の解釈手段が前記メモリ領域を占有している
場合前記他の解釈手段が前記描画ワークエリアを解放し
たことを通知するまで前記データを格納するのを待機さ
せることを特徴とする請求項11記載の記憶媒体。
13. The program, if there is not enough free space in the drawing work area when storing data, causes one interpreting means to occupy a part of the memory area as the drawing work area for another interpreting means. Inquiring whether the other interpreting means occupies the memory area, and waiting for storing the data until the other interpreting means notifies that the drawing work area has been released. The storage medium according to claim 11, wherein:
【請求項14】 プログラムは、データを格納するに際
して描画ワークエリアに十分な空き領域がない場合、一
の解釈手段に、他の解釈手段に対して前記描画ワークエ
リアとしてメモリ領域の一部を占有しているか否か判定
させ、前記他の解釈手段が前記メモリ領域の一部を占有
している場合前記描画ワークエリアを解放し得るような
前記他の解釈手段のステータス変化を検知するまで前記
データを格納するのを待機させることを特徴とする請求
項11記載の記憶媒体。
14. When storing a data, the program occupies a part of the memory area as one drawing work area for one interpreting means when there is not enough free space in the drawing work area for another interpreting means. Whether the other interpreting means occupies a part of the memory area, and detects the status change of the other interpreting means such that the drawing work area can be released. 12. The storage medium according to claim 11, wherein the storage medium is made to wait for storing.
JP2000041749A 2000-02-18 2000-02-18 Image processing apparatus and control method thereof Expired - Fee Related JP3373476B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000041749A JP3373476B2 (en) 2000-02-18 2000-02-18 Image processing apparatus and control method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000041749A JP3373476B2 (en) 2000-02-18 2000-02-18 Image processing apparatus and control method thereof

Publications (2)

Publication Number Publication Date
JP2001228991A true JP2001228991A (en) 2001-08-24
JP3373476B2 JP3373476B2 (en) 2003-02-04

Family

ID=18564927

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000041749A Expired - Fee Related JP3373476B2 (en) 2000-02-18 2000-02-18 Image processing apparatus and control method thereof

Country Status (1)

Country Link
JP (1) JP3373476B2 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004005545A (en) * 2002-04-12 2004-01-08 Canon Inc Job management apparatus, job management method, control program, and job management system
JP2007242052A (en) * 2007-05-28 2007-09-20 Ricoh Co Ltd Process-to-process communication program and image information processor
US20080137135A1 (en) * 2006-12-11 2008-06-12 Canon Kabushiki Kaisha Print control apparatus and control method thereof and device driver
US7755781B2 (en) 2006-07-24 2010-07-13 Konica Minolta Business Technologies, Inc. Image forming apparatus, image forming method and recording medium
JP2011159219A (en) * 2010-02-03 2011-08-18 Brother Industries Ltd Pdl data processor and pdl data processing program
JP2011183757A (en) * 2010-03-11 2011-09-22 Konica Minolta Business Technologies Inc Image processor, image processing method, and program

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004005545A (en) * 2002-04-12 2004-01-08 Canon Inc Job management apparatus, job management method, control program, and job management system
US7420696B2 (en) 2002-04-12 2008-09-02 Canon Kabushiki Kaisha Job management apparatus, job management system, job management method, and storage medium storing program
US7755781B2 (en) 2006-07-24 2010-07-13 Konica Minolta Business Technologies, Inc. Image forming apparatus, image forming method and recording medium
US20080137135A1 (en) * 2006-12-11 2008-06-12 Canon Kabushiki Kaisha Print control apparatus and control method thereof and device driver
JP2007242052A (en) * 2007-05-28 2007-09-20 Ricoh Co Ltd Process-to-process communication program and image information processor
JP4500326B2 (en) * 2007-05-28 2010-07-14 株式会社リコー Inter-process communication program and image information processing apparatus
JP2011159219A (en) * 2010-02-03 2011-08-18 Brother Industries Ltd Pdl data processor and pdl data processing program
JP2011183757A (en) * 2010-03-11 2011-09-22 Konica Minolta Business Technologies Inc Image processor, image processing method, and program
US8675212B2 (en) 2010-03-11 2014-03-18 Konica Minolta Business Technologies, Ltd. Image processing apparatus, image processing method, and recording medium

Also Published As

Publication number Publication date
JP3373476B2 (en) 2003-02-04

Similar Documents

Publication Publication Date Title
JP4817474B2 (en) Data processing apparatus, data processing method, and storage medium storing computer-readable program
US7280245B2 (en) Data processing apparatus adaptable to plural environments and data processing method
US7161691B2 (en) Method and apparatus for multiple media printing
KR100757154B1 (en) Information processing apparatus and its control method
JP5839845B2 (en) Printing apparatus, printing method, and program
JP5178282B2 (en) Information processing apparatus, control method, and program
US20060028678A1 (en) Image processing apparatus and its control method
US20080316530A1 (en) Printing control apparatus, printing control method, program, and storage medium
JP2004246570A (en) Information processor
JPH09311770A (en) Information processor, and printer, and its print control method
JP2005173701A (en) Information processor, information processing method, and program therefor
JP2001228991A (en) Image processor and its control method
US6804028B1 (en) Image processing apparatus and method, and storage medium storing computer-readable program
JP2007329919A (en) Image forming apparatus and control method therefor
JP2001159961A (en) Device and method for controlling printing and printing system
JP3209911B2 (en) Print control device and data processing method of print control device
JP3962720B2 (en) Information processing apparatus, information processing method, computer program, and computer-readable storage medium
JP2000353066A (en) Information processor, information processing method and storage medium
JP2009042990A (en) Color monochrome processor
JPH10173897A (en) Image processing unit, image processing system and image processing method
JP2009100103A (en) Printing device
JP2001228985A (en) Image processor and print data receiving method
JP3406556B2 (en) Band processing device and printing device
JP3056948B2 (en) PRINTING APPARATUS, CONTROLLER THEREOF, AND METHOD OF CONTROLLING PRINTING APPARATUS
JP2003044235A (en) Host base printing system and method for controlling the system

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071122

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081122

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091122

Year of fee payment: 7

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313115

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091122

Year of fee payment: 7

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091122

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101122

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111122

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees