JP2004192628A - 画像形成装置,プログラム起動方法及びプログラム起動プログラム - Google Patents

画像形成装置,プログラム起動方法及びプログラム起動プログラム Download PDF

Info

Publication number
JP2004192628A
JP2004192628A JP2003393414A JP2003393414A JP2004192628A JP 2004192628 A JP2004192628 A JP 2004192628A JP 2003393414 A JP2003393414 A JP 2003393414A JP 2003393414 A JP2003393414 A JP 2003393414A JP 2004192628 A JP2004192628 A JP 2004192628A
Authority
JP
Japan
Prior art keywords
check
program
unit
image forming
result
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
Application number
JP2003393414A
Other languages
English (en)
Inventor
Ayako Kobayashi
綾子 小林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2003393414A priority Critical patent/JP2004192628A/ja
Priority to US10/723,603 priority patent/US20050117773A1/en
Priority to EP03257448A priority patent/EP1437652A3/en
Priority to EP08002422A priority patent/EP1918813A1/en
Publication of JP2004192628A publication Critical patent/JP2004192628A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Facsimiles In General (AREA)
  • Stored Programmes (AREA)

Abstract

【課題】 各プログラムの重複部分を削減することができ、ハードウェア資源に関連するプログラムを効率良く起動することが可能な画像形成装置およびプログラム起動方法を提供することを目的とする。
【解決手段】 画像形成処理で使用されるハードウェア資源と、画像形成に係る処理を行うプログラムとを有する画像形成装置であって、ハードウェア資源に関するチェックを行うチェック手段と、チェック手段とプログラムとの関連を設定する設定手段と、チェック手段によるチェックの結果に応じてチェック手段に関連するプログラムを起動する起動手段52とを有することにより上記課題を解決する。
【選択図】 図17

Description

本発明は、画像形成装置,プログラム起動方法及びプログラム起動プログラムに係り、特に所定の設定ファイルに応じてプログラムを起動するプログラム起動方法,そのプログラム起動方法を利用する画像形成装置及びプログラム起動プログラムに関する。
近年、プリンタ,コピー,ファクシミリおよびスキャナなどの各装置の機能を1つの筐体内に収納した画像形成装置(以下、融合機という)が知られるようになった。この融合機は、1つの筐体内に表示部,印刷部および撮像部などを設けると共に、プリンタ,コピー,ファクシミリおよびスキャナにそれぞれ対応する4種類のソフトウェアを設け、そのソフトウェアを切り替えることより、プリンタ,コピー,ファクシミリおよびスキャナとして動作させるものである。例えば特許文献1には、融合機の一例が記載されている。
このような融合機は、電源投入後に、BIOS(Basic Input/Output System)およびブートローダ(Boot Loader)が起動する。ブートローダは、カーネル(Kernel)およびルートファイルシステムをRAM(Random Access Memory)上に展開してカーネルを起動する。そして、カーネルはルートファイルシステムをマウントする。ここでマウントとは、ファイルシステムや周辺機器などをアクセス可能な状態に起動することをいう。
カーネルの起動後、アプリケーション(以下、アプリという)や各種サービスを起動するアプリ/サービス層起動プログラムが起動される。アプリ/サービス層起動プログラムは融合機で最初に起動されるプロセスであり、所定の設定ファイルに従ってファイルシステムをマウントし、融合機の動作に必要なサービス層およびアプリ層のプロセスを所定の設定ファイルに従って起動している。従来の融合機では、起動されたサービス層およびアプリ層のプロセスが、各プロセスの処理の中で表示部,印刷部および撮像部などのハードウェア資源のチェックを行っていた。例えば特許文献2には、予め定義された動作定義情報に従いアプリを起動するプログラムの一例が記載されている。
特開2002−84383号公報 特開2000−20203号公報
しかしながら、従来の融合機ではハードウェア資源を複数のプロセスで共通に利用しており、各プロセスの処理の中でハードウェア資源のチェックを行うと各プロセスに重複した部分が多くなるという問題があった。また、従来の融合機では各プロセスの処理の中でハードウェア資源のチェックを行うため、各プロセスを起動しなければハードウェア資源の有無,性能などのチェックを行うことができなかった。
したがって、従来の融合機ではハードウェア資源が存在しない,ハードウェア資源の性能が低い等の理由で使用しないプロセスであっても、ハードウェア資源のチェックを行うために無駄に起動しなければならないという問題があった。なお、特許文献2はハードウェア資源のチェックを行うものでなく、上記の問題を解決することができない。
本発明は、上記の点に鑑みなされたもので、各プログラムの重複部分を削減することができ、ハードウェア資源に関連するプログラムを効率良く起動することが可能な画像形成装置,プログラム起動方法及びプログラム起動プログラムを提供することを目的とする。
そこで、上記課題を解決するため、本発明は、画像形成処理で使用されるハードウェア資源と、画像形成に係る処理を行うプログラムとを有する画像形成装置であって、前記ハードウェア資源に関するチェックを行うチェック手段と、前記チェック手段と前記プログラムとの関連を設定する設定手段と、前記チェック手段によるチェックの結果に応じて前記チェック手段に関連する前記プログラムを起動する起動手段とを有することを特徴とする。
また、本発明は、画像形成処理で使用されるハードウェア資源と、画像形成に係る処理を行うプログラムとを有する画像形成装置のプログラム起動方法であって、起動手段が、前記プログラムと前記ハードウェア資源に関するチェックを行うチェック手段との関連を設定した設定手段を解析する解析段階と、前記起動手段が、前記解析の結果に応じて前記チェック手段を起動するチェック手段起動段階と、前記起動手段が、前記チェック手段によるチェックの結果に応じて前記チェック手段に関連する前記プログラムを起動するプログラム起動段階とを有することを特徴とする。
また、本発明は、画像形成処理で使用されるハードウェア資源と、画像形成に係る処理を行うプログラムとを有するコンピュータを、前記ハードウェア資源に関するチェックを行うチェック手段と、前記チェック手段と前記プログラムとの関連を設定する設定手段と、前記チェック手段によるチェックの結果に応じて前記チェック手段に関連する前記プログラムを起動する起動手段として機能させるためのプログラム起動プログラムであることを特徴とする。
本発明によれば、ハードウェア資源に関するチェックをチェック手段で行うようにしたため、各プログラムの処理の中でハードウェア資源に関するチェックを行う必要が無くなり、各プログラムの重複部分を削減できる。
また、本発明によれば、ハードウェア資源に関するチェックの結果に応じてプログラムを起動するため、使用しないプログラムを起動する必要がなくなり、プログラムを効率良く起動できる。
上述の如く、本発明によれば、各プログラムの重複部分を削減することができ、ハードウェア資源に関連するプログラムを効率良く起動することが可能な画像形成装置,プログラム起動方法及びプログラム起動プログラムを提供できる。
次に、本発明を実施するための最良の形態を、以下の実施例に基づき図面を参照しつつ説明していく。
図1は、本発明による融合機のソフトウェア構成について説明するための一実施例の構成図である。融合機1は、ソフトウェア群2と,融合機起動部3と,ハードウェア資源4とを含むように構成される。
ハードウェア資源4は、プロッタ11と,スキャナ12と,ファクシミリなどのその他のハードウェアリソース13とを含む。ソフトウェア群2は、UNIX(登録商標)などのオペレーティングシステム(以下、OSという)上に起動されているアプリケーション層5とプラットフォーム6とを含む。
アプリケーション層5は、プリンタ,コピー,ファックスおよびスキャナなどの画像形成にかかるユーザサービスにそれぞれ固有の処理を行うプログラムを含む。図1のアプリケーション層5は、プリンタアプリ21と,コピーアプリ22と,ファックスアプリ23と,スキャナアプリ24と,ネットファイルアプリ25とを含む。なお、ネットファイルアプリ25はネットワークファイル用アプリケーションであり、融合機1にネットワークを介して接続されるネットワーク機器とのデータ通信を管理するものである。
プラットフォーム6は、アプリケーション層5からの処理要求を解釈してハードウェア資源4の獲得要求を発生するコントロールサービス層9と、1つ以上のハードウェア資源4の管理を行ってコントロールサービス層9からの獲得要求を調停するシステムリソースマネージャ(以下、SRMという)39と、SRM39からの獲得要求に応じてハードウェア資源4の管理を行うハンドラ層10とを含む。
コントロールサービス層9は、NCS31,DCS32,OCS33,FCS34,ECS35,MCS36,UCS37,SCS38など、一つ以上のサービスモジュールを含む。なお、プラットフォーム6は予め定義されている関数により、アプリケーション層5からの処理要求を受信するAPI53を有するように構成されている。OSは、アプリケーション層5およびプラットフォーム6の各ソフトウェアをプロセスとして並列実行する。
NCS(ネットワークコントロールサービス)31のプロセスは、ネットワーク側から各プロトコルによって受信したデータを各アプリケーションに振り分ける際の仲介、又は各アプリケーションからのデータをネットワーク側に送信する際の仲介を行う。例えばNCS31は、融合機にネットワークを介して接続されるネットワーク機器とのデータ通信を制御する。
DCS(デリバリーコントロールサービス)32のプロセスは、融合機に蓄積されている文書データの配送などの制御を行う。OCS(操作パネルコントロールサービス)33のプロセスは、後述する操作パネルの制御を行う。
FCS(ファックスコントロールサービス)34のプロセスは、アプリケーション層5からPSTNまたはISDN網を利用したファックスの送受信,バックアップ用のメモリで管理されている各種ファックスデータの登録又は引用,ファックスの読み取り,ファックスの受信印刷などを行うためのAPIを提供する。
ECS(エンジンコントロールサービス)35のプロセスは、プロッタ11,スキャナ12,ハードウェアリソース13などのエンジン部の制御を行う。MCS(メモリコントロールサービス)36のプロセスは、メモリの取得及び解放,HDDの利用,画像データの圧縮および伸張などの制御を行う。UCS(ユーザ情報コントロールサービス)37のプロセスは、ユーザ情報の管理を行うものである。
SCS(システムコントロールサービス)38のプロセスは、操作部の制御,システム画面の表示,LEDの表示,ハードウェア資源の管理,アプリケーションの管理,割り込みアプリケーションの制御などの処理を行う。
SRM39のプロセスは、SCS38と共にシステムの制御およびハードウェア資源4の管理を行うものである。例えばSRM39のプロセスは、プロッタ11やスキャナ12などのハードウェア資源4を利用する上位層からの獲得要求に従って調停を行い、ハードウェア資源4の実行を制御する。
具体的に、SRM39のプロセスは獲得要求されたハードウェア資源4が利用可能であるか(他の獲得要求により利用されていないか)を判定し、利用可能であれば獲得要求されたハードウェア資源4が利用可能である旨を上位層に通知する。SRM39のプロセスは、上位層からの獲得要求に対してハードウェア資源4を利用するためのスケジューリングを行い、要求内容(プリンタエンジンによる紙搬送と作像動作,メモリの確保,ファイル生成など)を直接実施している。
また、ハンドラ層10は後述するFCU(ファックスコントロールユニット)の管理を行うFCUH(ファックスコントロールユニットハンドラ)40と、プロセスに対するメモリの割り振り及びプロセスに割り振ったメモリの管理を行うIMH(イメージメモリハンドラ)41とを含む。SRM39及びFCUH40は、予め定義されている関数によりハードウェア資源4に対する処理要求を送信するエンジンI/F54を利用して、ハードウェア資源4に対する処理要求を行う。
図1の構成により、融合機1は各アプリケーションで共通的に必要な処理をプラットフォーム6で一元的に処理することができる。次に、融合機1のハードウェア構成について説明する。
図2は、本発明による融合機のハードウェア構成について説明するための一実施例の構成図である。図2の融合機1は、コントローラ60,操作パネル80,FCU81,エンジン部82を有する。
コントローラ60は、CPU61,システムメモリ62,NB63,SB64,ASIC66,ローカルメモリ67,HDD68、NIC69,SDカード用スロット70,USB I/F71,IEEE1394 I/F72,セントロニクス I/F73を有する。
操作パネル80は、コントローラ60のASIC66に接続されている。また、FCU81およびエンジン部82はコントローラ60のASIC66にPCIバス83を介して接続されている。
コントローラ60は、ASIC66にローカルメモリ67,HDD68などが接続されると共に、CPU61とASIC66とがCPUチップセットのNB63を介して接続されている。なお、ASIC66とNB63とはAGP(Accelerated Graphics Port)65を介して接続されている。
CPU61は、融合機1の全体制御を行うものである。図1の融合機1では、CPU61がコントロールサービス層9を形成する1つ以上のサービスモジュールと、SRM39と、ハンドラ層10を形成するFCUH40,IMH41とをOS上に起動させた後、アプリケーション層5を形成するプリンタアプリ21,コピーアプリ22,ファックスアプリ23,スキャナアプリ24,ネットファイルアプリ25を起動して実行させる。
NB(ノースブリッジ)63は、CPU61,システムメモリ62,SB64,ASIC66,NIC69,SDカード用スロット70,USB I/F71,IEEE1394 I/F72及びセントロニクス I/F73を接続するためのブリッジである。NB63は、SB64,NIC69,SDカード用スロット70,USB I/F71,IEEE1394 I/F72及びセントロニクス I/F73とPCIバス74を介して接続されている。なお、SB(サウスブリッジ)64は、PCIバス74とROMや周辺デバイス等とを接続するためのブリッジである。
システムメモリ62は、描画用メモリ等として用いるメモリである。ローカルメモリ67は、コピー用画像バッファ,符号バッファ等として用いるメモリである。ASIC66は、画像処理用のハードウェア要素を有する画像処理用途向けのICである。また、HDD68は画像データの蓄積,文書データの蓄積,プログラムの蓄積,フォントデータの蓄積,フォームの蓄積などを行うストレージ(補助記憶装置)の一例である。
NIC(ネットワークインターフェースカード)69は、融合機1をインターネットやLAN等のネットワークに接続するインターフェース機器である。SDカード用スロット70はSDカードを挿抜可能なものであり、SDカードの挿入または抜き出しに応じた割り込みをデバイスドライバに対して行う。
USB I/F70,IEEE1394 I/F71およびセントロニクス I/F72は、夫々の規格に準じたインターフェースである。操作パネル80は、操作者からの入力操作を受け付けると共に、操作者に向けた表示を行う操作部である。なお、FCU81はバックアップ用のメモリを有している。FCU81が有するメモリは、例えば融合機1の電源がOFFのときに受信したファクシミリデータを一時的に格納するために利用される。
図3は、融合機起動部の一例の構成図である。図1の融合機起動部3は、融合機1の電源投入時に最初に実行され、アプリケーション層5やプラットフォーム6を起動するものである。融合機起動部3は、ROMモニタ51と,プログラム起動部52とを含む。融合機起動部3の処理について図4のフローチャートを参照しつつ説明する。
図4は、融合機起動部の処理の一例のフローチャートである。ステップS1では、融合機1の電源ONにより、BIOSおよびブートローダとしてのROMモニタ51が実行される。ROMモニタ51は、ハードウェアの初期化,コントローラ60の診断,ソフトウェアの初期化などを行う。ステップS1に続いてステップS2に進み、ROMモニタ51は、OSおよびルートファイルシステムをシステムメモリ62上に展開してOSを起動する。そして、OSはルートファイルシステムをマウントする。
ステップS2に続いてステップS3に進み、OSは起動時に接続されたデバイスのデバイス情報(例えば、CPU61のクロック周波数,システムメモリ62およびローカルメモリ57のメモリサイズ,コントローラ60のボードタイプなど)を取得する。
ステップS3に続いてステップS4に進み、OSはアプリ/サービス起動プログラムとしてのプログラム起動部52を起動する。プログラム起動部52はシステムメモリ62およびローカルメモリ67上にメモリ領域を確保する。プログラム起動部52は、融合機1で最初に起動されるプロセスである。ステップS4に続いてステップS5に進み、プログラム起動部52は設定ファイルに従ってファイルシステムをマウントする。
また、プログラム起動部52は設定ファイルに従って、ハードウェア資源に関するチェック手段としてのチェックプログラムを起動する。プログラム起動部52は、チェックプログラムが正常に終了したか否かで、設定ファイルに記述されたアプリケーション層5およびプラットフォーム6のプログラム(以下、本体プログラムという)を起動するか否かを判定する。
本体プログラムを起動すると判定した場合、プログラム起動部52は、その本体プログラムを設定ファイルに従ってROMなどから読み出し、読み出した本体プログラムをシステムメモリ62,ローカルメモリ67上に確保したメモリ領域に展開して、アプリケーション層5およびプラットフォーム6のプロセスを起動する。以下、プログラム起動部52が行うステップS5の処理について、詳細に説明していく。
図5は、プログラム起動部の処理の一例のフローチャートである。まず、ステップS10では、プログラム起動部52が設定ファイルを解析する。ステップS10に続いてステップS11に進み、プログラム起動部52は設定ファイルに従ってファイルシステムをマウントする。
ステップS11に続いてステップS12に進み、プログラム起動部52は設定ファイルに記述されたexecコマンドを1つ読み出し、そのexecコマンドに「−c」オプションがあるか否かを判定する。例えば図6のような設定ファイルの場合、プログラム起動部52は1行目のexecコマンドに「−c」オプションがあると判定する。execコマンドに「−c」オプションがあると判定すると(S12においてYES)、プログラム起動部52はステップS13に進み、execコマンドで指定されたチェックプログラムを起動する。例えば図6のような設定ファイルの場合、プログラム起動部52は1行目のexecコマンドで指定されたチェックプログラム「fcucheck」を起動する。
起動されたチェックプログラムは、後述するように、ハードウェア資源に関するチェック(例えばハードウェア資源の有無,性能などのチェック)を行い、チェックの結果をプログラム起動部52に通知する。
ステップS13に続いてステップS14に進み、プログラム起動部52はチェックプログラムから通知されたチェックの結果に基づいて、チェックプログラムが正常終了したか異常終了したかを判定する。チェックプログラムが正常終了したと判定すると(S14においてYES)、プログラム起動部14はステップS15に進む。ステップS15では、プログラム起動部52が、execコマンドで指定された本体プログラムを起動する。例えば図6のような設定ファイルの場合、プログラム起動部52は1行目のexecコマンドで指定された本体プログラム「/fax/bin/fax」を起動する。この後、プログラム起動部14はチェックプログラムを終了させる。
ステップS15に続いてステップS16に進み、プログラム起動部52は起動すべき本体プログラム,言い換えれば読み込んでいないexecコマンドが設定ファイルにまだ存在するか否かを判定する。まだ読み込んでいないexecコマンドが設定ファイルに存在すると判定すると(S16においてYES)、プログラム起動部52はステップS12に戻り、まだ読み込んでいないexecコマンドを設定ファイルから読み込んでステップS12以降の処理を行う。
一方、まだ読み込んでいないexecコマンドが設定ファイルに存在しないと判定すると(S16においてNO)、プログラム起動部52は処理を終了する。なお、ステップS12において、execコマンドに「−c」オプションがないと判定すると(S12においてNO)、プログラム起動部52はステップS15に進み、execコマンドで指定された本体プログラムを起動する。execコマンドに「−c」オプションがなければ、プログラム起動部52は必ずexecコマンドで指定された本体プログラムを起動する。
また、ステップS14において、チェックプログラムが正常終了していないと判定すると(S14においてNO)、プログラム起動部52はステップS16に進む。チェックプログラムが異常終了した場合、プログラム起動部52はexecコマンドで指定された本体プログラムを起動しない。
図5のフローチャートの処理により、プログラム起動部52はチェックプログラムが正常終了したときにexecコマンドで指定されたプログラムを起動する一方、チェックプログラムが異常終了したときにexecコマンドで指定されたプログラムを起動しないため、融合機1の動作を抑制できる。
なお、図5のフローチャートでは、コマンドの一例としてexecコマンドを例に説明したが、mountコマンドであってもよい。この場合、プログラム起動部52はチェック処理が正常終了したときにmountコマンドで指定されたマウントを行う一方、チェック処理が異常終了したときにmountコマンドで指定されたマウントを行わないことにより融合機1のマウント動作を抑制できる。
次に、図6の設定ファイルを用いて複数のチェックプログラムの処理について説明していく。図6の設定ファイルでは、1行目のexecコマンドに「−c」オプションがあるので、チェックプログラム「fcucheck」が起動される。プログラム起動部52により起動されたチェックプログラム「fcucheck」は、例えば図7のような処理を行う。
図7は、チェックプログラム「fcucheck」の処理の一例のフローチャートである。ステップS20では、チェックプログラムがFCU81のデバイスドライバをオープンする為の処理を行う。ステップS20に続いてステップS21に進み、チェックプログラムはステップS20でのデバイスドライバのオープンが成功したか否かを判定する。
デバイスドライバのオープンが成功したと判定すると(S21においてYES)、チェックプログラムはステップS23に進み、FCU81が融合機1に接続されているとみなして、正常終了を表す値「0」をプログラム起動部52に通知する。一方、デバイスドライバのオープンが失敗したと判定すると(S21においてNO)、チェックプログラムはステップS22に進み、FCU81が既にオープンされていてビジー状態であるか否かを判定する。なお、FCU81がビジー状態であるか否かは、例えば「errno」に「EBUSY」が入っているか否かで確認できる。
FCU81が既にオープンされてビジー状態であると判定すると(S22においてYES)、チェックプログラムはステップS24に進み、FCU81が融合機1に接続されているとみなして、正常終了を表す値「0」をプログラム起動部52に通知する。一方、FCU81が既にオープンされてビジー状態であると判定しなかった場合(S22においてNO)、チェックプログラムはステップS25に進み、FCU81が融合機1に接続されていないとみなして、異常終了を表す値「1」をプログラム起動部52に通知する。
図7のフローチャートの処理により、チェックプログラムはFCU81が融合機1に接続されている場合に正常終了をプログラム起動部52に通知し、FCU81が融合機1に接続されていない場合に異常終了をプログラム起動部52に通知できる。なお、プログラム起動部52はチェックプログラムから正常終了を通知されたときにアプリ「fax」を起動し、チェックプログラムから異常終了を通知されたときにアプリ「fax」を起動しない。
したがって、プログラム起動部52はチェックプログラムから通知される正常終了または異常終了を利用することで、FCU81が融合機1に接続されている場合にアプリ「fax」を起動し、接続されていない場合にアプリ「fax」を起動しないようにすることができる。即ち、プログラム起動部52はアプリ「fax」の起動をFCU81の接続状態によって抑制できる。なお、図7のフローチャートでは、デバイスの一例としてのFCU81を用いて説明したが、如何なるデバイスであってもよい。つまり、図7のフローチャートによれば、オプションボード等のデバイスの接続状態によってアプリの起動を抑制することができる。
図6の設定ファイルでは、1行目のexecコマンドの処理が終了すると、2行目のexecコマンドの処理が行われる。図6の設定ファイルでは、2行目のexecコマンドに「−c」オプションがあるので、チェックプログラム「cpucheck1」が起動される。例えばプログラム起動部52により起動されたチェックプログラム「cpucheck1」は、図8のような処理を行う。
図8は、チェックプログラム「cpucheck1」の処理の一例のフローチャートである。ステップS30では、チェックプログラムがシステムコール「getINFO(CPU)」を呼び、デバイス情報に含まれているCPU61のクロック周波数をOSから取得する。
ステップS30に続いてステップS31に進み、チェックプログラムはステップS30で取得したCPU61のクロック周波数が500MHz以下であるか否かを判定する。CPU61のクロック周波数が500MHz以下であると判定すると(S31においてYES)、チェックプログラムはステップS32に進み、正常終了を表す値「0」をプログラム起動部52に通知する。一方、CPU61のクロック周波数が500MHz以下でないと判定すると(S31においてNO)、チェックプログラムはステップS33に進み、異常終了を表す値「1」をプログラム起動部52に通知する。
図8のフローチャートの処理により、チェックプログラムはCPU61のクロック周波数が500MHz以下である場合に正常終了をプログラム起動部52に通知し、CPU61のクロック周波数が500MHz以下でない場合に異常終了をプログラム起動部52に通知できる。なお、プログラム起動部52は、チェックプログラムから正常終了を通知されたときにアプリ「setfont_bitmap」を起動し、チェックプログラムから異常終了を通知されたときにアプリ「setfont_bitmap」を起動しない。
したがって、プログラム起動部52はチェックプログラムから通知される正常終了または異常終了を利用することで、プリンタが使用するデフォルトフォントをビットマップ形式に設定する。即ち、プログラム起動部52はCPU61のクロック周波数が500MHz以下であっても、一定時間内にプリントできるようなデフォルトフォントに変えることで、プリントの高速性を優先できる。
図6の設定ファイルでは、2行目のexecコマンドの処理が終了すると、3行目のexecコマンドの処理が行われる。図6の設定ファイルでは、3行目のexecコマンドに「−c」オプションがあるので、チェックプログラム「cpucheck2」が起動される。例えばプログラム起動部52により起動されたチェックプログラム「cpucheck2」は、図9のような処理を行う。
図9は、チェックプログラム「cpucheck2」の処理の一例のフローチャートである。ステップS40では、チェックプログラムがシステムコール「getINFO(CPU)」を呼び、デバイス情報に含まれているCPU61のクロック周波数をOSから取得する。
ステップS40に続いてステップS41に進み、チェックプログラムはステップS40で取得したCPU61のクロック周波数が501MHz以上であるか否かを判定する。CPU61のクロック周波数が501MHz以上であると判定すると(S41においてYES)、チェックプログラムはステップS42に進み、正常終了を表す値「0」をプログラム起動部52に通知する。一方、CPU61のクロック周波数が501MHz以上でないと判定すると(S41においてNO)、チェックプログラムはステップS43に進み、異常終了を表す値「1」をプログラム起動部52に通知する。
図9のフローチャートの処理により、チェックプログラムはCPU61のクロック周波数が501MHz以上である場合に正常終了をプログラム起動部52に通知し、CPU61のクロック周波数が501MHz以上でない場合に異常終了をプログラム起動部52に通知できる。なお、プログラム起動部52は、チェックプログラムから正常終了を通知されたときにアプリ「setfont_vector」を起動し、チェックプログラムから異常終了を通知されたときにアプリ「setfont_vector」を起動しない。
したがって、プログラム起動部52はチェックプログラムから通知される正常終了または異常終了を利用することで、プリンタが使用するデフォルトフォントをベクトル画像に設定する。即ち、プログラム起動部52はCPU61のクロック周波数が501MHz以上であるときに、精細なデフォルトフォントに変えることで、プリントの高画質化が可能である。
図8および図9のフローチャートの処理により、本発明の融合機1は一定の時間内にプリントできるように、CPU61の性能に応じて用いるデフォルトフォントを変えることで、プリントの高速性を優先することができる。
図6の設定ファイルでは、3行目のexecコマンドの処理が終了すると、4行目のexecコマンドの処理が行われる。図6の設定ファイルでは、4行目のexecコマンドに「−c」オプションがあるので、チェックプログラム「memcheck1」が起動される。例えばプログラム起動部52により起動されたチェックプログラム「memcheck1」は、図10のような処理を行う。
図10は、チェックプログラム「memcheck1」の処理の一例のフローチャートである。ステップS50では、チェックプログラムが、システムコール「getINFO(mem)」を呼び、デバイス情報に含まれるシステムメモリ62及びローカルメモリ67のメモリサイズをOSから取得する。ステップS50に続いてステップS51に進み、チェックプログラムはステップS50で取得したメモリサイズが64MB以上128MB以下であるか否かを判定する。
メモリサイズが64MB以上128MB以下であると判定すると(S51においてYES)、チェックプログラムはステップS52に進み、正常終了を表す値「0」をプログラム起動部52に通知する。一方、メモリサイズが64MB以上128MB以下でないと判定すると(S51においてNO)、チェックプログラムはステップS53に進み、異常終了を表す値「1」をプログラム起動部52に通知する。
図10のフローチャートの処理により、チェックプログラムはメモリサイズが64MB以上128MB以下である場合に正常終了をプログラム起動部52に通知し、メモリサイズが64MB以上128MB以下でない場合に異常終了をプログラム起動部52に通知できる。なお、プログラム起動部52はチェックプログラムから正常終了を通知されたときにhttpのデーモン(以下、httpdという)を5個起動し、チェックプログラムから異常終了を通知されたときにhttpdを起動しない。
したがって、プログラム起動部52はチェックプログラムから通知される正常終了または異常終了を利用することで、システムメモリ62及びローカルメモリ67のメモリサイズが小さい場合であっても、起動するhttpdの数を少なくして、一つの要求に対する処理時間の増大を防ぐことができる。
図6の設定ファイルでは、4行目のexecコマンドの処理が終了すると、5行目のexecコマンドの処理が行われる。図6の設定ファイルでは、5行目のexecコマンドに「−c」オプションがあるので、チェックプログラム「memcheck2」が起動される。例えばプログラム起動部52により起動されたチェックプログラム「memcheck2」は、図11のような処理を行う。
図11は、チェックプログラム「memcheck2」の処理の一例のフローチャートである。ステップS60では、チェックプログラムが、システムコール「getINFO(mem)」を呼び、デバイス情報に含まれるシステムメモリ62及びローカルメモリ67のメモリサイズをOSから取得する。ステップS60に続いてステップS61に進み、チェックプログラムはステップS60で取得したメモリサイズが128MB以上であるか否かを判定する。
メモリサイズが128MB以上であると判定すると(S61においてYES)、チェックプログラムはステップS62に進み、正常終了を表す値「0」をプログラム起動部52に通知する。一方、メモリサイズが128MB以上でないと判定すると(S61においてNO)、チェックプログラムはステップS63に進み、異常終了を表す値「1」をプログラム起動部52に通知する。
図11のフローチャートの処理により、チェックプログラムはメモリサイズが128MB以上である場合に正常終了をプログラム起動部52に通知し、メモリサイズが128MB以上でない場合に異常終了をプログラム起動部52に通知できる。なお、プログラム起動部52はチェックプログラムから正常終了を通知されたときにhttpdを10個起動し、チェックプログラムから異常終了を通知されたときにhttpdを起動しない。
したがって、プログラム起動部52はチェックプログラムから通知される正常終了または異常終了を利用することで、システムメモリ62及びローカルメモリ67のメモリサイズが大きい場合に、起動するhttpdの数を多くして、クライアントからの要求にすぐ対応することができる。
図10および図11のフローチャートの処理により、本発明の融合機1はシステムメモリ62及びローカルメモリ67のメモリサイズに応じて、起動するhttpdの数を適切に変えることができる。
次に、図12の設定ファイルを用いてチェックプログラムの処理について説明する。図12の設定ファイルでは、mountコマンドに「−c」オプションがあるので、チェックプログラム「hddnonexist」が起動される。プログラム起動部52により起動されたチェックプログラム「hddnonexist」は、例えば図13のような処理を行う。
図13は、チェックプログラム「hddnonexist」の処理の一例のフローチャートである。ステップS70では、チェックプログラムがシステムコール「getINFO(hdd)」を呼び、デバイス情報に含まれているHDD接続有無情報をOSから取得する。
ステップS70に続いてステップS71に進み、チェックプログラムはステップS70で取得したHDD接続有無情報に応じてHDDが融合機1に接続されているか否かを判定する。HDDが融合機1に接続されていないと判定すると(S71においてNO)、チェックプログラムはステップS72に進み、正常終了を表す値「0」をプログラム起動部52に通知する。一方、HDDが融合機1に接続されていると判定すると(S71においてYES)、チェックプログラムはステップS73に進み、異常終了を表す値「1」をプログラム起動部52に通知する。
図13のフローチャートの処理により、チェックプログラムはHDDが融合機1に接続されていない場合に正常終了をプログラム起動部52に通知し、HDDが融合機1に接続されている場合に異常終了をプログラム起動部52に通知できる。なお、プログラム起動部52は、チェックプログラムから正常終了を通知されたときにramdiskをマウントする。具体的には、「/dev/md0c」がマウントポイント「/ramdisk」へマウントされる。また、プログラム起動部52はチェックプログラムから異常終了を通知されたときにramdiskをマウントしない。
したがって、プログラム起動部52はチェックプログラムから通知される正常終了または異常終了を利用することで、HDDが融合機1に接続されていない場合にramdiskをマウントする。即ち、プログラム起動部52はHDDが融合機1に接続されていない場合であっても、PDLストレージ用のローカルストレージ用デバイスとしてramdiskを用いることができる。なお、プログラム起動部52はHDDが融合機1に接続されている場合、PDLストレージ用のローカルストレージ用デバイスとしてHDDを用いることができる。
次に、図14の設定ファイルを用いてチェックプログラムの処理について説明する。図14の設定ファイルは、図15のようにSDカード内に格納されている。図15に表されたSDカードの場合、「xxx.cnf」が設定ファイル、「module/xxx.mod」がマウント及び実行対象のモジュールファイルを表している。
図14の設定ファイルでは、mountコマンドに「−c」オプションがあるので、チェックプログラム「sdcommand」が起動される。プログラム起動部52により起動されたチェックプログラム「sdcommand」は、例えば図16のような処理を行う。
図16は、チェックプログラム「sdcommand」の処理の一例のフローチャートである。ステップS80では、チェックプログラムがSDカード内の図14のような設定ファイルを解析する。ステップS80に続いてステップS81に進み、チェックプログラムはステップS80の解析結果から設定ファイルにSDコマンドが存在するか否かを判定する。SDコマンドが存在すると判定すると(S81においてYES)、チェックプログラムはステップS82に進む。一方、SDコマンドが存在しないと判定すると(S81においてNO)、チェックプログラムはステップS83に進む。
ステップS82では、チェックプログラムが、SDコマンドで指定されているスロットとSDカードが挿入されているスロットとが一致しているか否かを判定する。例えば図14のような設定ファイルの場合、SDコマンドで指定されているスロットが「2」であるため、SDカードが挿入されているスロットが「2」であるときに、チェックプログラムはSDコマンドで指定されているスロットとSDカードが挿入されているスロットとが一致していると判定する。
SDコマンドで指定されているスロットとSDカードが挿入されているスロットとが一致していると判定すると(S82においてYES)、チェックプログラムはステップS83に進み、正常終了を表す値「0」をプログラム起動部52に通知する。一方、SDコマンドで指定されているスロットとSDカードが挿入されているスロットとが一致していないと判定すると(S82においてNO)、チェックプログラムはステップS84に進み、異常終了を表す値「1」をプログラム起動部52に通知する。
図16のフローチャートの処理により、チェックプログラムはSDコマンドで指定されているスロットとSDカードが挿入されているスロットとが一致している場合に正常終了をプログラム起動部52に通知し、SDコマンドで指定されているスロットとSDカードが挿入されているスロットとが一致していない場合に異常終了をプログラム起動部52に通知できる。
なお、プログラム起動部52はチェックプログラムから正常終了を通知されたときにgzip圧縮されたROMFS形式のモジュールファイル「xxx.mod」をマウントポイント「/mnt」へマウントし、そのモジュールファイルを実行する。また、プログラム起動部52はチェックプログラムから異常終了を通知されたときにモジュールファイルをマウント及び実行しない。
したがって、プログラム起動部52はチェックプログラムから通知される正常終了または異常終了を利用することで、SDコマンドで指定されているスロットと異なるスロットに挿入されているSDカード内のモジュールファイルのマウント及び実行を抑制することができる。
図6の設定ファイルの場合、本体プログラムと,チェックプログラムと,プログラム起動部52と,OSと,ハードウェア資源との関係は、例えば図17のようになる。図17は、本体プログラムと,チェックプログラムと,プログラム起動部52と,OSと,ハードウェアとの関係を表した一例の関係図である。
プログラム起動部52はチェックプログラムを順番に起動し、チェックプログラムが正常終了したとき、そのチェックプログラムに対応する本体プログラムを起動する。図17では、各チェックプログラムの上に位置している本体プログラムがチェックプログラムに対応する本体プログラムである。
図17は、チェックプログラムと本体プログラムとを1対1に対応させた例を表しているが、図18のようにチェックプログラムと本体プログラムとを1対nに対応させるようにしてもよい。
図18は、チェックプログラムと本体プログラムとが1対nに対応する例について説明するための図である。図18の例では、チェックプログラムaと本体プログラムa,bとが対応している。プログラム起動部52はチェックプログラムaを起動し、チェックプログラムaが正常終了したとき、チェックプログラムaに対応する本体プログラムa,bを起動する。図18のようにチェックプログラムaと本体プログラムa,bとが対応している場合、設定ファイルは図19のように構成される。図19は、設定ファイルの他の一例の構成図である。なお、プログラム起動部52の処理は図5と同様であるので説明を省略する。
また、同じチェックプログラムによるチェックの結果に基づき、ディレクトリ下の複数の本体プログラムを起動するような場合、チェックの結果に基づいてディレクトリのマウントを抑制すると効率的である。
図20は、マウントを抑制する設定ファイルの一例の構成図である。図20のような設定ファイルの場合、プログラム起動部52は1行目のmountコマンドで指定されたチェックプログラム「memcheck3」を起動する。例えば図20のチェックプログラム「memcheck3」は、システムメモリ62及びローカルメモリ67のメモリサイズが64MB以上のときに正常終了するものとする。
プログラム起動部52は、チェックプログラムが正常終了するとmountコマンドで指定された「web.romfs」をディレクトリ「/web」へマウントする一方、チェックプログラムが異常終了するとマウントしない。例えば図20の設定ファイルの記述の下に図6のような記述があれば、ディレクトリ「/web」以下のプログラム「/web/bin/httpd」なども起動されなくなる。したがって、プログラム起動部52はシステムメモリ62及びローカルメモリ67のメモリサイズに応じて無駄にメモリを消費することを避けることができる。
なお、図20の設定ファイルによるマウント処理は、図5のステップS11で行われる処理である。また、図20の設定ファイルでは、メモリサイズに応じてディレクトリのマウントを抑制する例について表しているが、ハードウェア資源の有無やCPU性能などに応じてディレクトリのマウントを抑制するようにしてもよい。
図18は、チェックプログラムと本体プログラムとを1対nに対応させた例を表しているが、図21のようにチェックプログラムと本体プログラムとをn対1に対応させるようにしてもよい。
図21は、チェックプログラムと本体プログラムとがn対1に対応する例について説明するための図である。図21の例では、チェックプログラムa,bと本体プログラムaとが対応している。プログラム起動部52はチェックプログラムa,bを起動し、チェックプログラムa,bが正常終了したとき、チェックプログラムa,bに対応している本体プログラムaを起動する。図21のようにチェックプログラムa,bと本体プログラムaとが対応している場合、設定ファイルは図22のように構成される。図22は、設定ファイルの他の一例の構成図である。
図22の設定ファイルでは、1つのexecコマンドに「−c」オプションのある2つのチェックプログラム「チェックプログラムa」,「チェックプログラムb」が設定されている。したがって、プログラム起動部52は図5のステップS13でチェックプログラムa,bを起動する。そして、プログラム起動部52はステップS14でチェックプログラムa,bが両方とも正常終了したか否かを判定し、両方とも正常終了したと判定したときにexecコマンドで指定された本体プログラムaを起動する。なお、プログラム起動部52のステップS13及びS14以外の処理は図5と同様であるので説明を省略する。
融合機1では、設定ファイルに応じて、同一のチェックプログラムが起動されることもある。したがって、以前に起動したチェックプログラムを再び起動する場合は、そのチェックプログラムのチェックの結果を利用する方が処理時間の短縮の観点から望ましい。そこで、本発明の融合機1は図23及び図24のような処理を行うことにより、以前に起動されたチェックプログラムのチェックの結果を利用できるようにする。
図23及び図24は、プログラム起動部およびチェックプログラムが行う処理の一例のフローチャートである。なお、ステップS90〜S93までの処理は図5のステップS10〜S13の処理と同様であり、説明を省略する。
ステップS94では、ステップS93で起動されたチェックプログラムが、所定のメモリ領域にチェックの結果が格納されているか否かで既にチェック済みであるか否かを判定する。例えばチェックの結果を格納する所定のメモリ領域には、OSを介することなくチェックプログラムのプロセスが直接アクセス可能なメモリ上の領域を利用できる。チェック済みであると判定すると(S94においてYES)、チェックプログラムはステップS95に進み、所定のメモリ領域からチェックの結果を読み出してプログラム起動部52に通知したあとステップS98に進む。一方、チェック済みでないと判定すると(S94においてNO)、チェックプログラムはステップS96に進み、前述したようなハードウェア資源に関するチェックを行う。
ステップS96に続いてステップS97に進み、チェックプログラムはチェックの結果を所定のメモリ領域に書き込むと共に、チェックの結果をプログラム起動部52に通知したあとステップS98に進む。なお、ステップS98〜S100の処理は、図5のステップS14〜S16の処理と同様であり、説明を省略する。図23および図24のフローチャートにより、以前に起動されたチェックプログラムのチェックの結果を利用できる。
さらに、融合機1は起動時に全てのチェックプログラムを起動し、全てのチェックプログラムによるチェックの結果を所定のメモリ領域に予め書き込んでおいてもよい。この場合、融合機1は起動直後にチェックプログラムによるチェックを行ったあと、所定のメモリ領域に書き込まれたチェックの結果を利用することができるので、処理時間の短縮が可能となる。
本発明は、具体的に開示された実施例に限定されるものではなく、特許請求のの範囲から逸脱することなく、種々の変形や変更が可能である。
本発明による融合機のソフトウェア構成について説明するための一実施例の構成図である。 本発明による融合機のハードウェア構成について説明するための一実施例の構成図である。 融合機起動部の一例の構成図である。 融合機起動部の処理の一例のフローチャートである。 プログラム起動部の処理の一例のフローチャートである。 設定ファイルの一例の構成図である。 チェックプログラム「fcucheck」の処理の一例のフローチャートである。 チェックプログラム「cpucheck1」の処理の一例のフローチャートである。 チェックプログラム「cpucheck2」の処理の一例のフローチャートである。 チェックプログラム「memcheck1」の処理の一例のフローチャートである。 チェックプログラム「memcheck2」の処理の一例のフローチャートである。 設定ファイルの他の一例の構成図である。 チェックプログラム「hddnonexist」の処理の一例のフローチャートである。 設定ファイルの他の一例の構成図である。 SDカード内に格納されているファイルの一例のイメージ図である。 チェックプログラム「sdcommand」の処理の一例のフローチャートである。 本体プログラムと,チェックプログラムと,プログラム起動部52と,OSと,ハードウェアとの関係を表した一例の関係図である。 チェックプログラムと本体プログラムとが1対nに対応する例について説明するための図である。 設定ファイルの他の一例の構成図である。 マウントを抑制する設定ファイルの一例の構成図である。 チェックプログラムと本体プログラムとがn対1に対応する例について説明するための図である。 設定ファイルの他の一例の構成図である。 プログラム起動部およびチェックプログラムが行う処理の一例のフローチャートである(1/2)。 プログラム起動部およびチェックプログラムが行う処理の一例のフローチャートである(2/2)。
符号の説明
1 融合機
2 ソフトウェア群
3 融合機起動部
4 ハードウェア資源
5 アプリケーション層
6 プラットフォーム
9 コントロールサービス層
10 ハンドラ層
11 プロッタ
12 スキャナ
13 ハードウェアリソース
21 プリンタアプリ
22 コピーアプリ
23 ファックスアプリ
24 スキャナアプリ
25 ネットファイルアプリ
31 ネットワークコントロールサービス(NCS)
32 デリバリーコントロールサービス(DCS)
33 オペレーションパネルコントロールサービス(OCS)
34 ファックスコントロールサービス(FCS)
35 エンジンコントロールサービス(ECS)
36 メモリコントロールサービス(MCS)
37 ユーザインフォメーションコントロールサービス(UCS)
38 システムコントロールサービス(SCS)
39 システムリソースマネージャ(SRM)
40 ファックスコントロールユニットハンドラ(FCUH)
41 イメージメモリハンドラ(IMH)
51 ROMモニタ
52 プログラム起動部
53 アプリケーションプログラムインターフェース(API)
54 エンジンI/F
60 コントローラ
61 CPU
62 システムメモリ
63 ノースブリッジ(NB)
64 サウスブリッジ(SB)
65 AGP(Accelerated Graphics Port)
66 ASIC
67 ローカルメモリ
68 ハードディスク装置(HDD)
69 ネットワークインターフェースコントローラ(NIC)
70 SDカード用スロット
71 USB I/F
72 IEEE1394 I/F
73 セントロニクス I/F
80 操作パネル
81 ファックスコントロールユニット(FCU)
82 エンジン部
83 PCIバス

Claims (24)

  1. 画像形成処理で使用されるハードウェア資源と、画像形成に係る処理を行うプログラムとを有する画像形成装置であって、
    前記ハードウェア資源に関するチェックを行うチェック手段と、
    前記チェック手段と前記プログラムとの関連を設定する設定手段と、
    前記チェック手段によるチェックの結果に応じて前記チェック手段に関連する前記プログラムを起動する起動手段と
    を有することを特徴とする画像形成装置。
  2. 前記設定手段は、前記チェック手段と前記プログラムとを1対1に関連付けて設定していることを特徴とする請求項1記載の画像形成装置。
  3. 前記設定手段は、前記チェック手段と前記プログラムとを1対nに関連付けて設定していることを特徴とする請求項1記載の画像形成装置。
  4. 前記設定手段は、前記チェック手段と前記プログラムとをn対1に関連付けて設定していることを特徴とする請求項1記載の画像形成装置。
  5. 前記チェック手段によるチェックの結果を格納しておく格納手段を更に有し、
    前記チェック手段は、前記ハードウェア資源に関するチェックを行う前に前記格納手段に格納されているチェックの結果を確認し、これから行うチェックの結果が格納済みであれば前記チェックの結果を利用することを特徴とする請求項1記載の画像形成装置。
  6. 前記起動手段は、前記設定手段に設定されている内容に応じて前記チェック手段を起動することを特徴とする請求項2乃至5何れか一記載の画像形成装置。
  7. 前記起動手段は、前記プログラムを起動した後に、前記チェック手段を終了させることを特徴とする請求項6記載の画像形成装置。
  8. 前記チェック手段は、前記ハードウェア資源の有無をチェックし、前記ハードウェア資源が有ると判定したときに正常値をチェックの結果として出力し、前記ハードウェア資源が無いと判定したときに異常値をチェックの結果として出力することを特徴とする請求項2乃至7何れか一項記載の画像形成装置。
  9. 前記チェック手段は、前記ハードウェア資源に対応したデバイスドライバをオープンする為の処理を行い、オープンが成功したとき又は既にオープンされていたときに前記ハードウェア資源が有ると判定し、それ以外のときに前記ハードウェア資源がないと判定することを特徴とする請求項8記載の画像形成装置。
  10. 前記起動手段は、プリンタ,コピー,ファックス又はスキャナの一部又は全部として動作するハードウェア資源の有無のチェックの結果として正常値を前記チェック手段から供給されたときに、前記設定手段に設定されている内容に応じてプリンタ,コピー,ファックス又はスキャナの処理を行う前記プログラムを起動することを特徴とする請求項8又は9記載の画像形成装置。
  11. 前記チェック手段は、前記ハードウェア資源の有無をチェックし、前記ハードウェア資源が無いと判定したときに正常値をチェックの結果として出力し、前記ハードウェア資源が有ると判定したときに異常値をチェックの結果として出力することを特徴とする請求項2乃至7何れか一項記載の画像形成装置。
  12. 前記起動手段は、ハードディスク装置の有無のチェックの結果として正常値を前記チェック手段から供給されたときに、前記設定手段に設定されている内容に応じてRAMディスクをマウントすることを特徴とする請求項11記載の画像処理装置。
  13. 前記チェック手段は、前記ハードウェア資源の所定の性能をチェックし、前記ハードウェア資源が所定の性能を満たしていると判定したときに正常値をチェックの結果として出力し、前記ハードウェア資源が所定の性能を満たしていないと判定したときに異常値をチェックの結果として出力することを特徴とする請求項2乃至7何れか一項記載の画像形成装置。
  14. 前記起動手段は、中央演算処理装置(CPU)の性能のチェックの結果として正常値を前記チェック手段から供給されたときに、前記設定手段に前記チェック手段と関連付けて設定されている前記プログラムを起動し、前記チェックの結果として異常値を前記チェック手段から供給されたときに、前記設定手段に前記チェック手段と関連付けて設定されている前記プログラムを起動しないことを特徴とする請求項13記載の画像形成装置。
  15. 前記起動手段は、メモリの性能のチェックの結果として正常値を前記チェック手段から供給されたときに、前記設定手段に前記チェック手段と関連付けて設定されている前記プログラムを起動し、前記チェックの結果として異常値を前記チェック手段から供給されたときに、前記設定手段に前記チェック手段と関連付けて設定されている前記プログラムを起動しないことを特徴とする請求項13記載の画像形成装置。
  16. 前記設定手段は、前記チェック手段と前記プログラムの存在するディレクトリ又は上位のディレクトリとを関連付けて設定しており、
    前記起動手段は、前記チェックの結果が正常値であるときに前記チェック手段に関連付けて設定されている前記プログラムのディレクトリをマウントし、前記チェックの結果が異常値であるときに前記チェック手段に関連付けて設定されている前記プログラムのディレクトリをマウントしないことを特徴とする請求項14又は15記載の画像形成装置。
  17. 前記チェック手段は、前記ハードウェア資源に格納されている所定の識別子をチェックし、前記所定の識別子が所定の条件を満たしていると判定したときに正常値をチェックの結果として出力し、前記所定の識別子が所定の条件を満たしていないと判定したときに異常値をチェックの結果として出力することを特徴とする請求項2乃至7何れか一項記載の画像形成装置。
  18. 前記チェック手段は、SDカードに格納されている識別子をチェックし、その識別子が前記SDカードが挿入されているスロットの識別子と一致していると判定したときに正常値をチェックの結果として出力し、前記識別子が前記SDカードが挿入されているスロットの識別子と一致していないと判定したときに異常値をチェックの結果として出力することを特徴とする請求項17記載の画像形成装置。
  19. 前記起動手段は、前記チェックの結果として正常値を前記チェック手段から供給されたときに、前記設定手段に前記チェック手段と関連付けて設定されている前記プログラムを実行し、前記チェックの結果として異常値を前記チェック手段から供給されたときに、前記設定手段に前記チェック手段と関連付けて設定されている前記プログラムを実行しないことを特徴とする請求項17又は18記載の画像形成装置。
  20. 前記格納手段は、前記チェック手段が直接アクセス可能なメモリ上の領域に作成されることを特徴とする請求項5記載の画像形成装置。
  21. 前記起動手段は、電源投入後に起動されたオペレーティングシステムにより起動されることを特徴とする請求項1記載の画像形成装置。
  22. 前記プログラムは、画像形成処理を行うアプリケーションのプログラムと、画像形成処理で利用されるハードウェア資源の管理を行うコントロールサービスのプログラムと、オペレーティングシステムのプログラムとを有することを特徴とする請求項1記載の画像形成装置。
  23. 画像形成処理で使用されるハードウェア資源と、画像形成に係る処理を行うプログラムとを有する画像形成装置のプログラム起動方法であって、
    起動手段が、前記プログラムと前記ハードウェア資源に関するチェックを行うチェック手段との関連を設定した設定手段を解析する解析段階と、
    前記起動手段が、前記解析の結果に応じて前記チェック手段を起動するチェック手段起動段階と、
    前記起動手段が、前記チェック手段によるチェックの結果に応じて前記チェック手段に関連する前記プログラムを起動するプログラム起動段階と
    を有することを特徴とするプログラム起動方法。
  24. 画像形成処理で使用されるハードウェア資源と、画像形成に係る処理を行うプログラムとを有するコンピュータを、
    前記ハードウェア資源に関するチェックを行うチェック手段と、
    前記チェック手段と前記プログラムとの関連を設定する設定手段と、
    前記チェック手段によるチェックの結果に応じて前記チェック手段に関連する前記プログラムを起動する起動手段と
    して機能させるためのプログラム起動プログラム。
JP2003393414A 2002-11-26 2003-11-25 画像形成装置,プログラム起動方法及びプログラム起動プログラム Pending JP2004192628A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2003393414A JP2004192628A (ja) 2002-11-26 2003-11-25 画像形成装置,プログラム起動方法及びプログラム起動プログラム
US10/723,603 US20050117773A1 (en) 2002-11-26 2003-11-26 Image forming apparatus that checks hardware resources before activating hardware-related programs
EP03257448A EP1437652A3 (en) 2002-11-26 2003-11-26 Image forming apparatus that checks hardware resources before activating hardware-related programs
EP08002422A EP1918813A1 (en) 2002-11-26 2003-11-26 Image forming apparatus that checks hardware resources before activating hardware-related programs

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2002342826 2002-11-26
JP2003393414A JP2004192628A (ja) 2002-11-26 2003-11-25 画像形成装置,プログラム起動方法及びプログラム起動プログラム

Publications (1)

Publication Number Publication Date
JP2004192628A true JP2004192628A (ja) 2004-07-08

Family

ID=32774795

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003393414A Pending JP2004192628A (ja) 2002-11-26 2003-11-25 画像形成装置,プログラム起動方法及びプログラム起動プログラム

Country Status (1)

Country Link
JP (1) JP2004192628A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011054146A (ja) * 2009-08-03 2011-03-17 Ricoh Co Ltd 画像形成装置と画像形成装置の障害復旧方法とプログラム
WO2016080429A1 (ja) * 2014-11-19 2016-05-26 日本電気株式会社 情報処理システム、情報処理方法、情報処理装置およびその制御方法と制御プログラム
JPWO2015181854A1 (ja) * 2014-05-29 2017-04-20 株式会社Agoop プログラム及び情報処理装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011054146A (ja) * 2009-08-03 2011-03-17 Ricoh Co Ltd 画像形成装置と画像形成装置の障害復旧方法とプログラム
JPWO2015181854A1 (ja) * 2014-05-29 2017-04-20 株式会社Agoop プログラム及び情報処理装置
WO2016080429A1 (ja) * 2014-11-19 2016-05-26 日本電気株式会社 情報処理システム、情報処理方法、情報処理装置およびその制御方法と制御プログラム
JPWO2016080429A1 (ja) * 2014-11-19 2017-08-17 日本電気株式会社 情報処理システム、情報処理方法、情報処理装置およびその制御方法と制御プログラム

