説明

印刷装置

【課題】実質的な印刷用言語の使用状況を解析して、メモリを効率的に使用することが可能な、印刷装置を提供する。
【解決手段】解析された印刷ジョブの使用状況の統計をとり、統計結果に基づいて言語解釈プログラムの使用頻度と実行間隔とを算出する使用状況算出手段100と、算出された使用頻度が最も高い言語解釈プログラムを最初にメモリ16に常駐させ、又、算出された使用頻度が高く且つ実行間隔が長い言語解釈プログラムを前記常駐させた言語解釈プログラムの次にメモリ16に常駐させる常駐切り替え手段400とを具備する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、印刷装置に関し、特に、印刷用言語に基づいて記載された印刷ジョブを解析するにあたり、印刷用言語に対応した言語解釈プログラムを選択してメモリ上で実行し、解析結果に基づいて印刷を行なう印刷装置に関するものである。
【背景技術】
【0002】
従来、端末で作成された印刷データの印刷イメージを印刷装置に指示するために印刷用言語が使用されている。ネットワークを介して複数の端末及び印刷装置とが接続される場合、各端末が異なる印刷用言語を使用する場合があり、印刷装置は各端末が使用する印刷用言語に対応できるよう複数の言語解釈プログラムを備えている(例えば、特許文献1参照)。
【0003】
しかし、印刷装置が複数の言語解釈プログラムを備える場合、言語解釈プログラムの実行環境が問題となる。通常、印刷装置は言語解釈プログラムをメモリ上に読み込み、メモリ上で実行する。そのため、送信された印刷データに素早く対応するためには、メモリ上に異なる言語解釈プログラムを常駐させておくことが望ましい。しかしながら、メモリ上に言語解釈プログラムを複数常駐させることは、メモリ容量の大きなメモリを使用する必要があり、コスト的な制約において現実的でない。そのため、従来では、言語解釈プログラムの使用頻度をカウントし、カウントされた使用頻度が多い言語解釈プログラムのみをメモリ上に常駐させていた(例えば、特許文献2参照)。
【特許文献1】特開2003−29946号公報
【特許文献2】特開平11−194907号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
上述した特許文献2の発明は、次のような課題があった。つまり、言語解釈プログラムの使用頻度のみで不揮発性メモリに常駐させる言語解釈プログラムを選択した場合、現実の言語解釈プログラムの使用状況に対応しない場合があった。
【0005】
本発明は、上記課題に鑑みてなされたもので、実質的な印刷用言語の使用状況を解析して、メモリを効率的に使用することが可能な、印刷装置の提供を目的とする。
【課題を解決するための手段】
【0006】
上記課題を解決するために、本発明の一局面では、印刷用言語に基づいて記載された印刷ジョブを解析するにあたり、印刷用言語に対応した言語解釈プログラムを選択してメモリ上で実行し、前記解析結果に基づいて印刷を行なう印刷装置であって、解析された前記印刷ジョブの使用状況の統計をとり、統計結果に基づいて前記言語解釈プログラムの使用頻度と実行間隔とを算出する使用状況算出手段と、前記算出された使用頻度が最も高い前記言語解釈プログラムを最初に前記メモリに常駐させ、又、前記算出された使用頻度が高く且つ実行間隔が長い前記言語解釈プログラムを前記常駐された言語解釈プログラムの次に前記メモリに常駐させる常駐切り替え手段とを具備する。
【0007】
上記のように構成された発明では、印刷ジョブを解析するにあたり、印刷用言語に対応した言語解釈プログラムを選択してメモリ上で実行し、前期実行された言語解釈プログラムの解析結果に基づいて印刷を行なう印刷装置において、解析された印刷ジョブの使用状況の統計をとり、統計結果に基づいて言語解釈プログラムの使用頻度と実行間隔とを算出する使用状況算出手段と、算出された最も高い使用頻度の言語解釈プログラムを最初にメモリに常駐させ、又、算出された使用頻度が高く且つ実行間隔が長い言語解釈プログラムを常駐された言語解釈プログラムの次にメモリに常駐させる常駐切り替え手段とを具備するため、メモリに常駐させる言語解釈プログラムを言語解釈プログラムの使用頻度と実行間隔とに基づいて選択でき、メモリを効率的に使用することができる。
ここで、使用頻度とは、一定期間に言語解釈プログラムが実行される回数を意味する。また、実行間隔とは言語解釈プログラムが連続して使用される間隔の長さを意味する。
【0008】
好ましくは、前記使用状況算出手段は、前記言語解釈プログラムが処理する印刷ジョブ数と、前記言語解釈プログラムを実行するためにメモリへ読み込まれる読み込み回数とを計測して統計をとり、前記印刷ジョブ数の統計結果に基づいて前記使用頻度を算出し、前記読み込み回数の統計結果に基づいて前記実行間隔を算出する
【0009】
上記のように構成された発明では、印刷ジョブ数の統計結果により使用頻度を算出し、読み込み回数の統計結果により実行間隔を算出するため、印刷ジョブの処理状況から言語解釈プログラムの使用状況を判断することができ、より実質的な言語解釈プログラムの使用状況を判断することができる。
【0010】
前記使用状況算出手段は、前記言語解釈プログラムのメモリ使用量に基づいて、前記メモリの空き容量を算出し、前記算出されたメモリの空き容量が少ない場合は、前記言語解釈プログラムを起動時にメモリに読み込む。
上記のように構成された発明では、メモリの空き容量が少ない場合は、言語解釈プログラムをメモリに常駐させず、起動時にメモリに読み込むため、少ない空き容量のメモリでも効果的にメモリを活用することができる。
【0011】
好ましくは、前記常駐切り替え手段は、前記メモリ使用量を前記印刷ジョブ内で実行される印刷ページの数に基づいて算出する。
言語解釈プログラムのメモリ使用量は、処理されるページ数によって簡易的に算出することができる。例えば、言語解釈プログラムにより処理される平均ページ数に応じてメモリ使用量の重み付けを行なえば、より簡単な演算によりメモリ使用量を予測することができ、結果としてメモリの空き容量を予測することが可能となる。
【0012】
また、メモリへ常駐させる言語解釈プログラムの選択は、印刷装置が自動で実施することに限定されず、言語解釈プログラムの使用頻度と実行間隔とを確認したユーザがどの言語解釈プログラムを常駐させるかを判断するものであってもよい。そのため、本発明の他の局面として、印刷用言語に基づいて記載された印刷ジョブを解析するにあたり、前記印刷用言語に対応した言語解釈プログラムを選択してメモリ上で実行し、前期実行された言語解釈プログラムの解析結果に基づいて印刷を行なう印刷装置であって、解析された前記印刷ジョブの使用状況を統計し、前記統計結果に基づいて前記言語解釈プログラムの使用頻度と実行間隔とを算出する使用状況算出手段と、前記算出された使用頻度と実行間隔とを表示する使用状況表示手段とを具備する。
【0013】
上記のように構成された発明では、印刷ジョブの使用状況の統計結果に基づいて言語解釈プログラムの使用頻度と実行間隔とを表示し、この使用頻度と実行間隔とをユーザが確認することで、ユーザがメモリに常駐させる言語解釈プログラムを判断するのを補助することができる。
【0014】
好ましくは、前記使用状況表示手段は、前記印刷ジョブの処理内容に基づいてヒストグラムを生成し、前記生成されたヒストグラムをステータスシートとして印刷する。
上記のように構成された発明では、ユーザは印刷されたステータスシートを確認することで、メモリに常駐させる言語解釈プログラムの判断材料とすることができる。
【0015】
好ましくは、前記使用状況表示手段は、前記言語解釈プログラムにおける、使用頻度と、実行間隔と、該言語解釈プログラムが処理する印刷ジョブ内で実行される印刷ページの数とに基づいて個別にヒストグラムを作成する。
上記のように構成された発明では、使用頻度に基づいて作成されたヒストグラムはユーザが常駐させる言語プログラムを判断する際、言語解釈プログラムの使用頻度を基に判断したい場合に印刷される。同様に、言語解釈プログラムの実行間隔を基に判断する場合、及び印刷されるページの数に基づくデータ量を基に判断する場合に、各ヒストグラムが使用される。そのため、ユーザの判断材料に応じた情報をヒストグラムとして、ユーザに提示することができる。
【発明を実施するための最良の形態】
【0016】
以下、下記の順序に従って本発明の実施形態を説明する。
1.第1の実施の形態:
1.1.印刷装置の構成:
1.2.使用状況統計処理:
1.3.ステータスシート出力処理:
1.4.常駐切り替え処理:
1.4.1.電源投入時における処理:
1.4.2.印刷用言語起動時における処理:
2.その他の実施例:
【0017】
1.第一の実施の形態:
1.1.印刷装置の構成:
図1は、ネットワークに接続された印刷装置を説明する図である。印刷装置10はパーソナルコンピュータ(以下PCと記載)20〜40とネットワーク50を介して接続され、PC20〜40から送信される印刷データを、ネットワーク50を通じて受信する。PC20〜40は印刷データ生成部及びこの印刷データ生成部で生成された印刷データを所定の印刷用言語を用いて変換するプリンタドライバを備えている。そのため、印刷装置10はPC20〜40が使用する各印刷用言語に対応した言語解釈プログラムを記憶しており、印刷データの印刷処理時に、印刷用言語に対応した言語解釈プログラムを選択して実行する。
【0018】
図2は、印刷装置10の構成を説明するブロック図である。印刷装置10はホストI/F11を介してネットワーク50に接続され、ネットワーク50を介して受信した印刷データを印刷処理する。また、印刷装置10はユーザからの入力操作を受け付ける操作パネル12と、所定のデータベースを記憶する不揮発性メモリ13と、印刷装置10の駆動を制御するCPU(Central Processing Unit)14と、CPU14に所定の処理を実行させるプログラムを記憶するROM(Read Only Memory)15と、プログラムの展開場所としてのRAM(Random Access Memory)16と、印刷処理を実行するためのプリンタエンジン17とを備えている。上記した各部はバス18を用いて接続され、相互に通信が可能である。
【0019】
ROM15には、CPU14に各種処理を実行させるためのプログラムが記憶されている。具体的には、ROM15には、言語解釈プログラムによって処理される印刷ジョブの使用状況の統計をとる使用状況算出部100と、ユーザからの指示によりステータスシートを印刷するステータスシート出力部200と、PC20〜40の画面上に操作画面を表示させるUI(User Interface)表示部300と、RAM16に常駐する言語解釈プログラムを切替えさせる常駐切り替え部400と、RAM16のメモリ容量を確認させるメモリ容量確認部500と、言語解釈プログラム600〜620とが記憶されている。これら各プログラムはROM15に圧縮されて記憶されており、起動時に展開された後、RAM16に読み込まれて実行される。
【0020】
PC20からネットワーク50を介して送信された印刷データはホストI/F11を介してRAM16に記憶される。また、CPU14は印刷データを構成する印刷用言語に対応した言語解釈プログラムをROM15からRAM16に読み込み、この言語解釈プログラムを用いて印刷用言語の解析を行なう。その後、CPU14は解析結果に従ってプリンタエンジン17を駆動させ、印刷処理を実行する。
【0021】
また、印刷装置10は言語解釈プログラムの実行毎に、この言語解釈プログラムにより処理される印刷ジョブの使用状況をカウントし、このカウントした値により印刷ジョブの使用状況の統計をとる。(使用状況統計処理)。徐機カウントされた使用状況は不揮発性メモリ13に記憶され、記憶された統計結果に基づいて言語解釈プログラムの使用頻度と実行間隔とが算出される。なお、算出された使用状況と実行間隔はプリンタエンジン17から印刷されるステータスシートに記録されることで、このステータスシートを確認したユーザ等に印刷用言語の常駐方法の判断材料を提供したり(ステータスシート出力処理)、印刷装置10がRAM16に常駐させる言語解釈プログラムを自動で切替える際に使用される(常駐切り替え処理)。
【0022】
図3は、一例としての不揮発性メモリに記憶されるデータベースを説明する図である。不揮発性メモリ13には、印刷ジョブの使用状況の統計値がデータベース形式で記憶されている。具体的には、データベース700には各言語解釈プログラムにより処理される印刷ジョブの累積回数や、印刷ページ数の累積枚数や、印刷ジョブにより処理されるデータ量や、各言語解釈プログラムのデータ量や、各言語解釈プログラムが処理する1ページ当たりの平均使用データ量や、RAM16のメモリ容量が記憶されている。
【0023】
データベース700には、言語解釈プログラムの使用頻度を判断するために、言語解釈プログラムにより処理される印刷ジョブ数が累積記憶される。ここで、使用頻度とは、一定期間に言語解釈プログラムが実行される回数を意味し、累積印刷ジョブ数が多ければ使用頻度は多いものとする。例えば、図3(a)に示すように、データベース700には、各言語解釈プログラムで処理された累積印刷ジョブ数と言語解釈プログラムにより印刷される累積ページ数とが記録されており、例えば、この中から使用頻度を判断するために累積印刷ジョブ数が用いられる。なお、累積ページ数を累積印刷ジョブ数で割った1印刷ジョブ当たりの平均ページ数を用いて、使用頻度を判断してもよい。
【0024】
データベース700には、言語解釈プログラムの実行間隔を判断するために、言語処プログラムのRAM16への読み込み回数が累積記憶される。ここで、実行間隔とは言語解釈プログラムが連続して使用される間隔の長さを意味し、読み込み回数が多いほど実行間隔は短いものとする。例えば、図3(b)に示すように、データベース700には、累積印刷ジョブ数と累積読み込み回数とが記録されており、例えば、この中から実行間隔を判断するために累積読み込み回数が用いられる。また、累積読み込み回数を累積印刷ジョブ数で割った値を用いて、実行間隔を判断してもよい。
【0025】
さらに、データベース700には、図3(c)に示すように、印刷ジョブが実行するデータ量を判断するため、処理される印刷ページの枚数ごとの累積印刷ジョブ数と累積ページ数とが記録されている。このデータベースはステータスシート出力処理により使用される。以下に各処理の内容を、使用状況統計処理、ステータスシート出力処理、常駐切り替え処理の順に説明する。
【0026】
1.2.使用状況統計処理
使用状況統計処理では、印刷用言語の実行毎に言語解釈プログラムが処理する印刷ジョブの各仕様状況をCPU14がカウントし、カウントした各値を不揮発性メモリ13に記憶させる。この使用状況統計処理はRAM16に読み込まれた使用状況算出部100に基づいて実行される。なお、カウントされた各値は、言語解釈プログラムの使用頻度及び実行間隔の判断材料として利用される。
【0027】
図4は、使用状況統計処理を説明するフロー図である。印刷データがRAM16に読み込まれると、CPU14は言語解釈プログラムにより印刷用言語の解析を実行した後、言語解釈プログラムをRAM16に読み込み、使用状況統計処理を実行する。まず、CPU14は処理された印刷ジョブの数と、読み込み回数と、1つの印刷ジョブで印刷されるページ数とをカウントする(ステップS110)。
【0028】
CPU14はカウントした各値を不揮発性メモリ13上に記憶させる(ステップS120)。CPU14がカウントした各値により、データベース700の各言語解釈プログラムに対応した項目が更新され、統計結果が累積記憶されていく。上記した各値のカウントは、言語解釈プログラムの実行毎に実施される。これにより、使用状況算出部100はCPU14に使用状況算出手段を実現させる。
【0029】
1.3.ステータスシート出力処理
ステータスシート出力処理では、プリンタエンジン17に各言語解釈プログラムにより処理される印刷ジョブの使用状況が記録されたステータスシートを印刷させる。このステータスシートにはデータベース700により記録された、印刷ジョブ数と、読み込み回数と、1つの印刷ジョブで印刷されるページ数との各値を示すヒストグラムが記憶される。これにより、ユーザはこのステータスシートを確認して言語解釈プログラムの使用頻度と実行間隔とを判断し、RAM16に常駐させる言語解釈プログラムを決定する。
【0030】
図5は、ステータスシート出力処理を説明するフロー図である。ステータスシート出力処理は、ユーザが操作パネル12又はPC20〜40を操作することで印刷装置10へステータスシート印刷命令が入力され、この実行命令を受けてCPU14がステータスシート出力部200をROM15からRAM16へ読み込むことで実行される。
【0031】
ステータスシート印刷命令がCPU14に入力されると、CPU14は印刷するステータスシートをユーザに選択させるステータスシート選択画面を表示する(ステップS210)。ステータスシート選択画面はCPU14がROM15に記憶されたUI表示部300をRAM16に読み込むことで表示される。ステータスシート選択画面はステータスシート印刷命令を送信したPCの画面上に表示され、ユーザがPC上でアイコンを操作するこでステータスシートが印刷される。
【0032】
図6は、画面に表示されるステータスシート選択画面を説明する図である。同図より、画面略中央には「ステータスシート出力」の文字列が表示され、表示された文字列の図中右側には、選択可能なステータスシートの種別がプルダウン形式で表示される。なお、選択可能なステータスシートの一例として、「ユーザ1」「ユーザ2」「サービスマン」が表示され、各ステータスシートはその使用方法に合わせて印刷されるヒストグラムが異なる。ユーザは印刷したいステータスシートの種別をアイコンの中から選択し、「OK」のアイコンを操作することで印刷装置10に選択したステータスシートを印刷させる。
【0033】
CPU14は、ステータスシート選択画面を用いた選択操作命令を受信すると(ステップS220)、不揮発性メモリ13に記憶されたデータベースを参照しつつ、ステータスシートを作成する(ステップ230)。具体的には、CPU14は参照したデータベースの統計結果に基づいてステータスシートに記録させるヒストグラムを作成する。その後、CPU14はプリンタエンジン17に作成したヒストグラムの印刷処理を命令する(ステップS240)。
【0034】
図7は、ステータスシートに記録される各ヒストグラムを説明する図である。なお、図7(a)は、ステータスシート選択画面上で「ユーザ1」を選択した場合に印刷されるステータスシートである。このステータスシートには、例えば、図3(a)に示す統計結果を基に作成され、各言語解釈プログラムが処理した累積印刷ジョブ数を表すヒストグラムが記録されている。また、このステータスシートは、ユーザがRAM16に常駐させる言語解釈プログラムを使用頻度に基づいて決定する場合に用いられる。
【0035】
図7(b)は、ステータスシート選択画面上で「ユーザ2」を選択した場合に印刷されるステータスシートである。このステータスシートには、例えば、図3(b)に示す統計結果を基に作成され、各言語解釈プログラムごとのRAM16への累積読み込み回数を表すヒストグラムが記録されている。また、このステータスシートは、ユーザがRAM16に常駐させる言語解釈プログラムを実行間隔に基づいて決定する場合に用いられる。
【0036】
図7(c)は、ステータスシート選択画面上で「サービスマン」を選択した場合に印刷されるステータスシートである。このステータスシートには、例えば図3(c)に示す統計結果により作成され、印刷ページ数ごとの印刷ジョブの数を表すヒストグラムが記録されている。このヒストグラムは、サービスマンが印刷装置10の故障診断のために参照するものである。通常、印刷装置では印刷ジョブの処理ごとにプリンタエンジン17のキャリブレーションが実行されるため、処理される印刷枚数が少ない印刷ジョブ数が多いほど、一定期間におけるキャリブレーションの実行回数は増加する。そのため、このステータスシートを参照することで、キャリブレーションの実行回数を参照しつつ、プリンタエンジン17の故障診断に生かすことが可能となる。
【0037】
このように、言語解釈プログラムの使用状況を示すステータスシートを印刷することで、ユーザ等はこのステータスシートから言語解釈プログラムの使用頻度と実行間隔とを判断し、言語解釈プログラムをRAM16に常駐させる判断材料として利用することができる。これにより、ステータスシート出力部200は、CPU14に使用状況表示手段を実現させる。
【0038】
1.4.常駐切り替え処理
常駐切り替え処理では、CPU14に、不揮発性メモリ13に記憶された各値に基づいてRAM16に常駐させる言語解釈プログラムを選択させる。この常駐切り替え処理においても、ステータスシート出力処理と同様にデータベース700に記録された印刷ジョブの使用状況の統計に基づいてRAM16へ常駐する言語解釈プログラムが選択される。また、常駐切り替え処理は操作パネル12及びPC上での操作により実行の有無を選択することができる。そのため、ユーザがRAM16に常駐させる言語解釈プログラムを自ら判断する場合は、常駐切り替え処理をオフにして、前記したステータスシートを参考にしつつ判断を行なう。なお、常駐切り替え処理は印刷装置10の主電源投入時、及び言語解釈プログラムの起動時に実行されるため、以下2つの場合に分けて説明を行なう。
【0039】
1.4.1.電源投入時における処理:
図8は、電源投入時に実行される常駐切り替え処理を説明するフロー図である。図8における常駐切り替え処理は、ユーザが操作パネル12を操作して印刷装置10の主電源を投入すると、CPU14が常駐切り替え部400をRAM16へ読み出すことで実行される。なお、以下、印刷装置10のROM15には言語解釈プログラム600〜620が圧縮されて記憶されているものとする。
【0040】
印刷装置10の主電源が投入されると、CPU14は印刷装置10が常駐切り替え処理を実行するモードであるか否かを判断する(ステップS410)。なお、ユーザが予め常駐切り替え処理をオフに設定した場合は、CPU14は常駐切り替え処理を実行することなく通常の起動処理を実行する(ステップS430)。
【0041】
CPU14は不揮発性メモリ13にアクセスして、不揮発性メモリ13に記録されたデータベースを参照する(ステップS420)。このとき、CPU14はデータベースから言語解釈プログラム600〜620に対応した印刷ジョブの使用状況の統計を読み込む。また、CPU14は不揮発性メモリ13に記憶された、各言語解釈プログラムのデータ量や、各言語解釈プログラムが処理する1ページ当たりの平均使用データ量や、RAM16のメモリ容量を読み出す。
【0042】
CPU14は、不揮発性メモリから読み込んだ項目に基づいてRAM16の空き容量Mheap'を算出し、空き容量の多さを判断する(ステップS440)。具体的には、CPU14はROM15に記憶されたメモリ容量確認部500を読み出し、メモリ容量確認部に基づいてRAM16の空き容量Mheap'を算出する。このとき算出される空き容量Mheap'は、各言語解釈プログラムをRAM16で実行する際に必要とされる値であり、具体的には下記に記載する式(1)により算出される。
【0043】
図9は、メモリ容量確認部に基づいて実行されるメモリ容量確認処理を説明するフロー図である。まず、CPU14はデータベース700に記録された累積印刷ジョブ数と累積ページ数とから印刷ジョブ内で処理される平均ページ数AVGpageを算出する(ステップS510)。また、CPU14は、データベース700から各言語解釈プログラムのデータ量Dp、1ページ当たりの平均使用データ量Davgp、及びRAM16のメモリ容量Mheapとを読み出す(ステップS520)。次に、CPU14は、下記に記載する式(1)を用いて空き容量Mheap'を算出する(ステップS530)。
【0044】
空き容量=RAMの記憶領域のメモリ容量−(言語解釈プログラムのデータ量+1ページ当たりの平均使用データ量×1印刷ジョブ当たりの平均ページ数)

Mheap’=Mheap−(Dp+Davgp×AVGpage) …(1)
なお、空き容量Mheap’は各言語解釈プログラム600〜620ごとに算出され、算出された値はRAM16に一時記憶される。
【0045】
CPU14は、算出した空き容量Mheap’に基づいて、RAM16に常駐させる印刷用言語の常駐状態の場合分けを行なう(ステップS450〜490)。このとき、CPU14はデータベース700に記憶された統計結果から言語解釈プログラムの使用頻度と実行間隔とを判断する。本実施例では、CPU14はデータベースから読み出した累積印刷ジョブ数が多い場合は、使用頻度が多いと判断し、累積読み込み回数が多い場合は、実行間隔が短いと判断する。
【0046】
CPU14はステップS440で判断された空き容量Mheap’の多さに基づいて、RAM16への言語解釈プログラムの常駐の有無を判断する(ステップS450)。このとき判断される空き容量Mheap’は、算出された空き容量の内最も少ない値を使用する。空き容量Mheap’が多い場合は、CPU14はRAM16に使用頻度の最も高い言語解釈プログラムを常駐させる(ステップS450)。仮に、言語解釈プログラム600の使用頻度が最も高いと場合、言語解釈プログラム600がRAM16に常駐される。
【0047】
空き容量Mheap’が少ない場合は、CPU14は言語解釈プログラムをRAM16に常駐させず常駐言語選択処理を終了する(ステップS480)。この場合、言語解釈プログラムは起動時にRAM16に読み込まれ実行される。
【0048】
さらに、CPU14はROM15に記憶された言語解釈プログラム610,620をRAM16に常駐させるか判断する。具体的には、CPU14は次に常駐対象とする言語解釈プログラムをその使用頻度から判断する。今、言語解釈プログラム610の使用頻度が言語解釈プログラム620より高いと仮定すると、CPU14は言語解釈プログラム610の使用頻度をしきい値T1と比較し、使用頻度がしきい値T1より低い場合は(ステップS460)、RAM16に常駐させず起動時にRAM16に読み込む(ステップS480)。
【0049】
また、言語解釈プログラム610の使用頻度がしきい値T1より多くても読み込み回数が少ない場合は(ステップS462)、CPU14は言語解釈プログラムをRAM16に常駐させない(ステップS480)。ここで、RAM16の読み込み数を考慮したのは、印刷装置10の起動時間を考慮したためである。つまり、読み込み回数が多いとRAM16へ読み込む際、読み込みに掛かる時間が長くなり処理時間を遅延させてしまう。また、最も使用頻度が高い言語解釈プログラム600は既に常駐されており、二番目に読み込む言語解釈プログラム610は、起動時に動的に読み込んでも全体の処理時間に影響を与える訳ではない。そのため、言語解釈プログラム610の読み込み回数が多い場合はRAM16に常駐させ、読み込み回数が少ない場合は起動時にRAM16に読み込む。
【0050】
また、言語解釈プログラムの切り替え頻度が多くても、RAM16の空き容量が少なければ(ステップS465)、言語解釈プログラムをRAM16に常駐させない(ステップS480)。このとき判断されるRAM16の空きメモリ容量は、言語解釈プログラム600が既に常駐されていることを考慮し、ステップS430で算出された空き容量Mheap’から更に、言語解釈プログラム610のメモリ使用量を除した値とする。
【0051】
その後、RAM16の空き容量Mheap’が多い場合は(ステップS470)、CPU14はステップS450に戻り、言語解釈プログラム620をRAN16に常駐させるか判断する。これにより、CPU14は言語解釈プログラムの使用頻度と実行間隔とに基づいてRAM16に常駐させる言語解釈プログラムを選択することができる。
【0052】
1.4.2.印刷用言語起動時における処理:
図10は、言語解釈プログラムの起動時における常駐切り替え処理を説明する図である。このフロー図は、言語解釈プログラムの起動時にCPU14が実行する処理であり、多くの処理を図8のフローと同じとするため、図8との差異を主に説明する。
【0053】
所定の言語解釈プログラムが起動されると、CPU14は印刷装置10が常駐切り替え処理を実行するモードであるか否かを判断する(ステップS1410)。ユーザが予め常駐切り替え処理をオフに設定した場合は、CPU14は常駐切り替え処理を実行することなく通常の起動処理を実行する(ステップS1430)。
【0054】
CPU14は、起動された言語解釈プログラムがRAM16に常駐しているかを判断する(ステップS1420)。具体的には、起動した言語解釈プログラムがROM15からRAM16へ読み込まれたものかRAM16から読み込まれたものかを判断する。ここで、言語処理部がRAM16に常駐している場合は、CPU14は常駐言語選択処理を終了し、印刷処理を実行する。
【0055】
CPU14は、不揮発性メモリ13にアクセスして、データベースに記録された統計結果を参照する(ステップS1440)。また、CPU14は、RAM16の空き容量Mheap’を算出する(ステップS1450)。
【0056】
CPU14は、算出した空き容量Mheap'に基づいて、RAM16に常駐させる言語解釈プログラムの常駐状態の場合分けを行なう(ステップS1460〜1490)。このときも図8で説明したフロー図と同様に、CPU14はデータベース700から読み込んだ統計結果を参照し、参照した統計結果から言語解釈プログラムの使用頻度と実行間隔とを算出する。これら一連のフローにより言語処理部をRAM16に常駐させるかが判断される。前述した図8〜10に基づく説明により、常駐切り替え部400は、CPU14に常駐切り替え手段を実現させる。
【0057】
2.その他の実施例:
前述した常駐切り替え処理では、まず、RAM16に最初に常駐させる言語解釈プログラムを使用頻度に基づいて常駐判定を行なったが、これに限定されず実行間隔(読み込み回数)に基づいて言語解釈プログラムの常駐判定を行なうものであってもよい。
【0058】
また、ステータスシート出力処理において、ステータスシート選択画面をPC画面上に表示する旨の説明を行なったが、印刷装置10に表示ディスプレイを備える場合は、この表示ディスプレイにステータスシート選択画面を表示し、操作パネル12を用いてステータスシートの選択を行うものでもよい。
【0059】
なお、本発明は、上述した実施例や変形例に限られず、上述した実施例および変形例の中で開示した各構成を相互に置換したり組み合わせを変更したりした構成、公知技術並びに上述した実施例および変形例の中で開示した各構成を相互に置換したり組み合わせを変更したりした構成、等も含まれる。
【図面の簡単な説明】
【0060】
【図1】ネットワークに接続された印刷装置を説明する図である。
【図2】印刷装置10の構成を説明するブロック図である。
【図3】一例としての不揮発性メモリ13に記憶されるデータベースを説明する図である。
【図4】使用状況統計処理を説明するフロー図である。
【図5】ステータスシート出力処理を説明するフロー図である。
【図6】画面に表示されるステータスシート選択画面を説明する図である。
【図7】ステータスシートに記録される各ヒストグラムを説明する図である。
【図8】電源投入時に実行される常駐切り替え処理を説明するフロー図である。
【図9】メモリ容量確認部に基づいて実行されるメモリ容量確認処理を説明するフロー図である。
【図10】言語解釈プログラムの起動時における常駐切り替え処理を説明する図である。
【符号の説明】
【0061】
10…印刷装置、11…ホストI/F、12…操作パネル、13…不揮発性メモリ、14…CPU、15…ROM、16…RAM、17…プリンタエンジン、18…バス、20〜40…パーソナルコンピュータ、50…ネットワーク、100…使用状況算出部、200…ステータスシート出力部、300…UI表示部、400…常駐切り替え部、500…メモリ容量確認部、600,610,620…言語解釈プログラム、700…データベース



