説明

画像形成装置、及びその制御方法

【課題】第1システムと第2システムとを備える画像形成装置において、第1システムが備える記憶手段に対するアクセスの許可/禁止を第2システムから送信される信号に基づいて適切に制御する画像形成装置及びその制御方法を提供する。
【解決手段】本画像形成装置は、第1システム及び第2システムを備え、外部記憶装置を利用して起動させる場合に所定の処理を含むプログラムを実行した場合にのみ記憶手段へのアクセスを許可する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像形成装置、及びその制御方法に関するものである。
【背景技術】
【0002】
近年、画像形成装置に対する要求は、単なる印刷を行う印刷装置から、スキャン、ファクスといった複数の機能を実現する複合機能装置へとシフトしている。そして、画像形成装置において、複数の機能を実現するためのアプリケーションプログラムを実行するために、オペレーティングシステムが広く用いられている。また、画像形成装置の高度化に伴い、装置の保守目的で保守担当者が記憶装置(例えば、リムーバブルメディア)を利用して、画像形成装置の起動を行う仕組みが組み込まれるようになってきた。そして、記憶装置からのオペレーティングシステムを読み込むことで、画像形成装置を動作状態に起動させることは、画像形成装置を保守する面からは非常に有用である。しかし、記憶装置に不適切なオペレーティングシステムが記憶されていた場合、システム破壊やデータ盗聴などの問題を生じる危険性がある。また、記憶装置から画像形成装置が備える他の記憶装置(例えば、ハードディスク)に不適切なアプリケーションプログラムが格納されてしまうことも考えられる。その場合、不適切なアプリケーションプログラムの実行により、システム破壊やデータ盗聴などの問題を生じる危険性がある。
【0003】
特許文献1は、シリアル番号が予め登録されているリムーバブルメディア以外からの起動を抑止する方法を示している。具体的に、特許文献1に記載の方法は、リムーバブルメディアのシリアル番号を、当該リムーバブルメディアを用いて起動させる装置に登録する。装置は、登録されているシリアル番号を有するリムーバブルメディアが使用された場合のみ起動処理を行うことで、当該装置に対する不適切なアクセスを抑制している。
【特許文献1】特開2004−303216号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
しかしながら、従来技術の方法では以下のような問題がある。例えば、特許文献1に記載の方法では、特定のリムーバブルメディアと画像形成装置とを関連付ける必要性がある。したがって、リムーバブルメディアを用いて多数の装置の保守を行う場合には、各画像形成装置に対して、使用する全てのリムーバブルメディアのシリアル番号を登録する必要がる。このように、従来技術では、保守を行う画像形成装置の台数が増加するほど、管理者の作業量が増大してしまうという問題があった。
【0005】
また、従来技術の方法では、画像形成装置が備える他の記憶装置(例えば、ハードディスク)に不適切なアプリケーションプログラムが格納されてしまう場合の対策とならない。
【0006】
本発明は、上述の問題に鑑みて成されたものであり、第1システムと第2システムとを備える画像形成装置において、第1システムが備える記憶手段に対するアクセスの許可/禁止を第2システムから送信される信号に基づいて適切に制御する画像形成装置及びその制御方法を提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明は、例えば、第1システム及び第2システムを備える画像形成装置として実現できる。第1システムは、第1システムを制御する第1制御手段と、第1システムを動作させるための第1OSプログラム及び第2システムを動作させるための第2OSプログラムを記憶する第1記憶手段と、第1OSプログラムにより実行可能なアプリケーションプログラムを記憶する第2記憶手段と、第1及び第2記憶手段へのアクセスを制御するアクセス制御手段と、第1記憶手段から第2OSプログラムを取得して第2システムに提供する提供手段とを有し、第2システムは、第2システムを制御する第2制御手段であって、提供手段により提供された第2OSプログラムに基づいて第2システムを動作させる第2制御手段と、第2システムが動作状態となったことに応じて、第1制御手段による第2記憶手段へのアクセスを許可する許可信号をアクセス制御手段に送信する送信手段とを有し、アクセス制御手段は、許可信号を受信するまでは第1制御手段による第2記憶手段へのアクセスを禁止し、許可信号を受信したことに応じて第1制御手段による第2記憶手段へのアクセスを許可することを特徴とする。
【0008】
また、本発明は、例えば、第1制御手段により制御される第1システムと、第2制御手段により制御される第2システムと、第1システムを動作させるための第1OSプログラム及び第2システムを動作させるための第2OSプログラムを記憶する第1記憶手段と、第1OSプログラムにより実行可能なアプリケーションプログラムを記憶する第2記憶手段と、を備える画像形成装置の制御方法として実現できる。制御方法は、第1及び第2記憶手段へのアクセスを制御するアクセス制御ステップと、第1記憶手段から第2OSプログラムを取得して第2システムに提供する提供ステップと、提供ステップにより提供された第2OSプログラムに基づいて第2システムを動作させる動作ステップと、第2システムが動作状態となったことに応じて、第1制御手段による第2記憶手段へのアクセスを許可する許可信号を第2システムから第1システムに送信する送信ステップとを実行し、アクセス制御ステップは、第1システムが許可信号を受信するまでは第1制御手段による第2記憶手段へのアクセスを禁止し、第1システムが許可信号を受信したことに応じて第1制御手段による第2記憶手段へのアクセスを許可することを特徴とする。
【発明の効果】
【0009】
本発明は、第1システムと第2システムとを備える画像形成装置において、第1システムが備える記憶手段に対するアクセスの許可/禁止を第2システムから送信される信号に基づいて適切に制御する画像形成装置及びその制御方法を提供できる。
【発明を実施するための最良の形態】
【0010】
以下、本発明に係る実施形態について図面を用いて説明する。なお、以下の実施の形態は特許請求の範囲に記載された発明を限定するものでなく、また本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。また、ここでは、画像形成装置としてプリンタを用いて説明を記載する。しかしながら、本発明における画像形成装置は、複合機、コピー機、FAXなど、記録材に画像を形成する装置であればよい。また、本発明は、一適用例として、カラーレーザプリンタによって実現される。しかしながら、本発明は、インクジェットプリンタ等、他の画像印刷方式を採用したプリンタによって実現されてもよい。
【0011】
[第1実施形態]
以下では、図1乃至図6、及び図9を参照して、第1実施形態について説明する。図1は、第1実施形態に係るカラーレーザービームプリンタ(以下プリンタと称す。)の構成例を示す断面図である。
【0012】
図1に示す100はプリンタを示す。プリンタ100は、外部に接続されているホストコンピュータから供給されるプリントデータ(文字コードや画像データ等)及び制御コードから成る印刷命令を受信して記憶する。その後、プリンタ100は、印刷命令に従って、対応する文字パターンやイメージ等を作成し、記録材に可視像を形成する。
【0013】
プリンタ100は、システム制御部110、操作パネル120、出力制御部130、光学ユニット140及び感光ドラム151を備える。さらに、プリンタ100は、選択機構部152、保持フレーム153、転写ドラム154、定着ユニット155、帯電器156、クリーナー157、分離爪158、排紙部159、排出トレイ160及び記録材カセット161を備える。
【0014】
システム制御部110は、ホストコンピュータから供給される印刷命令を解析し、印刷イメージを生成するとともに、プリンタ100の制御を行う。また、システム制御部110は、ユーザによる操作及びユーザに対する状態通知を行うための操作パネル120と接続される。操作パネル120は、スイッチ及びLED表示器等を備え、プリンタ100の筐体の一部として実装される。システム制御部110において生成された最終的な印刷イメージは、ビデオ信号として出力制御部130に送出される。出力制御部130は、光学ユニット140及び各種駆動系機構部に対し制御信号を出力し、印刷処理を制御する。
【0015】
プリンタ100において、記録材カセット161から給送された記録材Pは、その先端がグリッパ154fにより狭持されて、転写ドラム154の外周に保持される。感光ドラム151には、4色に色分解された原稿画像の静電潜像が光学ユニット140によって形成される。
【0016】
具体的に、まず、感光ドラム151は、帯電器156によって所定の極性で均一に帯電される。ここで、システム制御部110において、デバイス依存ビットマップとして展開された印刷命令が、対応するパターンのビデオ信号に変換され光学ユニット140に出力される。光学ユニット140は、静電潜像を形成するために、半導体レーザ141、ポリゴンミラー142、スキャナモータ143、ポリゴンレンズ144及び反射鏡145を備える。ビデオ信号の入力に応じて半導体レーザ141から発射されるレーザ光は、オンオフ制御される。さらに、レーザ光は、スキャナモータ143によって高速回転するポリゴンミラー142で反射され、ポリゴンレンズ144、反射鏡145を介して感光ドラム151上を走査露光する。これにより、感光ドラム151上にはビデオ信号に対応した静電潜像が形成される。
【0017】
形成された静電潜像は、各色の現像器Dy,Dm,Dc,Dbにより、順次、現像される。現像器Dy,Dm,Dc,Dbは、順に、イエロー(Y),マゼンタ(M),シアン(C),ブラック(B)のトナーを有する。続いて、現像された各色のトナー像が転写ドラム上の記録材Pに重ねて転写されることにより、記録材P上に多色画像が形成される。
【0018】
具体的に、M(マゼンタ)色の静電潜像がM(マゼンタ)色の現像器Dmにより現像され、感光ドラム151上にM(マゼンタ)色の第1のトナー像が形成される。一方、所定のタイミングで記録材Pが給送され、転写ドラム154には、トナーと反対極性(例えばプラス極性)の転写バイアス電圧が印加される。これにより、感光ドラム151上の第1トナー像が記録材Pに転写されるとともに、記録材Pが転写ドラム154の表面に静電吸着される。
【0019】
その後、感光ドラム151に残留するM(マゼンタ)色トナーがクリーナー157によって除去され、プリンタ100は、次の色の潜像形成及び現像行程に移行する。以下同様に、C(シアン)、Y(イエロー)、Bk(ブラック)の順で各色のトナー像の転写が行われる。但し、各色の転写時には、転写ドラム154には前回よりも高いバイアス電圧が印加される。
【0020】
ここで、選択機構部152の動作について説明する。選択機構部152は、保持フレーム153に接続され、回転軸152aを備える。保持フレーム153は、ソレノイド153a及び支点153bを有する。各色の現像器Dy,Dm,Dc,Dbは、その両端に回転支軸を有し、選択機構部152に保持される。これにより、選択機構部152が現像器選択のために回転軸152aを中心にして回転しても、各現像器Dy,Dm,Dc,Dbは、図1に示すようにその姿勢を一定に維持することができる。
【0021】
選択された現像器が現像位置に移動すると、保持フレーム153がソレノイド153aによって支点153bを中心にして感光ドラム151の方向へ引っ張られる。このようにして現像処理が行われる。
【0022】
その後、記録材Pは、転写ドラム154より分離されて、定着ユニット155へ搬送される。定着ユニット155は、熱と圧力によりトナー像を記録材Pに定着させる。トナー像が定着されると、記録材Pは、排紙部159によって排出トレイ160に排出される。
【0023】
図2は、第1実施形態に係るプリンタ100の制御構成を示す図である。プリンタ100は、一般的な情報処理を制御するメイン基板200(図1のシステム制御部110の機能を含む)と画像形成処理を制御するサブ基板220(図1の出力制御部130の機能を含む)から構成される。メイン基板200(メインシステム)とサブ基板220(サブシステム)を1つの基板(システム)として構成することが可能であることは言うまでもない。しかしながら、説明を簡潔にするため本実施形態では、メイン基板200とサブ基板220との2つから構成される場合について説明する。
【0024】
メイン基板200は、ブートROM201、CPU202、RAM203、バスコントローラ204、ディスクコントローラ205、ポートスイッチ206、ポートセレクタ207、フラッシュディスク208及びUSBコントローラ210を備える。CPU202は、メイン基板200を制御するための第1制御手段として機能する。
【0025】
ブートROM201は、ブート処理を行うための起動プログラム(ブートプログラム)が格納された不揮発性メモリである。CPU202は、起動プログラム及び他のプログラムを実行する演算装置である。その他のプログラムとしては、後述する第1OSプログラム、アプリケーションプログラム等がある。また、CPU202には、プログラムやデータを一時的に格納するRAM203が接続される。USBコントローラ210には、USBメモリ211のようなUSBデバイスを制御する機能も実装される。
【0026】
バスコントローラ204は、サブ基板220との接続を制御する。ディスクコントローラ205は、アクセス制御手段として機能し、メイン基板200に接続されたハードディスク装置(以下、HDDと称す。)209及びフラッシュディスク208を制御する。ここで、フラッシュディスク208は第1記憶手段として機能し、HDD209は第2記憶手段として機能する。また、ディスクコントローラ205には、ポートスイッチ206を介してポートセレクタ207が接続されている。ポートスイッチ206は、接続遮断手段として機能し、接続デバイスへの接続を接続状態又は遮断状態に制御することで、接続デバイスへのアクセスの許可/禁止を制御する。ポートセレクタ207には、フラッシュディスク208及びHDD209が接続される。ポートセレクタ207は、切替手段として機能し、フラッシュディスク208及びHDD209の何れか一方へディスクコントローラ205の接続を切り替える。本実施形態では、ディスクコントローラ205、ポートスイッチ206及びポートセレクタ207を別々のモジュールとして記載しているが、これらの一部又は全部を一つのモジュールとして実装してもよい。
【0027】
一方、サブ基板220は、ブートROM221、CPU222、RAM223、画像プロセッサ225及びデバイスコントローラ226を備える。さらに、サブ基板220は、メモリコントローラ224、バスコントローラ230、231及びI/Oマルチプレクサ232を備える。また、サブ基板220は、各コントローラを物理的に接続するバス241、242、243を備える。図2に示すサブ基板220では、バス(第2バス)243を介したメイン基板200へのアクセスと、バス(第1バス)242を介したブートROM221へのアクセスは同時には行えず、排他制御する必要がある。CPU222は、サブ基板220を制御するための第2制御手段として機能する。
【0028】
ブートROM221は、起動プログラムを格納するための不揮発性メモリである。CPU222は、起動プログラムや他のプログラムを実行するための演算装置である。その他のプログラムとしては、後述する第2OSプログラム等がある。RAM223は、プログラムやデータを一時的に格納する。メモリコントローラ224は、RAM223のアクセス速度やリフレッシュタイミングを制御する。画像プロセッサ225は、画像形成処理を高速に実行する。
【0029】
デバイスコントローラ226は、サブ基板220に接続されたファクシミリエンジン227、プリンタエンジン228、スキャンエンジン229等の画像形成デバイスの制御や画像形成処理を実行する。バスコントローラ230、231は、各バスへのアクセス可否、アクセス速度及びアクセスタイミングを制御する。I/Oマルチプレクサ232は、複数あるバスの入力信号の中から信号を切り替えて1本の線で出力させる。例えば、図2に示すサブ基板220では、バス243を介したメイン基板200へのアクセスと、バス242を介したブートROM221へのアクセスは同時には行えず、I/Oマルチプレクサ232を用いて排他制御する必要がある。
【0030】
次に、図3乃至図5Bを参照して、プリンタ100の起動処理について説明する。図3は、第1実施形態に係るメイン基板200の起動処理を示すフローチャートである。
【0031】
まず、メイン基板200に電源が投入されると、CPU202は、ブートROM201に格納された起動プログラムを逐次実行する。なお、メイン基板200への電源投入は、後述するステップS503において実行されてもよい。ステップS301において、CPU202は、判定手段として機能し、接続可能な記憶装置としてのリムーバブルメディアを用いて当該プリンタ100を起動させるか否かを判定する。ここでは、外部記憶装置であるリムーバブルメディアとして、図2に示すUSBメモリ211を一例に説明する。プリンタ100の起動処理及びハードウェア制御等を実行するためのプログラム(以下では、説明を容易にするため第1OSプログラムと称す。)を記憶している。ここで、第1OSプログラムは、メイン基板用のOS(Operating System)を示す。また、プリンタ100は、第1OSプログラムをフラッシュディスク208に予め記憶している。例えば、CPU202は、不図示の不揮発性メモリに予め記憶されたリムーバブルメディアによる起動が許可されているモードか否かを示すフラグを取得することにより、判定を行う。このフラグは、ハードキーやパスワード等の認証を経て、保守者のみが値を変更することができる。
【0032】
フラグの値がリムーバブルメディアからの起動を許可した許可モードである場合、ステップS302において、CPU202は、USBメモリ211に記憶された第1OSプログラムを、RAM203にコピーして、逐次実行する。なお、USBメモリ211には、サブ基板220を動作させるためのOSプログラム(第2OSプログラム)が記憶されているものとする。そして、CPU202により実行される第1OSプログラムは、USBメモリ211から第2OSプログラムを読み出して、サブ基板220のRAM223に格納させる。ここで、CPU202は、提供手段として機能する。サブ基板220のCPU222は、RAM223に記憶された第2OSプログラムを実行することで、サブ基板220を動作状態に移行させる。一方、許可モードではない場合、ステップS303において、CPU202は、ポートスイッチ206をONに切り替えることにより、ディスクコントローラ205からポートセレクタ207の先に接続されたフラッシュディスク208へのアクセスを可能に制御する。なお、ポートセレクタ207は、電源投入時にフラッシュディスク208を選択するように構成されている。続いて、ステップS304において、CPU202は、ディスクコントローラ205を操作することにより、フラッシュディスク208から、第1OSプログラムをRAM203に読み込んで実行する。ここで、ディスクコントローラ205は、アクセス制御手段として機能し、ポートセレクタ207により選択された、フラッシュディスク208又はHDD209に対するアクセスを許可する。
【0033】
図4は、第1実施形態に係るメイン基板用OSの処理を示すフローチャートである。ここでの処理は、図3のステップS302でUSBメモリ211から、又はステップS304でフラッシュディスク208からRAM203に読み込まれた第1OSプログラムに従ってCPU202で実行される。ここでCPU202は、起動手段として機能する。
【0034】
ステップS401において、CPU202は、ポートスイッチ206がONになっている否かを判定する。即ち、CPU202は、フラッシュディスク208へのアクセスが許可されているか否かを判定している。ONになっていない場合、ステップS402において、CPU202は、ポートスイッチ206をONにする。
【0035】
ここで、本実施形態によれば、正規の第1OSプログラムを含まないリムーバブルメディアを用いてプリンタ100を起動した場合には、ステップS402に示すポートスイッチ206をONにする処理が実行されない。このため、ディスクコントローラ205を操作した場合でも、フラッシュディスク208又はHDD209へのアクセスが禁止されている。これにより、リムーバブルメディアから不適切なプログラムが実行された場合であっても、ポートスイッチ206の切り替え方法がわからない限りは、フラッシュディスク208又はHDD209へはアクセスできないことになる。したがって、不適切なプログラムが実行された場合であっても、本実施形態に係るプリンタ100は、フラッシュディスク208及びHDD209への不適切なアクセス、データの改竄等を抑制することができる。
【0036】
次に、ステップS403において、CPU202は、ディスクコントローラ205を操作して、フラッシュディスク208からサブ基板用のOS(以下では、説明を容易にするため第2OSプログラムと称す。)を取得して、サブ基板220へ提供する。サブ基板220では、送信された第2OSプログラムがRAM223に読み込まれる。S403の処理の詳細については、後述する図5AのステップS506で説明する。続いて、ステップS404において、CPU202は、サブ基板220上のCPU222に対し、RAM223に読み込んだ第2OSプログラムの実行を指示する。その後、ステップS405において、CPU202は、サブ基板220からHDD209へのアクセス許可が通知されるまでループして待機する。
【0037】
ステップS405でHDD209へのアクセス許可が通知されると、ステップS406において、CPU202は、ディスクコントローラ205を操作することにより、メインプログラムをHDD209からRAM203に読み込んで実行する。なお、メインプログラムは、第1OSプログラム上で実行可能なアプリケーションプログラムであり、コピー機能、プリント機能等の画像形成装置の各機能を実現するためのプログラムである。その後、CPU202は、メインプログラムに従ってメイン基板200を動作させる。
【0038】
図5A及び図5Bは、第1実施形態に係るサブ基板220における起動処理を示すフローチャートである。図5Aに示す処理は、メイン基板200に電源が投入されると同時にサブ基板220にも電源が投入され、ブートROM221に記憶された起動プログラムに従ってCPU222で実行される。
【0039】
図5Aに示すように、ステップS501において、CPU222は、バス241、バスコントローラ231、I/Oマルチプレクサ232、バス242を介してブートROM221から起動プログラムを逐次読み出しながら実行する。以下では、この動作をROM実行と称する。ここで、バスコントローラ231は、デフォルト設定で動作可能であるものとする。また、CPU222は、メモリコントローラ224及びRAM223の初期化を行う。
【0040】
メモリコントローラ224及びRAM223の初期化が終了すると、ステップS502において、CPU222は、ブートROM221の起動プログラムをRAM223にコピーし、その後はRAM223からプログラムを逐次読み出し実行する。以下では、この動作をRAM実行と称する。RAM実行中においては、CPU222は、ブートROM221にアクセスすることがないよう制御する。したがって、RAM実行中は、バスコントローラ231も動作しない。
【0041】
ステップS503において、CPU222は、メイン基板200のリセット解除を行いメイン基板200を起動させる。ここでCPU222は、メイン基板200の電源をONに制御することでメイン基板200を起動させてもよい。その後、メイン基板200は図3に示す起動処理を実行する。
【0042】
ステップS504において、CPU222は、デバイスコントローラ226、バスコントローラ230、画像プロセッサ225、メモリコントローラ224などの初期化を行う。バス243を介したメイン基板200へのアクセスと、バス242を介したブートROM221へのアクセスを排他制御する必要がある。しかし、上述のステップS502でブートROM221へアクセスすることがないように制御しているため、排他制御を省略することができる。したがって、ステップS504以降の処理では、バス243を介してメイン基板200に対して任意のタイミングでアクセスすることができる。
【0043】
ステップS505において、CPU222は、メイン基板200の初期化が終了しているか否かを判定する。具体的に、CPU222は、図4のステップS404の指示を受信したか否かを判定することで、メイン基板200の初期化が終了しているか否かを判定する。メイン基板200の初期化が終了している場合、メイン基板200では、第2OSプログラムがHDD209又はフラッシュディスク208などからメイン基板200に備えられるRAM203に展開されている。ステップS506において、CPU222は、サブ基板220を動作させるための第2OSプログラムをメイン基板200のRAM203からRAM223にコピーする。さらに、ステップS507において、CPU222は、ステップS506のコピーが終了しているか否かをコピーが終了するまで繰り返し判定する。コピーが終了すると、ステップS508において、CPU222は、コピーされた第2OSプログラムを実行(RAM実行)する。
【0044】
次に、図5Bを参照して、第2OSプログラムに従って実行されるCPU222の処理について説明する。図5Bに示す処理は、ステップS403でフラッシュディスク208からRAM223に読み込まれた第2OSプログラムに従ってCPU222実行される。
【0045】
図5Bに示すように、ステップS511において、CPU222は、ポートセレクタ207を操作して、HDD209へのアクセスを許可するように結線を切り替える。ここで、本実施形態によれば、ポートセレクタ207の切り替えは、サブ基板220からのみで操作可能であり、即ちメイン基板200からは操作できないようなハード構成となる。その後、ステップS512において、CPU222は、送信手段として機能し、メイン基板200のCPU202に対して、HDD209へのアクセス許可通知(許可信号)を送信する。
【0046】
ここで、図4に示すメイン基板200における第1OSプログラムの処理は、ステップS405のループから抜け、ステップS406の処理に進む。即ち、CPU202は、HDD209からメインプログラムをRAM203に読み込んで実行する。
【0047】
次に、図6を参照して、図3乃至図5Bを用いて説明した処理の全体的なシーケンスについて説明する。図6は、第1実施形態に係る起動処理のシーケンスを示す図である。
【0048】
ステップS601において、例えば、CPU202がディスクコントローラ205を操作して、フラッシュディスク208又はHDD209へのアクセスを行ったと想定する。この場合、メイン基板200が起動直後であるためポートスイッチ206がOFFに設定されており、ステップS602において、ディスクコントローラ205は、CPU202に対してディスク無しエラーを返却する。リムーバブルメディアから、不適切なプログラムを実行させた場合が、これに該当する。
【0049】
ステップS603において、ブートROM201からRAM203に読み込まれた起動プログラムを実行するCPU202は、ポートスイッチ206をONに制御する。続いて、ステップS604において、CPU202は、メイン基板200用の第1OSプログラムを読み込むためにディスクコントローラ205に対してRead要求を発行する。ステップS605及びS606において、ディスクコントローラ205は、フラッシュディスク208へアクセスを行い、第1OSプログラムを取得する。さらに、ステップS607において、ディスクコントローラ205は、CPU202にフラッシュディスク208より取得した第1OSプログラムを返却する。以上により、第1OSプログラムがメイン基板200内のRAM203にロードされ、CPU202により実行されることとなる。次に、CPU202は、前述のステップS604乃至ステップS607と同様の処理を行い、フラッシュディスク208から第2OSプログラムをサブ基板220内のRAM223にロードし、実行する。
【0050】
ステップS608において、第2OSプログラムを実行するCPU222は、ポートセレクタ207を操作して、ディスクコントローラ205より接続可能な接続先をフラッシュディスク208からHDD209に切り替える。ポートセレクタ207を切り替えると、ステップS609において、CPU222は、CPU202に対して、HDD209へのアクセスが許可されたことを通知する。
【0051】
続いて、ステップS610において、CPU202は、メインプログラムを読み込むためにディスクコントローラ205に対してRead要求を発行する。続いて、ステップS611及びS612において、ディスクコントローラ205は、HDD209からメインプログラムを取得して、CPU202へ返却する。
【0052】
以上、説明したように本実施形態に係る画像形成装置は、リムーバブルメディアが接続可能なメイン基板200及びサブ基板220を備える。本画像形成装置は、メイン基板200用の第1OSプログラムに従って動作する起動部がポートスイッチ206を有効(ON)にすることで、フラッシュディスク208からサブ基板220用のプログラムを読み込む。これにより、リムーバブルメディアから読み込まれた不適切なプログラムでは、ポートスイッチ206の切り替え処理を実装していなければ、フラッシュディスク208及びHDD209にアクセスすることができない。したがって、不適切なプログラムによってフラッシュディスク208及びHDD209へのアクセスを抑制することで、本画像形成装置は、不適切な情報取得やデータの改竄等を抑制しうる。
【0053】
なお、本発明は、上述した実施形態に限らず様々な変形が可能である。本画像形成装置は、サブ基板220のみがディスクコントローラ205を制御可能な接続先のディスク、例えば、フラッシュディスク208やHDD209を選択してもよい。これにより、本画像形成装置は、サブ基板220が起動しなければ、メイン基板200用のメインプログラムをHDD209から取得することができない。つまり、上述した起動部がサブ基板220用の第2OSプログラムを取得しない限り、画像形成装置を動作させることができないことを意味している。したがって、本画像形成装置は、規定の処理を含んでいない不適切なプログラムでは、画像形成装置を動作させることができないため、不適切な処理を抑制することができる。
また、上述の構成では、サブ基板220のブートROM221の内容を更新する際に、メインボード側と接続されたバスとの競合が生じるが、図9を用いて、この問題を解決する方法を説明する。以下で示す処理は、CPU202及びCPU222で実行されるものである。具体的に、S901乃至S903の処理は、CPU202で実行される。一方、S904乃至S909の処理は、CPU222で実行される。
【0054】
ステップS901において、CPU202は、サブ基板220のブートROM221を更新するためのルーチンを開始する。ステップS902において、CPU202は、CPU222に対してブートROM221を更新するモードに入ったことを通知する。これにより、CPU222はブートROM221の更新ルーチンを開始する。その後、ステップS903において、CPU202は、更新用ROMデータをUSBメモリ211等の不揮発性メモリからメイン基板200上のRAM203に展開する。
【0055】
ステップS904において、CPU222は、メインボード上のRAM203に展開された更新用ROMデータをRAM223にコピーする。ステップS905において、CPU222は、ステップS904の処理が完了しているか否かを判定する。ステップS904の処理が完了すると、CPU222は、ステップS906において、メイン基板200をリセットする。これによりCPU202が動作しなくなるため、メイン基板200とサブ基板220との通信用のバス243へのアクセスをしないよう制御できる。もちろん、CPU222は、バス241、バスコントローラ230、I/Oマルチプレクサ232、バス243を介したメイン基板200へのアクセスを行わないように制御する。これにより、ブートROM221へのアクセスが可能となる。
【0056】
ステップS907において、CPU222は、更新用ロムデータをRAM223からブートROM221に上書き(更新)する。続いて、ステップS908において、CPU222は、ブートROM221の上書き処理が完了しているか否かを判定する。上書きが完了した後、ステップS909において、CPU222は、メイン基板200のリセット解除を行い、メインボードを再起動させる。なお、CPU222は、メイン基板200の電源ONに制御することでメイン基板200を再起動させてもよい。この後メイン基板200は再起動処理を行い、ブートROM221の更新処理を終了する。
【0057】
[第2実施形態]
次に、図7及び図8を参照して、第2実施形態について説明する。本実施形態は、HDD209に致命的なエラーが発生した場合にフラッシュディスク208を用いてプリンタ100を起動することを特徴とする。これにより、本実施形態に係るプリンタ100は、HDD209に致命的なエラーが発生した場合であっても起動することが可能となる。なお、フラッシュディスク208を用いた起動の場合、プリンタ100は、機能制限された起動となる。
【0058】
図7は、第2実施形態に係るHDD209のエラー処理を示すフローチャートである。以下で説明する処理は、HDD209でエラーが発生した場合のCPU202によって行われるエラー処理を示す。
【0059】
ステップS701において、CPU202は、発生したHDD209のエラーが致命的か否かを判定する。ここで、致命的なエラーとは、プリンタ100の起動が不可能なエラーや画像形成処理が不可能なエラーを示す。致命的なエラーではない場合、ステップS702において、CPU202は、リトライ処理やエラー表示等のエラー処理を行い、エラー処理を終了する。
【0060】
一方、エラーが致命的である場合、ステップS703において、CPU202は、不図示の不揮発性メモリに割り当てられた縮退フラグに1を設定する。その後、ステップS704において、CPU202は、システムの再起動を実行し、処理を終了する。
【0061】
図8は、第2実施形態に係るサブ基板220における起動処理を示すフローチャートである。以下で説明する処理は、第1の実施形態で説明した図5Bに示すサブ基板220の起動処理を、本実施形態を実現するために修正した処理である。
【0062】
ステップS801において、CPU222は、不揮発性メモリに割り当てられた縮退フラグがONに設定されているか否かを判定する。具体的に、CPU222は、縮退フラグが1である場合にONであると判定し、0である場合にOFFであると判定する。
【0063】
縮退フラグが0である場合、ステップS511において、CPU222は、ポートセレクタ207をフラッシュディスク208からHDD209に切り替える処理を実行する。一方、縮退フラグが1である場合、CPU222は、ステップS511の処理を実行することなくS802へ処理を遷移させる。これにより、ポートセレクタ207の切り替え処理が実行されないため、ポートセレクタ207はフラッシュディスク208を選択した状態となっている。
【0064】
ステップS802において、CPU222は、CPU202に対して、HDD209又はフラッシュディスク208へのアクセス許可通知を通知する。しかし、ここでの処理は、S512の処理と同様であってもよい。つまり、CPU202は、現在、ポートセレクタ207がフラッシュディスク208又はHDD209の何れに接続されているかを知る必要はない。これは、CPU202の処理がディスクコントローラ205に対して、メインプログラムのRead要求を発行するだけであり、明示的にアクセス先を指定しないためである。
【0065】
CPU202がRead要求を行うと、ディスクコントローラ205は、ポートセレクタ207がフラッシュディスク208と接続されているため、HDD209ではなくフラッシュディスク208からメインプログラムを読み込むこととなる。ここで、フラッシュディスク208には、メイン基板200用のメインプログラムとして、HDDを利用しない機能限定されたアプリケーションプログラムが記憶されている。したがって、縮退フラグが1のときにはフラッシュディスク208の機能限定されたアプリケーションプログラムが読み出され、縮退フラグが0のときはHDD209の通常版プログラムが読み出される。なお、保守担当者がHDD209を交換し、システムが正常に動作するようになった際には、縮退フラグを0に設定することにより、次回のシステム起動時にメイン基板200用のメインプログラムは、HDD209から読み込まれることとなる。
【0066】
以上説明したように、本実施形態によれば、HDDを利用しない機能限定プログラムをフラッシュディスク208に予め格納しておく。この場合、HDD209のエラー処理の中で致命的なエラーを検出すると不揮発性記憶領域に割り当てられた縮退フラグを“1”にセットし再起動する。
【0067】
そして、起動時にサブ基板用プログラムで、縮退フラグに“1”がセットされていない、即ち“0”がセットされている場合のみ、ポートセレクタをHDDに切り替える処理を行うように構成する。以上により、HDD209が故障した際であっても、フラッシュディスク208に格納された機能限定プログラムが実行されるため、従来のようにHDD209が故障すると画像形成装置が機能しないといった状況を回避することが可能になる。
【0068】

以上説明したように、本実施形態に係るプリンタ100は、ブートメモリに記憶されたブートプログラムを更新するために、第2バスを介して新たなブートプログラムをサブ基板に送信し、新たなブートプログラムの送信が完了したか否かを判定する。また、プリンタ100は、新たなブートプログラムの送信が完了すると、新たなブートプログラムをブートメモリに更新する。さらに、プリンタ100は、新たなブートプログラムの送信が完了すると、メイン基板をリセットするとともに、第2バスへのアクセスを禁止する。これにより、プリンタ100は、新たなプログラムをメイン基板からサブ基板に送信した後に、バスの排他制御を行う必要がない。したがって、プリンタ100は、ブートROMにおける更新処理の処理速度を向上しうる。
【0069】
[他の実施形態]
以上、様々な実施形態を詳述したが、本発明は、複数の機器から構成されるシステムに適用してもよいし、また、一つの機器からなる装置に適用してもよい。例えば、プリンタ、ファクシミリ、PC、サーバとクライアントとを含むコンピュータシステムなどの如くである。
【0070】
本発明は、前述した実施形態の各機能を実現するコンピュータプログラムを、システム若しくは装置に対して直接または遠隔から供給し、そのシステム等に含まれるコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される。
【0071】
従って、本発明の機能・処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、上記機能・処理を実現するためのコンピュータプログラム自体も本発明の一つである。
【0072】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等、プログラムの形態を問わない。
【0073】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RWなどがある。また、記録媒体としては、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などもある。
【0074】
また、プログラムは、クライアントコンピュータのブラウザを用いてインターネットのホームページからダウンロードしてもよい。すなわち、該ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードしてもよいのである。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明の構成要件となる場合がある。
【0075】
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布してもよい。この場合、所定条件をクリアしたユーザにのみ、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報で暗号化されたプログラムを復号して実行し、プログラムをコンピュータにインストールしてもよい。
【0076】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現されてもよい。なお、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行ってもよい。もちろん、この場合も、前述した実施形態の機能が実現され得る。
【0077】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれてもよい。そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行ってもよい。このようにして、前述した実施形態の機能が実現されることもある。
【図面の簡単な説明】
【0078】
【図1】第1実施形態に係るカラーレーザービームプリンタの構成例を示す断面図である。
【図2】第1実施形態に係るプリンタ100の制御構成を示す図である。
【図3】第1実施形態に係るメイン基板200の起動処理を示すフローチャートである。
【図4】第1実施形態に係るメイン基板用OSの処理を示すフローチャートである。
【図5A】、
【図5B】第1実施形態に係るサブ基板220における起動処理を示すフローチャートである。
【図6】第1実施形態に係る起動処理のシーケンスを示す図である。
【図7】第2実施形態に係るHDD209のエラー処理を示すフローチャートである。
【図8】第2実施形態に係るサブ基板220における起動処理を示すフローチャートである。
【図9】第1実施形態に係るブートROM221の更新処理を示すフローチャートである。
【符号の説明】
【0079】
100:プリンタ
200:メイン基板
220:サブ基板

【特許請求の範囲】
【請求項1】
第1システム及び第2システムを備える画像形成装置であって、
前記第1システムは、
前記第1システムを制御する第1制御手段と、
前記第1システムを動作させるための第1OSプログラム及び前記第2システムを動作させるための第2OSプログラムを記憶する第1記憶手段と、
前記第1OSプログラムにより実行可能なアプリケーションプログラムを記憶する第2記憶手段と、
前記第1及び第2記憶手段へのアクセスを制御するアクセス制御手段と、
前記第1記憶手段から前記第2OSプログラムを取得して前記第2システムに提供する提供手段とを有し、
前記第2システムは、
前記第2システムを制御する第2制御手段であって、前記提供手段により提供された前記第2OSプログラムに基づいて前記第2システムを動作させる第2制御手段と、
前記第2システムが動作状態となったことに応じて、前記第1制御手段による前記第2記憶手段へのアクセスを許可する許可信号を前記アクセス制御手段に送信する送信手段とを有し、
前記アクセス制御手段は、前記許可信号を受信するまでは前記第1制御手段による前記第2記憶手段へのアクセスを禁止し、前記許可信号を受信したことに応じて前記第1制御手段による前記第2記憶手段へのアクセスを許可することを特徴とする画像形成装置。
【請求項2】
前記アクセス制御手段は、
前記第1及び第2記憶手段の何れか一方へ接続を切り替える切替手段と、
前記接続を接続状態又は遮断状態に制御することで、前記アクセスの許可又は禁止を制御する接続遮断手段と
を備えることを特徴とする請求項1に記載の画像形成装置。
【請求項3】
前記切替手段は、
前記許可信号によってのみ、接続を切り替えることを特徴とする請求項2に記載の画像形成装置。
【請求項4】
前記第1システムに接続可能な外部記憶装置であって、前記第1OSプログラム及び前記第2OSプログラムを記憶する外部記憶装置を用いて前記第1システムを動作させるか否かを判定する判定手段とを有し、
前記アクセス制御手段は、前記外部記憶装置を用いることなく前記第1システムを起動させる場合は前記第1制御手段による前記第1記憶手段へのアクセスを許可し、前記外部記憶装置を用いて前記第1システムを起動させる場合は前記第1制御手段による前記第1記憶手段及び前記第2記憶手段へのアクセスを禁止することを特徴とする請求項1乃至3のいずれか1項に記載の画像形成装置。
【請求項5】
前記第1システムを起動させるために前記外部記憶装置を用いるか否かを示す情報を格納する不揮発性メモリをさらに備え、
前記判定手段は、前記不揮発性メモリに記憶された情報を用いて判定を行うことを特徴とする請求項4に記載の画像形成装置。
【請求項6】
前記第2記憶手段に故障が発生しているか否かを判定する手段と、
前記第2記憶手段に故障が発生しているか否かを示す情報を格納する格納手段とをさらに備え、
前記第1記憶手段は、機能限定された前記アプリケーションプログラムをさらに記憶し、
前記アクセス制御手段は、
前記格納手段に格納された前記情報が前記第2記憶手段に故障が発生していることを示す場合に、前記アクセス制御手段を用いて前記第1記憶手段から第2記憶手段に接続を切り替えることを禁止し、
前記第1制御手段は、
前記第1記憶手段から取得される前記機能限定されたアプリケーションプログラムを実行することを特徴とする請求項2に記載の画像形成装置。
【請求項7】
前記第2システムに電源が投入されたときのブート処理を実行するためのブートプログラムを記憶するブートメモリへ接続された第1バスと、
前記第2システムから前記第1システムに接続された第2バスと、
前記第1バス及び第2バスへのアクセスを排他制御する排他制御手段と、
前記第1バス又は前記第2バスへのアクセスを禁止する禁止手段であって、前記ブートプログラムを読み出した後に、前記排他制御手段の処理を省略するために前記第1バスへのアクセスを禁止する禁止手段と
をさらに備えることを特徴とする請求項1乃至6のいずれか1項に記載の画像形成装置。
【請求項8】
第1制御手段により制御される第1システムと、第2制御手段により制御される第2システムと、前記第1システムを動作させるための第1OSプログラム及び前記第2システムを動作させるための第2OSプログラムを記憶する第1記憶手段と、前記第1OSプログラムにより実行可能なアプリケーションプログラムを記憶する第2記憶手段と、を備える画像形成装置の制御方法であって、
前記第1及び第2記憶手段へのアクセスを制御するアクセス制御ステップと、
前記第1記憶手段から前記第2OSプログラムを取得して前記第2システムに提供する提供ステップと、
前記提供ステップにより提供された前記第2OSプログラムに基づいて前記第2システムを動作させる動作ステップと、
前記第2システムが動作状態となったことに応じて、前記第1制御手段による前記第2記憶手段へのアクセスを許可する許可信号を前記第2システムから前記第1システムに送信する送信ステップとを実行し、
前記アクセス制御ステップは、前記第1システムが前記許可信号を受信するまでは前記第1制御手段による前記第2記憶手段へのアクセスを禁止し、前記第1システムが前記許可信号を受信したことに応じて前記第1制御手段による前記第2記憶手段へのアクセスを許可することを特徴とする制御方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5A】
image rotate

【図5B】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate


【公開番号】特開2009−5019(P2009−5019A)
【公開日】平成21年1月8日(2009.1.8)
【国際特許分類】
【出願番号】特願2007−163017(P2007−163017)
【出願日】平成19年6月20日(2007.6.20)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】