Similar Documents

Publication Publication Date Title
US8213040B2 (en) Image forming apparatus, program adding method, and a recording medium
US8121954B2 (en) Information processor, method for controlling the same, and image forming system
US20050117773A1 (en) Image forming apparatus that checks hardware resources before activating hardware-related programs
JP2004122773A (ja) 画像形成装置およびアプリ起動制限方法
US7355739B2 (en) Image forming device having a memory assignment unit
JP4001531B2 (ja) 画像形成装置
JP3898476B2 (ja) 画像情報処理装置およびソフトウェア再構築方法
JP4394387B2 (ja) 画像処理装置およびメモリディスク管理方法
US20060230419A1 (en) Image forming and reproducing apparatus with mode controllable communication interface
JP2004192628A (ja) 画像形成装置,プログラム起動方法及びプログラム起動プログラム
JP4246540B2 (ja) 画像形成装置およびプログラム実行方法
JP4136397B2 (ja) 画像形成装置及びメモリ管理方法
JP4246560B2 (ja) 情報処理装置、情報処理方法、プログラム、及び記録媒体
JP4324451B2 (ja) 画像形成装置,プログラム起動方法及びプログラム起動プログラム
JP4276885B2 (ja) 画像形成装置およびパス指定方法
JP4237511B2 (ja) 画像形成装置、プログラム更新方法
JP2004066809A (ja) 画像形成装置およびプログラム起動方法
JP4128467B2 (ja) 画像形成装置及びメモリマップ方法
JP4246608B2 (ja) 画像形成装置及びプログラム起動方法
JP2004046804A (ja) 画像形成装置およびデータ処理方法
JP4128468B2 (ja) 情報処理装置及びメモリマップ方法
JP4485749B2 (ja) 画像形成装置
JP2004048696A (ja) 画像形成装置およびデータ処理方法
JP4387710B2 (ja) ネットワーク装置及びその制御方法
JP2004046801A (ja) 画像形成装置およびプログラム停止方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20051124

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080331

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080527

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080728

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20080909