JP4001531B2 - Image forming apparatus - Google Patents
Image forming apparatus Download PDFInfo
- Publication number
- JP4001531B2 JP4001531B2 JP2002263644A JP2002263644A JP4001531B2 JP 4001531 B2 JP4001531 B2 JP 4001531B2 JP 2002263644 A JP2002263644 A JP 2002263644A JP 2002263644 A JP2002263644 A JP 2002263644A JP 4001531 B2 JP4001531 B2 JP 4001531B2
- Authority
- JP
- Japan
- Prior art keywords
- program
- image processing
- image
- memory area
- forming apparatus
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Memory System (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Stored Programmes (AREA)
- Facsimiles In General (AREA)
- Record Information Processing For Printing (AREA)
Description
【0001】
【発明の属する技術分野】
この発明は、画像形成装置に係り、特にメモリ領域の配分を行う画像形成装置に関する。
【0002】
【従来の技術】
近年、プリンタ、コピー、ファクシミリ、スキャナなどの各装置の機能を1つの筐体内に収納した画像形成装置(以下、「複合機」という。)が一般的に知られている。この複合機は、1つの筐体内に表示部、印刷部および撮像部などを設けるとともに、プリンタ、コピーおよびファクシミリ装置にそれぞれ対応する3種類のソフトウェアを設け、ソフトウェアの切り替えによって、当該装置をプリンタ、コピー、スキャナまたはファクシミリ装置として動作させるものである。
【0003】
このような従来の複合機は、内部にプリンタ、コピー、スキャナおよびファクシミリ装置に対応するソフトウェア(汎用OSを含む)をそれぞれ別個に設ける構成となっている。
【0004】
【発明が解決しようとする課題】
このような従来の複合機では、プリンタ、コピーおよびファクシミリなどの機能単位で、それぞれに対応する別個のソフトウェアを備えている。各ソフトウェアを実行する際に必要となるメモリ上の領域は各ソフトウェアごとにそれぞれ別個に確保されるため、各領域のサイズが各ソフトウェアのサイズに応じて過大なものとなり、メモリ上で確保または解放される領域サイズが過大となり、メモリの使用効率が悪いという問題がある。
【0005】
また、複合機は、プリンタ、コピー、ファクシミリおよびスキャナなどの画像形成処理を行うものであるため、画像形成処理を行う過程において生成される画像データの数およびサイズは一般のPC(Personal Computer)などに比べて膨大なものとなる。このため、画像形成処理で生成される画像データを一時的に格納するための画像メモリの容量は、予め十分に確保しておく必要があり、かつ画像メモリを画像形成処理の実行中に別の目的で使用することは好ましくない。
【0006】
さらに、複合機の動作中にプロセス実行用のメモリが消費されてプロセスの実行に支障をきたす場合もある。このような場合、画像メモリの一部をプロセス実行のために利用することも考えられるが、従来の複合機では各ソフトウェアのサイズが過大であるため、画像メモリに空きがある場合でもプロセス実行用に画像メモリを使用すると画像データの一時的な格納などが不可能になるなど、複合機で重要な画像形成処理に支障をきたしてしまう。
【0007】
このため、メモリ全体に空きがある場合でも、プロセス実行と画像データの格納とをともに支障なく実行することが不可能な場合が多く、この点でもメモリの使用効率が悪いという問題がある。
【0008】
例えば特開平9−16380号公報には、システム設定ファイルに予めメモリ領域使用の設定を記述しておくことで、メモリの管理を行うシステムが記載されている。また、特開平11−129558号公報には、ROM(Read Only Memory)に収納されたプログラムをROM或いはRAMで選択的に実行することで、メモリの使用量を調整するプリンタが記載されている。
【0009】
ところで、従来の複合機では、内部にプリンタ、コピー、スキャナおよびファクシミリ装置に対応するソフトウェア(汎用OSを含む)をそれぞれ別個に設ける構成となっており、各ソフトウェアの開発に多大の時間を要する。
【0010】
このため、出願人は、表示部、印刷部および撮像部などの画像形成処理で使用されるハードウェア資源を有し、プリンタ、コピーまたはファクシミリなどの各ユーザサービスにそれぞれ固有の処理を行うアプリケーションを複数搭載し、これらのアプリケーションとハードウェア資源との間に介在して、ユーザサービスを提供する際に、アプリケーションの少なくとも2つが共通的に必要とするハードウェア資源の管理、実行制御並びに画像形成処理を行う各種コントロールサービスからなるプラットホームを備えた画像形成装置(特開2002−82806号公報)を発明し、ソフトウェア開発効率を向上させた。
【0011】
このような複合機では、複数のアプリケーションおよびコントロールサービスのソフトウェアをそれぞれ別個のプロセスとして動作させる。したがって、各プロセスが動作する上で必要となるメモリ上の領域サイズは、プリンタ、コピー、ファクシミリなどの機能単位でソフトウェアを備えている従来の複合機に比べて小さいため、かかる特徴的な構成をメモリ管理に利用できることが好ましい。
【0012】
この発明は上記に鑑みてなされたもので、メモリの使用効率の向上を図ることができる画像形成装置を得ることを目的とする。
【0013】
【課題を解決するための手段】
上記目的を達成するため、請求項1にかかる発明は、プリンタ部またはスキャナ部の少なくとも一方を含む画像処理ハードウェアと、前記画像処理ハードウェアを利用して画像処理を行う1つ以上の画像処理アプリケーションと、オペレーティングシステムと、前記オペレーティングシステム上で動作し、前記1つ以上の画像処理アプリケーションからアクセスされて共通に利用されるプログラムとを有する画像形成装置であって、書き換え可能メモリ上に、前記オペレーティングシステムがプロセスを実行するカーネル用領域として使用される予定の物理領域と、前記画像処理アプリケーション及びプログラムがプロセスを実行する仮想メモリ領域として使用される予定の物理領域と、前記画像処理で生成される画像データを一時的に格納するための画像メモリ領域として使用される予定の物理領域とを確保するメモリ確保手段と、前記画像処理アプリケーション及びプログラムの起動要求があったときに、読み出し専用メモリ上に組み込まれた前記画像処理アプリケーション及びプログラムのうち前記起動要求のあった画像処理アプリケーション又はプログラムを、前記仮想メモリ領域又は画像メモリ領域として使用される物理領域に転送する転送手段と、前記転送手段により転送された前記画像処理アプリケーション又はプログラムを起動する起動手段とを備えたことを特徴とする。
【0014】
この請求項1の発明では、領域確保手段によって、あらかじめ定められた容量の画像メモリ領域と、各プログラムが実行時に格納される仮想メモリ領域とを書き換え可能メモリに確保しておく。画像メモリ領域のあらかじめ定められた容量は、画像形成装置に搭載されている機能に応じて画像データの格納に必要な容量を予想して十分なサイズに定めておけばよい。
【0015】
そして、画像形成装置の実行中に、プログラムの起動要求があったときに、起動要求のあったプログラムを仮想メモリ領域又は画像メモリ領域に転送し、転送したプログラムを起動手段によって起動することで、起動要求のあったプログラムを、仮想メモリ領域又は画像メモリ領域に転送して実行することができる。
【0016】
すなわち、読み出し専用メモリ上に格納されたプログラムが書き換え可能メモリの仮想メモリ領域に限られず画像メモリ領域でも実行可能となるため、仮想メモリ領域の容量制限などにより仮想メモリ領域に起動要求のあったプログラムを転送することが不可能な場合でも、仮想メモリ領域の代わりに画像メモリ領域にプログラムを転送して起動できる。従って、この請求項1の発明によれば、画像形成処理に支障をきたすことなく、書き換え可能メモリの利用効率を高めることが可能となる。
【0017】
また、請求項2にかかる発明は、前記画像処理アプリケーション及びプログラムごとに予め定められている転送先に基づいて、前記起動要求のあった前記画像処理アプリケーション又はプログラムの転送先を、前記仮想メモリ領域又は画像メモリ領域として使用される物理領域の何れかに決定する転送先判断手段を更に備えたことを特徴とする。
【0018】
この請求項2の発明によれば、プログラムの起動要求があったときに、プログラムごとに予め定められている転送先に基づいて、プログラムを仮想メモリ領域または画像メモリ領域に転送して実行することができる。
【0019】
また、請求項3にかかる発明は、前記書き換え可能メモリの利用状況に基づいて、前記起動要求のあった前記画像処理アプリケーション又はプログラムの転送先を、前記仮想メモリ領域又は画像メモリ領域として使用される物理領域の何れかに決定する転送先判断手段を更に備えたことを特徴とする。
【0020】
この請求項3の発明によれば、プログラムの起動要求があったときに、書き換え可能メモリの利用状況に基づいて、プログラムを仮想メモリ領域または画像メモリ領域に転送して実行することができる。
【0021】
ここで、書き換え可能メモリの利用状況とは、仮想メモリ領域の空き容量、仮想メモリ領域と画像メモリ領域の割合、書き換え可能メモリの容量など種々の条件があげられるが、この発明では特に限定されるものではない。
【0022】
すなわち、この発明によれば、このような書き換え可能メモリの利用状況に基づき、読み出し専用メモリ上に格納されたプログラムが書き換え可能メモリの仮想メモリ領域に限られず画像メモリ領域でも実行可能となるため、仮想メモリ領域の容量制限などにより仮想メモリ領域に起動要求のあったプログラムを転送することが不可能な場合でも、仮想メモリ領域の代わりに画像メモリ領域にプログラムを転送して起動することによりプロセスの生成が可能となる。
【0024】
本発明によれば、サイズの比較的小さな多数のプログラムにより起動される複数のプロセスによりユーザサービスの提供を行う構成としているため、各プロセスの生成および消滅で書き換えメモリ上に確保および解放される領域のサイズも比較的小さくなり、画像メモリ領域でプロセスの生成を行った場合でも、プリント、コピーなどの機能単位の大きなサイズのプログラムで構成される従来の画像形成装置に比べて、画像形成処理に及ぼす影響は小さい。
【0025】
従って、この発明によれば、画像形成処理に支障をきたすことなく、書き換え可能メモリの利用効率を高めることが可能となる。
【0026】
また、請求項4にかかる発明は、前記転送先判断手段は、前記仮想メモリ領域として使用される物理領域の空き容量が、前記起動要求があった前記画像処理アプリケーション又はプログラムのサイズより小さいときに、前記転送先を前記画像メモリ領域として使用される物理領域に決定することを特徴とする。
【0027】
この請求項4の発明によれば、仮想メモリ領域の容量制限によりプロセス生成が不可能な場合でも、画像メモリ領域でプロセスの生成が可能となり、メモリの利用効率を向上させることができる。
【0028】
また、請求項5にかかる発明は、前記転送先判断手段により前記転送先が前記画像メモリ領域として使用される物理領域に決定された場合に、その旨をユーザに通知する通知手段をさらに備えたことを特徴とする。
【0029】
この請求項5の発明によれば、画像メモリ領域が消費されることを事前に画像形成装置のユーザに報知することができ、ユーザの便宜が図られる。
【0030】
また、請求項6にかかる発明は、前記転送手段は、前記起動要求のあった前記画像処理アプリケーション又はプログラムが前記読み出し専用メモリ上に圧縮形式で格納されているときに、圧縮形式の前記画像処理アプリケーション又はプログラムを、転送の際に伸張することを特徴とする。
【0031】
この請求項6の発明によれば、読み出し専用メモリの容量制限のためプログラムを通常の形式で組み込めない場合でも、読み出し専用メモリに圧縮形式のプログラムを組み込めば転送時に伸張するので、読み出し専用メモリの容量に制限がある場合でも、多数のプログラムにより多機能のユーザサービスを提供することができる。
【0032】
また、請求項7にかかる発明は、前記転送手段は、前記画像処理アプリケーション及びプログラムごとに予め定められている優先度に基づいて、前記画像処理アプリケーション又はプログラムを前記仮想メモリ領域又は画像メモリ領域として使用される物理領域に転送することを特徴とする。
【0033】
この請求項7の発明によれば、プログラムの実行に優先度が設けられている場合でも優先度に従ってプログラムを、仮想メモリ領域又は画像メモリ領域に転送することができる。
【0034】
また、請求項8にかかる発明は、前記起動手段は、前記優先度に基づいて前記仮想メモリ領域又は画像メモリ領域として使用される物理領域の何れかに転送された前記画像処理アプリケーション又はプログラムを起動することを特徴とする。
【0035】
この請求項8の発明によれば、プログラムの実行に優先度が設けられている場合でも優先度に従ってプログラムの起動を行うことができ、プログラムの起動が不可能な状態を回避することができる。
【0036】
また、請求項9にかかる発明は、前記プログラムは、前記画像処理アプリケーションより高い優先度を有するものであり、前記転送手段は、優先度の高い前記プログラムを優先的に前記転送先に転送することを特徴とする。
【0037】
この請求項9の発明によれば、コントロールサービス層の上で動作するユーザサービスを起動する前にコントロールサービスを起動することができ、コントロールサービスのプロセスが生成されていないことに起因してユーザサービスのプロセス生成が不可能になるという障害を未然に防止することができる。
【0038】
また、請求項10にかかる発明は、前記転送手段は、前記起動要求があった前記画像処理アプリケーション又はプログラムに関連する他のプログラムがすでに前記書き換え可能メモリ上に存在しているときに、前記起動要求のあった前記画像処理アプリケーション又はプログラムを前記転送先に転送することを特徴とする。
【0039】
この請求項10の発明によれば、関連するプログラムがまだ起動されていないことに起因するコントロールサービスまたはユーザサービスの起動時の障害を防止することができ、起動順序に沿ったプログラム実行を行うことができる。
【0040】
また、請求項11にかかる発明は、前記転送手段は、前記プログラムがすでに前記書き換え可能メモリ上に存在しているときに、前記読み出し専用メモリ上に格納された前記画像処理アプリケーションを前記転送先に転送することを特徴とする。
【0041】
この請求項11の発明によれば、コントロールサービス層の上で動作するユーザサービスを起動する前にコントロールサービスを起動することができ、コントロールサービスのプロセスが生成されていないことに起因するコントロールサービスのプロセス生成が不可能になるという障害を未然に防止することができる。
【0042】
また、請求項12にかかる発明は、前記画像処理アプリケーションは、前記転送手段,転送先判断手段および前記起動手段として動作するプログラム起動アプリをさらに備えたことを特徴とする。
【0043】
この請求項12の発明によれば、コントロールサービスとユーザサービス間のアプリケーションインタフェースを利用してコントロールサービスまたはユーザサービスの起動要求の受信をすることができ、コントロールサービスおよびユーザサービスと別個に転送先判断手段や起動手段を設ける場合に比べて、ソフトウェア開発の労力を軽減することができる。
【0044】
また、請求項13にかかる発明は、前記プログラムは、システムの制御およびリソースの管理を行うシステムコントロールサービスのプロセスを備え、前記システムコントロールサービスのプロセスは、前記転送手段,転送先判断手段および前記起動手段として動作することを特徴とする。
【0045】
この請求項13の発明によれば、別途、転送手段,転送先判断手段や起動手段のプロセスを設ける場合に比べて、ソフトウェア開発の労力を軽減することができる。
【0046】
また、請求項14にかかる発明は、前記システムコントロールサービスのプロセスは、前記1つ以上の画像処理アプリケーション又は他のプログラムからアクセスされて共通に利用される通常モードスレッドと、前記転送手段,転送先判断手段および前記起動手段として動作するプログラム起動モードスレッドとを含んでいることを特徴とする。
【0047】
この請求項14の発明によれば、同一のシステムコントロールサービスのプロセス内で、各スレッドを並列実行することができ、ユーザサービスを停止せずに起動要求のあったコントロールサービスまたはユーザサービスの起動を実現することができる。
【0048】
また、請求項15にかかる発明は、前記画像処理アプリケーション又はプログラムの起動要求は、前記画像形成装置の起動後に行う前記画像処理アプリケーション又はプログラムごとの起動要求であることを特徴とする。
【0049】
この請求項15の発明によれば、画像形成装置の起動後、プログラムの起動要求があったときに、起動要求のあったプログラムを、仮想メモリ領域又は画像メモリ領域に転送して実行することができる。
【0050】
【発明の実施の形態】
以下に添付図面を参照して、この発明にかかる画像形成装置の好適な実施の形態を詳細に説明する。
(実施の形態1)
図1は、この発明の実施の形態1である画像形成装置(以下、「複合機」という)の構成を示すブロック図である。図1に示すように、複合機100は、白黒ラインプリンタ(B&W LP)101と、カラーラインプリンタ(Color LP)102と、スキャナ、ファクシミリなどのハードウェアリソース103などを有するとともに、プラットホーム120とアプリケーション130とから構成されるソフトウェア群110と、複合機起動部140とを備えている。
【0051】
プラットホーム120は、アプリケーションからの処理要求を解釈してハードウェア資源の獲得要求を発生させるコントロールサービスと、一または複数のハードウェア資源の管理を行い、コントロールサービスからの獲得要求を調停するSRM(システムリソースマネージャ)123と、汎用OS121とを有する。
【0052】
コントロールサービスは、複数のサービスモジュールから形成され、SCS(システムコントロールサービス)122と、ECS(エンジンコントロールサービス)124と、MCS(メモリコントロールサービス)125と、OCS(オペレーションパネルコントロールサービス)126と、FCS(ファックスコントロールサービス)127と、NCS(ネットワークコントロールサービス)128とから構成される。
【0053】
なお、このプラットホーム120は、あらかじめ定義された関数により前記アプリケーション130から処理要求を受信可能とするアプリケーションプログラムインタフェース(API)を有する。
【0054】
汎用OS121は、UNIX(登録商標)などの汎用オペレーティングシステムであり、プラットホーム120並びにアプリケーション130の各ソフトウェアをそれぞれプロセスとして並列実行する。
【0055】
SRM123のプロセスは、SCS122とともにシステムの制御およびリソースの管理を行うものである。SRM123のプロセスは、スキャナ部やプリンタ部などのエンジン、メモリ、HDDファイル、ホストI/O(セントロI/F、ネットワークI/F、IEEE1394 I/F、RS232C I/Fなど)のハードウェア資源を利用する上位層からの要求にしたがって調停を行い、実行制御する。
【0056】
具体的には、このSRM123は、要求されたハードウェア資源が利用可能であるか(他の要求により利用されていないかどうか)を判断し、利用可能であれば要求されたハードウェア資源が利用可能である旨を上位層に伝える。また、SRM123は、上位層からの要求に対してハードウェア資源の利用スケジューリングを行い、要求内容(例えば、プリンタエンジンにより紙搬送と作像動作、メモリ確保、ファイル生成など)を直接実施している。
【0057】
SCS122のプロセスは、プロセス内に通常モードスレッドとプログラム起動モードスレッドとを起動し、各スレッドを並列実行する。通常モードスレッドは、アプリ管理、操作部制御、システム画面表示、LED表示、リソース管理、割り込みアプリ制御などを行う。また、プログラム起動モードスレッドは、アプリケーションやコントロールサービスの起動要求のメッセージを受信し、後述するSDRAM203の利用状況に従って、起動要求のあったアプリケーションやコントロールサービスのプログラムをフラッシュROM204からSDRAM203にコピーして起動する。
【0058】
SCS122のプログラム起動モードスレッドは、本発明における転送手段,転送先判断手段、起動手段および通知手段を構成する。なお、SCS122のプログラム起動モードスレッドの動作の詳細については後述する。
【0059】
ECS124のプロセスは、白黒ラインプリンタ(B&W LP)101、カラーラインプリンタ(Color LP)102、スキャナ、ファクシミリなどからなるハードウェアリソース103のエンジンの制御を行う。
【0060】
MCS125のプロセスは、画像メモリの取得および解放、ハードディスク装置(HDD)の利用、画像データの圧縮および伸張などを行う。
【0061】
OCS126のプロセスは、オペレータと本体制御間の情報伝達手段となる操作パネル(オペレーションパネル)の制御を行う。
【0062】
FCS127のプロセスは、システムコントローラの各アプリ層からPSTN/ISDN網を利用したファクシミリ送受信、BKM(バックアップSRAM)で管理されている各種ファクシミリデータの登録/引用、ファクシミリ読みとり、ファクシミリ受信印刷、融合送受信を行うためのAPIを提供する。
【0063】
NCS128は、ネットワークI/Oを必要とするアプリケーションに対して共通に利用できるサービスを提供するためのプロセスであり、ネットワーク側から各プロトコルによって受信したデータを各アプリケーションに振り分けたり、アプリケーションからデータをネットワーク側に送信する際の仲介を行う。
【0064】
アプリケーション130は、プリンタ、コピー、スキャナまたはファクシミリなどの画像形成処理にかかるユーザサービスにそれぞれ固有の処理を行うものである。
【0065】
アプリケーション130は、ページ記述言語(PDL)、PCLおよびポストスクリプト(PS)を有するプリンタ用のアプリケーションであるプリンタアプリ111と、コピー用アプリケーションであるコピーアプリ112と、ファクシミリ用アプリケーションであるファックスアプリ113と、スキャナ用アプリケーションであるスキャナアプリ114と、ネットワークファイル用アプリケーションであるネットファイルアプリ115と、工程検査用アプリケーションである工程検査アプリ116とを有している。
【0066】
複合機起動部140は、複合機100の電源投入時にまずはじめに実行され、SDRAM203に後述する画像メモリ領域、仮想メモリ領域およびカーネル用領域を確保し、汎用OS121、プラットホーム120やアプリケーション130を起動する。なお、複合機起動部140は、本発明における領域確保手段を構成する。
【0067】
図2は、図1に示した実施の形態1の複合機のハードウェア構成図である。図2に示すように、この複合機は、CPU202、SDRAM203、SRAM208、フラッシュメモリ204、HDD205およびネットワークインターフェースコントローラ209などをASIC201に接続したコントローラボード200と、オペレーションパネル210と、ファックスコントロールユニット(FCU)220と、USBデバイス230と、IEEE1394デバイス240と、エンジン部250とから構成されている。
【0068】
オペレーションパネル210は、ASIC201に直接接続されている。FCU220、USBデバイス230、IEEE1394デバイス240およびエンジン部250は、PCIバスを介してASIC201に接続されている。例えばFCU220は、電話網に接続されている。また、USBデバイス230およびIEEE1394デバイス240は、他の端末に接続されている。
【0069】
フラッシュメモリ(以下、「ROM」という。)204は、本発明における読み出し専用メモリを構成するものであり、上述のプラットホーム120およびアプリケーション130を構成する各コントロールサービス,SRM123,各アプリのプログラムが格納されている。なお、コントロールサービスまたはアプリの一部又は全部は、圧縮形式で格納されている。また、ROM204には、後述する設定ファイルも格納されている。
【0070】
SRAM208は、バッテリを用いた不揮発性メモリである。ネットワークインターフェースコントローラ209は、ネットワークに接続されている他の機器とMACアドレスなどを用いて通信する。
【0071】
SDRAM(以下、「RAM」という。)203は、本発明における書き換え可能メモリを構成するものである。このRAM203には、複合機100の起動時に、複合機起動部140によって、汎用OS121などが使用するカーネル用の領域と、画像データを格納する画像メモリ領域と、各種アプリやコントロールサービスが使用する仮想メモリ領域が確保される。
【0072】
図3(a)は、実施の形態1にかかる複合機100におけるRAM203のメモリマップを示す説明図である。また、図3(b)は、仮想メモリ領域のメモリマップを示す説明図である。
【0073】
画像メモリ領域は、複合機100の起動時、複合機起動部140により、搭載されているアプリの数などから予想される画像データの格納に十分なサイズで確保される。また、画像メモリ領域はMCS125により管理される。
【0074】
仮想メモリ領域は、RAM203の画像メモリ領域を除いた領域の中から確保される。SCS122のプログラム起動モードスレッドは、ROM204に格納されている各アプリおよび各コントロールサービスのプログラムをこの仮想メモリ領域にコピーする。仮想メモリ領域は、複合機100の起動時に複合機起動部140によってRAM203に確保される。しかし、実際にプログラムが占有する領域は、各プログラムがその実行時(ロード時)にコピーされるときに確保されることになる。
【0075】
このように、RAM203にコピーされたプログラムにアクセスすることにより、RAM203がROMとみなされるため、プログラムの実行処理速度が向上することになる。
【0076】
次に、以上のように構成された実施の形態1にかかる複合機100によるROM204に格納されたプログラムのRAM203への転送およびプログラムの起動処理について説明する。
【0077】
実施の形態1の複合機100では、かかる転送処理および起動処理はSCS122のプロセスのプログラム起動モードスレッドによって通常モードスレッドと並列に実行される。このため、アプリやコントロールサービスのプログラム起動要求があった場合でも、SCS122によるシステム制御やリソース管理などのユーザサービス提供時に行われる処理を停止することなく、転送処理とプログラム起動処理を実行することが可能となる。
【0078】
図4は、SCS122のプロセスのプログラム起動モードスレッドによって実行されるプログラムの転送処理および起動処理の手順を示すフローチャートである。
【0079】
まず、複合機100の動作中に、RAM203にまだロードされていないプログラムの起動要求メッセージがSCS122のプロセスに対して送信される。ここで、この起動要求メッセージは、例えばユーザがオペレーションパネル210でコピー、プリンタ、ファックスなどの機能を選択したときに、キーイベントをOCS126で取得することによって、選択された機能に該当するプログラムの起動要求として生成される。
【0080】
生成された起動要求メッセージは、SCS122のプロセスに対しメッセージ送信というプロセス間通信によって送信される。例えば、ユーザがファックス機能を選択した場合には、ファックスアプリ113およびFCS127のプログラムの起動要求メッセージがSCS122のプロセスに送信される。また、この起動要求メッセージには、ネットワークに接続された他の複合機からNCS128を介してSCS122に送信されるようなものも含まれる。SCS122のプログラム起動モードスレッドは、アプリやコントロールサービスのプログラム起動要求メッセージを受信すると(ステップS401)、ROM204に格納されている設定ファイルを読み込む(ステップS402)。
【0081】
図5は、実施の形態1の複合機100で使用される設定ファイルの一例を示す説明図である。図5に示すように、設定ファイルには、ROM204に格納されたアプリおよびコントロールサービスのプログラム名と、各プログラム名に対応した優先度が記述されている。この優先度は、プログラムの起動順序を示すものである。例えば、図5において優先度1のECSプログラム(ecs_prg)は、優先度2のコピーアプリプログラム(copy_app)より先に起動されていなければならないことを示している。
【0082】
図6は、実施の形態2の複合機100で使用される設定ファイルの他の一例を示す説明図である。図6の設定ファイルでは、ROM204に格納されたアプリおよびコントロールサービスのプログラム名と,各プログラム名に対応した転送先と,各プログラム名に対応した優先度と,各プログラム名に対応したMUST/WANTが記述されている。
【0083】
図6の転送先は、プログラムの転送先を示すものである。例えば、図6において転送先VMのECSプログラム(ecs_prg)は、RAM203の仮想メモリ領域に転送される。また、転送先PREMAPのFCSプログラム(fcs_prg)は、RAM203の画像メモリ領域に転送される。
【0084】
なお、転送先がVM,PREMAPのプリンタアプリプログラム(print_app)は、まずRAM203の仮想メモリ領域に転送され、仮想メモリ領域に転送できないときにRAM203の画像メモリ領域に転送される。
【0085】
図6のMUST/WANTは、必ず転送する必要があるか否かを表すものである。MUSTは、そのプログラムが必ず転送する必要のあるプログラムであることを表している。また、WANTは、そのプログラムが必ずしも転送する必要のないプログラムであることを表している。
【0086】
例えば、図6においてMUSTのECSプログラム(ecs_prg)は、必ず仮想メモリ領域に転送される。また、WANTのFCSプログラム(fcs_prg)は、必ずしもRAM203の画像メモリ領域に転送されない。
【0087】
ステップS402で読み込む設定ファイルは、図5,図6に示した設定ファイルの何れでも良いが、以下、図5の設定ファイルの例について説明する。SCS122のプログラム起動モードスレッドでは、読み込んだ設定ファイルから起動要求のあったプログラムの優先度より高い優先度のプログラムがRAM203にすでにロードされているか否かをチェックする(ステップS403)。
【0088】
そして、まだロードされていない場合には、起動順序が正しくないため起動要求のあったプログラムの転送および起動は行わず処理を終了する。一方、すでにRAM203にロードされている場合には、起動要求のあったコントロールサービスまたはアプリのROM204に格納されているプログラムのサイズをファイル情報などから取得する(ステップS404)。ここで、プログラムがROM204に圧縮形式で格納されている場合には、圧縮形式のプログラムのファイル情報などから伸張後のサイズを取得する。
【0089】
ついで、RAM203の仮想メモリ領域の空き容量を取得し(ステップS405)、ステップS404で取得したプログラムサイズと比較する(ステップS406)。
【0090】
そして、比較の結果、仮想メモリ領域の空き容量がプログラムサイズ以上のときには、ROM204上のプログラムが圧縮形式か否かを判断する(ステップS407)。圧縮形式でない場合には、起動要求のあったプログラムを単にROM204からRAM203にコピーする(ステップS409)。起動要求のあったプログラムが圧縮形式でROM204に格納されている場合には、伸張処理を行った上で(ステップS408)、仮想メモリ領域にコピーする(ステップS409)。そして、仮想メモリ領域にコピーされたプログラムを起動する(ステップS415)。
【0091】
ステップS406の比較の結果、仮想メモリ領域の空き容量がプログラムサイズより小さいときには、画像メモリ領域をプログラムの実行に使用する旨のメッセージをオペレーションパネルに表示するなどを行ってユーザに通知し(ステップS410)、ユーザの応答待ち状態となる。ユーザからプログラムを起動しない旨の応答があった場合には(ステップS411)、プログラムの転送処理および起動処理を行わずに処理を終了する。
【0092】
ユーザからプログラムを起動する旨の応答があった場合には(ステップS411)、ステップS407およびS408と同様に、ROM204に格納されたプログラムが圧縮形式の場合に伸張処理を行い(ステップS412、S413)、圧縮形式でない場合にそのままROM204上のプログラムをRAM203の画像メモリ領域にコピーする(ステップS414)。そして、画像メモリ領域にコピーされたプログラムを起動する(ステップS415)。
【0093】
これらの処理によって、プログラムの優先度と仮想メモリ領域の空き容量に従って、起動要求のあったコントロールサービスまたはアプリのプログラムがROM204からRAM203にコピーされて起動され、プロセスが生成されることになる。
【0094】
次に、このようなプログラムの転送および起動処理を、具体的な例を示して説明する。図7は、実施の形態1にかかる複合機100におけるROM204上のファックスアプリのプログラムfax_appとFCS127のプログラムfcs_prgの配置を一例として示した説明図である。
【0095】
図7に示すように、fax_appは圧縮形式となっており、圧縮前のプログラムサイズは800kByte、圧縮後のプログラムサイズは400kByteとなっている。また、fcs_prgは圧縮形式ではなく、プログラムサイズは500kByteとなっている。
【0096】
図8(a)は、RAM203の容量が64MByteであるときのプログラムの転送処理および起動処理の実行前のRAM203の状態を示す説明図である。図8(b)は、図7に示したROM204上のプログラムを、仮想メモリの空き容量と図5に示した設定ファイルの優先度に基づいてRAM203へ転送して起動処理を実行した後のRAM203の状態を示す説明図である。図8(a)に示すように、実行前では、RAM203の仮想メモリ領域の空き容量は800kByteとなっている。
【0097】
ここで、ユーザ操作によりファックスアプリ113とFCS127のプログラムの起動要求があった場合を考える。なお、図8(a)において、他のアプリ、他のコントロールサービスおよびSRM123はすでに仮想メモリ領域にロードされているものと仮定する。
【0098】
この場合、まずファックスアプリ113のプログラムfax_appの転送処理を開始する。図5の設定ファイルではfax_appの優先度が4であり、fcs_prgの優先度が3で、fcs_prgの優先度の方がfax_appより高い。また、RAM203にはfcs_prgがまだロードされておらず存在しないため、fax_appのRAM203への転送および起動はfcs_prgの転送および起動後に行われる。
【0099】
fcs_prgのプログラムサイズが500kByteで、仮想メモリ領域の空き容量800kByteより小さいため、fcs_prgは仮想メモリ領域にコピーされて起動される。これにより、仮想メモリ領域の空き容量は300kByteに減少する。
【0100】
ついで、fax_appの転送処理を開始する。すでにfcs_appがRAM203の仮想メモリ領域にロードされて存在しているため、fax_appの転送が可能な状態となっている。しかし、fax_appの圧縮前のプログラムサイズが800kByteで、現時点における仮想メモリ領域の空き容量300kByteより大きいため、fax_appの転送先は仮想メモリ領域ではなく画像メモリ領域と決定される。そして、図8(b)に示すように、fax_appは伸張されて画像メモリ領域にコピーされ、その後起動される。
【0101】
このように実施の形態1にかかる複合機100では、SCS122のプログラム起動モードスレッドがアプリまたはコントロールサービスの起動要求メッセージを受信したときに、ROM204に格納されている起動要求のあったアプリまたはコントロールサービスのプログラムを、仮想メモリ領域の空き容量に基づいて仮想メモリ領域にコピーするか、あるいは画像メモリ領域にコピーするかを決定している。
【0102】
決定された転送先にプログラムをコピーして起動しているので、実施の形態1にかかる複合機100は、仮想メモリ領域の空き容量が十分でない場合であっても、画像メモリ領域を利用してプログラムの起動が可能となり、RAM203の利用効率を高めることができる。
【0103】
とくに、ファックスアプリ113やFCS127のプログラムサイズの例に示すように、各コントロールサービスおよび各アプリのプログラムサイズは、せいぜい1MByte以内の小さなものである。したがって、RAM203にプロセス単位で確保および解放される領域のサイズは小さくなり、画像メモリ領域にプログラムをコピーした場合でも画像形成処理に及ぼす影響は小さくなる。このため、画像形成処理にかかるユーザサービスに支障をきたすことなく、メモリの利用効率を高めることが可能となる。
【0104】
また、実施の形態1にかかる複合機100では、設定ファイルに定められたプログラムの優先度に基づいてプログラムのRAM203へのコピーの可否を判断しているので、コントロールサービスが起動した状態で、コントロールサービス層の上で動作する各アプリを起動することができ、起動順序の誤りが原因で各アプリのプロセス生成が不可能になるという障害を防止することができる。
【0105】
なお、実施の形態1にかかる複合機100では、優先度を設定した設定ファイルを用いてプログラムのRAM203へのコピーの可否を判断しているが、設定ファイルを用いずにSCS122のプログラムに各プログラムごとの優先度の記述を組み込んで判断するように構成してもよい。
【0106】
また、実施の形態1にかかる複合機100では、設定ファイルをROM204に組み込んでいるが、HDD205などに格納して、設定ファイルを任意に書き換え可能として構成しても良い。
【0107】
さらに、実施の形態1の複合機100では、RAM203の利用状況として仮想メモリ領域の空き容量を採用しているが、RAM203の全体容量や仮想メモリ領域と画像メモリ領域の割合など他の利用状況に基づいて転送先を判断しても良い。
(実施の形態2)
実施の形態1の複合機100では、RAM203へのプログラムのコピーの可否を、優先度に基づいて判断するものであったが、この実施の形態2にかかる複合機100は、起動要求のあったプログラムに関連する他のプログラムがすでにRAM203に存在しているか否かをチェックしてコピーの可否を判断するものである。
【0108】
実施の形態2にかかる複合機100の構成、ハードウェア構成およびRAM203の仮想メモリ領域と画像メモリ領域のメモリマップについては、実施の形態1の複合機100と同様であるので説明を省略する。
【0109】
実施の形態2の複合機100におけるSCS122のプログラム起動モードスレッドによるプログラムの転送処理および起動処理は次のように行われる。図9は、SCS122のプロセスのプログラム起動モードスレッドによって実行されるプログラムの転送処理および起動処理の手順を示すフローチャートである。
【0110】
まず、SCS122のプログラム起動モードスレッドでは、実施の形態1と同様にアプリやコントロールサービスのプログラム起動要求メッセージを受信すると(ステップS801)、ROM204に格納されている設定ファイルを読み込む(ステップS802)。
【0111】
図10は、実施の形態2の複合機100で使用される設定ファイルの一例を示す説明図である。図10に示すように、設定ファイルには、ROM204に格納されたアプリケーションおよびコントロールサービスのプログラム名と、各プログラムに関連する他のプログラムのプログラム名が記述されている。
【0112】
この関連するプログラムは、プログラムの起動時に、すでに実行されている必要があるプログラムを示すものである。例えば、図10においてファックスアプリプログラム(fax_app)は、FCSプログラム(fcs_prg)とprint_subがともにRAM203にロードされて実行されている状態で、起動しなければならないことを示している。
【0113】
SCS122のプログラム起動モードスレッドは、読み込んだ設定ファイルから起動要求のあったプログラムに関連するプログラム名を取得し、当該関連するプログラムがRAM203にすでにロードされているか否かをチェックする(ステップS803)。
【0114】
まだロードされていない場合には、起動順序が正しくないため起動要求のあったプログラムの転送および起動は行わず処理を終了する。一方、すでにRAM203にロードされている場合には、起動要求のあったコントロールサービスまたはアプリのプログラムのサイズをファイル情報などから取得する(ステップS804)。ここで、プログラムがROM204に圧縮形式で格納されている場合には、圧縮形式のプログラムのファイル情報などから伸張後のサイズを取得する。
【0115】
これ以降の転送処理および起動処理(ステップS805〜S815)については、実施の形態1で説明した図4のステップS405からS415までの処理と同様であるため説明を省略する。
【0116】
次に、このようなプログラムの転送および起動処理を、具体的な例を示して説明する。図11(a)は、RAM203の容量が96MByteであるときのプログラムの転送処理および起動処理の実行前のRAM203の状態を示す説明図である。図11(b)は、図7に示したROM204上のプログラムを、仮想メモリの空き容量と図10に示した設定ファイルの関連プログラムに基づいてRAM203へ転送して起動処理を実行した後のRAM203の状態を示す説明図である。
【0117】
図11(a)に示すように、実行前では、RAM203の仮想メモリ領域の空き容量は1.5MByteとなっている。ここで、ユーザ操作によりファックスアプリ113とFCS127のプログラムの起動要求があった場合を考える。なお、図11(a)において、他のアプリ、他のコントロールサービスおよびSRM123はすでに仮想メモリ領域にロードされているものと仮定する。
【0118】
この場合、まずファックスアプリ113のプログラムfax_appの転送処理を開始する。ここで、図10の設定ファイルはfax_appの関連プログラムがfcs_prgとprint_subであることを表している。
【0119】
print_subはプリンタアプリプログラムprint_appの中であるためRAM203にロードされている。なお、fcs_prgはまだロードされていない。このため、fax_appのRAM203への転送および起動はfcs_prgの転送および起動後に行われる。
【0120】
fcs_prgのプログラムサイズが500kByteで、仮想メモリ領域の空き容量1.5MByteより小さいため、fcs_prgは仮想メモリ領域にコピーされて起動される。これにより、仮想メモリ領域の空き容量は1MByteに減少する。
【0121】
ついで、fax_appの転送処理を開始する。すでにprint_appおよびfcs_appがRAM203の仮想メモリ領域にロードされて実行されているため、fax_appの転送が可能な状態となっている。fax_appの圧縮前のプログラムサイズが800kByteで、現時点における仮想メモリ領域の空き容量1MByteより小さいため、fax_appの転送先は仮想メモリ領域と決定される。そして、図11(b)に示すように、fax_appは伸張されて仮想メモリ領域にコピーされ、その後起動される。
【0122】
このように実施の形態2にかかる複合機100では、SCS122のプログラム起動モードスレッドが、起動要求があったコントロールサービスまたはアプリのプログラムの実行に必要な他のプログラムがすでにRAM203上に存在しているときに、起動要求のあったプログラムをRAM203に転送して起動している。したがって、実施の形態2にかかる複合機100は、必要なプログラムがまだ起動されていないことに起因するコントロールサービスまたはアプリの起動時のエラーの発生を防止することができ、起動順序に沿ったプログラム実行を行えるようになっている。
【0123】
なお、実施の形態2にかかる複合機100では、関連プログラムを設定した設定ファイルを用いてプログラムのRAM203へのコピーの可否を判断しているが、設定ファイルを用いずにSCS122のプログラムに各プログラムごとの関連プログラムの記述を組み込んで判断するように構成してもよい。
【0124】
また、実施の形態2にかかる複合機100では、設定ファイルをROM204に組み込んでいるが、ハHDD205などに格納して、設定ファイルを任意に書き換え可能として構成しても良い。
【0125】
さらに、実施の形態2の複合機100では、RAM203の利用状況として仮想メモリ領域の空き容量を採用しているが、RAM203の全体容量や仮想メモリ領域と画像メモリ領域の割合など他の利用状況に基づいて転送先を判断しても良い。
(実施の形態3)
実施の形態1および2にかかる複合機100では、起動要求のあったプログラムのRAM203への転送処理および起動処理をSCS122のプログラム起動モードスレッドで行っている。この実施の形態3の複合機100は、かかる転送処理および起動処理をアプリケーションで行うものである。
【0126】
図12は、実施の形態3にかかる複合機の構成を示すブロック図である。実施の形態3の複合機100が実施の形態1の複合機と異なる点は、図12に示すとおり、プログラム起動アプリ117を備えた点である。なお、ハードウェア構成および仮想メモリ領域と画像メモリ領域のメモリマップは実施の形態1で説明した図3と同様であるので説明を省略する。
【0127】
プログラム起動アプリ117は、本発明における転送手段,転送先判断手段、起動手段および通知手段を構成するものである。プログラム起動アプリ117はアプリケーション層のプロセスとして動作し、アプリやコントロールサービスの起動要求のメッセージを受信する。
【0128】
プログラム起動アプリ117は、仮想メモリ領域の空き容量に従って起動要求のあったアプリやコントロールサービスのプログラムをROM204からRAM203にコピーして起動する。また、プログラム起動アプリ117は、プログラムごとの優先度が設定された設定ファイルに基づいてプログラムのコピーの可否を判断する。なお。プログラム起動アプリ117によるプログラムのRAM203への転送処理および起動処理は、実施の形態1の複合機100と同様であるため説明を省略する。
【0129】
このように実施の形態3にかかる複合機では、プログラムのRAM203への転送処理および起動処理を行うプログラム起動アプリ117を有しているので、コントロールサービスとアプリ間のアプリケーションインタフェース(API)を利用してコントロールサービスまたはアプリの起動要求の受信をすることができる。コントロールサービスおよびアプリは、別個に転送処理および起動処理を行うプロセスを生成する場合に比べて、ソフトウェア開発の労力を軽減することができる。
【0130】
なお、実施の形態3にかかる複合機100では、図12に示すように、プログラムのRAM203への転送処理および起動処理を行うプロセスをアプリケーション層に設けているが、同様の機能を実行するプロセスをコントロールサービス層にSCS122と別個に設けた構成としても良い。
【0131】
前述した実施の形態1〜3では、プリンタ,FAXなどの機能単位の各アプリおよび各コントロールサービスのプログラムを、ROM204からRAM203に転送する例について説明したが、機能単位を構成するモジュール群に限ることなく、モジュール単位に転送先を決定してもよい。
【0132】
例えばプリンタアプリプログラムを構成する一部のモジュール又はモジュール群を仮想メモリ領域に転送し、残りのモジュール又はモジュール群を画像メモリ領域に転送することも可能である。
【0133】
本発明は、上記の実施例に限定されるものではなく、本発明の範囲内で種々の変形や変更が可能である。
【0134】
【発明の効果】
以上説明したように、発明によれば、画像形成処理に支障を来すことなく、書き換え可能メモリの利用効率を高めることが可能な画像形成装置を実現できる。
【図面の簡単な説明】
【図1】実施の形態1にかかる複合機の構成を示すブロック図である。
【図2】実施の形態1の複合機のハードウェア構成図である。
【図3】SDRAMのメモリマップを示す説明図である。
【図4】実施の形態1にかかる複合機において、SCSのプロセスのプログラム起動モードスレッドによって実行されるプログラムの転送処理および起動処理の手順を示すフローチャートである。
【図5】実施の形態1の複合機で使用される設定ファイルの一例を示す説明図である。
【図6】実施の形態1の複合機で使用される設定ファイルの他の一例を示す説明図である。
【図7】実施の形態1の複合機におけるROM上のファックスアプリのプログラムとFCSのプログラムの配置を一例として示した説明図である。
【図8】実施の形態1の複合機においてRAMの容量が64MBであるときのプログラムの転送処理および起動処理の実行前及び実行後のRAMの状態を示す説明図である。
【図9】実施の形態2にかかる複合機において、SCSプロセスのプログラム起動モードスレッドによって実行されるプログラムの転送処理および起動処理の手順を示すフローチャートである。
【図10】実施の形態2の複合機で使用される設定ファイルの一例を示す説明図である。
【図11】実施の形態2の複合機において、RAMの容量が96MBであるときのプログラムの転送処理および起動処理の実行前及び実行後のRAMの状態を示す説明図である。
【図12】実施の形態3にかかる複合機の構成を示すブロック図である。
【符号の説明】
100 複合機
101 白黒ラインプリンタ
102 カラーラインプリンタ
103 ハードウェアリソース
110 ソフトウェア群
111 プリンタアプリ
112 コピーアプリ
113 ファックスアプリ
114 スキャナアプリ
115 ネットファイルアプリ
116 工程検査アプリ
117 プログラム起動アプリ
120 プラットホーム
121 汎用OS
122 SCS
123 SRM
124 ECS
125 MCS
126 OCS
127 FCS
128 NCS
130 アプリケーション
140 複合機起動部
200 コントローラボード
201 ASIC
202 CPU
203 SDRAM(RAM)
204 フラッシュメモリ(ROM)
205 HDD
208 SRAM
209 ネットワークインターフェースコントローラ
210 オペレーションパネル
230 USBデバイス
240 IEEE1394デバイス
250 エンジン部[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an image forming apparatus, and more particularly to an image forming apparatus that allocates a memory area.
[0002]
[Prior art]
2. Description of the Related Art In recent years, an image forming apparatus (hereinafter, referred to as “multifunction machine”) in which functions of apparatuses such as a printer, a copy machine, a facsimile machine, and a scanner are housed in a single housing is generally known. This multifunction device is provided with a display unit, a printing unit, an imaging unit, and the like in one casing, and is provided with three types of software respectively corresponding to a printer, a copying machine, and a facsimile machine. It operates as a copy, scanner or facsimile machine.
[0003]
Such a conventional multi-function machine has a configuration in which software (including a general-purpose OS) corresponding to a printer, a copy, a scanner, and a facsimile machine is separately provided.
[0004]
[Problems to be solved by the invention]
Such a conventional multi-function machine is provided with separate software corresponding to each function unit such as a printer, a copy machine, and a facsimile machine. Since the area in memory required for executing each software is allocated separately for each software, the size of each area becomes excessive according to the size of each software, and it is allocated or released in memory There is a problem that the area size to be used becomes excessive, and the memory use efficiency is poor.
[0005]
In addition, since the multifunction peripheral performs image forming processing such as a printer, a copy, a facsimile, and a scanner, the number and size of image data generated in the process of performing the image forming processing is a general PC (Personal Computer) or the like. It will be enormous compared to. For this reason, it is necessary to secure a sufficient capacity of the image memory for temporarily storing the image data generated in the image forming process in advance, and when the image memory is changed during the execution of the image forming process. It is not preferable to use it for the purpose.
[0006]
Furthermore, the process execution memory may be consumed during the operation of the multi-function peripheral, which may hinder the process execution. In such a case, it may be possible to use a part of the image memory for process execution. However, since the size of each software is excessive in the conventional multi-function peripheral, even if there is space in the image memory, If an image memory is used, the image data cannot be stored temporarily, which hinders important image forming processing in the multifunction peripheral.
[0007]
For this reason, even when there is a space in the entire memory, it is often impossible to execute both process execution and image data storage without hindrance, and there is also a problem in that the memory use efficiency is poor.
[0008]
For example, Japanese Patent Application Laid-Open No. 9-16380 describes a system that manages memory by describing settings for using a memory area in a system setting file in advance. Japanese Patent Application Laid-Open No. 11-129558 discloses a printer that adjusts the amount of memory used by selectively executing a program stored in a ROM (Read Only Memory) using a ROM or a RAM.
[0009]
By the way, the conventional multi-function machine has a configuration in which software (including a general-purpose OS) corresponding to a printer, a copy, a scanner, and a facsimile machine is provided separately, and it takes a lot of time to develop each software.
[0010]
For this reason, the applicant has hardware resources used in image forming processing such as a display unit, a printing unit, and an imaging unit, and has an application that performs processing specific to each user service such as a printer, copy, or facsimile. When a user service is provided by interposing between these applications and hardware resources, hardware resource management, execution control, and image formation processing that are commonly required by at least two of the applications are provided. Invented an image forming apparatus (Japanese Patent Laid-Open No. 2002-82806) having a platform composed of various control services for improving software development efficiency.
[0011]
In such a multi-function peripheral, a plurality of applications and control service software are operated as separate processes. Therefore, the area size in the memory required for each process to operate is smaller than that of a conventional multi-function machine equipped with software in units of functions such as a printer, a copy, and a facsimile. Preferably it can be used for memory management.
[0012]
The present invention has been made in view of the above, and an object thereof is to obtain an image forming apparatus capable of improving the use efficiency of a memory.
[0013]
[Means for Solving the Problems]
In order to achieve the above object, the invention according to claim 1Image processing hardware including at least one of a printer unit and a scanner unit, one or more image processing applications for performing image processing using the image processing hardware, an operating system, and operating on the operating system, An image forming apparatus having a program that is accessed and commonly used by the one or more image processing applications,On rewritable memory,The operating system executes the processUsed as a kernel areaScheduledThe physical area,The image processing application and program execute a processUsed as a virtual memory areaScheduledThe physical area,For temporarily storing image data generated by the image processingUsed as image memory areaScheduledA memory securing means for securing a physical area;The image processing application andEmbedded in read-only memory when a program startup request is madeThe image processing application andThere was a request to start the programImage processing application orTransfer means for transferring a program to a physical area used as the virtual memory area or image memory area, and the transfer means transferred by the transfer meansImage processing application orAnd an activation means for activating the program.
[0014]
In the first aspect of the present invention, the area securing means reserves an image memory area having a predetermined capacity and a virtual memory area in which each program is stored in the rewritable memory. The predetermined capacity of the image memory area may be set to a sufficient size in anticipation of the capacity required for storing image data in accordance with the functions installed in the image forming apparatus.
[0015]
Then, when there is a program activation request during the execution of the image forming apparatus, the activation requested program is transferred to the virtual memory area or the image memory area, and the transferred program is activated by the activation unit, The program requested to be activated can be transferred to the virtual memory area or the image memory area and executed.
[0016]
In other words, the program stored in the read-only memory can be executed not only in the virtual memory area of the rewritable memory but also in the image memory area. Even if it is impossible to transfer the program, the program can be transferred to the image memory area instead of the virtual memory area. Therefore, according to the first aspect of the present invention, it is possible to increase the utilization efficiency of the rewritable memory without causing any trouble in the image forming process.
[0017]
Moreover, the
[0018]
According to the second aspect of the present invention, when a program activation request is made, the program is transferred to a virtual memory area or an image memory area and executed based on a predetermined transfer destination for each program. Can do.
[0019]
According to a third aspect of the present invention, the activation request is made based on a usage state of the rewritable memory.The image processing application orIt further comprises transfer destination determination means for determining a program transfer destination as either a virtual memory area or a physical area used as an image memory area.
[0020]
According to the third aspect of the present invention, when a program activation request is made, the program can be transferred to the virtual memory area or the image memory area and executed based on the usage status of the rewritable memory.
[0021]
Here, the usage status of the rewritable memory includes various conditions such as the free capacity of the virtual memory area, the ratio between the virtual memory area and the image memory area, the capacity of the rewritable memory, and is particularly limited in the present invention. It is not a thing.
[0022]
That is, according to the present invention, the program stored on the read-only memory can be executed not only in the virtual memory area of the rewritable memory but also in the image memory area, based on the use situation of such rewritable memory. Even if it is impossible to transfer the requested program to the virtual memory area due to the capacity limit of the virtual memory area, etc., it is possible to transfer the program to the image memory area instead of the virtual memory area and start the process. Generation is possible.
[0024]
BookAccording to the invention, since the user service is provided by a plurality of processes activated by a large number of relatively small programs, the area secured and released on the rewrite memory by the generation and disappearance of each process The size is also relatively small, and even when a process is generated in the image memory area, it has an effect on the image forming process compared to a conventional image forming apparatus configured with a large size program of functional units such as print and copy. The impact is small.
[0025]
Therefore, according to the present invention, it is possible to increase the utilization efficiency of the rewritable memory without hindering the image forming process.
[0026]
Claims4The invention according toThe transfer destination determination means uses the transfer destination as the image memory area when the free space of the physical area used as the virtual memory area is smaller than the size of the image processing application or program requested to be started. The physical area to be used is determined.
[0027]
This claim4According to this invention, even when the process cannot be generated due to the capacity limitation of the virtual memory area, the process can be generated in the image memory area, and the memory utilization efficiency can be improved.
[0028]
Claims5The invention according toWhen the transfer destination determining unit determines that the transfer destination is a physical area to be used as the image memory area, the transfer destination determining unit further includes a notification unit that notifies the user to that effect.
[0029]
This claim5According to this invention, it is possible to notify the user of the image forming apparatus in advance that the image memory area is consumed, and this is convenient for the user.
[0030]
Claims6The invention according toThe transfer means decompresses the image processing application or program in the compressed format when the image processing application or program requested to start is stored in the read-only memory in the compressed format. It is characterized by doing.
[0031]
This claim6According to the invention, even if the program cannot be incorporated in the normal format due to the capacity limitation of the read-only memory, if the compressed format program is incorporated in the read-only memory, it is expanded at the time of transfer, so the capacity of the read-only memory is limited. Even in some cases, a multi-functional user service can be provided by a large number of programs.
[0032]
Claims7The invention according toThe transfer means transfers the image processing application or program to the virtual memory area or a physical area used as the image memory area based on a predetermined priority for each image processing application and program. Features.
[0033]
This claim7According to this invention, even when priority is given to the execution of the program, the program can be transferred to the virtual memory area or the image memory area according to the priority.
[0034]
Claims8The invention according toThe activation unit activates the image processing application or program transferred to either the virtual memory area or the physical area used as the image memory area based on the priority.
[0035]
This claim8According to the invention, even when priority is given to execution of the program, the program can be started according to the priority, and a state where the program cannot be started can be avoided.
[0036]
Claims9The invention according toThe program has a higher priority than the image processing application, and the transfer unit preferentially transfers the program having a higher priority to the transfer destination.
[0037]
This claim9According to the invention, the control service can be started before starting the user service that operates on the control service layer, and the process generation of the user service is generated because the control service process is not generated. The obstacle that becomes impossible can be prevented in advance.
[0038]
Claims10The invention according toThe transfer means includes the image processing application or program having the activation request when another program related to the image processing application or program having the activation request already exists in the rewritable memory. Is transferred to the transfer destination.
[0039]
This claim10According to this invention, it is possible to prevent a failure at the time of starting the control service or the user service due to the related program not being started yet, and it is possible to execute the program according to the starting order.
[0040]
Claims11The invention according toThe transfer means transfers the image processing application stored on the read-only memory to the transfer destination when the program already exists on the rewritable memory.
[0041]
This claim11According to the present invention, the control service can be started before the user service operating on the control service layer is started, and the process generation of the control service due to the fact that the control service process is not generated is not possible. It is possible to prevent an obstacle that becomes possible.
[0042]
Claims12The invention according toThe image processing application further includes a program activation application that operates as the transfer means, the transfer destination determination means, and the activation means.
[0043]
This claim12According to the invention, it is possible to receive an activation request for the control service or the user service using an application interface between the control service and the user service, and transfer destination determination means and activation means separately from the control service and the user service. Compared to the case of providing the software, the software development effort can be reduced.
[0044]
Claims13The invention according toThe program includes a system control service process for controlling a system and managing resources, and the system control service process operates as the transfer unit, the transfer destination determination unit, and the start unit.
[0045]
This claim13According to this invention, the labor of software development can be reduced as compared with the case where processes of transfer means, transfer destination determination means and activation means are provided separately.
[0046]
Claims14The invention according toThe process of the system control service includes a normal mode thread accessed from the one or more image processing applications or other programs, and a program that operates as the transfer unit, the transfer destination determination unit, and the start unit And a start mode thread.
[0047]
This claim14According to the invention, it is possible to execute each thread in parallel within the process of the same system control service, and to realize the start of the control service or the user service requested to be started without stopping the user service. it can.
[0048]
Claims15The invention according toThe activation request for the image processing application or program is an activation request for each image processing application or program that is performed after the image forming apparatus is activated.
[0049]
This claim15According to the invention, when a program activation request is made after the image forming apparatus is activated, the program requested to be activated can be transferred to the virtual memory area or the image memory area and executed.
[0050]
DETAILED DESCRIPTION OF THE INVENTION
Exemplary embodiments of an image forming apparatus according to the present invention are explained in detail below with reference to the accompanying drawings.
(Embodiment 1)
FIG. 1 is a block diagram showing a configuration of an image forming apparatus (hereinafter referred to as “multifunction machine”) according to Embodiment 1 of the present invention. As shown in FIG. 1, the multifunction peripheral 100 includes a monochrome line printer (B & W LP) 101, a color line printer (Color LP) 102,
[0051]
The
[0052]
The control service is formed of a plurality of service modules, and includes an SCS (system control service) 122, an ECS (engine control service) 124, an MCS (memory control service) 125, an OCS (operation panel control service) 126, and an FCS. (Fax Control Service) 127 and NCS (Network Control Service) 128.
[0053]
The
[0054]
The general-
[0055]
The process of the
[0056]
Specifically, the
[0057]
The process of the
[0058]
The program start mode thread of the
[0059]
The process of the
[0060]
The
[0061]
The process of the
[0062]
The
[0063]
The
[0064]
The
[0065]
The
[0066]
The multifunction
[0067]
FIG. 2 is a hardware configuration diagram of the multifunction peripheral according to the first embodiment shown in FIG. As shown in FIG. 2, this multi-function machine includes a controller board 200 in which a
[0068]
The operation panel 210 is directly connected to the
[0069]
A flash memory (hereinafter referred to as “ROM”) 204 constitutes a read-only memory according to the present invention, and stores each control service,
[0070]
The
[0071]
An SDRAM (hereinafter referred to as “RAM”) 203 constitutes a rewritable memory according to the present invention. The
[0072]
FIG. 3A is an explanatory diagram of a memory map of the
[0073]
The image memory area is secured with a size sufficient for storing image data predicted from the number of installed applications by the multifunction
[0074]
The virtual memory area is secured from the area of the
[0075]
Thus, by accessing the program copied to the
[0076]
Next, transfer of a program stored in the
[0077]
In the
[0078]
FIG. 4 is a flowchart showing a program transfer process and a startup process executed by the program startup mode thread of the
[0079]
First, during the operation of the multifunction peripheral 100, a startup request message for a program that has not yet been loaded into the
[0080]
The generated activation request message is transmitted to the
[0081]
FIG. 5 is an explanatory diagram illustrating an example of a setting file used in the
[0082]
FIG. 6 is an explanatory diagram illustrating another example of the setting file used in the multifunction peripheral 100 according to the second embodiment. In the setting file of FIG. 6, the program names of the application and control service stored in the
[0083]
The transfer destination in FIG. 6 indicates the transfer destination of the program. For example, in FIG. 6, the ECS program (ecs_prg) of the transfer destination VM is transferred to the virtual memory area of the
[0084]
Note that the printer application program (print_app) whose transfer destination is VM or PREMAP is first transferred to the virtual memory area of the
[0085]
MUST / WANT in FIG. 6 indicates whether or not it is necessary to transfer the data. MUST indicates that the program must be transferred. WANT indicates that the program is not necessarily transferred.
[0086]
For example, in FIG. 6, the MUST ECS program (ecs_prg) is always transferred to the virtual memory area. Further, the WANT FCS program (fcs_prg) is not necessarily transferred to the image memory area of the
[0087]
The setting file read in step S402 may be any of the setting files shown in FIGS. 5 and 6. Hereinafter, an example of the setting file shown in FIG. 5 will be described. In the program start mode thread of the
[0088]
If the program has not been loaded yet, the startup sequence is not correct, and the process is terminated without transferring and starting the program requested to be started. On the other hand, if it is already loaded in the
[0089]
Next, the free space in the virtual memory area of the
[0090]
As a result of the comparison, if the free space in the virtual memory area is equal to or larger than the program size, it is determined whether or not the program on the
[0091]
If the result of the comparison in step S406 is that the free space in the virtual memory area is smaller than the program size, a message to the effect that the image memory area is used for program execution is displayed on the operation panel and the user is notified (step S410). ), Waiting for user response. If there is a response from the user that the program is not activated (step S411), the process is terminated without performing the program transfer process and the activation process.
[0092]
If there is a response to start the program from the user (step S411), similarly to steps S407 and S408, decompression processing is performed when the program stored in the
[0093]
Through these processes, the control service or application program requested to be activated is copied from the
[0094]
Next, such program transfer and activation processing will be described with a specific example. FIG. 7 is an explanatory diagram illustrating, as an example, an arrangement of the fax application program fax_app and the
[0095]
As shown in FIG. 7, fax_app is a compression format, the program size before compression is 800 kBytes, and the program size after compression is 400 kBytes. Further, fcs_prg is not a compressed format, and the program size is 500 kBytes.
[0096]
FIG. 8A is an explanatory diagram showing the state of the
[0097]
Here, let us consider a case where there is a request to activate the
[0098]
In this case, first, transfer processing of the program fax_app of the
[0099]
Since the program size of fcs_prg is 500 kbytes and smaller than the free capacity of the virtual memory area 800 kbytes, fcs_prg is copied to the virtual memory area and activated. As a result, the free space in the virtual memory area is reduced to 300 kBytes.
[0100]
Next, the fax_app transfer process is started. Since fcs_app has already been loaded into the virtual memory area of the
[0101]
As described above, in the
[0102]
Since the program is copied and activated at the determined transfer destination, the
[0103]
In particular, as shown in the example of the program size of the
[0104]
Further, in the
[0105]
In the
[0106]
In the
[0107]
Furthermore, in the
(Embodiment 2)
In the
[0108]
The configuration, hardware configuration, and memory map of the virtual memory area and the image memory area of the
[0109]
Program transfer processing and activation processing by the program activation mode thread of the
[0110]
First, in the program start mode thread of the
[0111]
FIG. 10 is an explanatory diagram illustrating an example of a setting file used in the
[0112]
This related program indicates a program that needs to be already executed when the program is started. For example, in FIG. 10, the fax application program (fax_app) indicates that the FCS program (fcs_prg) and print_sub must be started in a state where both are loaded into the
[0113]
The program start mode thread of the
[0114]
If it has not been loaded yet, the startup sequence is not correct, and the program is terminated without transferring and starting the requested program. On the other hand, if it is already loaded in the
[0115]
The subsequent transfer processing and activation processing (steps S805 to S815) are the same as the processing from steps S405 to S415 of FIG. 4 described in the first embodiment, and thus description thereof is omitted.
[0116]
Next, such program transfer and activation processing will be described with a specific example. FIG. 11A is an explanatory diagram showing the state of the
[0117]
As shown in FIG. 11A, before execution, the free capacity of the virtual memory area of the
[0118]
In this case, first, transfer processing of the program fax_app of the
[0119]
Since print_sub is in the printer application program print_app, it is loaded into the
[0120]
Since the program size of fcs_prg is 500 kbytes and the free capacity of the virtual memory area is smaller than 1.5 Mbytes, fcs_prg is copied to the virtual memory area and activated. As a result, the free capacity of the virtual memory area is reduced to 1 MByte.
[0121]
Next, the fax_app transfer process is started. Since print_app and fcs_app are already loaded and executed in the virtual memory area of the
[0122]
As described above, in the
[0123]
In the
[0124]
In the
[0125]
Furthermore, in the
(Embodiment 3)
In the
[0126]
FIG. 12 is a block diagram of the configuration of the multifunction machine according to the third embodiment. The
[0127]
The
[0128]
The
[0129]
As described above, the MFP according to the third embodiment includes the
[0130]
In the
[0131]
In the first to third embodiments described above, an example of transferring each application of a functional unit such as a printer and FAX and a program of each control service from the
[0132]
For example, it is also possible to transfer some modules or module groups constituting the printer application program to the virtual memory area and transfer the remaining modules or module groups to the image memory area.
[0133]
The present invention is not limited to the above embodiments, and various modifications and changes can be made within the scope of the present invention.
[0134]
【The invention's effect】
As described above, according to the present invention, it is possible to realize an image forming apparatus capable of increasing the utilization efficiency of a rewritable memory without causing any trouble in image forming processing.
[Brief description of the drawings]
FIG. 1 is a block diagram illustrating a configuration of a multifunction machine according to a first embodiment.
FIG. 2 is a hardware configuration diagram of the MFP according to the first embodiment.
FIG. 3 is an explanatory diagram showing a memory map of an SDRAM.
FIG. 4 is a flowchart of a program transfer process and a startup process executed by a program startup mode thread of an SCS process in the multifunction machine according to the first embodiment;
FIG. 5 is an explanatory diagram illustrating an example of a setting file used in the MFP according to the first embodiment.
FIG. 6 is an explanatory diagram illustrating another example of a setting file used in the multifunction machine according to the first embodiment.
7 is an explanatory diagram showing, as an example, an arrangement of a fax application program and an FCS program on a ROM in the multifunction peripheral according to the first embodiment; FIG.
FIG. 8 is an explanatory diagram illustrating a state of the RAM before and after execution of a program transfer process and a start-up process when the capacity of the RAM is 64 MB in the multi-function peripheral according to the first embodiment;
FIG. 9 is a flowchart of a program transfer process and a startup process executed by a program startup mode thread of an SCS process in the MFP according to the second embodiment;
FIG. 10 is an explanatory diagram illustrating an example of a setting file used in the multifunction machine according to the second embodiment.
11 is an explanatory diagram showing a state of a RAM before and after execution of a program transfer process and a start-up process when the capacity of the RAM is 96 MB in the multifunction machine of the second embodiment. FIG.
FIG. 12 is a block diagram illustrating a configuration of a multifunction peripheral according to a third embodiment.
[Explanation of symbols]
100 MFP
101 Monochrome line printer
102 color line printer
103 Hardware resources
110 Software group
111 Printer app
112 Copy application
113 Fax application
114 Scanner app
115 Net file application
116 Process inspection application
117 Program launch app
120 platform
121 General-purpose OS
122 SCS
123 SRM
124 ECS
125 MCS
126 OCS
127 FCS
128 NCS
130 applications
140 Multi-function machine start-up unit
200 Controller board
201 ASIC
202 CPU
203 SDRAM (RAM)
204 Flash memory (ROM)
205 HDD
208 SRAM
209 Network interface controller
210 Operation Panel
230 USB device
240 IEEE 1394 devices
250 engine part
Claims (15)
書き換え可能メモリ上に、前記オペレーティングシステムがプロセスを実行するカーネル用領域として使用される予定の物理領域と、前記画像処理アプリケーション及びプログラムがプロセスを実行する仮想メモリ領域として使用される予定の物理領域と、前記画像処理で生成される画像データを一時的に格納するための画像メモリ領域として使用される予定の物理領域とを確保するメモリ確保手段と、
前記画像処理アプリケーション及びプログラムの起動要求があったときに、読み出し専用メモリ上に組み込まれた前記画像処理アプリケーション及びプログラムのうち前記起動要求のあった画像処理アプリケーション又はプログラムを、前記仮想メモリ領域又は画像メモリ領域として使用される物理領域に転送する転送手段と、
前記転送手段により転送された前記画像処理アプリケーション又はプログラムを起動する起動手段と
を備えたことを特徴とする画像形成装置。 Image processing hardware including at least one of a printer unit and a scanner unit, one or more image processing applications for performing image processing using the image processing hardware, an operating system, and operating on the operating system, An image forming apparatus having a program that is accessed and commonly used by the one or more image processing applications,
On the rewritable memory, and a physical area that is to be used as a kernel area where the operating system to perform the process, the image processing application and programs and physical area that is to be used as a virtual memory space to run the process a memory securing section to secure the physical area that is to be used as an image memory area for temporarily storing image data generated by the image processing,
When the image processing application and program are requested to be activated, the image processing application or program requested to be activated among the image processing application and program incorporated in the read-only memory is designated as the virtual memory area or image. Transfer means for transferring to a physical area used as a memory area;
An image forming apparatus comprising: an activation unit that activates the image processing application or program transferred by the transfer unit.
前記転送手段は、優先度の高い前記プログラムを優先的に前記転送先に転送することを特徴とする請求項7又は8記載の画像形成装置。 The image forming apparatus according to claim 7, wherein the transfer unit preferentially transfers the program having a high priority to the transfer destination.
前記システムコントロールサービスのプロセスは、前記転送手段,転送先判断手段および前記起動手段として動作することを特徴とする請求項1記載の画像形成装置。 The image forming apparatus according to claim 1, wherein the system control service process operates as the transfer unit, the transfer destination determination unit, and the activation unit.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002263644A JP4001531B2 (en) | 2001-09-21 | 2002-09-10 | Image forming apparatus |
US10/242,471 US7355739B2 (en) | 2001-09-14 | 2002-09-13 | Image forming device having a memory assignment unit |
DE60229709T DE60229709D1 (en) | 2001-09-14 | 2002-09-16 | Image forming apparatus with memory allocation unit |
EP02256377A EP1308793B1 (en) | 2001-09-14 | 2002-09-16 | Image forming device having a memory assignment unit |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001290169 | 2001-09-21 | ||
JP2001-290169 | 2001-09-21 | ||
JP2002263644A JP4001531B2 (en) | 2001-09-21 | 2002-09-10 | Image forming apparatus |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003196110A JP2003196110A (en) | 2003-07-11 |
JP4001531B2 true JP4001531B2 (en) | 2007-10-31 |
Family
ID=27615172
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002263644A Expired - Fee Related JP4001531B2 (en) | 2001-09-14 | 2002-09-10 | Image forming apparatus |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4001531B2 (en) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006038833A (en) | 2004-06-25 | 2006-02-09 | Ricoh Co Ltd | Time correction device, and image-forming device having the same |
JP4314178B2 (en) * | 2004-09-27 | 2009-08-12 | 株式会社リコー | Image forming apparatus, service function division rule method, and service function division rule program |
JP5159377B2 (en) | 2008-03-12 | 2013-03-06 | キヤノン株式会社 | Information processing apparatus and information processing method |
JP2010092458A (en) * | 2008-09-12 | 2010-04-22 | Ricoh Co Ltd | Image processing apparatus and program starting up method |
CN102202904B (en) * | 2008-10-27 | 2014-12-31 | 株式会社佐藤知识财产研究所 | Label printer API using program scripting language |
JP2012032896A (en) * | 2010-07-29 | 2012-02-16 | Fujitsu Frontech Ltd | Information processor, memory capacity control method and memory capacity control program |
JP5814526B2 (en) | 2010-08-26 | 2015-11-17 | キヤノン株式会社 | Image forming apparatus, image forming apparatus control method, and program |
JP5561147B2 (en) * | 2010-12-21 | 2014-07-30 | 日本電気株式会社 | Virtual storage management device, virtual storage management method, and virtual storage management program |
JP2017226169A (en) * | 2016-06-24 | 2017-12-28 | 京セラドキュメントソリューションズ株式会社 | Image formation apparatus and memory distribution method |
-
2002
- 2002-09-10 JP JP2002263644A patent/JP4001531B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2003196110A (en) | 2003-07-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3679349B2 (en) | Image forming apparatus, image forming method, image forming program, and application program | |
JP4344203B2 (en) | Image forming apparatus and information display method | |
JP4373742B2 (en) | Image forming apparatus and application activation restriction method | |
JP4101004B2 (en) | Image forming apparatus | |
JP4001531B2 (en) | Image forming apparatus | |
EP1308793B1 (en) | Image forming device having a memory assignment unit | |
JP4394740B2 (en) | Image forming apparatus, method, and program | |
JP4504447B2 (en) | Image forming apparatus, application activation determination method, program, and recording medium | |
JP3898476B2 (en) | Image information processing apparatus and software reconstruction method | |
JP4695348B2 (en) | CARD-TYPE MEMORY, IMAGE FORMING DEVICE, AND IMAGE FORMING DEVICE STARTING METHOD | |
JP4512565B2 (en) | Image forming apparatus and application installation method | |
JP4128506B2 (en) | Image forming apparatus and application information acquisition method | |
JP4136397B2 (en) | Image forming apparatus and memory management method | |
JP4676977B2 (en) | Image forming apparatus, application information acquisition method, and program | |
JP4246560B2 (en) | Information processing apparatus, information processing method, program, and recording medium | |
JP4128467B2 (en) | Image forming apparatus and memory map method | |
JP4128468B2 (en) | Information processing apparatus and memory map method | |
JP2011188411A (en) | Image processing apparatus and image processing system | |
JP4246608B2 (en) | Image forming apparatus and program start method | |
JP4677054B2 (en) | Image forming apparatus, program, recording medium, and method | |
JP4485749B2 (en) | Image forming apparatus | |
JP2004046804A (en) | Image forming apparatus and data processing method | |
JP3865242B2 (en) | User information management method and information processing apparatus | |
JP4093770B2 (en) | Data transfer method and interface control module, device control module and image forming apparatus using the data transfer method | |
JP2004192628A (en) | Image forming apparatus, and method and program for activating program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060622 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060704 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060904 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070306 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070507 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20070717 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070814 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100824 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100824 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110824 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110824 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120824 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120824 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130824 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |