JP2004046801A - Image forming device, and program stop method - Google Patents
Image forming device, and program stop method Download PDFInfo
- Publication number
- JP2004046801A JP2004046801A JP2003127171A JP2003127171A JP2004046801A JP 2004046801 A JP2004046801 A JP 2004046801A JP 2003127171 A JP2003127171 A JP 2003127171A JP 2003127171 A JP2003127171 A JP 2003127171A JP 2004046801 A JP2004046801 A JP 2004046801A
- Authority
- JP
- Japan
- Prior art keywords
- recording medium
- program
- slot
- removal
- image forming
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Accessory Devices And Overall Control Thereof (AREA)
Abstract
Description
【0001】
【発明の属する技術分野】
本発明は、画像形成装置およびプログラム停止方法に係り、特に挿抜可能な記録媒体から起動したプログラムを停止する画像形成装置およびプログラム停止方法に関する。
【0002】
【従来の技術】
近年、プリンタ,コピー,ファクシミリおよびスキャナなどの各装置の機能を1つの筐体内に収納した画像形成装置(以下、融合機という)が知られるようになった。この融合機は、1つの筐体内に表示部,印刷部および撮像部などを設けると共に、プリンタ,コピー,ファクシミリおよびスキャナにそれぞれ対応する4種類のソフトウェアを設け、そのソフトウェアを切り替えることより、プリンタ,コピー,ファクシミリおよびスキャナとして動作させるものである。特許文献1には、上記のような融合機の一例が記載されている。
【0003】
このような融合機は、電源投入後に、BIOS(Basic Input/Output System)およびブートローダ(Boot Loader)が起動する。ブートローダは、カーネル(Kernel)およびルートファイルシステムをRAM(Random Access Memory)上に展開してカーネルを起動する。そして、カーネルはルートファイルシステムをマウントする。ここでマウントとは、ファイルシステムや周辺機器などをアクセス可能な状態に起動することをいう。
【0004】
カーネルの起動後、アプリケーション(以下、アプリという)や各種サービスを起動するアプリ/サービス起動プログラムが起動される。アプリ/サービス起動プログラムは融合機で最初に起動されるプロセスであり、所定の設定ファイルに従ってファイルシステムをマウントし、融合機の動作に必要なサービス層およびアプリのプロセスを所定の設定ファイルに従って起動していた。
【0005】
このような従来の融合機では、起動するアプリのプログラムをハードディスク装置やROMなどに記録していた。特許文献2には、起動するアプリのプログラムをハードディスク装置やROMなどに追加する画像処理装置の一例が記載されている。
【0006】
また、アプリ/サービス起動プログラムは、例えば記録媒体の一例としてSDカードがスロットに挿入されると、そのSDカードに記録された設定ファイルに従ってファイルシステムをマウントし、SDカードに記録されたアプリのプロセスを所定の設定ファイルに従って起動していた。従来の融合機では、SDカードなどの活線挿抜可能な記録媒体からアプリを起動することで、新たなアプリの追加,アプリのバージョンアップ,機能拡張を容易に行えるようになった。
【0007】
【特許文献1】
特開2002−84383号公報
【0008】
【特許文献2】
特開2001−76125号公報
【0009】
【発明が解決しようとする課題】
しかしながら、従来の融合機では新たなアプリの追加,アプリのバージョンアップ,機能拡張を容易に行えるため、SDカードなどの活線挿抜可能な記録媒体を複数の融合機で使い回しされる可能性が高いという問題があった。そこで、従来の融合機ではSDカードなどの活線挿抜可能な記録媒体を複数の融合機で使い回しされないような防止機能を設ける必要が生じていた。
【0010】
本発明は、上記の点に鑑みなされたもので、挿抜可能な記録媒体の使い回しを容易に防止できる画像形成装置およびプログラム停止方法を提供することを目的とする。
【0011】
【課題を解決するための手段】
そこで、上記課題を解決するため、本発明は、ハードウェア資源を用いて画像形成に係る処理を行うプログラムと、記録媒体を挿抜可能なスロットとを有する画像形成装置であって、前記スロットに対する記録媒体の挿抜を監視する状態監視手段と、前記スロットに挿入された記録媒体をアクセス可能な状態とし、前記スロットから抜き出された記録媒体をアクセス不能な状態とする記録媒体起動手段と、前記アクセス可能な状態とした記録媒体からプログラムを読み出して起動する一方、前記状態監視手段から前記スロットからの記録媒体の抜き出しが通知されると、前記記録媒体から読み出されて起動されたプログラムを停止するプログラム起動手段とを有することを特徴とする。
【0012】
また、本発明は、ハードウェア資源を用いて画像形成に係る処理を行うプログラムと、記録媒体を挿抜可能なスロットとを有する画像形成装置であって、前記スロットに対する記録媒体の挿抜を監視する状態監視手段と、前記スロットに挿入された記録媒体をアクセス可能な状態とし、前記スロットから抜き出された記録媒体をアクセス不能な状態とする記録媒体起動手段と、前記記録媒体から読み出されて起動され、前記スロットからの記録媒体の抜き出しが通知されると、他のプロセスとのプロセス間通信を停止したあと、自身を停止するプログラムと、前記アクセス可能な状態とした記録媒体からプログラムを読み出して起動する一方、前記スロットからの記録媒体の抜き出しが通知されると、前記記録媒体起動手段を起動して前記スロットから抜き出された記録媒体をアクセス不能な状態とするプログラム起動手段とを有することを特徴とする。
【0013】
また、本発明は、ハードウェア資源を用いて画像形成に係る処理を行うプログラムと、記録媒体を挿抜可能なスロットとを有する画像形成装置のプログラム停止方法であって、前記スロットに対する記録媒体の挿抜を監視する状態監視段階と、前記スロットから抜き出された記録媒体をアクセス不能な状態とする記録媒体停止段階と、前記スロットからの記録媒体の抜き出しが通知されると、前記記録媒体から読み出されて起動されたプログラムを停止するプログラム停止段階とを有することを特徴とする。
【0014】
また、本発明は、ハードウェア資源を用いて画像形成に係る処理を行うプログラムと、記録媒体を挿抜可能なスロットとを有する画像形成装置のプログラム停止方法であって、前記スロットに対する記録媒体の挿抜を監視する状態監視段階と、前記スロットからの記録媒体の抜き出しが通知されると、他のプロセスとのプロセス間通信を停止したあと、前記記録媒体から読み出されて起動されたプログラムを停止するプログラム停止段階と、前記スロットから抜き出された記録媒体をアクセス不能な状態とする記録媒体停止段階とを有することを特徴とする。
【0015】
本発明によれば、記録媒体から読み出されて起動されたプログラムを、その記録媒体のスロットからの抜き出しに応じて停止させるので、挿抜可能な記録媒体の使い回しを容易に防止できる。
【0016】
【発明の実施の形態】
次に、本発明の実施の形態について図面に基づいて説明する。
【0017】
図1は、本発明による融合機の一実施例の構成図を示す。融合機1は、白黒レーザープリンタ(B&W LP)11と,カラーレーザープリンタ(ColorLP)12と,スキャナやファクシミリなどのハードウェアリソース13と,ソフトウェア群20と,融合機起動部50とを有する。また、ソフトウェア群20はアプリケーション30とプラットフォーム40とを有する。
【0018】
アプリケーション30は、プリンタ,コピー,ファクシミリおよびスキャナなどの画像形成処理にかかるユーザサービスにそれぞれ固有の処理を行うものである。
【0019】
アプリケーション30は、ページ記述言語(PDL,PCL)およびポストスクリプト(PS)を有するプリンタ用のアプリケーションであるプリンタアプリ31と,コピー用のアプリケーションであるコピーアプリ32と,ファクシミリ用アプリケーションであるファックスアプリ33と,スキャナ用アプリケーションであるスキャナアプリ34と,ネットワークファイル用アプリケーションであるネットファイルアプリ35と,工程検査用アプリケーションである工程検査アプリ36とを有している。
【0020】
また、プラットフォーム40は、アプリケーション30からの処理要求を解釈してハードウェア資源の獲得要求を発生するコントロールサービスと、1つ以上のハードウェア資源の管理を行ってコントロールサービスからの獲得要求を調停するシステムリソースマネージャ(以下、SRMという)43と、オペレーティングシステム(以下、OSという)41とを有するように構成されている。
【0021】
コントロールサービスは、システムコントロールサービス(以下、SCSという)42,エンジンコントロールサービス(以下、ECSという)44,メモリコントロールサービス(以下、MCSという)45,オペレーションパネルコントロールサービス(以下、OCSという)46,ファックスコントロールサービス(以下、FCSという)47,ネットワークコントロールサービス(以下、NCSという)48など、一つ以上のサービスモジュールを有するように構成されている。
【0022】
なお、プラットフォーム40は予め定義されている関数によりアプリケーション30からの処理要求を受信可能とするアプリケーションプログラムインターフェース(以下、APIという)を有するように構成されている。OS41は、ユニックス(UNIX(登録商標))等であって、プラットフォーム40およびアプリケーション30の各ソフトウェアをプロセスとして並列実行する。
【0023】
SRM43のプロセスは、SCS42と共にシステムの制御およびハードウェア資源の管理を行うものである。例えばSRM43のプロセスは、エンジン,メモリ,HDDファイル,ホストI/O(セントロI/F,ネットワークI/F,IEEE1394 I/F,RS232C I/Fなど)のハードウェア資源を利用する上位層からの要求に従って調停を行い、実行制御する。
【0024】
具体的に、SRM43は要求されたハードウェア資源が利用可能であるか(他の要求により利用されていないかどうか)を判定し、利用可能であれば要求されたハードウェア資源が利用可能である旨を上位層に通知する。また、SRM43は上位層からの要求に対してハードウェア資源を利用するためのスケジューリングを行い、要求内容(例えば、プリンタエンジンによる紙搬送と作像動作,メモリ確保,ファイル生成など)を直接実施している。
【0025】
SCS42のプロセスは、アプリケーション管理,操作部制御,システム画面表示,LED表示,ハードウェア資源管理,割り込みアプリケーション制御などの処理を行う。ECS44のプロセスは、白黒レーザープリンタ11,カラーレーザープリンタ12,ハードウェアリソース13などのエンジンの制御を行う。
【0026】
MCS45のプロセスは、画像メモリの取得および解放,HDDの利用,画像データの圧縮および伸張などのメモリ制御を行う。OCS46のプロセスは、オペレータと本体制御との間の情報伝達手段となるオペレーションパネルの制御を行う。
【0027】
FCS47のプロセスは、システムコントローラの各アプリケーション層からPSTNまたはISDN網を利用したファクシミリ送受信,バックアップ用のメモリで管理されている各種ファクシミリデータの登録/引用,ファクシミリ読み取り,ファクシミリ受信印刷,融合送受信を行うためのAPIを提供する。
【0028】
NCS48のプロセスは、ネットワークI/Oを必要とするアプリケーションに対して共通に利用できるサービスを提供するものであり、ネットワーク側から各プロトコルによって受信したデータを各アプリケーションに振り分けたり、各アプリケーションからのデータをネットワーク側に送信する際の仲介を行う。
【0029】
例えばNCS48は、ネットワークを介して接続されるネットワーク機器とのデータ通信をhttpd(HyperText Transfer Protocol Daemon)により、HTTP(HyperText Transfer Protocol)で制御する。
【0030】
融合機1は、各アプリケーションで共通的に必要な処理をプラットフォーム40で一元的に処理することができる。次に、融合機1のハードウェア構成について説明する。
【0031】
図2は、本発明による融合機の一実施例のハードウェア構成図を示す。融合機1は、コントローラ60と,オペレーションパネル80と,FCU81と,エンジン部82とを含む。コントローラ60は、CPU61と,システムメモリ62と,ノースブリッジ(NB)63と,サウスブリッジ(SB)64と,ASIC66と,ローカルメモリ67と,HDD68と、ネットワークインターフェースカード(NIC)69と,SDカード用スロット70と,USBデバイス71と,IEEE1394デバイス72と,セントロニクス73とを含む。
【0032】
オペレーションパネル80は、コントローラ60のASIC66に接続されている。また、FCU81およびエンジン部82は、コントローラ60のASIC66にPCIバス83で接続されている。
【0033】
コントローラ60は、ASIC66にローカルメモリ67,HDD68などが接続されると共に、CPU61とASIC66とがCPUチップセットのNB63を介して接続されている。コントローラ60は、NB63を介してCPU61とASIC66とを接続することにより、CPU61のインターフェースが公開されていない場合に対応する。なお、ASIC66とNB63とはAGP(Accelerated Graphics Port )65を介して接続されている。
【0034】
このように、図1のアプリケーション30やプラットフォーム40を形成する一つ以上のプロセスを実行制御するため、ASIC66とNB63とを低速のPCIバスでなくAGP65を介して接続することで、パフォーマンスの低下を防いでいる。
【0035】
CPU61は、融合機1の全体制御を行うものである。CPU61は、OS41上にSCS42,SRM43,ECS44,MCS45,OCS46,FCS47およびNCS48をそれぞれプロセスとして起動して実行させると共に、アプリケーション30を形成するプリンタアプリ31,コピーアプリ32,ファックスアプリ33,スキャナアプリ34,ネットファイルアプリ35,工程検査アプリ36を起動して実行させる。
【0036】
NB63は、CPU61,システムメモリ62,SB64,ASIC66,NIC69,SDカード用スロット70,USBデバイス71,IEEE1394デバイス72およびセントロニクス73を接続するためのブリッジである。
【0037】
SB64,NIC69,SDカード用スロット70,USBデバイス71,IEEE1394デバイス72およびセントロニクス73は、PCIバス74を介してNB63に接続されている。なお、SB64は、PCIバス74とROMや周辺デバイス等とを接続するためのブリッジである。
【0038】
システムメモリ62は、融合機1の描画用メモリなどとして用いるメモリである。ローカルメモリ67はコピー用画像バッファ,符号バッファとして用いるメモリである。
【0039】
ASIC66は、画像処理用のハードウェア要素を有する画像処理用途向けのICである。HDD68は、画像データの蓄積,文書データの蓄積,プログラムの蓄積,フォントデータの蓄積,フォームの蓄積などを行うストレージ(補助記憶装置)の一例である。
【0040】
NIC69は、融合機1をネットワークに接続するインターフェース機器である。SDカード用スロット70はSDカードを挿抜可能なものであり、SDカードの挿入または抜き出しに応じた割り込みを後述するSDカードステータスモニタドライバに対して行う。USBデバイス71,IEEE1394デバイス72およびセントロニクス73は、夫々の規格に準じたインターフェースである。
【0041】
また、オペレーションパネル80は、オペレータからの入力操作を受け付けると共に、オペレータに向けた表示を行う操作部である。なお、FCU81はメモリを有している。FCU81が有するメモリは、例えば融合機1の電源がOFFのときに受信したファクシミリデータを一時的に格納するために利用される。
【0042】
図1の融合機起動部50は、融合機1の電源投入時に最初に実行され、プラットフォーム40やアプリケーション30を起動するものである。図3は、融合機起動部の一例の構成図を示す。融合機起動部50は、ROMモニタ51と,プログラム起動部52とを有する。
【0043】
BIOSおよびブートローダとしてのROMモニタ51は電源投入時に実行されるものであり、ハードウェアの初期化,コントローラ60の診断,ソフトウェアの初期化などを行う。ROMモニタ51は、カーネルおよびルートファイルシステムをシステムメモリ62上に展開してカーネルを起動する。そして、カーネルはルートファイルシステムをマウントする。
【0044】
アプリ/サービス起動プログラムとしてのプログラム起動部52は、カーネルから呼び出されるものであり、システムメモリ62及びローカルメモリ67上にメモリ領域を確保する。プログラム起動部52は、融合機1で最初に起動されるプロセスであって、所定の設定ファイルに従ってファイルシステムをマウントする。
【0045】
プログラム起動部52は、融合機1の動作に必要なアプリケーション30およびプラットフォーム40のプログラムを所定の設定ファイルに従ってROMなどから読み出し、読み出した各プログラムをシステムメモリ62及びローカルメモリ67上に確保したメモリ領域に展開してアプリケーション30およびプラットフォーム40のプロセスを起動するものである。
【0046】
更に、プログラム起動部52の処理について説明する。プログラム起動部52は、起動時に所定のマスタ設定ファイルを読み込み、読み込んだマスタ設定ファイルに従ってファイルシステムのマウントおよびプロセスの起動を行う。例えば図4のようなファイルツリーの場合、プログラム起動部52はマスタ設定ファイルとして「/etc/init.conf」を起動時に読み込む。図4は、ファイルツリーの一例の構成図を示す。
【0047】
プログラム起動部52は、読み込んだマスタ設定ファイルにマウントの記述が存在した場合、そのマウントの記述に従ってマウント処理を実行する。例えば図5のようなマスタ設定ファイルの場合、プログラム起動部52はマウントの記述に従ってSDカード0〜3の上のファイルシステムのマウント処理を行う。図5は、マスタ設定ファイルの一例の構成図を示す。
【0048】
また、プログラム起動部52はマウントしたファイルシステムのルートに所定の設定ファイルが存在する場合、又はマウントしたファイルシステムのルートに所定の拡張子のファイルを含む所定のディレクトリが存在する場合、所定の設定ファイル又は所定の拡張子のファイルを読み込んでファイルシステムのマウント処理を行う。
【0049】
例えばマウントしたSDカードファイルシステムのルートに図6のような設定ファイル「init.conf」又は「init.cnf」が存在する場合、プログラム起動部52は設定ファイルに存在するマウントの記述に従ってマウント処理を実行する。図6は、設定ファイルの一例の構成図を示す。
【0050】
マウントしたSDカードファイルシステムのルートに図7のようなディレクトリ「init.d」が存在し、そのディレクトリに拡張子「conf」,「cnf」のファイルが含まれる場合、プログラム起動部52はそのファイルに存在するマウントの記述に従ってマウント処理を実行する。図7は、SDカードのファイルツリーの一例の構成図を示す。
【0051】
なお、プログラム起動部52がマウントできるファイルシステムは、図5及び図6に記載されているような「gzromfs」などがある。このファイルシステム「gzromfs」は、gzip圧縮されたROMFS形式のファイルをRAM上に展開してマウントする。
【0052】
以下、融合機1の電源を投入したままの状態で、アプリケーションが記録されているSDカードを融合機1に挿入または融合機1からSDカードを抜き出す例について説明していく。図8は、本発明によるプログラム停止方法の一実施例の説明図である。
【0053】
図8の説明図では、融合機1の構成のうち説明に必要な構成を表し、説明に必要のない構成を省略している。また、図8の融合機1は2つのSDカード用スロット125,127を備えているが、3つ以上のSDカード用スロットを備えていてもよい。
【0054】
SDカード126,128は、ルートファイルシステム,サービス層,アプリケーション,フォントデータなどが、モジュール情報の格納されたヘッダとROMFS形式のデータから構成されるバイナリファイルとして記録されている。なお、SDカード126,128は融合機1の電源を投入したままの状態で、いわゆる活線挿抜が可能である。
【0055】
SDカード用スロット125,127は、SDカード126,128を挿抜可能なものであり、SDカード126,128の挿入または抜き出しに応じた割り込みをSDカードアクセスドライバ124に対して行う。
【0056】
SDカードアクセスドライバ124は、SDカード126に対するアクセス制御を行うものであり、SDカード用スロット125,127からの割り込みに応じてSDカード126,128の挿入または抜き出しをSDカードステータスモニタドライバ123に通知する。
【0057】
SDカードステータスモニタドライバ123は、SDカード126,128の挿入,抜き出し,マウント,アンマウントなど、SDカード126,128のステータス情報を管理するものであり、SDカード126,128のステータス情報をプログラム起動部52に通知する。
【0058】
プログラム起動部52は、SDカード126,128の挿入または抜き出しに応じてSDカードチェックプログラム121を起動する。また、プログラム起動部52はSDカードステータスモニタドライバ123からのSDカード126,128のステータス情報に応じてSDカード126,128内のプログラムを起動する。
【0059】
SDカードチェックプログラム121は、SDカード126,128についてパーティションが正しいか,ファイルシステムの状態が正しいかをチェックし、ファイルシステム122として使用可能な状態にするためのものである。SDカードチェックプログラム121は、例えばSDカード126,128のチェック機能,マウント機能,アンマウント機能,状態通知機能などを有している。
【0060】
次に、本発明によるプログラム停止方法の処理手順についてフローチャートを参照しつつ説明していく。プログラム起動部52は、融合機1のアプリケーション30およびプラットフォーム40のプロセスを起動したあと、イベント待ち状態となる。図9は、イベント待ち処理の一例のフローチャートを示す。
【0061】
図9中、ステップS1では、プログラム起動部52が、イベントの発生有無を判定する。イベントの発生が無いと判定すると(S1においてNO)、プログラム起動部52はステップS1の処理を繰り返す。イベントの発生が有ると判定すると(S1においてYES)、プログラム起動部52はステップS2に進む。
【0062】
例えばSDカード126又は128がSDカード用スロット125又は127に挿入されると、SDカードアクセスドライバ124はSDカード用スロット125又は127からの割り込みに応じてSDカード126又は128の挿入をSDカードステータスモニタドライバ123に通知する。
【0063】
SDカードステータスモニタドライバ123は、SDカード126又は128の挿入をプログラム起動部52に通知する。即ち、プログラム起動部52はSDカードステータスモニタドライバ123からSDカード126又は128の挿入が通知されたときにイベントの発生があると判定する。
【0064】
また、SDカード126又は128がSDカード用スロット125又は127から抜き出されると、SDカードアクセスドライバ124はSDカード用スロット125又は127からの割り込みに応じてSDカード126又は128の抜き出しをSDカードステータスモニタドライバ123に通知する。
【0065】
SDカードステータスモニタドライバ123は、SDカード126又は128の抜き出しをプログラム起動部52に通知する。即ち、プログラム起動部52はSDカードステータスモニタドライバ123からSDカード126又は128の抜き出しが通知されたときにイベントの発生があると判定する。
【0066】
ステップS2では、プログラム起動部52が、イベントの内容を判定する。イベントの内容がSDカード126又は128の挿入検知である場合、プログラム起動部52はステップS3に進む。ステップS3では、後述するSDカード挿入検知処理が行われる。一方、イベントの内容がSDカード126又は128の抜出検知である場合、プログラム起動部52はステップS4に進む。ステップS4では、後述するSDカード抜出検知処理が行われる。
【0067】
図10は、SDカード挿入検知処理の一例のフローチャートを示す。ステップS11では、プログラム起動部52が、SDカードチェックプログラム121を起動させる。ステップS11に続いてステップS12に進み、SDカードチェックプログラム121はSDカード126及び128のマウントを行い、その旨をSDカードステータスモニタドライバ123に通知して処理を停止する。
【0068】
ステップS12に続いてステップS13に進み、プログラム起動部52はSDカードステータスモニタドライバ123からSDカード126及び128がマウントされた旨を通知されると、マウントされたSDカード126及び128から図11又は12のような設定ファイルを読み出して解析する。
【0069】
図11は、アプリ起動用SDカードに記録された設定ファイルの一例の構成図である。図12は、工程検査用SDカードに記録された設定ファイルの一例の構成図である。
【0070】
図11の設定ファイルは、gzip圧縮されたROMFS形式のマウント対象モジュール「printer.mod」をマウントポイント「/arch/printer」へマウントし、そのマウント対象モジュール「printer.mod」を実行する処理と、gzip圧縮されたROMFS形式のマウント対象モジュール「scanner.mod」をマウントポイント「/arch/scanner」へマウントし、マウントしたマウント対象モジュール「scanner.mod」を実行する処理とを表している。
【0071】
図12の設定ファイルは、gzip圧縮されたROMFS形式のマウント対象モジュール「factory.mod」をマウントポイント「/arch/factory」へマウントし、そのマウント対象モジュール「factory.mod」を実行する処理を表している。
【0072】
なお、アプリ起動用SDカードは融合機1にアプリを追加するために利用するSDカードであって、例えば図8のSDカード126に相当する。工程検査用SDカードは工場などで融合機1の工程検査を行うために利用するSDカードであって、例えば図8のSDカード128に相当する。
【0073】
ステップS13に続いてステップS14に進み、プログラム起動部52は図11又は12のような設定ファイルに存在するマウントの記述に従ってマウント処理を行う。ステップS15に進み、プログラム起動部52はステップS14でマウントしたマウント対象モジュール内から図13〜図15のようなモジュール情報ファイル(例えば、version.txt)を読み出し、そのモジュール情報ファイルを「/tmp/モジュールID.txt」にコピーする。
【0074】
図13は、プリンタ用モジュール内から読み出されるモジュール情報ファイルの一例の構成図である。図14は、スキャナ用モジュール内から読み出されるモジュール情報ファイルの一例の構成図である。図15は、工程検査用モジュール内から読み出されるモジュール情報ファイルの一例の構成図である。
【0075】
図13及び図14のモジュール情報ファイルは、モジュールID,バージョン情報を含むように構成される。また、図15のモジュール情報ファイルは、モジュールID,バージョン情報,ライセンス情報を含むように構成される。
【0076】
ステップS16に進み、プログラム起動部52はステップS14でマウントしたマウント対象モジュールのファイル名を図16〜図18のようにモジュール情報ファイルの「MOUNTFILE」として付加する。
【0077】
図16は、マウント対象モジュールのファイル名が付加されたプリンタアプリ用のモジュール情報ファイルの一例の構成図である。図17は、マウント対象モジュールのファイル名が付加されたスキャナアプリ用のモジュール情報ファイルの一例の構成図である。図18は、マウント対象モジュールのファイル名が付与された工程検査アプリ用のモジュール情報ファイルの一例の構成図である。
【0078】
図16及び図17のモジュール情報ファイルは、モジュールID,バージョン情報,マウントしたマウント対象モジュールのファイル名を含むように構成される。また、図18のモジュール情報ファイルは、モジュールID,バージョン情報,ライセンス情報,マウントしたマウント対象モジュールのファイル名を含むように構成される。
【0079】
そして、ステップS16に続いてステップS17に進み、プログラム起動部52はSDカード126及び128に記録されているプログラムのプロセスを起動する。
【0080】
したがって、融合機1では電源を投入したままの状態でSDカード126及び128を挿入したとしても、SDカード126及び128に記録されているアプリケーションのプロセスを自動的に起動することができる。例えば図1の融合機1では、アプリケーション30の一つとしてSDカード126及び128内のアプリが追加される。
【0081】
図10のSDカード挿入検知処理では、マウントされたSDカード126に記録されている図11のような設定ファイル又はマウントされたSDカード128に記録されている図12のような設定ファイルを全て読み出してマウントしていたが、SDカード126の不正コピーを防止するため電子認証チェックを行うようにしてもよい。
【0082】
図19及び20は、電子認証チェック機能を有するSDカード挿入検知処理の一例のフローチャートを示す。ステップS21及びS22は、図10のフローチャートの処理と同様であり、説明を省略する。
【0083】
SDカードステータスモニタドライバ123からSDカード126又は128がマウントされた旨を通知されると、プログラム起動部52はステップS23に進む。ステップS23では、プログラム起動部52が、ステップS12でマウントされたSDカード126又は128から設定ファイルを検索する。
【0084】
ステップS24に進み、プログラム起動部52はマウントされたSDカード126又は128に設定ファイルが存在すれば(S24においてYES)、ステップS25に進む。なお、マウントされたSDカード126又は128に設定ファイルが存在しなければ(S24においてNO)、プログラム起動部52はステップS32に進む。ステップS25では、プログラム起動部52が、電子認証チェック用ライブラリを用いて設定ファイルの認証チェックを行う。
【0085】
設定ファイルの認証チェックは、図21に表したフローチャートのように行われる。図21は、設定ファイルの認証チェックの処理の一例のフローチャートである。
【0086】
ステップS41では、プログラム起動部52が、SDカード126又は128に設定ファイルの認証チェックに利用する対象ファイルが存在するか否かを判定する。なお、設定ファイルの認証チェックに利用する対象ファイルは、設定ファイルと、設定ファイルおよびSDカードのシリアルIDのメッセージダイジェスト(以下、MDという)から作成された電子署名ファイルとを含む。
【0087】
図22は、SDカードに記録された対象ファイルの一例のイメージ図である。図22の例では、「printer.cnf」が設定ファイルを表し、「printer.lic」が設定ファイルの認証チェックに利用する電子署名ファイルを表し、「printer.mod」がマウント対象のモジュールファイルを表し、「printer.mac」がマウント対象モジュールの認証チェックに利用する電子署名ファイルを表す。
【0088】
設定ファイルの認証チェックに利用する対象ファイルが存在すると判定すると(S41においてYES)、プログラム起動部52はSDカード126又は128から設定ファイルおよび設定ファイルの認証チェックに利用する電子署名ファイルを取得してステップS42に進む。
【0089】
ステップS42では、プログラム起動部52が、SDカード126又は128のシリアルIDをSDカード126又は128から取得する。ステップS43に進み、プログラム起動部52はステップS41で取得した設定ファイルと、ステップS42で取得したSDカード126又は128のシリアルIDとのMD1を作成する。ステップS43に続いてステップS44に進み、プログラム起動部52はステップS41で取得した電子署名ファイルを公開鍵で復号化してMD2を作成する。
【0090】
ステップS45に進み、プログラム起動部52はステップS43で作成したMD1とステップS44で作成したMD2とが等しいか否かを判定する。MD1とMD2とが等しいと判定すると(S45においてYES)、プログラム起動部52はステップS46に進み、設定ファイルの認証チェックがOKと判定する。
【0091】
一方、MD1とMD2とが等しくないと判定すると(S45においてNO)、プログラム起動部52はステップS47に進み、設定ファイルの認証チェックがNGと判定する。MD1とMD2とが等しくなければ、SDカード126又は128に記録されているファイルは不正にコピーされた可能性が高いためである。
【0092】
なお、設定ファイルの認証チェックに利用する対象ファイルが存在しないと判定すると(S41においてNO)、プログラム起動部52はステップS47に進み、設定ファイルの認証チェックがNGと判定する。
【0093】
図19に戻り、プログラム起動部52は設定ファイルの認証チェックがOKであれば(S25においてYES)、ステップS26に進み、図11又は12のような設定ファイルの解析を行う。なお、プログラム起動部52は設定ファイルの認証チェックがNGであれば(S25においてNO)、ステップS27に進む。
【0094】
ステップS27では、プログラム起動部52が、一の設定ファイルに記録されているEOF(End Of File)を検索したか否かを判定する。EOFを検索したと判定すると(S27においてYES)、プログラム起動部52はステップS23に戻る。EOFを検索していないと判定すると(S27においてNO)、プログラム起動部52はステップS28に進む。
【0095】
ステップS28では、プログラム起動部52が、設定ファイルにマウントの記述があれば、電子認証チェック用ライブラリを用いてマウント対象モジュールの認証チェックを行う。マウント対象モジュールの認証チェックは、図23に表したフローチャートのように行われる。図23は、マウント対象モジュールの認証チェックの処理の一例のフローチャートである。
【0096】
ステップS51では、プログラム起動部52が、SDカード126又は128にマウント対象モジュールの認証チェックに利用する対象ファイルが存在するか否かを判定する。マウント対象モジュールの認証チェックに利用する対象ファイルは、マウント対象のモジュールファイルと、モジュールファイルおよび融合機1の機種情報のMDから作成された電子署名ファイルとを含む。
【0097】
マウント対象モジュールの認証チェックに利用する対象ファイルが存在すると判定すると(S51においてYES)、プログラム起動部52はSDカード126又は128からマウント対象のモジュールファイルおよびマウント対象のモジュールファイルの認証チェックに利用する電子署名ファイルを取得してステップS52に進む。
【0098】
ステップS52では、プログラム起動部52が、融合機1の機種情報を取得する。ステップS53に進み、プログラム起動部52はステップS51で取得したモジュールファイルと、ステップS52で取得した融合機1の機種情報とのMD1を作成する。ステップS54に進み、プログラム起動部52はステップS51で取得した電子署名ファイルを公開鍵で復号化してMD2を作成する。
【0099】
ステップS55に進み、プログラム起動部52はステップS53で作成したMD1とステップS54で作成したMD2とが等しいか否かを判定する。MD1とMD2とが等しいと判定すると(S55においてYES)、プログラム起動部52はステップS56に進み、マウント対象モジュールの認証チェックがOKと判定する。
【0100】
一方、MD1とMD2とが等しくないと判定すると(S55においてNO)、プログラム起動部52はステップS57に進み、マウント対象モジュールの認証チェックがNGと判定する。MD1とMD2とが等しくなければ、SDカード126又は128に記録されているファイルはコピーや改竄などの不正を受けた可能性が高いためである。
【0101】
なお、マウント対象モジュールの認証チェックに利用する対象ファイルが存在しないと判定すると(S51においてNO)、プログラム起動部52はステップS57に進み、マウント対象モジュールの認証チェックがNGと判定する。
【0102】
図20に戻り、プログラム起動部52はマウント対象モジュールの認証チェックがOKであれば(S28においてYES)、ステップS29に進み、図11又は12のような設定ファイルに存在するマウントの記述に従ってマウント処理を行う。
【0103】
ステップS30に進み、プログラム起動部52はステップS29でマウントしたマウント対象モジュール内から図13〜図15のようなモジュール情報ファイル(例えば、version.txt)を読み出し、そのモジュール情報ファイルを「/tmp/モジュールID.txt」にコピーする。
【0104】
ステップS31に進み、プログラム起動部52はステップS29でマウントしたマウント対象モジュールのファイル名を図16〜図18のようにモジュール情報ファイルの「MOUNTFILE」として付加したあと、ステップS26に戻る。なお、プログラム起動部52はSDカード126又は128に記録されている全ての設定ファイルの認証チェックを行うまで、ステップS23〜S31の処理を繰り返す。
【0105】
SDカード126又は128に記録されている全ての設定ファイルの認証チェックを行ったあと、プログラム起動部52はマウントされたSDカード126又は128に設定ファイルが存在しないと判定して(S24においてNO)、ステップS32に進む。ステップS32では、プログラム起動部52が、ステップS29でマウントしたモジュールを実行する。なお、マウント対象モジュールの認証チェックがNGであるモジュールは、ステップS29でマウントされない為にステップS32で実行されない。
【0106】
なお、SDカード126又は128が突然抜かれた場合、プログラム起動部52はSDカード126又は128をアンマウントする必要がある為、SDカードチェックプログラム121を起動してSDカード126又は128のアンマウント処理を行わせる。
【0107】
図24は、SDカード抜出検知処理の一例のフローチャートを示す。ステップS61では、プログラム起動部52が、SDカードチェックプログラム121を起動させる。ステップS62に進み、SDカードチェックプログラム121はSDカード126又は128のアンマウントを行い、SDカード126又は128のアンマウントを行った旨をSDカードステータスモニタドライバ123に通知して処理を停止する。
【0108】
ステップS63に進み、プログラム起動部52はステップS17又はS32でSDカード126又は128から実行されたアプリを停止させる。そして、ステップS64に進み、プログラム起動部52はSDカード126又は128が突然抜かれた行為をサービスコール(以下、単にSCという)扱いとするか否かを以下のSCチェック処理によりチェックする。なお、サービスコールとは、融合機1の自己診断機能で検知された故障等を通知する機能を言う。
【0109】
図25は、SCチェック処理の一例のフローチャートを示す。ステップS71に進み、プログラム起動部52は図4のようなファイルツリーに「/tmp/モジュールID.txt」があるか否かを判定する。
【0110】
「/tmp/モジュールID.txt」があると判定すると(S71においてYES)、プログラム起動部52はステップS72に進み、モジュール情報ファイルがコピーされた「/tmp/モジュールID.txt」から「MOUNTFILE:mnt/sdX/yyy.mod」を取得する。なお、「MOUNTFILE:mnt/sdX/yyy.mod」に含まれる「X」は、SDカード用スロット番号を表す。例えば図16のモジュール情報ファイルの場合、プログラム起動部52は「MOUNTFILE:mnt/sd1/printer.mod」を取得する。
【0111】
ステップS73に進み、プログラム起動部52はステップS72で取得したSDカード用スロット番号と、SDカード126又は128が抜かれたSDカード用スロット番号とが一致するか否かを判定する。一致すると判定すると(S73においてYES)、プログラム起動部52はステップS72で「MOUNTFILE」を取得したモジュール情報ファイルにライセンス情報としての「LICENSE:FREE」が記載されているか否かを判定する。
【0112】
「LICENSE:FREE」が記載されていると判定すると(S74においてYES)、プログラム起動部52はステップS71に戻る。例えば図18のようなモジュール情報ファイルの場合、「LICENSE:FREE」が記載されているため、ステップS71に戻る。
【0113】
例えば工程検査用SDカードは、工程検査アプリ用モジュールのモジュール情報ファイルに「LICENSE:FREE」を記載しておくことで、SDカード用スロット125又は127から抜かれてもSC扱いとならない。工程検査用SDカードは、工場などで行われる工程検査に利用されるため、複数の融合機1での使い回しを可能としている。
【0114】
なお、プログラム起動部52はステップS72で取得したSDカード用スロット番号と、SDカード126又は128が抜かれたSDカード用スロット番号とが一致しないと判定すると(S73においてNO)、ステップS71に戻る。
【0115】
プログラム起動部52は、ステップS72で「MOUNTFILE」を取得したモジュール情報ファイルにライセンス情報としての「LICENSE:FREE」が記載されていないと判定すると(S74においてNO)、ステップS75に進み、SC扱いにする。
【0116】
例えばアプリ起動用SDカードは、アプリ用モジュールのモジュール情報ファイルに「LICENSE:FREE」が記載されていないため、SDカード用スロット125又は127から抜かれるとSC扱いとなる。このように、アプリ起動用SDカードがSDカード用スロット125又は127から抜かれたときにSC扱いとすることで、複数の融合機1での使い回しを防止している。
【0117】
また、プログラム起動部52は図4のようなファイルツリーに「/tmp/モジュールID.txt」がないと判定すると(S71においてNO)、ステップS76に進み、SC扱いにしない。
【0118】
図24に戻り、ステップS65では、プログラム起動部52が、SDカード126又は128が突然抜かれた行為をSC扱いとするか否かを判定する。SCチェック処理によりSC扱いにすると判定すると(S65においてYES)、プログラム起動部52はステップS66に進み、オペレーションパネル80にSCを表示して処理を終了する。オペレーションパネル80にSCが表示された後、融合機1は使用できない状態となる。
【0119】
一方、SCチェック処理によりSC扱いにしないと判定すると(S65においてNO)、プログラム起動部52はそのまま処理を終了する。この場合、融合機1はステップS63で停止されられたアプリ以外を使用できる。
【0120】
図26は、SDカード抜出検知処理の他の一例のフローチャートを示す。図27は、SDカード抜出検知処理の他の一例の説明図である。なお、図26のSDカード抜出検知処理では、SCチェック処理を行わない。
【0121】
アプリ起動用SDカード130がSDカード用スロット129から抜き出されると、SDカードステータスモニタドライバ123はアプリ起動用SDカード130から起動されたアプリ37〜39にアプリ起動用SDカード130の抜き出しを通知する。
【0122】
ステップS81に進み、アプリ起動用SDカード130から起動されたアプリ37〜39はサービス層のプロセス(例えばSCS42,OCS46,FCS47等)とのプロセス間通信をクローズする。ステップS81に続いてステップS82に進み、アプリ37〜39は自分自身を終了させる。
【0123】
ステップS83に進み、プログラム起動部52はアプリ37〜39の終了を表すシグナル(SIGCHLD)を受信し、アプリ37〜39の少なくとも一部が終了したことを知る。
【0124】
ステップS84に進み、プログラム起動部52はアプリ起動用SDカード130から起動された全てのアプリ37〜39が終了したか否かを判定する。アプリ起動用SDカード130から起動された全てのアプリ37〜39が終了していないと判定すると(S84においてNO)、プログラム起動部52はステップS83,S84の処理を繰り返す。
【0125】
また、アプリ起動用SDカード130から起動された全てのアプリ37〜39が終了したと判定すると(S84においてYES)、プログラム起動部52は
ステップS85に進む。
【0126】
ステップS85では、プログラム起動部52が、SDカードチェックプログラム121を起動させる。ステップS86に進み、SDカードチェックプログラム121はアプリ起動用SDカード130のアンマウントを行い、アプリ起動用SDカード130のアンマウントを行った旨をSDカードステータスモニタドライバ123に通知して処理を停止する。
【0127】
図26のSDカード抜出検知処理は、SC扱いとならない為、再びアプリ起動用SDカード130をSDカード用スロット129に挿入したときに正常に動作させることができる。
【0128】
【発明の効果】
上述の如く、本発明によれば、挿抜可能な記録媒体が複数の画像形成装置で使い回されることを容易に防止できる
【図面の簡単な説明】
【図1】本発明による融合機の一実施例の構成図である。
【図2】本発明による融合機の一実施例のハードウェア構成図である。
【図3】融合機起動部の一例の構成図である。
【図4】ファイルツリーの一例の構成図である。
【図5】マスタ設定ファイルの一例の構成図である。
【図6】設定ファイルの一例の構成図である。
【図7】SDカードのファイルツリーの一例の構成図である。
【図8】本発明によるプログラム停止方法の一実施例の説明図である。
【図9】イベント待ち処理の一例のフローチャートである。
【図10】SDカード挿入検知処理の一例のフローチャートである。
【図11】アプリ起動用SDカードに記録された設定ファイルの一例の構成図である。
【図12】工程検査用SDカードに記録された設定ファイルの一例の構成図である。
【図13】プリンタ用モジュール内から読み出されるモジュール情報ファイルの一例の構成図である。
【図14】スキャナ用モジュール内から読み出されるモジュール情報ファイルの一例の構成図である。
【図15】工程検査用モジュール内から読み出されるモジュール情報ファイルの一例の構成図である。
【図16】マウント対象モジュールのファイル名が付加されたプリンタアプリ用のモジュール情報ファイルの一例の構成図である。
【図17】マウント対象モジュールのファイル名が付加されたスキャナアプリ用のモジュール情報ファイルの一例の構成図である。
【図18】マウント対象モジュールのファイル名が付与された工程検査アプリ用のモジュール情報ファイルの一例の構成図である。
【図19】電子認証チェック機能を有するSDカード挿入検知処理の一例のフローチャート(1/2)である。
【図20】電子認証チェック機能を有するSDカード挿入検知処理の一例のフローチャート(2/2)である。
【図21】設定ファイルの認証チェックの処理の一例のフローチャートである。
【図22】SDカードに記録された対象ファイルの一例のイメージ図である。
【図23】マウント対象モジュールの認証チェックの処理の一例のフローチャートである。
【図24】SDカード抜出検知処理の一例のフローチャートを示す。
【図25】SCチェック処理の一例のフローチャートを示す。
【図26】SDカード抜出検知処理の他の一例のフローチャートを示す。
【図27】SDカード抜出検知処理の他の一例の説明図である。
【符号の説明】
1 融合機
11 白黒レーザープリンタ
12 カラーレーザープリンタ
13 ハードウェアリソース
20 ソフトウェア群
30 アプリケーション
31 プリンタアプリ
32 コピーアプリ
33 ファックスアプリ
34 スキャナアプリ
35 ネットファイルアプリ
36 工程検査アプリ
37〜39 アプリ
40 プラットフォーム
41 オペレーティングシステム(OS)
42 システムコントロールサービス(SCS)
43 システムリソースマネージャ(SRM)
44 エンジンコントロールサービス(ECS)
45 メモリコントロールサービス(MCS)
46 オペレーションパネルコントロールサービス(OCS)
47 ファックスコントロールサービス(FCS)
48 ネットワークコントロールサービス(NCS)
50 融合機起動部
51 ROMモニタ
52 プログラム起動部
62 システムメモリ
67 ローカルメモリ
68 ハードディスク装置(HDD)
70,125,127,129 SDカード用スロット
80 オペレーションパネル
82 エンジン部
121 SDカードチェックプログラム
122 ファイルシステム
123 SDカードステータスモニタドライバ
124 SDカードアクセスドライバ
126,128,130 SDカード[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to an image forming apparatus and a program stopping method, and more particularly to an image forming apparatus and a program stopping method for stopping a program started from a removable recording medium.
[0002]
[Prior art]
2. Description of the Related Art In recent years, an image forming apparatus (hereinafter, referred to as a multifunction peripheral) in which functions of respective apparatuses such as a printer, a copier, a facsimile, and a scanner are housed in one housing has become known. This multifunction machine includes a display unit, a printing unit, an imaging unit, and the like in one housing, and four types of software corresponding to a printer, a copier, a facsimile, and a scanner, respectively. It operates as a copy, facsimile and scanner.
[0003]
After turning on the power of such a multifunction peripheral, a BIOS (Basic Input / Output System) and a boot loader (Boot Loader) are activated. The boot loader expands a kernel (Kernel) and a root file system on a RAM (Random Access Memory) to activate the kernel. Then the kernel mounts the root file system. Here, mounting means starting the file system, peripheral devices, and the like in an accessible state.
[0004]
After the kernel is started, an application / service starting program for starting an application (hereinafter referred to as an application) and various services is started. The application / service startup program is a process that is first started in the MFP, mounts a file system according to a predetermined setting file, and starts a service layer and an application process required for the operation of the MFP according to the predetermined setting file. I was
[0005]
In such a conventional multifunction peripheral, a program of an application to be started is recorded in a hard disk device, a ROM, or the like.
[0006]
Also, when an SD card is inserted into a slot as an example of a recording medium, the application / service activation program mounts a file system according to a setting file recorded on the SD card, and executes an application process recorded on the SD card. Was started according to a predetermined setting file. In a conventional multifunction machine, by starting an application from a recording medium such as an SD card that can be hot-swappable, it is possible to easily add a new application, upgrade the application, and expand functions.
[0007]
[Patent Document 1]
JP-A-2002-84383
[0008]
[Patent Document 2]
JP 2001-76125 A
[0009]
[Problems to be solved by the invention]
However, conventional multi-function devices can easily add new applications, upgrade applications, and expand functions. Therefore, there is a possibility that a multi-function device can use a hot-swappable recording medium such as an SD card. There was a problem of being expensive. Therefore, it has been necessary to provide a function of preventing a conventional multifunction device from using a recording medium such as an SD card that can be hot-swapped and used by a plurality of multifunction devices.
[0010]
SUMMARY An advantage of some aspects of the invention is to provide an image forming apparatus and a program stopping method that can easily prevent re-use of a recording medium that can be inserted and removed.
[0011]
[Means for Solving the Problems]
In order to solve the above problem, the present invention provides an image forming apparatus having a program for performing processing related to image formation using hardware resources, and a slot in which a recording medium can be inserted and removed. State monitoring means for monitoring the insertion / removal of a medium, recording medium activation means for setting a recording medium inserted in the slot to an accessible state, and for making a recording medium removed from the slot inaccessible, While reading and starting the program from the recording medium in the enabled state, when the state monitoring unit notifies the user that the recording medium is extracted from the slot, the program read from the recording medium and started is stopped. And a program activating means.
[0012]
The present invention also provides an image forming apparatus having a program for performing processing related to image formation using hardware resources, and a slot in which a recording medium can be inserted and removed, wherein a state in which the recording medium is inserted into and removed from the slot is monitored. Monitoring means, recording medium starting means for making the recording medium inserted into the slot accessible, and making the recording medium removed from the slot inaccessible, reading and starting from the recording medium Then, when the removal of the recording medium from the slot is notified, after stopping inter-process communication with another process, a program that stops itself and a program that is read from the recording medium in the accessible state are read out. On the other hand, when it is notified that the recording medium is removed from the slot, the recording medium activating means is activated to activate the recording medium. And having a program activation unit for the recording medium withdrawn from Tsu preparative inaccessible state.
[0013]
Further, the present invention is a program stopping method for an image forming apparatus having a program for performing processing relating to image formation using hardware resources and a slot in which a recording medium can be inserted and removed, wherein the program is inserted into and removed from the slot. Monitoring the state of the recording medium, stopping the recording medium to make the recording medium extracted from the slot inaccessible, and receiving notification of the removal of the recording medium from the slot, read from the recording medium. And stopping the started program.
[0014]
Further, the present invention is a program stopping method for an image forming apparatus having a program for performing processing relating to image formation using hardware resources and a slot in which a recording medium can be inserted and removed, wherein the program is inserted into and removed from the slot. When the notification of the removal of the recording medium from the slot is notified, the inter-process communication with another process is stopped, and then the program read from the recording medium and started is stopped. The method includes a program stopping step and a recording medium stopping step of making the recording medium extracted from the slot inaccessible.
[0015]
According to the present invention, the program read out from the recording medium and started is stopped according to the removal of the recording medium from the slot, so that the reusable recording medium can be easily reused.
[0016]
BEST MODE FOR CARRYING OUT THE INVENTION
Next, embodiments of the present invention will be described with reference to the drawings.
[0017]
FIG. 1 shows a configuration diagram of an embodiment of a multifunction peripheral according to the present invention. The
[0018]
The
[0019]
The
[0020]
Further, the platform 40 interprets a processing request from the
[0021]
The control services include a system control service (hereinafter, referred to as SCS) 42, an engine control service (hereinafter, referred to as ECS) 44, a memory control service (hereinafter, referred to as MCS) 45, an operation panel control service (hereinafter, referred to as OCS) 46, and a fax machine. It is configured to have one or more service modules such as a control service (hereinafter, referred to as FCS) 47 and a network control service (hereinafter, referred to as NCS) 48.
[0022]
Note that the platform 40 is configured to have an application program interface (hereinafter, referred to as an API) that enables a processing request from the
[0023]
The process of the
[0024]
Specifically, the
[0025]
The SCS process performs processes such as application management, operation unit control, system screen display, LED display, hardware resource management, and interrupt application control. The process of the
[0026]
The process of the
[0027]
The
[0028]
The process of the
[0029]
For example, the
[0030]
The
[0031]
FIG. 2 shows a hardware configuration diagram of an embodiment of the multifunction peripheral according to the present invention. The
[0032]
The
[0033]
In the
[0034]
As described above, in order to control the execution of one or more processes forming the
[0035]
The
[0036]
The
[0037]
The
[0038]
The
[0039]
The
[0040]
The
[0041]
The
[0042]
The
[0043]
The BIOS and the
[0044]
The
[0045]
The
[0046]
Further, the processing of the
[0047]
If a description of the mount exists in the read master setting file, the
[0048]
Also, when a predetermined setting file exists at the root of the mounted file system, or when a predetermined directory including a file having a predetermined extension exists at the root of the mounted file system, the
[0049]
For example, when the setting file “init.conf” or “init.cnf” as shown in FIG. 6 exists at the root of the mounted SD card file system, the
[0050]
If the directory “init.d” as shown in FIG. 7 exists at the root of the mounted SD card file system and the directory includes files with the extensions “conf” and “cnf”, Execute the mount process according to the description of the mount existing in. FIG. 7 shows a configuration diagram of an example of a file tree of the SD card.
[0051]
Note that the file system that can be mounted by the
[0052]
Hereinafter, an example will be described in which an SD card in which an application is recorded is inserted into the
[0053]
In the explanatory diagram of FIG. 8, among the configurations of the
[0054]
In the
[0055]
The
[0056]
The SD
[0057]
The SD card
[0058]
The
[0059]
The SD
[0060]
Next, the processing procedure of the program stopping method according to the present invention will be described with reference to flowcharts. After activating the
[0061]
In FIG. 9, in step S1, the
[0062]
For example, when the
[0063]
The SD card
[0064]
When the
[0065]
The SD card
[0066]
In step S2, the
[0067]
FIG. 10 shows a flowchart of an example of the SD card insertion detection process. In step S11, the
[0068]
Proceeding to step S13 following step S12, when the
[0069]
FIG. 11 is a configuration diagram of an example of a setting file recorded on the application activation SD card. FIG. 12 is a configuration diagram of an example of a setting file recorded on the process inspection SD card.
[0070]
The setting file in FIG. 11 includes a process of mounting the gzip-compressed ROMFS format mount target module “printer.mod” to the mount point “/ arch / printer” and executing the mount target module “printer.mod”. The gzip-compressed ROMFS format mount target module “scanner.mod” is mounted on the mount point “/ arch / scanner”, and the mounted mount target module “scanner.mod” is executed.
[0071]
The setting file of FIG. 12 represents a process of mounting the gzip-compressed ROMFS format mount target module “factory.mod” to the mount point “/ arch / factory” and executing the mount target module “factory.mod”. ing.
[0072]
Note that the application starting SD card is an SD card used to add an application to the
[0073]
Proceeding to step S14 following step S13, the
[0074]
FIG. 13 is a configuration diagram of an example of a module information file read from within the printer module. FIG. 14 is a configuration diagram of an example of a module information file read from within the scanner module. FIG. 15 is a configuration diagram of an example of a module information file read from within the process inspection module.
[0075]
13 and 14 are configured to include a module ID and version information. The module information file in FIG. 15 is configured to include a module ID, version information, and license information.
[0076]
Proceeding to step S16, the
[0077]
FIG. 16 is a configuration diagram of an example of a module information file for a printer application to which a file name of a module to be mounted is added. FIG. 17 is a configuration diagram of an example of a module information file for a scanner application to which a file name of a module to be mounted is added. FIG. 18 is a configuration diagram of an example of a module information file for a process inspection application to which a file name of a module to be mounted is given.
[0078]
The module information files in FIGS. 16 and 17 are configured to include the module ID, version information, and the file name of the mounted module to be mounted. The module information file in FIG. 18 is configured to include the module ID, version information, license information, and the file name of the mounted module to be mounted.
[0079]
Then, proceeding to step S17 following step S16, the
[0080]
Accordingly, even if the
[0081]
In the SD card insertion detection processing of FIG. 10, all the setting files as shown in FIG. 11 recorded on the mounted
[0082]
19 and 20 show a flowchart of an example of an SD card insertion detection process having an electronic authentication check function. Steps S21 and S22 are the same as the processing in the flowchart of FIG.
[0083]
When notified that the
[0084]
Proceeding to step S24, if the setting file exists in the mounted
[0085]
The authentication check of the setting file is performed as shown in the flowchart of FIG. FIG. 21 is a flowchart of an example of the process of the authentication check of the setting file.
[0086]
In step S41, the
[0087]
FIG. 22 is an image diagram of an example of the target file recorded on the SD card. In the example of FIG. 22, “printer.cnf” represents a setting file, “printer.lic” represents an electronic signature file used for authentication check of the setting file, and “printer.mod” represents a module file to be mounted. , “Printer.mac” represents an electronic signature file used for the authentication check of the module to be mounted.
[0088]
If it is determined that there is a target file to be used for the authentication check of the setting file (YES in S41), the
[0089]
In step S42, the
[0090]
Proceeding to step S45, the
[0091]
On the other hand, if it is determined that MD1 and MD2 are not equal (NO in S45), the
[0092]
If it is determined that there is no target file used for the authentication check of the setting file (NO in S41), the
[0093]
Returning to FIG. 19, if the authentication check of the setting file is OK (YES in S25), the
[0094]
In step S27, it is determined whether or not the
[0095]
In step S28, if there is a description of the mount in the setting file, the
[0096]
In step S51, the
[0097]
If it is determined that there is a file to be used for the authentication check of the module to be mounted (YES in S51), the
[0098]
In step S52, the
[0099]
Proceeding to step S55, the
[0100]
On the other hand, if it is determined that MD1 and MD2 are not equal (NO in S55), the
[0101]
If it is determined that there is no target file to be used for the authentication check of the mount target module (NO in S51), the
[0102]
Returning to FIG. 20, if the authentication check of the module to be mounted is OK (YES in S28), the
[0103]
Proceeding to step S30, the
[0104]
Proceeding to step S31, the
[0105]
After performing the authentication check of all the setting files recorded on the
[0106]
When the
[0107]
FIG. 24 shows a flowchart of an example of the SD card removal detection processing. In step S61, the
[0108]
Proceeding to step S63, the
[0109]
FIG. 25 is a flowchart illustrating an example of the SC check process. Proceeding to step S71, the
[0110]
If it is determined that “/ tmp / module ID.txt” is present (YES in S71), the
[0111]
Proceeding to step S73, the
[0112]
If it is determined that “LICENSE: FREE” is described (YES in S74), the
[0113]
For example, if “LICENSE: FREE” is described in the module information file of the process inspection application module, the process inspection SD card will not be treated as an SC even if it is removed from the
[0114]
If the
[0115]
If the
[0116]
For example, an application starting SD card does not have “LICENSE: FREE” described in the module information file of the application module, and is therefore treated as SC when removed from the
[0117]
When determining that there is no “/ tmp / module ID.txt” in the file tree as shown in FIG. 4 (NO in S71), the
[0118]
Returning to FIG. 24, in step S65, the
[0119]
On the other hand, if it is determined in the SC check process that the image is not to be treated as an SC (NO in S65), the
[0120]
FIG. 26 shows a flowchart of another example of the SD card removal detection processing. FIG. 27 is an explanatory diagram of another example of the SD card removal detection processing. In the SD card removal detection process of FIG. 26, the SC check process is not performed.
[0121]
When the application starting
[0122]
Proceeding to step S81, the
[0123]
Proceeding to step S83, the
[0124]
Proceeding to step S84, the
[0125]
If it is determined that all the
Proceed to step S85.
[0126]
In step S85, the
[0127]
Since the SD card removal detection processing in FIG. 26 is not treated as SC, normal operation can be performed when the application
[0128]
【The invention's effect】
As described above, according to the present invention, a removable recording medium can be easily prevented from being reused by a plurality of image forming apparatuses.
[Brief description of the drawings]
FIG. 1 is a configuration diagram of an embodiment of a multifunction peripheral according to the present invention.
FIG. 2 is a hardware configuration diagram of an embodiment of the multifunction peripheral according to the present invention.
FIG. 3 is a configuration diagram of an example of a multifunction peripheral starting unit.
FIG. 4 is a configuration diagram of an example of a file tree.
FIG. 5 is a configuration diagram of an example of a master setting file.
FIG. 6 is a configuration diagram of an example of a setting file.
FIG. 7 is a configuration diagram of an example of a file tree of an SD card.
FIG. 8 is an explanatory diagram of one embodiment of a program stopping method according to the present invention.
FIG. 9 is a flowchart of an example of an event waiting process.
FIG. 10 is a flowchart illustrating an example of an SD card insertion detection process.
FIG. 11 is a configuration diagram of an example of a setting file recorded on an application starting SD card.
FIG. 12 is a configuration diagram of an example of a setting file recorded on a process inspection SD card.
FIG. 13 is a configuration diagram of an example of a module information file read from within a printer module.
FIG. 14 is a configuration diagram of an example of a module information file read from within a scanner module.
FIG. 15 is a configuration diagram of an example of a module information file read from within a process inspection module.
FIG. 16 is a configuration diagram of an example of a module information file for a printer application to which a file name of a module to be mounted is added.
FIG. 17 is a configuration diagram of an example of a module information file for a scanner application to which a file name of a module to be mounted is added.
FIG. 18 is a configuration diagram of an example of a module information file for a process inspection application to which a file name of a module to be mounted is added.
FIG. 19 is a flowchart (1/2) of an example of an SD card insertion detection process having an electronic authentication check function.
FIG. 20 is a flowchart (2/2) of an example of an SD card insertion detection process having an electronic authentication check function.
FIG. 21 is a flowchart illustrating an example of a setting file authentication check process.
FIG. 22 is an image diagram of an example of a target file recorded on an SD card.
FIG. 23 is a flowchart of an example of an authentication check process of a module to be mounted.
FIG. 24 is a flowchart illustrating an example of an SD card removal detection process.
FIG. 25 is a flowchart illustrating an example of an SC check process.
FIG. 26 shows a flowchart of another example of the SD card removal detection processing.
FIG. 27 is an explanatory diagram of another example of the SD card removal detection process.
[Explanation of symbols]
1 Fusion machine
11 Black and white laser printer
12 color laser printer
13 Hardware resources
20 software groups
30 applications
31 Printer App
32 copy application
33 Fax App
34 Scanner App
35 Net File Application
36 Process inspection application
37-39 apps
40 platforms
41 Operating System (OS)
42 System Control Service (SCS)
43 System Resource Manager (SRM)
44 Engine Control Service (ECS)
45 Memory Control Service (MCS)
46 Operation Panel Control Service (OCS)
47 Fax Control Service (FCS)
48 Network Control Service (NCS)
50 Fusion machine starter
51 ROM monitor
52 Program Launcher
62 System memory
67 Local memory
68 Hard Disk Drive (HDD)
70, 125, 127, 129 SD card slot
80 Operation Panel
82 Engine
121 SD card check program
122 File System
123 SD card status monitor driver
124 SD Card Access Driver
126, 128, 130 SD card
Claims (21)
前記スロットに対する記録媒体の挿抜を監視する状態監視手段と、
前記スロットに挿入された記録媒体をアクセス可能な状態とし、前記スロットから抜き出された記録媒体をアクセス不能な状態とする記録媒体起動手段と、
前記アクセス可能な状態とした記録媒体からプログラムを読み出して起動する一方、前記状態監視手段から前記スロットからの記録媒体の抜き出しが通知されると、前記記録媒体から読み出されて起動されたプログラムを停止するプログラム起動手段と
を有することを特徴とする画像形成装置。An image forming apparatus having a program for performing a process related to image formation using hardware resources and a slot into which a recording medium can be inserted and removed,
State monitoring means for monitoring insertion and removal of the recording medium with respect to the slot,
Recording medium activation means for making the recording medium inserted into the slot accessible, and for making the recording medium extracted from the slot inaccessible,
While reading and starting the program from the recording medium in the accessible state, when the state monitoring unit notifies the user that the recording medium has been extracted from the slot, the program read and started from the recording medium is executed. An image forming apparatus, comprising: a program activating means for stopping.
前記スロットに対する記録媒体の挿抜を監視する状態監視手段と、
前記スロットに挿入された記録媒体をアクセス可能な状態とし、前記スロットから抜き出された記録媒体をアクセス不能な状態とする記録媒体起動手段と、
前記記録媒体から読み出されて起動され、前記スロットからの記録媒体の抜き出しが通知されると、他のプロセスとのプロセス間通信を停止したあと、自身を停止するプログラムと、
前記アクセス可能な状態とした記録媒体からプログラムを読み出して起動する一方、前記スロットからの記録媒体の抜き出しが通知されると、前記記録媒体起動手段を起動して前記スロットから抜き出された記録媒体をアクセス不能な状態とするプログラム起動手段と
を有することを特徴とする画像形成装置。An image forming apparatus having a program for performing a process related to image formation using hardware resources and a slot into which a recording medium can be inserted and removed,
State monitoring means for monitoring insertion and removal of the recording medium with respect to the slot,
Recording medium activation means for making the recording medium inserted into the slot accessible, and for making the recording medium extracted from the slot inaccessible,
When read out from the recording medium and activated, when the removal of the recording medium from the slot is notified, after stopping inter-process communication with other processes, a program to stop itself,
While reading and activating the program from the accessible recording medium, when the removal of the recording medium from the slot is notified, the recording medium activation unit is activated to activate the recording medium extracted from the slot. An image forming apparatus, comprising: a program activating unit for making the computer inaccessible.
前記スロットに対する記録媒体の挿抜を監視する状態監視段階と、
前記スロットから抜き出された記録媒体をアクセス不能な状態とする記録媒体停止段階と、
前記スロットからの記録媒体の抜き出しが通知されると、前記記録媒体から読み出されて起動されたプログラムを停止するプログラム停止段階と
を有することを特徴とするプログラム停止方法。A program for performing a process related to image formation using hardware resources, and a program stopping method for an image forming apparatus having a slot into which a recording medium can be inserted and removed,
A state monitoring step of monitoring insertion / removal of a recording medium into / from the slot,
A recording medium stopping step of making the recording medium extracted from the slot inaccessible,
A program stopping step of stopping a program read from the recording medium and started when the removal of the recording medium from the slot is notified.
前記スロットに対する記録媒体の挿抜を監視する状態監視段階と、
前記スロットからの記録媒体の抜き出しが通知されると、他のプロセスとのプロセス間通信を停止したあと、前記記録媒体から読み出されて起動されたプログラムを停止するプログラム停止段階と、
前記スロットから抜き出された記録媒体をアクセス不能な状態とする記録媒体停止段階と
を有することを特徴とするプログラム停止方法。A program for performing a process related to image formation using hardware resources, and a program stopping method for an image forming apparatus having a slot into which a recording medium can be inserted and removed,
A state monitoring step of monitoring insertion / removal of a recording medium into / from the slot,
When the removal of the recording medium from the slot is notified, after stopping inter-process communication with other processes, a program stop step of stopping the program read from the recording medium and started,
Stopping the recording medium taken out of the slot to make the recording medium inaccessible.
Priority Applications (8)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003127171A JP4037315B2 (en) | 2002-05-08 | 2003-05-02 | Image forming apparatus and program stop method |
US10/429,865 US20030231343A1 (en) | 2002-05-08 | 2003-05-06 | Image forming apparatus, program adding method, and a recording medium |
EP20030021655 EP1385087A3 (en) | 2002-05-08 | 2003-05-07 | Image forming apparatus, a program adding method, and a recording medium |
EP03021656A EP1387264A3 (en) | 2002-05-08 | 2003-05-07 | Image forming apparatus, a program adding method, and a recording medium |
EP03021654A EP1376346A3 (en) | 2002-05-08 | 2003-05-07 | Image forming apparatus, a program adding method, and a recording medium |
EP03010296A EP1369780A1 (en) | 2002-05-08 | 2003-05-07 | Image forming apparatus, program adding method, and a recording medium |
US11/836,188 US8213040B2 (en) | 2002-05-08 | 2007-08-09 | Image forming apparatus, program adding method, and a recording medium |
US11/836,198 US7593121B2 (en) | 2002-05-08 | 2007-08-09 | Image forming apparatus, program adding method, and a recording medium |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002133063 | 2002-05-08 | ||
JP2002144984 | 2002-05-20 | ||
JP2003127171A JP4037315B2 (en) | 2002-05-08 | 2003-05-02 | Image forming apparatus and program stop method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004046801A true JP2004046801A (en) | 2004-02-12 |
JP4037315B2 JP4037315B2 (en) | 2008-01-23 |
Family
ID=31721272
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003127171A Expired - Fee Related JP4037315B2 (en) | 2002-05-08 | 2003-05-02 | Image forming apparatus and program stop method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4037315B2 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009070248A (en) * | 2007-09-14 | 2009-04-02 | Ricoh Co Ltd | Image processor and image processing method |
US7823197B2 (en) | 2004-06-30 | 2010-10-26 | Panasonic Corporation | Program execution device and program execution method |
US8424084B2 (en) | 2007-01-15 | 2013-04-16 | Ricoh Company, Ltd. | Electronic device for verifying validity of contents of storage medium |
JP2015203716A (en) * | 2014-04-11 | 2015-11-16 | シャープ株式会社 | Image forming apparatus and method of diagnosing the same |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5015046B2 (en) | 2008-03-17 | 2012-08-29 | 株式会社リコー | Information processing apparatus and information processing method |
-
2003
- 2003-05-02 JP JP2003127171A patent/JP4037315B2/en not_active Expired - Fee Related
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7823197B2 (en) | 2004-06-30 | 2010-10-26 | Panasonic Corporation | Program execution device and program execution method |
US8424084B2 (en) | 2007-01-15 | 2013-04-16 | Ricoh Company, Ltd. | Electronic device for verifying validity of contents of storage medium |
JP2009070248A (en) * | 2007-09-14 | 2009-04-02 | Ricoh Co Ltd | Image processor and image processing method |
JP2015203716A (en) * | 2014-04-11 | 2015-11-16 | シャープ株式会社 | Image forming apparatus and method of diagnosing the same |
Also Published As
Publication number | Publication date |
---|---|
JP4037315B2 (en) | 2008-01-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7593121B2 (en) | Image forming apparatus, program adding method, and a recording medium | |
JP4704233B2 (en) | Information processing apparatus and control method thereof | |
US8112808B2 (en) | Server apparatus and installation information making method | |
CN101799792B (en) | Information processing apparatus, program control method, and computer program product | |
US7302578B2 (en) | Information processing apparatus, image forming apparatus, program-initiation error processing method, and recording medium | |
US8495364B2 (en) | Image processing apparatus and method using electronic signature information | |
US8860982B2 (en) | Image forming apparatus, installation method and uninstallation method | |
JP4246540B2 (en) | Image forming apparatus and program execution method | |
JP4037315B2 (en) | Image forming apparatus and program stop method | |
JP4209794B2 (en) | Image forming apparatus and program start method | |
JP2005148934A (en) | Information processor, program activation method, program activation program and recording medium | |
US7546296B2 (en) | Information processing apparatus started from a program recorded on a recording medium with well-maintained security, and a recording medium storing such a program and a producing method of such a recording medium | |
JP4276885B2 (en) | Image forming apparatus and path designation method | |
JP2003335028A (en) | Imaging apparatus and method for managing state information | |
JP4246608B2 (en) | Image forming apparatus and program start method | |
JP2004048696A (en) | Image forming apparatus and data processing method | |
JP2004046804A (en) | Image forming apparatus and data processing method | |
JP4237511B2 (en) | Image forming apparatus and program updating method | |
JP2004066809A (en) | Image forming apparatus, and method of booting program | |
JP3993121B2 (en) | Information processing apparatus and program addition method | |
JP2006285961A (en) | Information processor and information processing method | |
JP4231313B2 (en) | Information processing apparatus, image forming apparatus, and program addition method | |
JP2004287622A (en) | Information processor, image forming apparatus, and program adding method | |
JP2006103290A (en) | Image formation device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050822 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070221 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070703 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070831 |
|
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: 20071002 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20071031 |
|
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: 20101109 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111109 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111109 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121109 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131109 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |