特許第6192617号(P6192617)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 京セラドキュメントソリューションズ株式会社の特許一覧

<>
  • 特許6192617-情報処理装置、転送制御方法 図000002
  • 特許6192617-情報処理装置、転送制御方法 図000003
  • 特許6192617-情報処理装置、転送制御方法 図000004
  • 特許6192617-情報処理装置、転送制御方法 図000005
  • 特許6192617-情報処理装置、転送制御方法 図000006
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6192617
(24)【登録日】2017年8月18日
(45)【発行日】2017年9月6日
(54)【発明の名称】情報処理装置、転送制御方法
(51)【国際特許分類】
   G06F 21/60 20130101AFI20170828BHJP
【FI】
   G06F21/60
【請求項の数】8
【全頁数】14
(21)【出願番号】特願2014-158405(P2014-158405)
(22)【出願日】2014年8月4日
(65)【公開番号】特開2016-35672(P2016-35672A)
(43)【公開日】2016年3月17日
【審査請求日】2016年8月23日
(73)【特許権者】
【識別番号】000006150
【氏名又は名称】京セラドキュメントソリューションズ株式会社
(74)【代理人】
【識別番号】100167302
【弁理士】
【氏名又は名称】種村 一幸
(74)【代理人】
【識別番号】100135817
【弁理士】
【氏名又は名称】華山 浩伸
(72)【発明者】
【氏名】堤 匡史
【審査官】 岸野 徹
(56)【参考文献】
【文献】 国際公開第2011/021340(WO,A1)
【文献】 特開2002−182984(JP,A)
【文献】 特開2012−108779(JP,A)
【文献】 特開2008−052514(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 21/60
(57)【特許請求の範囲】
【請求項1】
プロセッサーからの要求に応じて第1記憶部及びメモリーの間でデータ転送処理を実行するデータ転送部と、
前記プロセッサーが前記第1記憶部を使用するために必要なシステム起動データを記憶する第2記憶部と、
前記データ転送部による前記第1記憶部の予め定められた特定記憶領域に記憶されているデータを前記メモリーに転送する第1転送処理の実行を検出し、前記第2記憶部に記憶されている前記システム起動データを前記メモリーに転送する第1転送制御部と、
前記データ転送部による前記メモリーに記憶されている前記システム起動データを前記特定記憶領域に転送する第2転送処理の実行を検出し、前記メモリーに記憶されている前記システム起動データを前記第2記憶部に転送する第2転送制御部と、
を備える情報処理装置。
【請求項2】
前記特定記憶領域が、前記システム起動データが記憶される領域として予め定められたマスターブートレコードであって、
前記システム起動データが、前記第1記憶部のパーティションの構成を示す情報及び前記パーティションに格納されているオペレーティングシステムを起動させるための情報のいずれか一方又は両方を含む請求項1に記載の情報処理装置。
【請求項3】
前記第1転送制御部及び前記第2転送制御部が、前記データ転送部と前記メモリー及び前記第2記憶部との間に介在して設けられ、
前記第1転送制御部が、前記第1転送制御部を経由して前記データ転送部及び前記メモリーの間で転送されるデータに基づいて前記第1転送処理の実行を検出し、
前記第2転送制御部が、前記第2転送制御部を経由して前記データ転送部及び前記メモリーの間で転送されるデータに基づいて前記第2転送処理の実行を検出する請求項1又は2に記載の情報処理装置。
【請求項4】
前記第1転送制御部が、前記第1転送処理で転送されるデータを破棄する請求項1〜3のいずれかに記載の情報処理装置。
【請求項5】
前記第2転送制御部が、前記第2転送処理で転送される前記システム起動データに替えて予め定められたダミーデータを前記特定記憶領域に転送する請求項1〜4のいずれかに記載の情報処理装置。
【請求項6】
前記データ転送部が、AHCI規格に従って前記第1記憶部及び前記メモリーの間で前記データ転送処理を実行する請求項1〜5のいずれかに記載の情報処理装置。
【請求項7】
前記第2記憶部が、前記情報処理装置の制御基板に実装されている請求項1〜6のいずれかに記載の情報処理装置。
【請求項8】
プロセッサーが第1記憶部を使用するために必要なシステム起動データを記憶する第2記憶部を備える情報処理装置で実行される転送制御方法であって、
前記プロセッサーからの要求に応じて前記第1記憶部及びメモリーの間でデータ転送処理を実行する第1ステップと、
前記第1ステップによる前記第1記憶部の予め定められた特定記憶領域に記憶されているデータを前記メモリーに転送する第1転送処理の実行を検出し、前記第2記憶部に記憶されている前記システム起動データを前記メモリーに転送する第2ステップと、
前記第1ステップによる前記メモリーに記憶されている前記システム起動データを前記特定記憶領域に転送する第2転送処理の実行を検出し、前記メモリーに記憶されている前記システム起動データを前記第2記憶部に転送する第3ステップと、
を含む転送制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置及び情報処理装置で処理されるデータの転送制御方法に関する。
【背景技術】
【0002】
一般に、複合機のような情報処理装置には、情報処理装置で処理されるデータを記憶するハードディスクドライブなどの記憶部が設けられる。ところで、この種の情報処理装置では、ユーザーにとって秘匿性の高いデータが記憶部に記憶されることがある。ここで、情報処理装置が、秘匿性の高いデータが記憶される第1記憶部と、プロセッサーが前記第1記憶部を使用するために必要なシステム起動データが記憶される第2記憶部を備える構成が関連技術として知られている(例えば、特許文献1参照)。このような構成によれば、前記第1記憶部の盗難等によるデータの漏えいが抑制される。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2004−252968号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上記関連技術では、情報処理装置のプロセッサーは複数の記憶部を制御する必要がある。そのため、記憶部が一つである既存の構成に上記関連技術を適用するためには、情報処理装置の制御プログラムを変更する必要がある。
【0005】
本発明の目的は、情報処理装置の制御プログラムを変更することなく、記憶部に記憶されるデータの漏えいを抑制することが可能な情報処理装置及び転送制御方法を提供することにある。
【課題を解決するための手段】
【0006】
本発明の一の局面に係る情報処理装置は、データ転送部と、第2記憶部と、第1転送制御部と、第2転送制御部とを備える。前記データ転送部は、プロセッサーからの要求に応じて第1記憶部及びメモリーの間でデータ転送処理を実行する。前記第2記憶部は、前記プロセッサーが前記第1記憶部を使用するために必要なシステム起動データを記憶する。前記第1転送制御部は、前記データ転送部による前記第1記憶部の予め定められた特定記憶領域に記憶されているデータを前記メモリーに転送する第1転送処理の実行を検出し、前記第2記憶部に記憶されている前記システム起動データを前記メモリーに転送する。前記第2転送制御部は、前記データ転送部による前記メモリーに記憶されている前記システム起動データを前記特定記憶領域に転送する第2転送処理の実行を検出し、前記メモリーに記憶されている前記システム起動データを前記第2記憶部に転送する。
【0007】
本発明の他の局面に係る転送制御方法は、プロセッサーが第1記憶部を使用するために必要なシステム起動データを記憶する第2記憶部を備える情報処理装置で実行される転送制御方法であって、以下の第1ステップから第3ステップまでを含む。前記第1ステップは、前記プロセッサーからの要求に応じて前記第1記憶部及びメモリーの間でデータ転送処理を実行する。前記第2ステップは、前記第1ステップによる前記第1記憶部の予め定められた特定記憶領域に記憶されているデータを前記メモリーに転送する第1転送処理の実行を検出し、前記第2記憶部に記憶されている前記システム起動データを前記メモリーに転送する。前記第3ステップは、前記第1ステップによる前記メモリーに記憶されている前記システム起動データを前記特定記憶領域に転送する第2転送処理の実行を検出し、前記メモリーに記憶されている前記システム起動データを前記第2記憶部に転送する。
【発明の効果】
【0008】
本発明によれば、情報処理装置の制御プログラムを変更することなく、記憶部に記憶されるデータの漏えいを抑制することが可能な情報処理装置及び転送制御方法が実現される。
【図面の簡単な説明】
【0009】
図1図1は、本発明の実施形態に係る画像形成装置の構成を示す図である。
図2図2は、本発明の実施形態に係る画像形成装置のシステム構成を示すブロック図である。
図3図3は、本発明の実施形態に係る画像形成装置の制御部の構成を示すブロック図である。
図4図4は、本発明の実施形態に係る画像形成装置の制御部で実行される転送指示処理の一例を示すフローチャートである。
図5図5は、本発明の実施形態に係る画像形成装置の転送制御部で実行される転送制御処理の一例を示すフローチャートである。
【発明を実施するための形態】
【0010】
以下、添付図面を参照しながら、本発明の実施形態について説明し、本発明の理解に供する。なお、以下の実施形態は、本発明を具体化した一例であって、本発明の技術的範囲を限定する性格のものではない。
【0011】
[画像形成装置10の概略構成]
まず、図1及び図2を参照しつつ、本発明の実施形態に係る画像形成装置10の概略構成について説明する。ここで、図1は、前記画像形成装置10の断面模式図である。
【0012】
図1及び図2に示すように、前記画像形成装置10は、ADF1、画像読取部2、画像形成部3、給紙部4、制御部5、及び操作表示部7を備える。前記画像形成装置10は、画像データに基づいて画像を形成するプリンター機能と共に、スキャン機能、ファクシミリ機能、又はコピー機能などの複数の機能を有する複合機である。ここに、前記制御部5を備える装置が、本発明における情報処理装置の一例である。また、本発明は、スキャナー装置、プリンター装置、ファクシミリ装置、コピー機、パーソナルコンピューター、タブレット端末、スマートフォンなどの情報処理装置に適用可能である。
【0013】
前記ADF1は、原稿セット部、複数の搬送ローラー、原稿押さえ、及び排紙部を備え、前記画像読取部2によって読み取られる原稿を搬送する自動原稿搬送装置である。前記画像読取部2は、原稿台、読取ユニット、複数のミラー、光学レンズ、及びCCD(Charge Coupled Device)を備え、原稿から画像データを読み取る画像読取処理を実行することが可能である。
【0014】
前記画像形成部3は、前記画像読取部2で読み取られた画像データ又は外部のパーソナルコンピューター等の情報処理装置から入力された画像データに基づいて、電子写真方式で画像を形成する画像形成処理(印刷処理)を実行することが可能である。具体的に、前記画像形成部3は、感光体ドラム、帯電装置、光走査装置(LSU)、現像装置、転写ローラー、クリーニング装置、定着ローラー、加圧ローラー、及び排紙トレイを備える。そして、前記画像形成部3では、前記給紙部4から供給されるシートに画像が形成されて、画像形成後の前記シートが前記排紙トレイに排出される。なお、前記シートは、紙、コート紙、ハガキ、封筒、及びOHPシートなどのシート材料である。
【0015】
前記操作表示部7は、前記制御部5からの制御指示に応じて各種の情報を表示する液晶ディスプレーなどの表示部、及びユーザーの操作に応じて前記制御部5に各種の情報を入力する操作キー又はタッチパネルなどの操作部を有する。
【0016】
次に、図3を参照しつつ、前記制御部5について説明する。
【0017】
前記制御部5は、前記画像形成装置10の各構成を統括的に制御する。具体的に、前記制御部5は、図3に示すように、CPU51、ROM52、メモリーコントローラー53、メモリー54、第1記憶部55、データ転送部56、メモリーコントローラー57、第2記憶部58、及び転送制御部59を備える。
【0018】
ここで、前記制御部5において、前記CPU51、前記メモリーコントローラー53、前記メモリーコントローラー57、及び前記転送制御部59は、バス50Aを介して相互に通信可能に接続されている。また、前記制御部5において、前記データ転送部56は、前記転送制御部59を介して前記バス50Aに接続されている。更に、前記制御部5において、前記CPU51、前記データ転送部56、及び前記転送制御部59は、レジスタバス50Bを介して相互に通信可能に接続されている。
【0019】
前記CPU51は、各種の演算処理を実行するプロセッサーである。また、前記ROM52は、前記CPU51に各種の処理を実行させるための制御プログラムなどの情報が予め記憶される不揮発性の記憶装置である。そして、前記CPU51は、前記ROM52に予め記憶された各種の制御プログラムを実行することにより、前記画像形成装置10を統括的に制御する。ここに、前記CPU51が、本発明におけるプロセッサーの一例である。
【0020】
前記メモリーコントローラー53は、前記データ転送部56又は前記転送制御部59からの前記メモリー54へのアクセス要求に応じて、前記メモリー54に対するデータの書込み処理又は読出し処理を実行する。
【0021】
前記メモリー54は、前記CPU51の作業領域として使用される揮発性又は不揮発性の記憶装置である。例えば、前記メモリー54は、DDR−SDRAMである。
【0022】
前記第1記憶部55は、前記画像形成装置10で処理されるデータが記憶される記憶部である。例えば、前記第1記憶部55は、ハードディスクドライブのような不揮発性の記憶装置である。なお、前記第1記憶部55は、ソリッドステートドライブ、フラッシュメモリー、又はDVDドライブ等の記憶装置であってもよい。
【0023】
前記データ転送部56は、前記CPU51からの要求に応じて前記第1記憶部55及び前記メモリー54の間でデータ転送処理を実行するホストバスアダプターである。具体的に、前記データ転送部56は、前記CPU51からの要求に応じて、前記第1記憶部55に記憶されているデータを前記メモリー54に転送する第1データ転送処理又は前記メモリー54に記憶されているデータを前記第1記憶部55に転送する第2データ転送処理を実行する。
【0024】
ここで、前記画像形成装置10では、前記データ転送部56及び前記第1記憶部55が、シリアルATA規格に従って構成された信号線により接続されている。そして、前記データ転送部56は、AHCI(Advanced-Host-Controller-Interface)規格に従って、前記第1記憶部55及び前記メモリー54の間で前記データ転送処理を実行する。なお、前記データ転送部56が、他のインターフェイス規格に従って前記第1記憶部55及び前記メモリー54の間で前記データ転送処理を実行する構成が他の実施形態として考えられる。
【0025】
具体的に、前記データ転送部56は、前記CPU51により前記メモリー54に設定されるコマンドリスト541(図3参照)内のコマンドヘッダー、並びに前記CPU51により前記メモリー54に設定されるコマンドテーブル542(図3参照)内のコマンドFIS(Frame Information Structure)及びPRDT(Physical-Region-Descriptor-Table)に基づいて、前記データ転送処理を実行する。
【0026】
なお、前記コマンドヘッダーには、前記メモリー54に設定される前記コマンドテーブル542のアドレスが含まれる。また、前記コマンドFISには、前記第1記憶部55に送信されるコマンド及び前記コマンドによるデータの書込み処理又は読出し処理の対象となる前記第1記憶部55のアドレスを示すLBA(Logical-Block-Addressing)が含まれる。また、前記PRDTには、前記メモリーコントローラー53によるデータの書込み処理又は読出し処理の対象となる前記メモリー54のアドレス及びサイズが含まれる。
【0027】
一方、前記制御部5は、図2に示すように、転送指示部60を含む。具体的に、前記制御部5は、前記CPU51を用いて前記ROM52に記憶されている前記制御プログラムを実行することにより、前記転送指示部60として機能する。
【0028】
前記転送指示部60は、前記データ転送処理の具体的な処理内容を前記メモリー54に設定すると共に、前記データ転送部56に前記メモリー54に設定された前記データ転送処理の具体的な処理内容を取得させることで、前記データ転送部56に前記データ転送処理を実行させる。
【0029】
具体的に、前記転送指示部60は、前記メモリー54に前記コマンドヘッダーを含む前記コマンドリスト541並びに前記コマンドFIS及び前記PRDTを含む前記コマンドテーブル542を設定することで、前記データ転送処理の具体的な処理内容を設定する。また、前記転送指示部60は、前記レジスタバス50Bを介して前記データ転送部56のレジスタ561(図3参照)にアクセスして、前記レジスタ561に前記コマンドリスト541のアドレスを記憶させる。そして、前記転送指示部60は、前記データ転送部56に前記レジスタ561に記憶されたアドレスからのデータの取得を指示することで、前記データ転送部56に前記コマンドヘッダー、前記コマンドFIS、及び前記PRDTを取得させる。
【0030】
[転送指示処理]
次に、図4を参照しつつ、前記画像形成装置10の前記制御部5において前記CPU51及び前記データ転送部56により実行される転送指示処理の手順の一例について説明する。ここで、ステップS11、S12・・・は、前記制御部5で実行される処理手順(ステップ)の番号を表している。
【0031】
<ステップS11>
まず、ステップS11において、前記CPU51は、前記メモリー54に前記コマンドテーブル542を設定すると共に、前記コマンドテーブル542内に前記コマンドFIS及び前記PRDTを設定する。
【0032】
<ステップS12>
ステップS12において、前記CPU51は、前記メモリー54に前記コマンドリスト541を設定すると共に、前記コマンドリスト541内に前記コマンドヘッダーを設定する。ここで、前記コマンドヘッダーには、前記ステップS11で設定された前記コマンドテーブル542の前記メモリー54におけるアドレスが含まれる。
【0033】
<ステップS13>
ステップS13において、前記CPU51は、前記レジスタバス50Bを介して前記データ転送部56の前記レジスタ561にアクセスすることで、前記レジスタ561に前記ステップS12で設定された前記コマンドリスト541の前記メモリー54におけるアドレスを記憶させる。
【0034】
<ステップS14>
ステップS14において、前記CPU51は、前記データ転送部56に制御信号を送信して、前記データ転送部56に前記レジスタ561に記憶されたアドレスからのデータの取得及び取得したデータに基づく前記データ転送処理の実行を指示する。
【0035】
<ステップS15>
ステップS15において、前記データ転送部56は、前記ステップS14で前記CPU51から送信された前記制御信号に応じて、前記ステップS13で前記レジスタ561に記憶された前記メモリー54のアドレスにアクセスして、前記コマンドリスト541から前記コマンドヘッダーを取得する。
【0036】
<ステップS16>
ステップS16において、前記データ転送部56は、前記ステップS15で取得した前記コマンドヘッダーに含まれる前記メモリー54のアドレスにアクセスして、前記コマンドテーブル542から前記コマンドFIS及び前記PRDTを取得する。
【0037】
<ステップS17>
ステップS17において、前記データ転送部56は、前記ステップS16で取得された前記コマンドFIS及び前記PRDTに基づいて、前記データ転送処理を実行する。具体的に、前記データ転送部56は、前記コマンドFIS及び前記PRDTに基づいて、前記第1記憶部55に記憶されているデータを前記メモリー54に転送する前記第1データ転送処理又は前記メモリー54に記憶されているデータを前記第1記憶部55に転送する前記第2データ転送処理を実行する。ここに、前記データ転送部56により実行される前記ステップS15から前記ステップS17までの処理が、本発明における第1ステップの一例である。
【0038】
より具体的に、前記データ転送部56は、前記第1データ転送処理において、前記コマンドFISに基づいて前記第1記憶部55にコマンドを送信して、前記第1記憶部55からデータを取得する。そして、前記データ転送部56は、前記PRDTに基づいて、前記メモリーコントローラー53に前記メモリー54へのアクセス要求を送信すると共に前記第1記憶部55から取得したデータを転送して、前記メモリーコントローラー53に前記メモリー54へのデータの書込み処理を実行させる。
【0039】
また、前記データ転送部56は、前記第2データ転送処理において、前記PRDTに基づいて、前記メモリーコントローラー53に前記メモリー54へのアクセス要求を送信して、前記メモリーコントローラー53に前記メモリー54からのデータの読出し処理を実行させると共に、読み出したデータを前記データ転送部56に転送させる。そして、前記データ転送部56は、前記コマンドFISに基づいて、前記第1記憶部55にコマンドを送信すると共に前記メモリーコントローラー53から転送されたデータを転送して、前記第1記憶部55へのデータの書込み処理を実行する。
【0040】
ところで、前記画像形成装置10のような情報処理装置では、ユーザーにとって秘匿性の高いデータが前記第1記憶部55に記憶されることがある。ここで、情報処理装置が、秘匿性の高いデータが記憶される第1の記憶部と、プロセッサーが前記第1の記憶部を使用するために必要なシステム起動データが記憶される第2の記憶部を備える構成が関連技術として知られている。このような構成によれば、前記第1の記憶部の盗難等によるデータの漏えいが抑制される。
【0041】
しかしながら、上記関連技術では、情報処理装置のプロセッサーは複数の記憶部を制御する必要がある。そのため、記憶部が一つである既存の構成に上記関連技術を適用するためには、情報処理装置の制御プログラムを変更する必要がある。これに対し、前記画像形成装置10では、以下に説明するように、前記ROM52に記憶される前記制御プログラムを変更することなく、前記第1記憶部55に記憶されるデータの漏えいを抑制することが可能である。
【0042】
次に、図3を参照しつつ、前記メモリーコントローラー57、前記第2記憶部58、及び前記転送制御部59について説明する。
【0043】
前記メモリーコントローラー57は、前記データ転送部56又は前記転送制御部59からの前記第2記憶部58へのアクセス要求に応じて、前記第2記憶部58に対するデータの書込み処理又は読出し処理を実行する。
【0044】
前記第2記憶部58は、前記CPU51が前記第1記憶部55を使用するために必要なシステム起動データを記憶する。具体的に、前記システム起動データは、前記第1記憶部55のパーティションの構成を示すパーティションテーブルのような情報及び前記パーティションに格納されているオペレーティングシステムを起動させるためのブートローダーのような情報のいずれか一方又は両方を含む。例えば、前記第2記憶部58は、フラッシュメモリーのような不揮発性の記憶装置である。なお、前記第2記憶部58は、ハードディスクドライブ、ソリッドステートドライブ、又はDVDドライブ等の記憶装置であってもよい。
【0045】
ここで、前記画像形成装置10において、前記第2記憶部58は、前記制御部5が設けられる制御基板に実装されている。これにより、前記第1記憶部55と共に前記第2記憶部58が不正に持ち出される可能性を低下させることが可能である。
【0046】
前記転送制御部59は、前記データ転送部56により前記第1記憶部55の予め定められた特定記憶領域に対するアクセスが行われる場合に、前記特定記憶領域に対するアクセスを前記第2記憶部58に対するアクセスに変換する。例えば、前記特定記憶領域は、前記第1記憶部55において前記システム起動データが記憶される領域として予め定められたマスターブートレコード(MBL)である。前記マスターブートレコードは、例えば前記第1記憶部55の先頭アドレスから始まる記憶領域である。なお、前記画像形成装置10では、前記システム起動データは、前記第1記憶部55の前記マスターブートレコードには記憶されておらず、前記第2記憶部58に記憶されている。
【0047】
前記転送制御部59は、図3に示すように、前記データ転送部56と前記メモリー54及び前記第2記憶部58との間に介在して設けられている。また、前記転送制御部59は、レジスタ593を備え、前記データ転送部56が前記転送制御部59を経由して前記メモリー54から取得する前記コマンドヘッダーに含まれる前記コマンドテーブル542のアドレス、前記データFIS、及び前記PRDTを前記レジスタ593に記憶させることが可能である。更に、前記転送制御部59は、第1転送制御部591、及び第2転送制御部592を備える。
【0048】
前記第1転送制御部591は、前記データ転送部56による前記第1記憶部55の前記特定記憶領域に記憶されているデータを前記メモリー54に転送する第1転送処理の実行を検出し、前記第2記憶部58に記憶されている前記システム起動データを前記メモリー54に転送する。
【0049】
具体的に、前記第1転送制御部591は、前記転送制御部59を経由して前記データ転送部56及び前記メモリー54の間で転送されるデータに基づいて、前記第1転送処理の実行を検出する。例えば、前記第1転送制御部591は、前記データ転送部56により前記第1データ転送処理が実行される場合に、前記データ転送部56から前記メモリーコントローラー53に向けて送信される前記メモリー54へのアクセス要求におけるアクセス先アドレスと、前記レジスタ593に記憶された前記データFIS及び前記PRDTとに基づいて、前記第1転送処理の実行を検出する。
【0050】
また、前記第1転送制御部591は、前記第1転送処理で転送されるデータを破棄する。なお、前記第1転送制御部591が、前記第1転送処理で転送されるデータの転送先アドレスを変更して、前記第2記憶部58の予め定められた記憶領域に転送するものであってもよい。また、前記第1転送制御部591が、前記第1転送処理で前記メモリー54に転送されたデータに、前記第2記憶部58から前記メモリー54に転送される前記システム起動データを上書きするよう構成してもよい。
【0051】
前記第2転送制御部592は、前記データ転送部56による前記メモリー54に記憶されている前記システム起動データを前記特定記憶領域に転送する第2転送処理の実行を検出し、前記メモリー54に記憶されている前記システム起動データを前記第2記憶部58に転送する。
【0052】
具体的に、前記第2転送制御部592は、前記転送制御部59を経由して前記データ転送部56及び前記メモリー54の間で転送されるデータに基づいて、前記第2転送処理の実行を検出する。例えば、前記第2転送制御部592は、前記データ転送部56により前記第2データ転送処理が実行される場合に、前記データ転送部56から前記メモリーコントローラー53に向けて送信される前記メモリー54へのアクセス要求におけるアクセス先アドレスと、前記レジスタ593に記憶された前記データFIS及び前記PRDTとに基づいて、前記第2転送処理の実行を検出する。
【0053】
また、前記第2転送制御部592は、前記第2転送処理で転送される前記システム起動データに替えて予め定められたダミーデータを前記特定記憶領域に転送する。
【0054】
[転送制御処理]
以下、図5を参照しつつ、前記画像形成装置10において前記転送制御部59により実行される転送制御処理の手順の一例について説明する。
【0055】
<ステップS21>
まず、ステップS21において、前記転送制御部59は、前記転送指示処理の前記ステップS13における前記コマンドリスト541の前記メモリー54におけるアドレスの前記レジスタ561への記憶処理が実行されているか否かを判断する。具体的に、前記転送制御部59は、前記レジスタバス50Bにおける通信を監視することで、前記転送指示処理の前記ステップS13の処理が実行されているか否かを判断する。
【0056】
ここで、前記転送制御部59は、前記転送指示処理の前記ステップS13の処理が実行されていると判断すると(S21のYes側)、処理をステップS22に移行させる。また、前記転送指示処理の前記ステップS13の処理が実行されていなければ(S21のNo側)、前記転送制御部59は、前記ステップS21で前記転送指示処理の前記ステップS13の処理が実行されるのを待ち受ける。
【0057】
<ステップS22>
ステップS22において、前記転送制御部59は、前記転送指示処理の前記ステップS13で前記レジスタ561に記憶される前記コマンドリスト541のアドレスを前記レジスタ593に記憶させる。具体的に、前記転送制御部59は、前記レジスタバス50Bにおける前記CPU51と前記データ転送部56との間の通信を傍受することで、前記コマンドリスト541のアドレスを取得して前記レジスタ593に記憶させる。
【0058】
<ステップS23>
ステップS23において、前記転送制御部59は、前記転送指示処理の前記ステップS15における前記コマンドリスト541からの前記コマンドヘッダーの取得処理が実行されているか否かを判断する。具体的に、前記転送制御部59は、前記ステップS22で前記レジスタ593に記憶された前記コマンドリスト541のアドレスに基づいて、前記データ転送部56から前記メモリーコントローラー53に向けて送信される前記コマンドリスト541へのアクセス要求を検出することで、前記転送指示処理の前記ステップS15の処理が実行されているか否かを判断する。
【0059】
ここで、前記転送制御部59は、前記転送指示処理の前記ステップS15の処理が実行されていると判断すると(S23のYes側)、処理をステップS24に移行させる。また、前記転送指示処理の前記ステップS15の処理が実行されていなければ(S23のNo側)、前記転送制御部59は、前記ステップS23で前記転送指示処理の前記ステップS15の処理が実行されるのを待ち受ける。
【0060】
<ステップS24>
ステップS24において、前記転送制御部59は、前記転送指示処理の前記ステップS15で前記データ転送部56が取得する前記コマンドヘッダーに含まれるコマンドテーブル542のアドレスを前記レジスタ593に記憶させる。具体的に、前記転送制御部59は、前記ステップS23で検出した前記コマンドリスト541へのアクセス要求に応じて前記メモリーコントローラー53から前記データ転送部56に向けて送信される前記コマンドヘッダーを取得して、取得したコマンドヘッダーに含まれる前記コマンドテーブルのアドレスを前記レジスタ593に記憶させる。
【0061】
<ステップS25>
ステップS25において、前記転送制御部59は、前記転送指示処理の前記ステップS16における前記コマンドテーブル542からの前記コマンドFIS及び前記PRDTの取得処理が実行されているか否かを判断する。具体的に、前記転送制御部59は、前記ステップS24で前記レジスタ593に記憶された前記コマンドテーブル542のアドレスに基づいて、前記データ転送部56から前記メモリーコントローラー53に向けて送信される前記コマンドテーブル542へのアクセス要求を検出することで、前記転送指示処理の前記ステップS16の処理が実行されているか否かを判断する。
【0062】
ここで、前記転送制御部59は、前記転送指示処理の前記ステップS16の処理が実行されていると判断すると(S25のYes側)、処理をステップS26に移行させる。また、前記転送指示処理の前記ステップS16の処理が実行されていなければ(S25のNo側)、前記転送制御部59は、前記ステップS25で前記転送指示処理の前記ステップS16の処理が実行されるのを待ち受ける。
【0063】
<ステップS26>
ステップS26において、前記転送制御部59は、前記転送指示処理の前記ステップS16で前記データ転送部56が取得する前記コマンドFIS及び前記PRDTを前記レジスタ593に記憶させる。具体的に、前記転送制御部59は、前記ステップS25で検出した前記コマンドテーブル542へのアクセス要求に応じて前記メモリーコントローラー53から前記データ転送部56に向けて送信される前記コマンドFIS及び前記PRDTを取得して、前記レジスタ593に記憶させる。
【0064】
<ステップS27>
ステップS27において、前記転送制御部59は、前記ステップS26で前記レジスタ593に記憶された前記コマンドFISが前記第1記憶部55の前記マスターブートレコード(MBL)の前記LBAを含んでいるか否かを判断する。具体的に、前記転送制御部59は、予め前記転送制御部59に設定された前記マスターブートレコードの前記LBAに基づいて、前記コマンドFISに前記マスターブートレコードの前記LBAが含まれているか否かを判断する。
【0065】
ここで、前記転送制御部59は、前記コマンドFISが前記マスターブートレコードの前記LBAを含んでいると判断すると(S27のYes側)、処理をステップS28に移行させる。また、前記コマンドFISが前記マスターブートレコードの前記LBAを含んでいなければ(S27のNo側)、前記転送制御部59は、処理を前記ステップS21に移行させる。
【0066】
<ステップS28>
ステップS28において、前記転送制御部59は、前記転送指示処理の前記ステップS17で前記第1転送処理が実行されているか否かを判断する。具体的に、前記転送制御部59は、前記データ転送部56から前記メモリーコントローラー53に向けて送信される前記メモリー54へのアクセス要求におけるアクセス先アドレスと、前記レジスタ593に記憶された前記データFIS及び前記PRDTとに基づいて、前記第1転送処理が実行されているか否かを判断する。
【0067】
ここで、前記転送制御部59は、前記転送指示処理の前記ステップS17で前記第1転送処理が実行されていると判断すると(S28のYes側)、処理をステップS281に移行させる。また、前記転送指示処理の前記ステップS17で前記第1転送処理が実行されていなければ(S28のNo側)、前記転送制御部59は、処理をステップS29に移行させる。
【0068】
<ステップS281>
ステップS281において、前記転送制御部59は、前記第2記憶部58に記憶されている前記システム起動データを前記メモリー54に転送する。また、前記転送制御部59は、前記第1転送処理で前記データ転送部56から前記メモリーコントローラー53に向けて転送されるデータを破棄する。これにより、前記メモリー54には、前記第1記憶部55の前記マスターブートレコードに記憶されているデータではなく、前記第2記憶部58に記憶されている前記システム起動データが転送される。ここに、前記ステップS28及び前記ステップS281の処理が、本発明における第2ステップの一例であって、前記転送制御部59の前記第1転送制御部591により実行される。
【0069】
<ステップS29>
ステップS29において、前記転送制御部59は、前記転送指示処理の前記ステップS17で前記第2転送処理が実行されているか否かを判断する。具体的に、前記転送制御部59は、前記データ転送部56から前記メモリーコントローラー53に向けて送信される前記メモリー54へのアクセス要求におけるアクセス先アドレスと、前記レジスタ593に記憶された前記データFIS及び前記PRDTとに基づいて、前記第2転送処理が実行されているか否かを判断する。
【0070】
ここで、前記転送制御部59は、前記転送指示処理の前記ステップS17で前記第2転送処理が実行されていると判断すると(S29のYes側)、処理をステップS30に移行させる。また、前記転送指示処理の前記ステップS17で前記第2転送処理が実行されていなければ(S29のNo側)、前記転送制御部59は、処理を前記ステップS28に移行させて、前記転送指示処理の前記ステップS17で前記第1転送処理又は前記第2転送処理が実行されるのを待ち受ける。
【0071】
<ステップS30>
ステップS30において、前記転送制御部59は、前記メモリー54に記憶されている前記システム起動データを前記第2記憶部58に転送する。また、前記転送制御部59は、前記第2転送処理で転送される前記システム起動データに替えて、前記ダミーデータを前記データ転送部56に送信する。これにより、前記メモリー54に記憶されている前記システム起動データは、前記第1記憶部55の前記マスターブートレコードではなく、前記第2記憶部58に転送される。また、前記データ転送部56には前記ダミーデータが返されるため、前記データ転送部56から前記メモリーコントローラー53に向けて送信されたアクセス要求に対する無応答に基づいてエラーが検出されることもない。ここに、前記ステップS29及び前記ステップS30の処理が、本発明における第3ステップの一例であって、前記転送制御部59の前記第2転送制御部592により実行される。
【0072】
このように、前記転送制御処理では、前記CPU51からの要求に応じて前記データ転送部56により実行される前記データ転送処理において、前記第1記憶部55の前記マスターブートレコードへのアクセスが前記第2記憶部58へのアクセスに変換される。従って、前記画像形成装置10の前記制御プログラムを変更することなく、前記第1記憶部55に記憶されるデータの漏えいを抑制することが可能である。
【符号の説明】
【0073】
1 :ADF
2 :画像読取部
3 :画像形成部
4 :給紙部
5 :制御部
51:CPU
52:ROM
53:メモリーコントローラー
54:メモリー
55:第1記憶部
56:データ転送部
57:メモリーコントローラー
58:第2記憶部
59:転送制御部
591:第1転送制御部
592:第2転送制御部
60:転送指示部
7 :操作表示部
10:画像形成装置
図1
図2
図3
図4
図5