JP2010206251A - Image forming device, memory area control method, and memory area control program - Google Patents
Image forming device, memory area control method, and memory area control program Download PDFInfo
- Publication number
- JP2010206251A JP2010206251A JP2009046380A JP2009046380A JP2010206251A JP 2010206251 A JP2010206251 A JP 2010206251A JP 2009046380 A JP2009046380 A JP 2009046380A JP 2009046380 A JP2009046380 A JP 2009046380A JP 2010206251 A JP2010206251 A JP 2010206251A
- Authority
- JP
- Japan
- Prior art keywords
- print data
- area
- storing
- data
- filter
- 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.)
- Pending
Links
Images
Landscapes
- Record Information Processing For Printing (AREA)
- Facsimiles In General (AREA)
Abstract
Description
この発明は、印刷データのフィルタ処理機能を含む複数の機能を有する画像形成装置、同画像形成装置において複数の機能でそれぞれ用いられるデータを記憶する記憶領域を制御する記憶領域制御方法、および記憶領域制御プログラムに関する。 The present invention relates to an image forming apparatus having a plurality of functions including a print data filtering function, a storage area control method for controlling a storage area for storing data respectively used in the plurality of functions in the image forming apparatus, and a storage area It relates to the control program.
従来、MFP(Multifunction Printer)やラインプリンタに搭載されていない特殊なページ記述言語(たとえば、HPGL:Hewlett−Packard Graphics Languageなど)で記述された印刷データを印刷する場合、言語を解釈する前にフィルタとなるアプリケーション(以下、フィルタアプリという)を用いて、印刷データを一般的なページ記述言語(たとえばPostscriptなど)に変換した上で印刷がおこなわれている(たとえば、下記特許文献1参照)。フィルタアプリには、異なるページ記述言語への変換だけでなく、日本語を外国語に変換したり、標準語を地方の言葉に変換するなどの機能を備えるものがある。下記特許文献1には、ユーザ端末から送られた印刷データをフィルタ処理し、プリンタやFAXなどの装置に出力する技術が開示されている。 Conventionally, when printing print data described in a special page description language (for example, HP: Hewlett-Packard Graphics Language) that has not been installed in an MFP (Multifunction Printer) or line printer, a filter is required before the language is interpreted. Printing is performed after converting print data into a general page description language (for example, Postscript or the like) using an application (hereinafter referred to as a filter application) (see, for example, Patent Document 1 below). Some filter apps not only convert to different page description languages, but also have functions such as converting Japanese into a foreign language and converting standard words into local languages. Japanese Patent Application Laid-Open Publication No. 2004-228561 discloses a technique for filtering print data sent from a user terminal and outputting the data to a printer or a fax machine.
しかしながら、上記の従来技術では、フィルタアプリは印刷データをある決められたバッファサイズごとに標準入力から読み込み、処理したデータをある決められたバッファサイズごとに標準出力へ書き出す。このため、印刷データ量が非常に大きい場合や、フィルタ処理の前後でデータ量が大きく増加する場合には、読み書き(コピー)の回数が増え、フィルタ処理にかかるオーバーヘッドタイムが長くなるという問題点がある。 However, in the above prior art, the filter application reads the print data from the standard input for each predetermined buffer size, and writes the processed data to the standard output for each predetermined buffer size. For this reason, when the amount of print data is very large, or when the amount of data greatly increases before and after the filtering process, the number of times of reading / writing (copying) increases and the overhead time required for the filtering process increases. is there.
この発明は、上述した従来技術による問題点を解消するため、短いオーバーヘッドタイムでフィルタ処理をおこなうことができる画像形成装置、記憶領域制御方法、および記憶領域制御プログラムを提供することを目的とする。 SUMMARY OF THE INVENTION An object of the present invention is to provide an image forming apparatus, a storage area control method, and a storage area control program capable of performing a filtering process with a short overhead time in order to solve the above-described problems caused by the prior art.
上述した課題を解決し、目的を達成するため、請求項1の発明にかかる画像形成装置は、印刷データのフィルタ処理機能を含む複数の機能を有する画像形成装置であって、前記複数の機能でそれぞれ用いられるデータを記憶する記憶手段と、前記印刷データをフィルタ処理するフィルタ処理手段と、前記印刷データのデータ容量に基づいて、前記記憶手段のうち前記印刷データの記憶用に割り当てる領域を決定する決定手段と、を備え、前記記憶手段には、前記決定手段によって決定された領域に前記フィルタ処理前の前記印刷データまたは前記フィルタ処理後の前記印刷データのうち少なくともいずれか一つが記憶され、他の領域には前記フィルタ処理機能以外の他の機能で用いられるデータが記憶されることを特徴とする。 In order to solve the above-described problems and achieve the object, an image forming apparatus according to a first aspect of the present invention is an image forming apparatus having a plurality of functions including a print data filtering function. A storage unit for storing data to be used, a filter processing unit for filtering the print data, and an area to be allocated for storing the print data in the storage unit are determined based on the data capacity of the print data. Determining means, wherein the storage means stores at least one of the print data before the filter processing or the print data after the filter processing in an area determined by the determination means; In this area, data used for functions other than the filter processing function is stored.
また、請求項2の発明にかかる画像形成装置は、請求項1に記載の発明において、前記決定手段は、前記フィルタ処理前の前記印刷データと前記フィルタ処理後の前記印刷データとに異なる領域を割り当て、前記印刷データのデータ容量および前記フィルタ処理の変換倍率に基づいて前記フィルタ処理後の前記印刷データを記憶する領域の容量を変更することを特徴とする。 The image forming apparatus according to a second aspect of the present invention is the image forming apparatus according to the first aspect, wherein the determining means sets different areas for the print data before the filter processing and the print data after the filter processing. The capacity of the area for storing the print data after the filter process is changed based on the allocation, the data capacity of the print data, and the conversion magnification of the filter process.
また、請求項3の発明にかかる画像形成装置は、請求項2に記載の発明において、前記決定手段は、前記フィルタ処理後の前記印刷データを記憶する領域として、前記フィルタ処理後の前記印刷データのデータ容量以上の領域を割り当てることを特徴とする。 The image forming apparatus according to a third aspect of the present invention is the image forming apparatus according to the second aspect, wherein the determining means stores the print data after the filter processing as an area for storing the print data after the filter processing. An area larger than the data capacity is allocated.
また、請求項4の発明にかかる画像形成装置は、請求項1に記載の発明において、前記決定手段は、前記印刷データのデータ容量および前記フィルタ処理の変換倍率に基づいて、前記印刷データの記憶用に割り当てる領域のうち、前記フィルタ処理前の前記印刷データを記憶する領域と前記フィルタ処理後の前記印刷データを記憶する領域との比率を変更することを特徴とする。 An image forming apparatus according to a fourth aspect of the present invention is the image forming apparatus according to the first aspect, wherein the determining means stores the print data based on a data capacity of the print data and a conversion magnification of the filtering process. The ratio of the area for storing the print data before the filtering process to the area for storing the printing data after the filtering process is changed among the areas allocated for use.
また、請求項5の発明にかかる画像形成装置は、請求項1〜4のいずれか一つに記載の発明において、前記フィルタ処理手段は、前記フィルタ処理後の前記印刷データの容量が前記決定手段によって割り当てられた領域の容量より大きい場合、前記フィルタ処理後の前記印刷データを分割して前記割り当てられた領域に順次記憶することを特徴とする。 An image forming apparatus according to a fifth aspect of the present invention is the image forming apparatus according to any one of the first to fourth aspects, wherein the filter processing unit has a capacity of the print data after the filter processing as the determination unit. In the case where the capacity of the area allocated by (1) is larger, the print data after the filtering process is divided and sequentially stored in the allocated area.
また、請求項6の発明にかかる画像形成装置は、請求項1に記載の発明において、前記決定手段は、前記フィルタ処理前の前記印刷データを記憶する領域のみを割り当て、前記印刷データのデータ容量に基づいて前記フィルタ処理前の前記印刷データを記憶する領域の容量を変更することを特徴とする。 According to a sixth aspect of the present invention, in the image forming apparatus according to the first aspect, the determining unit allocates only an area for storing the print data before the filtering process, and a data capacity of the print data The capacity of the area for storing the print data before the filter processing is changed based on the above.
また、請求項7の発明にかかる画像形成装置は、請求項6に記載の発明において、前記決定手段は、前記フィルタ処理前の前記印刷データを記憶する領域として、前記フィルタ処理前の前記印刷データのデータ容量以上の領域を割り当てることを特徴とする。 An image forming apparatus according to a seventh aspect of the present invention is the image forming apparatus according to the sixth aspect, wherein the determining means stores the print data before the filtering process as an area for storing the printing data before the filtering process. An area larger than the data capacity is allocated.
また、請求項8の発明にかかる記憶領域制御方法は、印刷データのフィルタ処理機能を含む複数の機能を有する画像形成装置において、前記複数の機能でそれぞれ用いられるデータを記憶する記憶領域を制御する記憶領域制御方法であって、前記印刷データのデータ容量に基づいて、前記記憶領域のうち前記印刷データの記憶用に割り当てる領域を決定する決定工程と、前記決定工程で決定された領域に前記フィルタ処理前の前記印刷データまたは前記フィルタ処理後の前記印刷データのうち少なくともいずれか一つを記憶し、他の領域には前記フィルタ処理機能以外の他の機能で用いられるデータを記憶する記憶工程と、を含むことを特徴とする。 According to an eighth aspect of the present invention, there is provided a storage area control method for controlling a storage area for storing data respectively used in the plurality of functions in an image forming apparatus having a plurality of functions including a print data filtering function. A storage area control method, comprising: a determination step of determining an area to be allocated for storing the print data out of the storage areas based on a data capacity of the print data; and the filter in the area determined in the determination step A storage step of storing at least one of the print data before processing or the print data after filtering, and storing data used in other functions other than the filtering function in another area; , Including.
また、請求項9の発明にかかる記憶領域制御方法は、請求項8に記載の発明において、前記決定工程では、前記フィルタ処理前の前記印刷データと前記フィルタ処理後の前記印刷データとに異なる領域を割り当て、前記印刷データのデータ容量および前記フィルタ処理の変換倍率に基づいて前記フィルタ処理後の前記印刷データを記憶する領域の容量を変更することを特徴とする。 According to a ninth aspect of the present invention, there is provided the storage area control method according to the eighth aspect, wherein the determining step includes different areas for the print data before the filter process and the print data after the filter process. And the capacity of the area for storing the print data after the filter processing is changed based on the data volume of the print data and the conversion magnification of the filter processing.
また、請求項10の発明にかかる記憶領域制御方法は、請求項9に記載の発明において、前記決定工程では、前記前記フィルタ処理後の前記印刷データを記憶する領域として、前記フィルタ処理後の前記印刷データのデータ容量以上の領域を割り当てることを特徴とする。 According to a tenth aspect of the present invention, there is provided a storage area control method according to the ninth aspect of the invention, wherein, in the determining step, the area after the filter process is stored as the area for storing the print data after the filter process. An area larger than the data capacity of the print data is allocated.
また、請求項11の発明にかかる記憶領域制御方法は、請求項8に記載の発明において、前記決定工程では、前記印刷データのデータ容量および前記フィルタ処理の変換倍率に基づいて、前記印刷データの記憶用に割り当てる領域のうち、前記フィルタ処理前の前記印刷データを記憶する領域と前記フィルタ処理後の前記印刷データを記憶する領域との比率を変更することを特徴とする。 According to an eleventh aspect of the present invention, in the storage area control method according to the eighth aspect of the present invention, in the determination step, based on a data capacity of the print data and a conversion magnification of the filter processing, The ratio of the area for storing the print data before the filtering process to the area for storing the printing data after the filtering process is changed among the areas allocated for storage.
また、請求項12の発明にかかる記憶領域制御方法は、請求項8〜11のいずれか一つに記載の発明において、前記記憶工程では、前記フィルタ処理後の前記印刷データの容量が前記決定工程で割り当てられた領域の容量より大きい場合、前記フィルタ処理後の前記印刷データを分割して前記割り当てられた領域に順次記憶することを特徴とする。 A storage area control method according to a twelfth aspect of the present invention is the storage area control method according to any one of the eighth to eleventh aspects, wherein, in the storage step, the capacity of the print data after the filtering process is the determination step. The print data after the filtering process is divided and sequentially stored in the allocated area when the capacity is larger than the capacity of the allocated area.
また、請求項13の発明にかかる記憶領域制御方法は、請求項8に記載の発明において、前記決定工程では、前記フィルタ処理前の前記印刷データを記憶する領域のみを割り当て、前記印刷データのデータ容量に基づいて前記フィルタ処理前の前記印刷データを記憶する領域の容量を変更することを特徴とする。 According to a thirteenth aspect of the present invention, in the storage area control method according to the eighth aspect of the invention, in the determination step, only the area for storing the print data before the filter processing is allocated in the determination step, and the data of the print data is assigned. The capacity of an area for storing the print data before the filter processing is changed based on the capacity.
また、請求項14の発明にかかる記憶領域制御方法は、請求項13に記載の発明において、前記決定工程では、前記フィルタ処理前の前記印刷データを記憶する領域として、前記フィルタ処理前の前記印刷データのデータ容量以上の領域を割り当てることを特徴とする。 According to a fourteenth aspect of the present invention, in the storage area control method according to the thirteenth aspect, in the determination step, the printing before the filtering process is performed as an area for storing the printing data before the filtering process. An area larger than the data capacity of data is allocated.
また、請求項15の発明にかかる記憶領域制御プログラムは、請求項8〜14のいずれか一つに記載の記憶領域制御方法をコンピュータに実行させることを特徴とする。 A storage area control program according to a fifteenth aspect of the invention causes a computer to execute the storage area control method according to any one of the eighth to fourteenth aspects.
以上説明したように、本発明にかかる画像形成装置、記憶領域制御方法、および記憶領域制御プログラムによれば、短いオーバーヘッドタイムでフィルタ処理をおこなうことができるという効果を奏する。 As described above, according to the image forming apparatus, the storage area control method, and the storage area control program of the present invention, it is possible to perform the filtering process with a short overhead time.
以下に添付図面を参照して、この発明に係る画像形成装置、記憶領域制御方法、および記憶領域制御プログラムの好適な実施の形態を詳細に説明する。 Exemplary embodiments of an image forming apparatus, a storage area control method, and a storage area control program according to the present invention will be explained below in detail with reference to the accompanying drawings.
(実施の形態)
図1は、実施の形態にかかるシステムの構成図である。本実施の形態にかかるシステム100は、複合機101、ユーザ端末であるPC(パーソナル・コンピュータ)102、プリンタ103,104がLAN105を介して接続されている。LAN105はルータ106を介してインターネット107に接続されており、複合機101はPSTN(public switched telephone network)/ISDN網108に接続されている。また、システム100の各装置は、他の装置とTCP/IPプロトコルにより通信をおこなう。
(Embodiment)
FIG. 1 is a configuration diagram of a system according to an embodiment. In a
また、本実施の形態では、印刷データに対する処理をおこなうためにいわゆるプリントフィルタの技術を用いる。プリントフィルタとは、一般的に、プリントサーバなどで実行されるアプリケーションであり、標準入力から印刷データを読み込み、印刷データの変換をおこなって標準出力に書き出すものである。以下、本実施の形態におけるプリントフィルタをフィルタアプリと称する。 In the present embodiment, so-called print filter technology is used to perform processing on print data. A print filter is generally an application executed on a print server or the like, which reads print data from standard input, converts print data, and writes it to standard output. Hereinafter, the print filter in the present embodiment is referred to as a filter application.
本実施の形態ではフィルタアプリを複合機101が実行する。より詳細には、PC102から送信された印刷データに対して複合機101のフィルタアプリによって変換処理をおこない、複合機101のプリンタアプリによって印刷をおこなう。後述するように、本実施の形態において、フィルタアプリは、標準入出力上の印刷データだけでなく、複合機101内の様々なアプリケーションが使用する共有メモリ上の印刷データに対しても変換処理をおこなうことができる。
In this embodiment, the MFP 101 executes the filter application. More specifically, the print data transmitted from the PC 102 is converted by the filter application of the
図2は、複合機が稼動しているときのソフトウェア構成を示すブロック図である。図2に示すように、複合機101は、白黒ラインプリンタ(B&W LP)231と、カラーラインプリンタ(Color LP)232と、スキャナ、ファクシミリ、ハードディスク(HD)、メモリ、ネットワークインタフェースなどのハードウェアリソース233を有するとともに、プラットホーム220とアプリケーション230とから構成されるソフトウェア群210とを備えている。なお、ハードウェアリソース233には、後述する共有メモリ300が含まれる。共有メモリ300は、複合機101内の様々なアプリケーションが使用可能なメモリであり、標準入出力よりも大きな記憶容量を有している。
FIG. 2 is a block diagram illustrating a software configuration when the multifunction peripheral is operating. As shown in FIG. 2, the multi-function peripheral 101 includes a monochrome line printer (B & W LP) 231, a color line printer (Color LP) 232, and hardware resources such as a scanner, a facsimile, a hard disk (HD), a memory, and a network interface. And a
プラットホーム220は、アプリケーション230からの処理要求を解釈してハードウェア資源の獲得要求を発生させるコントロールサービスと、一または複数のハードウェア資源の管理をおこない、コントロールサービスからの獲得要求を調停するシステムリソースマネージャ(SRM)223と、汎用OS221とを備えている。
The platform 220 interprets a processing request from the application 230 and generates a hardware resource acquisition request, and manages one or a plurality of hardware resources and arbitrates the acquisition request from the control service. A manager (SRM) 223 and a general-
コントロールサービスは、複数のサービスモジュールから形成され、SCS(システムコントロールサービス)222と、ECS(エンジンコントロールサービス)224と、MCS(メモリコントロールサービス)225と、OCS(オペレーションパネルコントロールサービス)226と、FCS(ファックスコントロールサービス)227と、NCS(ネットワークコントロールサービス)228とから構成される。なお、このプラットホーム220は、あらかじめ定義された関数によりアプリケーション230から処理要求を受信可能とするアプリケーションプログラムインタフェース(API)を有する。 The control service is formed of a plurality of service modules, and includes an SCS (system control service) 222, an ECS (engine control service) 224, an MCS (memory control service) 225, an OCS (operation panel control service) 226, and an FCS. (Fax control service) 227 and NCS (network control service) 228. The platform 220 has an application program interface (API) that can receive a processing request from the application 230 by a predefined function.
汎用OS221は、UNIX(登録商標)などの汎用オペレーティングシステムであり、プラットホーム220並びにアプリケーション230の各ソフトウェアをそれぞれプロセスとして並列実行する。
The general-
SRM223のプロセスは、SCS222とともにシステムの制御およびリソースの管理をおこなうものである。SRM223のプロセスは、スキャナ部やプリンタ部などのエンジン、メモリ、HDDファイル、ホストI/O(セントロI/F、ネットワークI/F、IEEE1394 I/F、RS232C I/Fなど)のハードウェア資源を利用する上位層からの要求に従って調停をおこない、実行制御する。また、SCS222のプロセスは、アプリ管理、操作部制御、システム画面表示、LED表示、リソース管理、割り込みアプリ制御などをおこなう。
The process of the
ECS224のプロセスはハードウェアリソース233のエンジンの制御をおこない、MCS225のプロセスは、画像メモリの取得および解放、ハードディスク装置(HDD)の利用、画像データの圧縮および伸張などをおこなう。
The
FCS227のプロセスは、アプリからPSTN/ISDN網108を利用したファクシミリ送受信、BKM(バックアップSRAM)で管理されている各種ファクシミリデータの登録/引用、ファクシミリ読みとり、ファクシミリ受信印刷、融合送受信をおこなうためのAPIを提供する。
The process of
NCS228のプロセスは、ネットワークI/Oを必要とするアプリケーションに対して共通に利用できるサービスを提供するためのプロセスであり、ネットワーク側から各プロトコルによって受信したデータを各アプリケーションに振り分けたり、アプリケーションからデータをネットワーク側に送信する際の仲介をおこなう。具体的には、ftpd、httpd、lpd、snmpd、telnetd、smtpdなどのサーバデーモンや、同プロトコルのクライアント機能などを有している。また、NCS228は、本実施の形態では、後述するフィルタ設定アプリ216によるキュー名とフィルタアプリ215の設定を保持し、キュー名を含む印刷データを受信したときに制御モジュール211dにフィルタアプリ215の起動を指示する機能を有している。
The process of the
OCS226は、オペレータ(ユーザ)と本体制御間の情報伝達手段となるオペレーションパネル(操作パネル)の制御をおこなうものである。
The
アプリケーション230は、ページ記述言語をサポートするプリンタ用のアプリケーションであるプリンタアプリ211と、コピー用アプリケーションであるコピーアプリ212と、ファクシミリ用アプリケーションであるファックスアプリ213と、スキャナ用アプリケーションであるスキャナアプリ214を有している。プリンタアプリ211は、PDL211a,PCL211b,PS211cおよび制御モジュール211dを含んでいる。
The application 230 includes a
また、アプリケーション230は、本実施の形態における処理をおこなうフィルタアプリ215と、NCS228に対して本実施の形態における処理をおこなうのに必要となる設定をするためのフィルタ設定アプリ216を有している。これらのアプリケーション230はいずれも複合機101の起動時に初期化部(図示せず)によりプロセスとして生成され、動作する。
The application 230 includes a
アプリケーション230の各プロセス、コントロールサービスの各プロセスは、関数呼び出しとその戻り値送信およびメッセージの送受信によってプロセス間通信をおこないながら、コピー、プリンタ、スキャナ、ファクシミリなどの画像形成処理にかかるユーザサービスを実現している。 Each process of the application 230 and each process of the control service realize a user service related to image forming processing such as copying, printer, scanner, facsimile, etc. while performing inter-process communication by calling a function, sending its return value, and sending / receiving a message. is doing.
このように、複合機101には、複数のアプリケーションおよび複数のコントロールサービスが存在し、いずれもプロセスとして動作している。そして、これらの各プロセス内部には、一または複数のスレッドが生成されて、スレッド単位の並列実行がおこなわれる。そして、コントロールサービスがアプリケーション230に対し共通サービスを提供しており、このため、これらの多数のプロセスが並列動作、およびスレッドの並列動作をおこない、互いにプロセス間通信をおこなって協調動作をしながら、コピー、プリンタ、スキャナ、ファクシミリなどの画像形成処理にかかるユーザサービスを提供するようになっている。そして、複合機101には、サードベンダーなどの第三者がコントロールサービス層の上のアプリケーション層に新規なアプリケーションを開発して搭載することが可能となっている。フィルタアプリ215およびフィルタ設定アプリ216はそのようなアプリケーションの1つである。
As described above, the
ここで、フィルタアプリ215による変換処理がおこなわれた後の印刷データは、変換処理前の印刷データと比較してデータサイズが大きく変化する場合がある。たとえば、印刷データのページ記述言語をHPGLからPost Scriptに変換をする場合、変換処理後のデータサイズは変換処理前に比べて50倍も大きくなる。このように印刷データの容量が大きくなると、変換処理後の印刷データを書き込む領域の容量が固定されている場合、印刷データを分割して処理するため、オーバーヘッドタイムが長くなってしまう。
Here, the print data after the conversion process by the
そこで、複合機101では、フィルタアプリ215による変換処理前後の印刷データを格納する領域を共有メモリ上に設けている。より詳細には、変換処理前の印刷データを格納する領域を「受信領域」、変換処理後の印刷データを格納する領域を「書き込み領域」という。複合機101では、データサイズやフィルタ変換倍率などを含むヘッダ情報を印刷データに付加し、制御モジュール211dによって、フィルタアプリ215の変換性能に合わせて共有メモリ上の書き込み領域のサイズを決定する。これにより、フィルタアプリ215による変換処理を高速化することができる。また、印刷データが小さい場合は、フィルタアプリ用に確保する共有メモリの容量を縮小することによって、他のアプリケーションなどが使用できる領域が増える。このため、共有メモリを有効に活用することができる。なお、本実施の形態においては、制御モジュール211dがフィルタアプリ215に対して共有メモリのような広範囲のメモリ領域を割り当てられる環境にあるものとする。
Therefore, in the multi-function peripheral 101, an area for storing print data before and after conversion processing by the
図3は、複合機による共有メモリの直接読み書き制御を説明するためのブロック図である。図3に示すように、まず、フィルタ設定アプリ216がNCS228にキュー名とフィルタアプリの設定をおこなうと(ステップS301)、制御モジュール211dは印刷データが保存される共有メモリ300上の受信領域をNCS228に設定する(ステップS302)。つぎに、キュー名とともに印刷データがPC102からNCS228に送られると(ステップS303)、NCS228は制御モジュール211dによって設定された共有メモリ300上の受信領域310に印刷データを保存する(ステップS304)。
FIG. 3 is a block diagram for explaining direct read / write control of the shared memory by the multifunction peripheral. As shown in FIG. 3, first, when the
また、制御モジュール211dはフィルタアプリ215を起動させて、フィルタアプリ215に印刷データが保存された受信領域310のアドレス(受信先)と、変換後の印刷データを書き込む書き込み領域320のアドレス(書き込み先)をフィルタアプリ215に設定する(ステップS305)。フィルタアプリ215は、共有メモリ300上の受信領域310から印刷データを読み込み(ステップS306)、変換処理後、制御モジュール211dによって設定された書き込み領域320に変換後の印刷データを書き込む(ステップS307)。制御モジュール211dは、変換後の印刷データの書き込み先をPDL211aに設定し(ステップS308)、PDL211aは、書き込み先から変換後の印刷データを読み出して解釈をおこなう(ステップS309)。
In addition, the
図4は、フィルタアプリの起動に関する処理を詳細に示すブロック図である。図4に示すように、まずフィルタ設定アプリ216がNCS228に対してキュー名481とそれに対応するフィルタアプリ(の識別情報、たとえばファイル名)482とを設定する(ステップS401)。NCS228は、キュー名481を含む印刷データをPC102から受信すると(ステップS402)、制御モジュール211dにフィルタアプリ215を起動するよう指示する(ステップS403)。制御モジュール211dは、NCS228の指示に従ってフィルタアプリ215を起動する(ステップS404)。
FIG. 4 is a block diagram illustrating in detail processing related to activation of the filter application. As shown in FIG. 4, first, the
図5は、複合機における印刷データの印刷処理の手順を示すフローチャート図である。複合機101は、電源が投入されるまで待機する(ステップS501:Noのループ)。電源が投入されると(ステップS501:Yes)、NCS228、プリンタアプリ211、フィルタ設定アプリ216、フィルタアプリ215を含む各種コントロールサービスおよび各種アプリケーション230が起動する(ステップS502)。
FIG. 5 is a flowchart illustrating a print data print processing procedure in the multifunction peripheral. The multi-function peripheral 101 waits until power is turned on (step S501: No loop). When the power is turned on (step S501: Yes), various control services and various applications 230 including the
つぎに、フィルタ設定アプリ216は、キュー名と、そのキュー名に対応するフィルタアプリ215をNCS228に設定する。また、制御モジュール211dは、印刷データを保存する共有メモリ300上の受信領域310をNCS228に設定する(ステップS503)。なお、この動作は起動時に一度だけおこなえばよい。
Next, the
複合機101は、PC102から印刷指示があるまで待機する(ステップS504:Noのループ)。PC102から印刷指示があると(ステップS504:Yes)、NCS228は、PC102からの印刷データをTCP/IP経由で受信して、ステップS503で設定された共有メモリ300の受信領域310に保存する(ステップS505)。ここで、印刷データは、たとえばPostscriptやESC/Page、RPCSなどのページ記述言語で記述されたデータである。
The multi-function peripheral 101 waits for a print instruction from the PC 102 (step S504: No loop). When there is a print instruction from the PC 102 (step S504: Yes), the
NCS228は、フィルタ設定アプリ216によって設定されたキュー名をチェックして(ステップS506)、制御モジュール211dにそのキュー名に対応するフィルタアプリ215の起動を指示し、制御モジュール211dは、その指示に従ってフィルタアプリを起動する(ステップS507)。そして、制御モジュール211dは、変換処理後の印刷データを記録する共有メモリ300上の書き込み領域320を決定する(ステップS508)。この書き込み領域320の決定処理については、図6〜図9を用いて詳細に説明する。
The
つづいて、制御モジュール211dは、印刷データが記録されている受信領域310のアドレス(受信先)と、変換後の印刷データを保存する書き込み領域320のアドレス(書き込み先)を標準入力に入力する(ステップS509)。フィルタアプリ215は、標準入力に入力された受信領域310のアドレスを参照して、受信領域310から印刷データを読み込んで(ステップS510)、印刷データに対して変換処理をおこなう(ステップS511)。この変換処理は、たとえばページ記述言語の変換、印刷データの中の文書における日本語から外国語への翻訳、標準語から地方の言葉への変換などである。
Subsequently, the
つぎに、フィルタアプリ215は、標準入力に入力された書き込み領域320のアドレスを参照して、変換処理後の印刷データを書き込み領域320に書き込む(ステップS512)。制御モジュール211dは、変換処理後の印刷データが記録された書き込み領域320のアドレス(書き込み先)をPDL211aに渡す(ステップS513)。PDL211aは、書き込み領域320を参照して印刷データの解釈をおこない、印刷紙などに印刷をおこなって(ステップS514)、本フローチャートによる処理を終了する。
Next, the
つぎに、図6〜図9を用いて、書き込み領域320として使用する共有メモリ300上の領域を決定する処理(図5のステップS508)について、詳細に説明する。図6は、書き込み領域の決定および設定処理を説明するためのブロック図である。制御モジュール211dは、NCS228によって共有メモリ300上の受信領域310に印刷データが記録されると(ステップS601)、印刷データの先頭に埋め込まれたフィルタアプリ用ヘッダ情報を読み込む(ステップS602)。
Next, processing for determining an area on the shared
制御モジュール211dは、その情報(印刷データのサイズや変換後のサイズ変化など)から共有メモリ300の書き込み領域320のサイズを決定し、受信領域310のアドレス(受信先)と書き込み領域320のアドレス(書き込み先)をフィルタアプリ215に渡す(ステップS603)。そして、フィルタアプリ215は、受信領域310から印刷データを読み込み(ステップS604)、変換処理をおこなった後、変換処理後の印刷データを書き込み領域320に書き込む(ステップS605)。
The
図7は、印刷データ内のフィルタアプリ用ヘッダ情報の一例を示す説明図である。印刷データ700には、フィルタアプリ用ヘッダ情報701および印刷用情報702が含まれている。フィルタアプリ用ヘッダ情報701には、たとえば、印刷するデータのデータサイズ情報(図示の例では1792バイト)やフィルタ変換倍率(図示の例では1.4)などが含まれている。また、印刷用情報702には、印刷処理時に用いる各種のコマンドなどが含まれている。
FIG. 7 is an explanatory diagram illustrating an example of the header information for filter application in the print data. The
図8は、プリント制御アプリによる書き込み領域の設定処理を示すフローチャートである。制御モジュール211dは、図5のステップS505で共有メモリ300の受信領域310に保存された印刷データから、その先頭に埋め込まれたフィルタアプリ用ヘッダ情報(図7参照)を読み出す(ステップS801)。そして、フィルタアプリ用ヘッダ情報に基づいて印刷データのサイズとフィルタ変換倍率との積(印刷データサイズ×フィルタ変換倍率)が所定の閾値(たとえば100バイト)より大きいか否かを判断する(ステップS802)。
FIG. 8 is a flowchart showing a write area setting process by the print control application. The
図9は、図8のステップS802における閾値を説明するための説明図である。閾値は、書き込み領域320として確保する領域の初期値であり、共有メモリ300上の書き込み可能領域900のサイズ(図示の例では32バイト〜4096バイト)内の任意の値である。
FIG. 9 is an explanatory diagram for explaining the threshold value in step S802 of FIG. The threshold value is an initial value of an area secured as the
図8の説明に戻り、印刷データサイズ×フィルタ変換倍率が閾値より大きい場合(ステップS802:Yes)、制御モジュール211dは、書き込み領域320を大きくして(ステップS803)、印刷データサイズ×フィルタ変換倍率分の書き込み領域320(たとえば、印刷データサイズが1792バイト、フィルタ変換倍率が1.4倍の場合、1792×1.4=2506バイト)を確保する。一方、印刷データサイズ×フィルタ変換倍率が閾値より大きくない場合(ステップS802:No)、制御モジュール211dは、書き込み領域320を小さくして(ステップS804)、印刷データサイズ×フィルタ変換倍率分の書き込み領域320(たとえば、印刷データサイズが150バイト、フィルタ変換倍率が0.5倍の場合、150×0.5=75バイト)を確保する。
Returning to the description of FIG. 8, when the print data size × filter conversion magnification is larger than the threshold (step S802: Yes), the
そして、制御モジュール211dは、印刷データが記録されている受信領域310のアドレス(受信先)および変換処理後の印刷データを保存する書き込み領域320のアドレス(書き込み先)を標準入力に入力して(ステップS805)、本フローチャートによる処理を終了する。なお、ステップS805の処理は図5のステップS509の処理である。この後は、図5に示す手順に従って印刷処理がおこなわれる。
Then, the
このように、実施の形態にかかる複合機101は、フィルタアプリ用ヘッダ情報から変換後の印刷データのサイズを計算し、これに合わせて書き込み領域320の容量を変更する。具体的には、印刷データのサイズが大きくなる場合には、一度で書き込むことができるように書き込み領域320のサイズを大きくする。これにより、フィルタアプリ215の変換処理を高速化することができる。また、印刷データの容量が小さくなる場合には、フィルタアプリ用に確保する領域を縮小する。これにより、他のアプリケーションで使用する共有メモリ300上の領域を増やすことができ、共有メモリ300を有効に活用することができる。
As described above, the
なお、上述した実施の形態では、書き込み領域320のサイズを変更したが、受信領域310のサイズについても、印刷データのヘッダ情報を用いて変更することができる。たとえば、受信領域310の容量がある閾値(たとえば100バイト)で固定されている場合、印刷データが閾値よりも大きい場合は分割して受信することになり、繰り返し処理によるオーバヘッドタイムが生じる。このため、受信領域310についてもフィルタアプリ用ヘッダ情報を用いてサイズを変更することにより、繰り返し処理によるオーバヘッドタイムをなくすことができる。
In the above-described embodiment, the size of the
より詳細には、所定サイズの領域を初期値として受信領域310を確保しておく。PC102から送信されてきた印刷データが初期値よりも大きい場合、印刷データを分割し、初期値分の印刷データを受信する。受信した印刷データにはヘッダ情報が含まれており、印刷データ全体のデータサイズを知ることができる。この情報から残りの印刷データをすべて受信できるように受信領域310のサイズを拡張し、残りの印刷データを受信する。
More specifically, the
たとえば、受信領域310の初期値が128バイト、印刷データのサイズが512バイトである場合、まず印刷データを先頭から128バイト分受信して受信領域310に格納する。受信した情報に含まれるヘッダ情報から残りの印刷データのサイズ(512−128=384バイト)を算出し、受信領域310を384バイトに拡張してから残りの印刷データを受信する。
For example, when the initial value of the
また、フィルタの変換倍率が高い場合(たとえば50倍など)は、書き込み領域320が大きく必要である。しかし、共有メモリ300も有限であるため書き込み領域320サイズも制限される(たとえば、図9に示した例では、最大で4096バイトである)。そこで、フィルタの変換倍率に合わせて受信領域310を縮小して、その分を書き込み領域320として使用することにより、効率よくフィルタ変換処理をおこなうことができる。
Further, when the conversion magnification of the filter is high (for example, 50 times), the
たとえば、受信領域310および書き込み領域320が、それぞれ最大4096バイトまで使用できるとすれば、合計で8192バイト使用することができる。フィルタの変換倍率が50倍の場合、受信領域310のサイズを書き込み領域320の50分の1とし、受信領域310は160バイト、書き込み領域320は8032バイトとする。これにより、制限領域内で効率よくフィルタ変換処理をおこなうことができる。
For example, if the receiving
さらに、共有メモリ300に書き込み領域320を設けず、受信領域310のみを設けるようにしてもよい。図10は、受信領域のみを設けた場合の印刷処理を説明するためのブロック図である。図10に示すように、まず、フィルタ設定アプリ216がNCS228にキュー名とフィルタアプリの設定をおこなうと(ステップS1001)、制御モジュール211dは、印刷データが保存される共有メモリ300上の受信領域310(受信先)をNCS228に設定する(ステップS1002)。つぎに、キュー名とともに印刷データがPC102からNCS228に送られると(ステップS1003)、NCS228は制御モジュール211dによって設定された共有メモリ300上の受信領域310に印刷データを保存する(ステップS1004)。
Furthermore, the receiving
また、制御モジュール211dはフィルタアプリ215を起動させて、標準入力を用いて、フィルタアプリ215に共有メモリ300上の受信領域310(受信先)を設定する(ステップS1005)。フィルタアプリ215は、共有メモリ300上の受信領域310から印刷データを読み込み(ステップS1006)、変換処理後、標準出力に対して変換後の印刷データを出力する(ステップS1007)。制御モジュール211dは、変換後の印刷データをPDL211aに送信し(ステップS1008)、PDL211aによって変換後の印刷データの解釈をおこなう。
In addition, the
このような構成によれば、フィルタアプリ215による印刷データの読み込み時には標準入力を使用せず、共有メモリ上の受信領域310から読み出すため、繰り返し処理が発生せず、高速に印刷データを読み込むことができる。また、フィルタアプリ215による変換処理後の処理速度は、上述した実施の形態と比較して遅くなるが、書き込み領域320を使用しない分、フィルタアプリ215に対して確保するメモリを縮小することができる。このため、他のアプリケーションなどが使用できる領域が増え、メモリを有効に活用することができる。
According to such a configuration, when the print data is read by the
なお、本実施の形態で説明した記憶領域制御方法は、あらかじめ用意されたプログラムをパーソナル・コンピュータやワークステーションなどのコンピュータで実行することにより実現することができる。このプログラムは、ハードディスク、フレキシブルディスク、CD−ROM、MO、DVDなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。またこのプログラムは、インターネットなどのネットワークを介して配布することが可能な伝送媒体であってもよい。 The storage area control method described in this embodiment can be realized by executing a program prepared in advance on a computer such as a personal computer or a workstation. This program is recorded on a computer-readable recording medium such as a hard disk, a flexible disk, a CD-ROM, an MO, and a DVD, and is executed by being read from the recording medium by the computer. The program may be a transmission medium that can be distributed via a network such as the Internet.
以上説明したように、本発明はフィルタ処理をおこなう画像形成装置に有効であり、特に、画像データの容量が大きく変化するフィルタ処理をおこなう画像形成装置や容量が大きい画像データを取り扱う画像形成装置に適している。 As described above, the present invention is effective for an image forming apparatus that performs a filtering process, and particularly, an image forming apparatus that performs a filtering process in which the volume of image data changes greatly and an image forming apparatus that handles image data having a large capacity. Is suitable.
100 システム
101 複合機
102 PC
103,104 プリンタ
105 LAN
106 ルータ
107 インターネット
108 PSTN/ISDN網
211 プリンタアプリ
211a PDL
211d 制御モジュール
215 フィルタアプリ
216 フィルタ設定アプリ
228 NCS
300 共有メモリ
310 受信領域
320 書き込み領域
100
103, 104
106
300
Claims (15)
前記複数の機能でそれぞれ用いられるデータを記憶する記憶手段と、
前記印刷データをフィルタ処理するフィルタ処理手段と、
前記印刷データのデータ容量に基づいて、前記記憶手段のうち前記印刷データの記憶用に割り当てる領域を決定する決定手段と、を備え、
前記記憶手段には、前記決定手段によって決定された領域に前記フィルタ処理前の前記印刷データまたは前記フィルタ処理後の前記印刷データのうち少なくともいずれか一つが記憶され、他の領域には前記フィルタ処理機能以外の他の機能で用いられるデータが記憶されることを特徴とする画像形成装置。 An image forming apparatus having a plurality of functions including a print data filtering function,
Storage means for storing data respectively used in the plurality of functions;
Filter processing means for filtering the print data;
Determining means for determining an area to be allocated for storing the print data out of the storage means based on the data capacity of the print data;
The storage means stores at least one of the print data before the filter process or the print data after the filter process in an area determined by the determination means, and the filter process in another area. An image forming apparatus, wherein data used for a function other than the function is stored.
前記印刷データのデータ容量に基づいて、前記記憶領域のうち前記印刷データの記憶用に割り当てる領域を決定する決定工程と、
前記決定工程で決定された領域に前記フィルタ処理前の前記印刷データまたは前記フィルタ処理後の前記印刷データのうち少なくともいずれか一つを記憶し、他の領域には前記フィルタ処理機能以外の他の機能で用いられるデータを記憶する記憶工程と、
を含むことを特徴とする記憶領域制御方法。 In an image forming apparatus having a plurality of functions including a print data filtering function, a storage area control method for controlling a storage area for storing data respectively used in the plurality of functions,
A determination step of determining an area to be allocated for storing the print data out of the storage areas based on the data capacity of the print data;
At least one of the print data before the filter processing or the print data after the filter processing is stored in the region determined in the determination step, and other regions other than the filter processing function are stored in the other regions. A storage process for storing data used in the function;
A storage area control method comprising:
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2009046380A JP2010206251A (en) | 2009-02-27 | 2009-02-27 | Image forming device, memory area control method, and memory area control program |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2009046380A JP2010206251A (en) | 2009-02-27 | 2009-02-27 | Image forming device, memory area control method, and memory area control program |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2010206251A true JP2010206251A (en) | 2010-09-16 |
Family
ID=42967344
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2009046380A Pending JP2010206251A (en) | 2009-02-27 | 2009-02-27 | Image forming device, memory area control method, and memory area control program |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2010206251A (en) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2015125739A (en) * | 2013-12-27 | 2015-07-06 | キヤノン株式会社 | Information processor, method, and program |
| JP2017117240A (en) * | 2015-12-24 | 2017-06-29 | キヤノン株式会社 | Control device, control method, and program |
-
2009
- 2009-02-27 JP JP2009046380A patent/JP2010206251A/en active Pending
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2015125739A (en) * | 2013-12-27 | 2015-07-06 | キヤノン株式会社 | Information processor, method, and program |
| JP2017117240A (en) * | 2015-12-24 | 2017-06-29 | キヤノン株式会社 | Control device, control method, and program |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US9232087B2 (en) | Image processing apparatus for receiving a request relating to image processing from an external source and executing the received request | |
| JP5763904B2 (en) | Printing system, printing method, print server, control method therefor, and program | |
| US7706017B2 (en) | Systems and methods for providing load balance rendering for direct printing | |
| JP2001027986A (en) | Data processing device and processing unit selection method | |
| JP6331302B2 (en) | Information processing system, information acquisition apparatus, server, program, and information processing method | |
| JP5704800B2 (en) | Data processing apparatus, data processing method, and program | |
| JP4509965B2 (en) | Job rendering method and job rendering system | |
| JP5516558B2 (en) | Image forming apparatus | |
| US20120293838A1 (en) | Image Forming Apparatus Using Option Controller for Printing | |
| JP6343913B2 (en) | Image forming apparatus and image forming apparatus control method | |
| JP2010206251A (en) | Image forming device, memory area control method, and memory area control program | |
| JP5232728B2 (en) | Image forming apparatus | |
| JP6768544B2 (en) | Information processing equipment, control methods and programs | |
| US20140268237A1 (en) | Client apparatus, printing system, and display method | |
| JP5096114B2 (en) | Image processing apparatus and scan data distribution method | |
| JP3740289B2 (en) | Image input device, information processing apparatus, image input method and information processing method, and computer-readable storage medium | |
| JP5505202B2 (en) | Image forming apparatus, image forming control method, image forming control program, and recording medium | |
| JP5370065B2 (en) | Image forming apparatus, image forming apparatus control method, and control program | |
| JP5546189B2 (en) | Image forming apparatus, image forming apparatus control method and program | |
| JP2000151756A (en) | Network system and data transfer method | |
| JP2019161420A (en) | Information processing system, information processing device, information processing method, and program | |
| JP2009178873A (en) | Image forming apparatus having job interrupt suppression function, job control method, and job control program | |
| JP2005250706A (en) | Relay printing system | |
| JP2011031473A (en) | Printer, printing method, program, and recording medium | |
| JP2008141769A (en) | Image forming apparatus and print data processing program |