【特許請求の範囲】
【請求項1】
印刷用言語に基づいて記載された印刷ジョブを解析するにあたり、前記印刷用言語に対応した言語解釈プログラムを選択してメモリ上で実行し、前期実行された言語解釈プログラムの解析結果に基づいて印刷を行なう印刷装置であって、
解析された前記印刷ジョブの使用状況の統計をとり、統計結果に基づいて前記言語解釈プログラムの使用頻度と実行間隔とを算出する使用状況算出手段と、
前記算出された使用頻度が最も高い前記言語解釈プログラムを最初に前記メモリに常駐させ、又、前記算出された使用頻度が高く且つ実行間隔が長い前記言語解釈プログラムを前記常駐させた言語解釈プログラムの次に前記メモリに常駐させる常駐切り替え手段とを具備することを特徴とする印刷装置。
【請求項2】
前記使用状況算出手段は、前記言語解釈プログラムが処理する印刷ジョブ数と、前記言語解釈プログラムを実行するためにメモリへ読み込まれる読み込み回数とを計測して統計をとり、前記印刷ジョブ数の統計結果に基づいて前記使用頻度を算出し、前記読み込み回数の統計結果に基づいて前記実行間隔を算出することを特徴とする請求項1に記載の印刷装置。
【請求項3】
前記使用状況算出手段は、前記言語解釈プログラムのメモリ使用量に基づいて、前記メモリの空き容量を算出し、前記算出されたメモリの空き容量が少ない場合は、前記言語解釈プログラムを起動時にメモリに読み込むことを特徴とする請求項1又は請求項2のいずれかに記載の印刷装置。
【請求項4】
前記常駐切り替え手段は、前記メモリ使用量を前記印刷ジョブ内で実行される印刷ページの数に基づいて算出することを特徴とする請求項3に記載の印刷装置。
【請求項5】
印刷用言語に基づいて記載された印刷ジョブを解析するにあたり、前記印刷用言語に対応した言語解釈プログラムを選択してメモリ上で実行し、前期実行された言語解釈プログラムの解析結果に基づいて印刷を行なう印刷装置であって、
解析された前記印刷ジョブの使用状況を統計し、統計結果に基づいて前記言語解釈プログラムの使用頻度と実行間隔とを算出する使用状況算出手段と、
前記算出された使用頻度と実行間隔とを表示する使用状況表示手段とを具備することを特徴とする印刷装置。
【請求項6】
前記使用状況表示手段は、前記統計結果に基づいてヒストグラムを生成し、前記生成されたヒストグラムをステータスシートとして印刷することを特徴とする請求項5に記載の印刷装置。
【請求項7】
前記使用状況表示手段は、前記言語解釈プログラムにおける、使用頻度と、実行間隔と、該言語解釈プログラムが処理する印刷ジョブ内で実行される印刷ページの数とに基づいて個別にヒストグラムを作成することを特徴とする請求項6に記載の印刷装置。
【請求項8】
印刷用言語に基づいて記載された印刷ジョブを解析するにあたり、前記印刷用言語に対応した言語解釈プログラムを選択してメモリ上で実行し、前期実行された言語解釈プログラムの解析結果に基づいて印刷を行なう印刷装置であって、
解析された前記印刷ジョブの使用状況を統計し、統計結果に基づいて前記言語解釈プログラムの使用頻度と実行間隔とを算出する使用状況算出手段と、
前記算出された使用頻度が最も高い前記言語解釈プログラムを前記メモリに最初に常駐させ、又、前記算出された使用頻度が高く且つ実行間隔が長い前記言語解釈プログラムを次に前記メモリに常駐させる常駐切り替え手段と、
前記算出された使用頻度と実行間隔とを表示する使用状況表示手段とを具備することを特徴とする印刷装置。


【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2009−154434(P2009−154434A)
【公開日】平成21年7月16日(2009.7.16)
【国際特許分類】
【出願番号】特願2007−336220(P2007−336220)
【出願日】平成19年12月27日(2007.12.27)
【出願人】(000002369)セイコーエプソン株式会社 (51,324)
【Fターム(参考)】