JP2010009553A - 情報処理装置、情報処理方法、及び情報処理プログラム - Google Patents

情報処理装置、情報処理方法、及び情報処理プログラム Download PDF

Info

Publication number
JP2010009553A
JP2010009553A JP2008171635A JP2008171635A JP2010009553A JP 2010009553 A JP2010009553 A JP 2010009553A JP 2008171635 A JP2008171635 A JP 2008171635A JP 2008171635 A JP2008171635 A JP 2008171635A JP 2010009553 A JP2010009553 A JP 2010009553A
Authority
JP
Japan
Prior art keywords
information processing
data
processing apparatus
access control
activation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2008171635A
Other languages
English (en)
Inventor
Yoshiyuki Toda
善幸 戸田
Satoru Ono
覚 大野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2008171635A priority Critical patent/JP2010009553A/ja
Publication of JP2010009553A publication Critical patent/JP2010009553A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Storage Device Security (AREA)
  • Stored Programmes (AREA)

Abstract

【課題】発生した不具合を安定した環境で復旧することができる情報処理装置、情報処理方法、及び情報処理プログラムを提供する。
【解決手段】情報処理装置100は、記憶装置104,105,106,及び109を備え、起動指定が通常起動の場合に情報処理機能を提供する第1のシステム11aと、起動指定がセーフモード起動の場合に情報処理機能を提供する第2のシステム11bとから構成する2重化された情報処理システムを有し、さらに、第1のシステム11aと第2のシステム11bのどちらか一方を起動するシステム起動手段21と、システム起動手段21により起動されたシステム内のソフトウェア部品から記憶装置104,105,106,及び109に保持されるデータへのアクセスを、起動指定に応じて制御するアクセス制御手段31と、を有することを特徴とする。
【選択図】図2

Description

本発明は、情報処理装置、情報処理方法、及び情報処理プログラムに係り、特に、異なるモードにより起動されたシステム環境の技術に関するものである。
従来、PC(Personal Computer)などの情報処理装置では、電源投入後、提供機能(各種アプリケーション)の動作環境としてOS(Operation System)が稼働する。
このOSを稼働するモード(以下、「起動モード」と言う。)には、ノーマルモードとセーフモードとがあり、ノーマルモードは、利用者に対して、当該装置が有する機能を制限なく提供する起動モードである。
一方、セーフモードは、何らかの原因(例えば「システム設定の誤り」など)で、当該装置が動作不安定な状態となってしまった場合など、ノーマルモードに比べて起動するモジュールを減らし、最低限の機能を提供する起動モードである。
このことから、情報処理装置では、当該装置内で不具合が発生した場合であっても、上記セーフモードで起動することにより、不具合の原因を解消し、再び、安定した機能提供環境へ復旧することができる。
例えば、特許文献1には、システム内に搭載される複数のモジュールのうち、当該装置が上記セーフモードで起動するときに、実行するモジュールを選択する手段を有し、自由度のある最小構成のシステム環境を提供可能な情報処理装置が開示されている。
また、セーフモード時に不具合の原因を解消する方法として、当該装置が備える記憶装置内のデータを消去する方法がある。
例えば、特許文献2には、当該装置が備える記憶装置内のデータを消去するモードで起動されたか否かを判定する手段を有し、その判定結果と、設定に係るデータに応じてデータ消去を行うことで、効率的に記憶装置内のデータを消去可能な情報処理装置が開示されている。
特開2004−334679号公報 特開2005−354671号公報
しかしながら、従来の情報処理装置では、以下に挙げる問題点がある。
例えば、特許文献1に開示される情報処理装置では、同一システムにおいて、ノーマルモードとセーフモードそれぞれに対応するシステム起動を実現している。すなわち、セーフモードでは、単に、ノーマルモードに比べて起動するモジュールを減らしてシステムを起動しているに過ぎず、両方のモードで、起動するモジュールを共有している。
そのため、この構成では、元となるシステムがクラッシュしてしまった場合(共有しているモジュールに不具合が生じた場合)に、セーフモードで動作することができず(モジュールを実行することができず)、その結果、システム復旧が行えないという問題点がある。
また、例えば、特許文献2に開示される情報処理装置では、削除対象のモジュールが動作中であることも考えられることから、新たな不具合を発生させることなく安全に削除を行うことができないという問題点がある。
このように、従来の情報処理装置では、不具合を安定した環境で復旧することができない。
本発明では、上記従来技術の問題点に鑑み提案されたものであり、その目的とするところは、発生した不具合を安定した環境で復旧することが可能な情報処理装置、情報処理方法、及び情報処理プログラムを提供することにある。
上記目的を達成するため、本発明の情報処理装置は、記憶手段を備えた情報処理装置であって、起動指定が通常起動の場合に情報処理機能を提供する第1のシステムと、起動指定がセーフモード起動の場合に情報処理機能を提供する第2のシステムとから構成する2重化された情報処理システムを有し、さらに、前記第1のシステムと前記第2のシステムのどちらか一方を起動するシステム起動手段と、前記システム起動手段により起動されたシステム内のソフトウェア部品から前記記憶手段に保持されるデータへのアクセスを、前記起動指定に応じて制御するアクセス制御手段と、を有することを特徴とする。
このような構成によって、本発明の情報処理装置は、異なる起動モードで、独立したシステムを起動することができ、さらに、システム内のモジュールによるデータアクセスにおいて、起動モードに応じてアクセス先を変換し、モジュールによるデータアクセスを制御することができる。
また、上記目的を達成するため、本発明の情報処理装置は、前記アクセス制御手段が、前記ソフトウェア部品のデータアクセス先である記憶手段を、前記起動指定に応じて切り換えることを特徴とする。
また、上記目的を達成するため、本発明の情報処理装置は、複数の記憶手段を備え、前記アクセス制御手段が、前記起動指定に基づき、前記複数の記憶手段の中から前記ソフトウェア部品のデータアクセス先である記憶手段を特定することを特徴とする。
また、上記目的を達成するため、本発明の情報処理装置は、前記第1のシステム及び/又は前記第2のシステムを構成するソフトウェア部品が、前記アクセス制御手段を介して、前記記憶手段に保持されるデータを読み込む及び/又は前記記憶手段にデータを書き込むことを特徴とする。
また、上記目的を達成するため、本発明の情報処理装置は、前記アクセス制御手段が、前記ソフトウェア部品が前記記憶手段に保持されるデータを読み込むときに、前記記憶手段にデータが存在しない場合、前記ソフトウェア部品に、前記データのデフォルト値を返すことを特徴とする。
また、上記目的を達成するため、本発明の情報処理装置は、前記第1のシステム又は前記第2のシステムのどちらか一方でシステム設定が変更された場合に、前記アクセス制御手段を介して、他方のシステムへ設定変更を反映することを特徴とする。
また、上記目的を達成するため、本発明の情報処理装置は、前記アクセス制御手段を介して、前記第1のシステムにより収集されるログ情報に、前記第2のシステムにより収集されるログ情報をマージすることを特徴とする。
また、上記目的を達成するため、本発明の情報処理装置は、前記アクセス制御手段を介して、前記第1のシステム又は前記第2のシステムのどちらか一方が、他方のシステムのソフトウェア部品を更新することを特徴とする。
また、上記目的を達成するため、本発明の情報処理装置は、前記アクセス制御手段を介して、システムを構成する複数のソフトウェア部品を一括更新する場合に、前記ソフトウェア部品の依存関係に基づき、予め決定しておいた更新順序に従って、前記ソフトウェア部品を更新することを特徴とする。
また、上記目的を達成するため、本発明の情報処理装置は、前記アクセス制御手段を介して、前記第1のシステムで発生した不具合を、前記第2のシステムが修復することを特徴とする。
また、上記目的を達成するため、本発明の情報処理装置は、前記記憶手段に保持されるデータを消去する前に、消去可能なデータか否かを判定し、前記データが消去不可能なデータであった場合に、前記アクセス制御手段を介して、前記データを他の記憶手段に待避することを特徴とする。
また、上記目的を達成するため、本発明の情報処理装置は、前記アクセス制御手段を介して、前記他の記憶手段に待避しておいたデータを、消去後の記憶手段に書き戻すことを特徴とする。
また、上記目的を達成するため、本発明の情報処理装置は、2つの記憶手段がミラーリング状態となっているときに暗号化を行う場合、前記アクセス制御手段を介して、前記2つの記憶手段に対する暗号化の実行順序を制御することを特徴とする。
また、上記目的を達成するため、本発明の情報処理装置は、前記第1のシステムより前記第2のシステムに、起動時に記憶手段から確保するシステム動作用のメモリ領域を多く割り当てることを特徴とする。
また、上記目的を達成するため、本発明の情報処理装置は、前記第1のシステムを構成するソフトウェア部品の部品数より、前記第2のシステムの部品数の方が少ないことを特徴とする。
これによって、本発明の情報処理装置は、発生した不具合を安定した環境で復旧することができる。
上記目的を達成するため、本発明の情報処理方法は、起動指定が通常起動の場合に情報処理機能を提供する第1のシステムと、起動指定がセーフモード起動の場合に情報処理機能を提供する第2のシステムとから構成する2重化された情報処理システムを有する、記憶手段を備えた情報処理装置における情報処理方法であって、前記第1のシステムと前記第2のシステムのどちらか一方を起動するシステム起動手順と、前記システム起動手順により起動されたシステム内のソフトウェア部品から前記記憶手段に保持されるデータへのアクセスを、前記起動指定に応じて制御するアクセス制御手順と、を有することを特徴とする。
このような手順によって、本発明の情報処理方法は、異なる起動モードで、独立したシステムを起動し、さらに、システム内のモジュールによるデータアクセスにおいて、起動モードに応じてアクセス先を変換し、モジュールによるデータアクセスを制御可能なように、コンピュータを動作させることができる。
これによって、本発明の方法は、発生した不具合を安定した環境で復旧することが可能な情報処理動作を実現できる。
上記目的を達成するため、本発明の情報処理プログラムは、起動指定が通常起動の場合に情報処理機能を提供する第1のシステムと、起動指定がセーフモード起動の場合に情報処理機能を提供する第2のシステムとから構成する2重化された情報処理システムを有する、記憶手段を備えた情報処理装置における情報処理プログラムであって、コンピュータを、前記第1のシステムと前記第2のシステムのどちらか一方を起動するシステム起動手段と、前記システム起動手段により起動されたシステム内のソフトウェア部品から前記記憶手段に保持されるデータへのアクセスを、前記起動指定に応じて制御するアクセス制御手段として機能させる。
本発明によれば、当該情報処理装置に、2重化したシステムを搭載し、起動モードに応じて異なるシステムを起動する構成とし、かつ、システム内のモジュールによるデータアクセスにおいて、起動モードに応じてアクセス先を変換し、モジュールからのデータアクセスを制御する機能を有するようにしたことで、発生した不具合を安定した環境で復旧することが可能なシステム環境を提供することができる。
以下、本発明の好適な実施の形態(以下、「実施形態」という。)について、図面を用いて詳細に説明する。
[第1の実施形態]
<ハードウェア構成>
では、本実施形態に係る情報処理装置のハードウェア構成について説明する。図1は、本発明の第1の実施形態に係る情報処理装置100のハードウェア構成例を示す図である。
本実施形態に係る情報処理装置100は、入力装置101と、出力装置102と、ドライブ装置103と、RAM(Random Access Memory)104と、NVRAM(Non Volatile RAM)105と、FlashROM(Read Only Memory)106と、CPU(Central Processing Unit)107と、インタフェース装置108と、HDD(Hard Disk Drive)109とから構成され、それぞれバスで相互に接続されている。
入力装置101は、キーボード及びマウスなどで構成され、情報処理装置100に各操作信号を入力するのに用いられる。出力装置102は、ディスプレイなどで構成され、情報処理装置100による処理結果などを表示する。
インタフェース装置108は、情報処理装置100をネットワークなどのデータ伝送路(非図示)に接続するインタフェースである。情報処理装置100は、インタフェース装置108を介して外部機器とのデータ通信を行う。
HDD109は、情報処理システムにおいて各種機能(例えば「文書・画像編集やデータ通信」など)を提供するアプリケーションなどのプログラムやデータを格納している記憶装置である。また、HDD109は、格納しているプログラムやデータを、所定のファイルシステムやDB(Data Base)により管理している。
なお、上記プログラムやデータは、例えばCD(Compact Disk)などの記録媒体103aによって情報処理装置100に提供されるか、ネットワークなどのデータ伝送路を通じてダウンロードされる。その中で、記録媒体103aから提供される場合は、記録媒体103aを読み取り可能なドライブ装置103を介してHDD109にインストールされる。また、
NVRAM105とFlashROM106は、書き換え可能で、電源を切っても内部データを保持することができる不揮発性の半導体メモリである。これらの記憶装置には、情報処理装置100が起動されるときに実行されるBIOS(Basic Input/Output System)や、情報処理装置100全体を制御し情報処理システムを提供するなどのプログラム、さらに情報処理装置100のシステム設定やネットワーク関連の設定などのデータを格納している。なお、FlashROM106には、NOR型106aとNAND型106bがある。
RAM104は、上記各種記憶装置から読み出されたプログラムやデータを一時保持する。CPU107は、RAM104が一時保持しているプログラムを実行する。
情報処理装置100は、このようなハードウェア構成により、例えば、HDD109からRAM104上に読み出されたアプリケーションのプログラムをCPU107により実行し、文書や画像データの閲覧・編集を行ったり、インタフェース装置108を介して外部機器とのデータ通信を行ったりすることができる。
<ソフトウェア構成>
図2は、本発明の第1の実施形態に係る情報処理装置100のソフトウェア構成例を示す図である。図2に示すように、情報処理装置100では、通常動作時に起動されるノーマルモードシステム11aと、システム復旧時などに起動されるセーフモードシステム11bとが、別途独立したシステム11として構成される。すなわち、情報処理システムが2重化された構造となっている。
ノーマルモードシステム11aは、アプリケーション114が動作するフレームワーク111a、利用者と情報処理システムとのインタフェースであるUI112a、情報処理システムの動作ログを出力するログ出力113a、及び情報処理システムが利用者に提供する各種機能を実現するアプリケーション114などに関するモジュール群を有している。
一方、セーフモードシステム11bは、ノーマルモードシステム11aと同様に、フレームワーク111b、UI112b、及びログ出力113bに関するモジュール群を有しているが、アプリケーション114に関するモジュール群は有しておらず、セーフモード機能を実現する上で、最小限のモジュール群により構成されている。
上記各システム11は、ブートローダ(ブートストラップ)といわれる起動プログラム21により起動制御される。起動プログラム21は、例えば、NVRAM105に保持される起動フラグの設定に基づき、システム11の起動を制御する。
起動フラグには、「ノーマルモード」又は「セーフモード」のどちらか一方の起動モードが設定可能である。また、起動フラグは、例えば1ビットで構成され、'0'と'1'に、それぞれの起動モードが予め対応付けられている。
これにより、起動プログラム21は、起動フラグの設定を基に、ノーマルモードシステム11aと、セーフモードシステム11bとの起動を制御することができる。
さらに、情報処理装置100は、各システム11内のモジュールから、RAM104、NAND型FlashROM106b、又はHDD109などの記憶装置(以下、「記憶デバイス」と言う。)に保持されるデータをアクセス(データの読み込み/書き込み)する際に、アクセスデータ、アクセスモジュール、及び起動モードから、アクセス先(データの格納先)を特定し、データアクセスを制御するアクセス制御モジュール31を有している。つまり、各システム11内のモジュールは、アクセス制御モジュール31を介してデータアクセスを行う。
(記憶領域)
図3は、本発明の第1の実施形態に係るROM106における記憶領域の構成例を示す図である。図3に示すROMは、NAND型FlashROM106bである。図3に示すように、ROM106b内の記憶領域は、システム領域Sとデータ領域Dとに大別される。そのうち、システム領域Sは、ノーマルモードシステム11aが割り当てられた領域Sa(以下、「ノーマルモードシステム領域Sa」と言う。)と、セーフモードシステム11bが割り当てられた領域Sb(以下、「セーフモードシステム領域Sb」と言う。)の2つの領域に分けられている。また、データ領域Dは、上記各システム11が共有して使用する共有データ領域D1である。
<<ソフトウェアの配置:その1>>
では、上記ソフトウェア構成要素が、前述したどの記憶デバイスに配置されるように実装されるのかについて説明する。図4は、本発明の第1の実施形態に係るソフトウェアの配置例(その1)を示す図である。図4に示すように、各ソフトウェア構成要素は、各記憶デバイスの特性に合わせて配置される。
NOR型FlashROM106aは、RAM104と同様にアドレス指定によるデータの読み込みが可能で、コードをRAM104にコピーすることなく直接実行すること(execute in place)ができる。またデータの書き込みは、一度ブロック単位で消去した後、書き込むという手順を踏む。NOR型FlashROM106aの特長は、データの信頼性に優れている点である。
一方、NAND型FlashROM106bは、NOR型FlashROM106aと比べて、回路規模を小さくすることが可能であり、大容量化に向いている。また書き込み速度や消去速度も比較的高速であるが、データへのランダムアクセス性は劣る。
このように、NOR型とNAND型とでは、特性が異なることから、本実施形態では、記憶容量を必要とせず、データの信頼性を重視する起動プログラム21をNOR型FlashROM106aに配置し、NOR型より記憶容量が大きく、書き込み速度や消去速度の高速性を重視する各システム11とアクセス制御モジュール31とを、NAND型FlashROM106bに配置する構成としている。
また、図中のノーマルモードシステム11aでは、アプリケーション114のモジュール群を含む構成となっているが、情報処理システムの基本機能を提供するアプリケーション114のみとし、その他の拡張機能などを提供するアプリケーション114は、HDD109に配置するようにしてもよい。
以上のようなソフトウェア構成と構成要素の配置により、本実施形態では、情報処理システムの2重化を実現し、一方のシステムで不具合が発生しても、他方のシステムで修復することができる。
さらに、セーフモードシステム11bでは、セーフモード機能を実現する必要最低限の機能により構成(最小限の機能で構成)されることから、システム起動時に使用するデバイス(情報処理装置100が備える各種装置)が制限され、ノーマルモードシステム11aが動作中には行えないような処理(例えば、「HDD消去」や「ノーマルモードシステムのファームアップデート」など。)を行うことができる。
また、各システム11では、アクセス制御モジュール31を介して、システム11内のモジュールからのデータアクセスを行う構成により、モジュールがアクセス先(データの格納先)を予め知っておく必要がないため、アクセス先の変更によるモジュール変更が発生しない。つまり、各システム11において同一のモジュールを動作させることが可能であり、その結果、モジュールの開発コストの軽減や開発期間の短縮を図ることができる。
前述したアクセス制御モジュール31は、各システム11に対してデータアクセス可能であることから、以下に挙げるような機能を実現することができる。
《システム設定整合機能》
前述したアクセス制御モジュール31は、各システム11との間でシステム設定の整合をとる。図5は、本発明の第1の実施形態に係るシステム設定を整合させる動作例を示す図である。図5に示すように、アクセス制御モジュール31は、一方のシステム11内でシステム設定が変更された場合に、その変更された設定値を、他方のシステム11内において、該当するシステム設定に反映する。アクセス制御モジュール31は、RAM104、NAND型FlashROM106b、又はHDD109などの記憶デバイスに保持される、他方のシステム11がデータアクセスするシステム設定を、変更された設定値に書き換える。
例えば(A)には、ノーマルモードシステム11aにおいて、システム設定が変更された場合に、アクセス制御モジュール31が、その変更された設定値を、NAND型FlashROM106bに保持される、セーフモードシステム11bがデータアクセスするシステム設定に反映する。また、(B)には、セーフモードシステム11bにおいて、システム設定が変更された場合に、アクセス制御モジュール31が、その変更された設定値を、NAND型FlashROM106bに保持される、ノーマルモードシステム11aがデータアクセスするシステム設定に反映する。
なお、前述したアクセス制御モジュール31によるシステム設定整合機能は、ノーマルモードシステム11aとセーフモードシステム11bとで共通するシステム設定を対象にして行われる。
なお、上記システム設定整合機能では、無条件で(変更されたシステム設定が正常値か否かを判断することなく)、一方のシステム設定の変更を他方のシステム11へ反映させると、障害が発生することも考えられる。
そのため、本実施形態では、システム設定のデータ配置を工夫している。
本実施形態では、各システム11で取り扱うシステム設定のデータの種類を、2つのシステム11から共有して使用される第1のデータ種と、各システム11で別々に使用される第2のデータ種の2つに分けて配置する。
データの内容に問題が生じると、システム障害を発生する可能性のあるデータは、上記第2のデータ種において管理する構成とし、互いのシステム11へ悪影響を及ぼさないようにする。一方、システム障害の原因とならないデータに関しては、上記第1のデータ種において管理し、システム11間でのデータ共有を実現する。
以上のように、各システム11において、システム設定の格納先(記憶デバイス)が異なる場合であっても、各システム11で共通するシステム設定を最新の状態に維持できることから、各システム11内のモジュールによる動作に矛盾が生じない。
《システムログマージ機能》
また、前述したアクセス制御モジュール31は、各システム11において出力されたシステムログを統合(マージ)する。図6は、本発明の第1の実施形態に係るシステムログをマージする動作例を示す図である。図6に示すように、アクセス制御モジュール31は、セーフモードシステム11bのシステムログを、ノーマルモードシステム11aのシステムログにマージする。
各システム11では、それぞれのログ出力113により、システムログが出力される。アクセス制御モジュール31は、このようにして出力された各システムログを、ノーマルモードシステム11a側でマージする。
以上のように、各システム11のシステムログを、1つのシステムログに統合することで、ログを一元管理することができる。
<<ソフトウェアの配置:その2>>
また、ソフトウェアの配置例は、図4に示した配置例以外に、図7に示すような配置例(その2)であってもよい。図7は、本発明の第1の実施形態に係るソフトウェアの配置例(その2)を示す図である。図4に示す配置例(その1)と、図7に示す配置例(その2)との違いは、各システム11それぞれが有していたフレームワーク111と、ログ出力113とが、アクセス制御モジュール31と同様に、NRAND型FlashROM106bの共有データ領域D1に配置されている点である。上記フレームワーク111とログ出力113は、システム11への依存性が少ないモジュール群であることから、共有データ領域に配置することも可能である。
このような構成の場合には、配置例(その1)と同様の効果を奏するとともに、各システム11から使用されるモジュール群を、一度に更新することができる。
(処理手順)
ここで、前述したソフトウェア構成による各システム11の起動処理について説明する。図8は、本発明の第1の実施形態に係るシステムを起動する処理手順例を示すフローチャートである。
情報処理装置100は、当該装置に電源が投入されると、起動プログラム21が、NOR型FlashROM106aからRAM104に読み出され、CPU107により実行される。
まず、起動プログラム21は、NVRAM105に保持される起動フラグを参照し、起動フラグの設定が「ノーマルモード」か「セーフモード」かを確認する(ステップS101)。
起動フラグが「セーフモード」の場合には(ステップS102:「セーフモード」)、NAND型FlashROM106bのセーフモードシステム領域Sbに保持されるセーフモードシステム11bのモジュール群を起動する(ステップS103)。
一方、起動フラグが「ノーマルモード」の場合には(ステップS102:「ノーマルモード」)、例えば、HDD109に異常がないか、またノーマルモードシステム11aのモジュールに異常がないかなどの確認結果を基に、ノーマルモードが起動可能か否かを確認する(ステップS104)。
ノーマルモードが起動可能の場合には(ステップS105:YES)、NAND型FlashROM106bのノーマルモードシステム領域Saに保持されるノーマルモードシステム11aのモジュール群を起動する(ステップS106)。
一方、ノーマルモードが起動不可能の場合には(ステップS105:NO)、NVRAM105に保持される実行フラグを、「システム復旧」に設定し(ステップS107)、ステップS103の処理手順へ移行する。
以上のように、ソフトウェア構成として2重化された各システム11の起動は、NVRAM105に保持される起動フラグによって制御される。また、セーフモードシステム11bは、ノーマルモードで起動不可能であった場合に、起動後のシステム11の動作種別を設定可能な実行フラグにより指定された解決方法により、起動不可能な理由(不具合の原因)を修復する仕組みとなっている。
なお、起動・実行フラグをNVRAM105に保持する構成について説明を行ったが、両フラグの格納先がNVRAM105である必要はなく、起動プログラム21からアクセス可能な記憶デバイスであればよい。以降の説明では、その一例としてNVRAM105に統一する。
また、何らかの原因でノーマルモードが起動不可能な場合に、「システム復旧」を行う設定とする処理について説明を行った。ここで言う「システム復旧」とは、リカバリーCD(Compact Disc)などを用いて強制的にシステム11内の損傷箇所を修復し(再インストールし)、起動不可能な理由を解決する方法の1つである。他の解決方法としては、軽微なエラーを自動修復する「システム自動修復」や、外部記憶デバイス(例えば「外付けHDD」など)や外部機器(例えば「サーバ」など)に格納しておいたバックアップデータをロールバックし修正する「リストア」と言った方法もあり、一般的に、起動不可能な理由によって、これらの解決方法は取捨選択される。
よって、前述した処理手順では、「システム復旧」を実行フラグとして設定し、強制的にシステム復旧を行うものであったが、起動不可能か否かを確認する際に不具合の原因を解析し、その解析結果から上記解決方法のうち最適な方法を特定し、「システム復旧」、「システム自動修復」、又は「リストア」のいずれか解決方法を指定する実行フラグに設定する処理手順としてもよい。さらには、選択可能なUIを出力装置102であるディスプレイの表示画面に表示し、利用者に上記解決方法を選択決定させる構成としてもよい。
前述した起動処理後では、起動モードにより、以下に挙げる動作環境の違いがある。
(異なる起動モードによる違い)
図9は、本発明の第1の実施形態に係る異なる起動モードによる動作時のメモリマップ例を示す図である。図9に示すメモリマップ例では、起動モードにより異なるマッピングの様子が想定しやすいように、情報処理装置100として画像処理装置の一例が示されている。図9に示すように、画像処理装置において、起動モードがノーマルモード設定の場合には、画像処理装置の基本機能により高い頻度で処理される画像データを展開するための割り当て領域M1(以下、「画像領域M1」と言う。)が、モジュールを実行するための割り当て領域M2(以下、「プログラム領域M2」と言う。)より、RAM104上で多めにマッピングされている(割り当てられている)。
一方、起動モードがセーフモード設定の場合には、セーフモードシステム11bがセーフモード機能を実現する必要最小限の機能により構成されることから、ノーマルモードシステム11bの起動時と異なり、プログラム領域M2が、画像領域M1より、RAM104上で、多めにマッピングされている。
以上のように、起動モードに応じて、システム11が有する機能のうち、実行頻度の高い(重要な機能を実現する)モジュールが使用するワーク領域を、その他のモジュールに比べて、メモリ空間を多めにマッピングすることにより(起動モードに応じて、メモリアップを変化させることで)、各システム11が動作する際に最適なメモリ環境を提供することができる。その結果、例えば、起動モードがセーフモード設定時では、ノーマルモード設定時にアプリケーション114などのワーク領域としてマッピングしていた領域を、一部、RAMDiskなどのデータ保存領域として使用することも可能となる。セーフモードシステム11bでは、HDD109などの大容量の記憶デバイスを使用することがないため、上記RAMDiskなどのようなメモリ空間が割り当てられれば、処理の効率化や高速化を図ることができる。
また、図10は、本発明の第1の実施形態に係る異なる起動モードによる動作の違いを模式的に示す図であり、(A)にはノーマルモードシステム11a起動時の例、(B)にはセーフモードシステム11b起動時の例が示されている。(A)に示すように、起動モードがノーマルモード設定の場合には、起動されたノーマルモードシステム11aから、アプリケーション114が実行される。このとき、実行されるアプリケーション114により使用されるデバイスDEVがあれば、ノーマルモードシステム11aが、デバイスDEVの制御も行う。
一方、(B)に示すように、起動モードがセーフモード設定の場合には、起動されたセーフモードシステム11bから実行されるアプリケーション114がない。
以上のように、起動モードに応じて、システム起動時に実行するモジュールを制限(使用するデバイスDEVを制限)することで、最適な動作環境を実現する。
すなわち、起動モードがセーフモード設定時では、アプリケーション114などを実行せず、セーフモード機能を実現する最小限の機能(例えば「ノーマルモード修復・更新に必要な機能のみ」など)のみを実行する構成としている。これにより、最適な動作環境を提供することができるとともに、システム起動時の起動速度も速くなる。また、実行機能が限定されていることから、情報処理装置100が外部からの処理要求(例えば「ネットワークを介した外部機器からの処理要求」など)を受け付けることもないため、安定した性能(処理能力)を確保することができる。
《データアクセス制御機能》
ここからは、前述したアクセス制御モジュール31が、「どのようにアクセス先を特定し、データアクセスを行っているのか」について説明する。
アクセス制御モジュール31は、アクセスデータ、アクセスモジュール、及び起動モードを基にアクセス先(データの格納先)を特定するアクセス制御情報41を有している。
(アクセス制御情報)
図11は、本発明の第1の実施形態に係るアクセス制御情報41のデータ例を示す図である。図11に示すように、アクセス制御情報41は、アクセスデータを識別するデータ識別情報(図中では「データ名」)と、アクセスモジュールを識別するモジュール識別情報(図中では「モジュール名」)とが、起動モードごとのアクセス先を示すアクセス先識別情報(図中の「HDD」や「NAND型FlashROM」)に対応付けられた構成となっている。
また、上記アクセス制御情報41は、図12に示すように、情報処理装置100が有するソフトウェア環境に変化を生じると、その変化に応じて情報が更新される。
図12は、本発明の第1の実施形態に係るアクセス制御情報41のデータ遷移例を示す図である。上記ソフトウェア環境の変化とは、例えば、プラグインの追加・変更・削除などであり、例えば、図12に示すように、プラグインとしてモジュール名"Module−2"と言うモジュールが追加されると、アクセス制御情報41には、"Module−2"に関する各情報項目(データ識別情報やアクセス先識別情報)が追加設定される。また、プラグインとしてモジュール名"Module−1"と言うモジュールが削除されると、アクセス制御情報41から、"Module−1"に関する各情報項目が削除される。さらに、図示していないが、アクセス制御情報41に既に設定されているモジュールが、プラグインにより更新され、アクセスデータが変更となった場合には、現在のデータ識別情報の設定を削除し、変更後のデータ識別情報を設定することで更新する。
アクセス制御モジュール31は、上記データ更新により、最新のソフトウェア環境に対応したアクセス制御情報41を参照し、起動モードに応じたアクセス先を特定する。すなわち、アクセス制御モジュール31は、モジュールからデータアクセスが要求されると、要求されたアクセスデータと、要求元のモジュールと、現在動作中のシステム11を起動した際の起動モードとに基づいて、アクセス制御情報41を参照する。続いて、アクセス先を特定した後、要求がデータリード(データの読み込み)であった場合には、アクセス制御モジュール31が、特定したアクセス先(読み込み先)の記憶デバイスへアクセスし、データを読み取り(取得)、読み取ったデータを要求元のモジュールへ渡す。一方、要求がデータライト(データの書き込み)であった場合には、アクセス制御モジュール31が、要求元のモジュールから受け取ったデータを、特定したアクセス先(書き込み先)の記憶デバイスへ書き込む。
以下の処理手順の中で、前述したアクセス制御モジュール31によりデータリード/ライトの詳細な動作について説明する。
(処理手順)
図13は、本発明の第1の実施形態に係るデータリード/ライトを行う処理手順例を示すフローチャートであり、(A)にデータリード、(B)にデータライト、それぞれの処理手順例が示されている。
また、図13に示す処理は、システム11内のモジュールがデータにアクセスする際に行われる処理である。前述したように、モジュールは、アクセス制御モジュール31を介してデータへアクセスする。モジュールは、データを取得したい場合に、アクセス制御モジュール31に対してデータリードを要求し、データを保存したい場合に、データライトを要求する。
(A)データリード
アクセス制御モジュール31は、システム11内のモジュールからデータリードの要求を受け付けると、共有データ領域D1に保持されるアクセス制御情報41を参照し(ステップS201)、起動モードに応じて、モジュールがアクセスするデータの読み込み先(例えば格納先である「HDD」など)を特定する(ステップS202)。
また、ステップS202の処理において、アクセス制御情報41を参照したときに、モジュールがアクセスするデータの読み込み先を特定することができなかった場合には、ROM106に保持しているデフォルトデータを読み込み(取得)、読み込んだデータをモジュールへ渡す。
続いて、アクセス制御モジュール31は、特定した読み込み先に、データがあるか否か(データの有無)を確認する(ステップS203)。
その結果、データがある場合には(ステップS204:YES)、データを読み込み(取得)、読み込んだデータをモジュールへ渡す(ステップS205)
一方、データがない場合には(ステップS204:NO)、ROM106に保持しているデフォルトデータを読み込み(取得)、読み込んだデータをモジュールへ渡す(ステップS206)。
以上のように、アクセス制御モジュール31は、モジュールから要求されたデータが読み込み先に存在しなかった場合には、リードエラーとするのではなく、デフォルト値を返す。
ノーマルモードシステム11aでは、機能提供する各種アプリケーションなど、プラグインの追加、変更(モジュールのバージョンアップ)、削除などにより、ソフトウェア環境が変化する可能性が高い。
例えば、ノーマルモードシステム11aにおいて、プラグインの変更により、対象モジュールのバージョンアップにともない、必要なくなったデータが削除される。しかし、セーフモードシステム11bでは、旧バージョンのモジュールが動作することが考えられる。
ここで、ノーマルモードとセーフモードの両システム11において、同じ格納先のデータを参照するモジュールがあった場合に、ノーマルモードによりプラグインの変更によりデータが削除されると、セーフモードでは、旧モジュールが削除されたデータを参照し、不具合が生じてしまう。そのため、アクセス制御モジュール31では、特定した格納先にデータが存在しない場合に、上記のようにデフォルト値を返す仕組みとなっている。
(B)データライト
アクセス制御モジュール31は、システム11内のモジュールからデータライトの要求を受け付けると、共有データ領域D1に保持されるアクセス制御情報41を参照し(ステップS301)、起動モードに応じて、モジュールがアクセスするデータの書き込み先(例えば格納先である「HDD」など)を特定する(ステップS302)。
アクセス制御モジュール31は、特定した書き込み先に、モジュールから受け取ったデータを書き込む(ステップS303)。
前述したアクセス制御モジュール31によるデータリード/ライトの処理を踏まえて、以下に、実行フラグに「システム復旧」又は「リストア」が設定されている場合のセーフモードシステム11bの処理手順について説明する。
(システム復旧設定時)
図14は、本発明の第1の実施形態に係るシステムを復旧する処理手順例を示すフローチャートである。
セーフモードシステム11bは、起動プログラム21により起動されると(ステップS401)、まず、アクセス制御モジュール31を介して、NVRAM105に保持される実行フラグの設定を確認する(ステップS402)。
セーフモードシステム11bは、実行フラグに「システム復旧」が設定されていることを受けて、アクセス制御モジュール31を介してシステム復旧処理を行い(ステップS403)、正常に復旧処理が完了すると、アクセス制御モジュール31を介して、起動・実行の各フラグの設定をノーマルモード時の設定(起動フラグ:「ノーマルモード」、実行フラグ:「設定なし(通常動作時の設定)」)に戻し(ステップS404)、起動プログラム21へリブート(再起動)を要求する(ステップS405)。
起動プログラム21は、再設定後の起動フラグを確認し、起動フラグの設定が「ノーマルモード」か「セーフモード」かを確認し(ステップS406)、起動フラグのノーマルモード設定に従って、NAND型FlashROM106bのノーマルモードシステム領域Saに保持される復旧後のノーマルモードシステム11aのモジュール群を起動する(ステップS407)。
(リストア設定時)
図15は、本発明の第1の実施形態に係るシステムをリストアする処理手順例を示すフローチャートである。また、図15では、ノーマルモードシステム11aが起動不可能な理由(不具合の原因)の解決方法を利用者が選択決定する構成において、「リストア」が選択された場合の処理手順例が示されている。前述したように、利用者は、所望するタイミングでUIを介して選択可能である。
ノーマルモードシステム11aは、UIから「リストア」の実行要求を受け付けると(ステップS501)、アクセス制御モジュール31を介して、NVRAM105に保持される起動・実行の各フラグを「リストア」時の設定(起動フラグ:「セーフモード」、実行フラグ:「リストア」)に変更し(ステップS502)、起動プログラム21にリブートを要求する(ステップS503)。
起動プログラム21は、再設定後の起動フラグを確認し、起動フラグの設定が「ノーマルモード」か「セーフモード」かを確認し(ステップS504)、起動フラグのセーフモード設定に従って、NAND型FlashROM106bのセーフモードシステム領域Sbに保持されるセーフモードシステム11bのモジュール群を起動する(ステップS505)。
セーフモードシステム11bは、アクセス制御モジュール31を介して、NVRAM105に保持される実行フラグの設定を確認する(ステップS506)。
セーフモードシステム11bは、実行フラグに「リストア」が設定されていることを受けて、アクセス制御モジュール31を介してリストア処理を行い(ステップS507)、正常にリストア処理が完了すると、アクセス制御モジュール31を介して、起動・実行の各フラグの設定をノーマルモード時の設定(起動フラグ:「ノーマルモード」、実行フラグ:「設定なし(通常動作時の設定)」)に戻し(ステップS508)、起動プログラム21へリブートを要求する(ステップS509)。
起動プログラム21は、再設定後の起動フラグを確認し、起動フラグの設定が「ノーマルモード」か「セーフモード」かを確認し(ステップS510)、起動フラグのノーマルモード設定に従って、NAND型FlashROM106bのノーマルモードシステム領域Saに保持されるリストア後のノーマルモードシステム11aのモジュール群を起動する(ステップS511)。
以上のように、アクセス制御モジュール31を介して、セーフモードシステム11bから動作していないノーマルモードシステム11aの修復を行うことができる。すなわち、実行されていないモジュールやデータに対して削除・上書きを行えることから、安全な修復処理が可能となる。
<まとめ>
以上のように、本発明の第1の実施形態によれば、本実施形態に係る情報処理装置100は、異なる起動モード(ノーマルモード/セーフモード)で、独立したシステム11a又は11bを起動し、さらに、システム11内のモジュールによるデータアクセスにおいて、起動モードに応じてアクセス先を変換し、モジュールによるデータアクセスを制御(起動モードに応じたデータの読み込み先/書き込み先の切り換えを制御)することができる。
これによって、情報処理装置100では、一方のシステムで不具合が発生しても、他方のシステムで修復することができる。
また、各システム11では、アクセス制御モジュール31を介して、システム11内のモジュールからのデータアクセスを行う構成により、モジュールがアクセス先を予め知っておく必要がないため、アクセス先の変更によるモジュール変更が発生しない。つまり、各システム11において同一のモジュールを動作させることが可能であり、その結果、モジュールの開発コストの軽減や開発期間の短縮を図ることができる。
よって、情報処理装置100は、発生した不具合を安定した環境で復旧することができる。
[第2の実施形態]
本実施形態では、第1の実施形態において説明を行ったアクセス制御モジュール31を用いて、各システム11との間で、互いのファームウェアアップデートの処理を行う点について説明する。なお、以降に示す本実施形態では、第1の実施形態と同一の技術的事項について、第1の実施形態において説明に用いた同一図面及び参照符号をもって、ここでの説明を省略する。
<ソフトウェア構成>
図16は、本発明の第2の実施形態に係るソフトウェアの配置例を示す図である。図16に示すように、各システム11が、互いのファームウェアをアップデート(更新)するファームウェアアップデートモジュール115a及び115bを有しており、これらのモジュール115は、NAND型FlashROM106bの各システム領域Sa及びSbに配置される。
《ファームウェアアップデート機能》
図17は、本発明の第2の実施形態に係るファームウェアをアップデートする動作例を示す図である。図17に示すように、アクセス制御モジュール31は、一方のシステム11から、他方のシステム11に対して、ファームウェアアップデートを行う。アクセス制御モジュール31は、RAM104、NAND型FlashROM106b、又はHDD109などの記憶デバイスに保持される、他方のシステム11のファームウェアを、予め用意しておいたアップデート用データ(アップデートの対象モジュールやデータ群)を基に書き換える。
例えば(A)には、セーフモードシステム11bが有するファームウェアアップデートモジュール115bが、アクセス制御モジュール31を介して、アップデート用データを基に、HDD109に保持されるノーマルモードシステム11aのモジュール群を更新する。また、(B)には、ノーマルモードシステム11aが有するファームウェアアップデートモジュール115aが、アクセス制御モジュール31を介して、アップデート用データを基に、NAND型FlashROM106bに保持されるセーフモードシステム11aのモジュール群を更新する。
なお、前述したファームウェアアップデート機能は、例えば、ノーマルモードシステム11aのファームウェアをアップデートする場合、ノーマルモードシステム11a自身が保持するファームアップデート用データを、一時的にHDD109に格納し、起動・実行フラグを「セーフモードによるアップデート」に設定変更した後にリスタートし、セーフモードシステム11bが起動してから、アクセス制御モジュール31を介して行われる機能である。よって、ファームアップデートを行う場合には、まず、アップデートの対象となるシステム11により、ファームアップデート用データが所定の記憶デバイスに一時格納される動作から開始する。
以上のように、情報処理システムを2重化したことにより、一方のシステム11を動作させ、他方のシステム11を動作させないという状態を実現可能であることから、動作中のシステム11から、動作していないシステム11のファームウェアを安全に更新することができる。
(アップデート時に使用するアクセス制御情報)
図18は、本発明の第2の実施形態に係るアクセス制御情報41のデータ例を示す図である。アクセス制御モジュール31は、図18に示すようなアクセス制御情報41に基づいて、ファームアップデート用データの読み込み先と書き込み先とを特定し、アップデート時のデータアクセスを行う。上記アクセス制御モジュール31のアクセス先の特定については、図12を用いて前述した動作と同じであることから、ここでの説明を省略する。
以上のように、各システム11内のファームウェアアップデートモジュール115は、アクセス制御モジュール31を介してアップデートを行うことから、ファームアップデート用データであるアップデート対象のモジュールやデータが、どこに格納されているかを知る必要がない。そのため、アップデート用データやファームウェアの格納先が変更になっても、ファームウェアアップデートモジュール115を変更することなく対応することができる。
(処理手順)
ここからは、セーフモードシステム11b(ファームウェアアップデートモジュール115b)により、ノーマルモードシステム11aのファームウェアをアップデートする処理手順について説明する。その中で、以下の処理手順では、各システム11間におけるファームウェアアップデートの基本処理手順と、ファームウェアの特性に応じた一括アップデートの処理手順について説明する。
図19は、本発明の第2の実施形態に係るファームウェアをアップデートする処理手順例を示すフローチャートである。
起動プログラム21は、通常(ノーマルモード)の起動要求を受け付けると(ステップS601)、NAND型FlashROM106bのノーマルモードシステム領域Saに保持されるノーマルモードシステム11aのモジュール群を起動する(ステップS602)。
起動されたノーマルモードシステム11aは、アクセス制御モジュール31に、アップデート用データの保存を要求し(ステップS603)、アクセス制御モジュール31が、保存要求として受けとったアップデート用データを、アクセス制御情報41を基に特定したHDD109へ保存(データライト処理)する(ステップS604)。
続いて、ノーマルモードシステム11aは、アクセス制御モジュール31に、セーフモードによるファームアップデート時の起動・実行フラグ設定を要求し(ステップS605)、アクセス制御モジュール31が、設定要求に従って、アクセス制御情報41を基に特定したNVRAM105に保持される起動・実行フラグの設定を変更(起動フラグ:「セーフモード」、実行フラグ:「アップデート」)する(ステップS606)。
その後、ノーマルモードシステム11aは、起動プログラム21へリブートを要求し(ステップS607)、起動プログラム21が、変更後の起動フラグを確認し(ステップS608)、起動フラグのセーフモード設定に従って、NAND型FlashROM106bのセーフモードシステム領域Sbに保持されるセーフモードシステム11bのモジュール群を起動する(ステップS609)。
起動されたセーフモードシステム11bは、変更後の実行フラグのアップデート設定に従って、ファームウェアアップデートモジュール115bにより、アクセス制御モジュール31に、アップデート用データの取得を要求し(ステップS610)、アクセス制御モジュール31が、取得要求に従って、アクセス制御情報41を基に特定したHDD109に保持されるアップデート用データを取得(データリード処理)する(ステップS611)。
続いて、ファームウェアアップデートモジュール115bは、アクセス制御モジュール31に、アップデートを要求し(ステップS612)、アクセス制御モジュール31が、取得したアップデート用データを基に、ノーマルモードシステム11aに対してアップデート処理を行う(ステップS613)。すなわち、アップデート用データを基に、NAND型FlashROM106bのノーマルモードシステム領域Saの書き換えを行う。
アップデート完了後、ファームウェアアップデートモジュール115bは、アクセス制御モジュール31に、ノーマルモード時の起動・実行フラグ設定を要求し(ステップS614)、アクセス制御モジュール31が、設定要求に従って、NVRAM105に保持される起動・実行フラグの設定を変更(起動フラグ:「ノーマルモード」、実行フラグ:「設定なし(通常動作時の設定)」)する(ステップS615)。
セーフモードシステム11bは、起動プログラム21へリブートを要求する(ステップS616)。
以上のように、アクセス制御モジュール31により、NVRAM105に保持される起動・実行モードを書き換えることで、各システム11の起動や起動後の動作を制御することができる。よって、各システム11のファームアップデートを行う場合に、動作中のシステム11(図中ではセーフモードシステム11b)から動作していないシステム11(図中ではノーマルモードシステム11a)のアップデートを行うことが可能となり、実行中のモジュールに対してアップデートを行うなどの問題が生じることなく、安全にアップデート処理を行うことができる。
また、何らかの原因で、アップデート中に情報処理装置100の電源が断たれた場合であっても、不揮発性の半導体メモリ(図中ではNVRAM105)内に、起動・実行フラグが保持されていることから、再度、電源を投入すれば、アップデート処理を再開することが可能である。
図20は、本発明の第2の実施形態に係るファームウェアを一括アップデートする処理手順例を示すフローチャートである。図20には、ファームウェアの特性に応じた一括アップデートの処理手順例が示されており、一括アップデートの処理場面が想定しやすいように、情報処理装置100として画像処理装置の一例が示されている。
前述したステップS613の処理手順により、アクセス制御モジュール31がファームウェアアップデート処理であるモジュール及びデータの書き換えを行う。画像処理装置の場合、例えば、次に挙げるようなデバイスが有するソフトウェア部品をアップデートすることとなる。
・画像処理装置に接続される外部記憶(例えば「SD(登録商標)カード」など)内のソフトウェア部品
・システムコントローラ内のソフトウェア部品
・画像処理装置に接続されるオプション機器(例えば仕上げ機能を有する「フィニッシャー」など)内のソフトウェア部品
・プリンタエンジン内のソフトウェア部品
・FAXコントローラ(FCU)内のソフトウェア部品
・操作パネル内のソフトウェア部品
このように、画像処理装置などの場合には、複数のデバイス内のソフトウェア部品を一括してアップデートする場面が考えられ、これらのソフトウェア部品は、互いに依存関係があることから、単純に書き換えを行うことはできない。
そこで、ファームウェアアップデートモジュール115は、上記の依存関係に従って、一括アップデートが行える最適なアップデート要求を、アクセス制御モジュール31に発行する。例えば、上記各デバイスにおいて、画像処理装置に接続されるオプション機器と、プリンタエンジンには、依存関係が存在するため、これら2つのアップデートについては、アップデートを行う順序(更新順序)を制御する。それ以外のデバイスにおいては、同時にアップデート処理を行う(ステップS701)。また、操作パネルに関しても、アップデート状態の表示などを行うため、上記ステップS701が完了した後にアップデートを行う(ステップS702)。
以上のように、アップデート対象のシステム11に応じて、ファームウェアアップデートモジュール115をカスタマイズすることで、安全に、かつ短時間でアップデート処理を行うことができる(アップデート処理を不具合なく時間短縮することができる)。
<まとめ>
以上のように、本発明の第2の実施形態によれば、本実施形態に係る情報処理装置100は、第1の実施形態において述べた構成に加えて、各システム11のファームウェアアップデートモジュール115が、アクセス制御モジュール31を介して、互いのシステム11のファームウェアを更新する。
これによって、情報処理装置100では、第1の実施形態と同様の効果を奏するとともに、各システム11のファームアップデートを行う場合に、動作中のシステム11から動作していないシステム11のアップデートを行うことが可能となり、安全にアップデート処理を行うことができる。
また、何らかの原因で、アップデート中に情報処理装置100の電源が断たれた場合であっても、不揮発性の半導体メモリ内に、起動・実行フラグが保持されていることから、再度、電源を投入すれば、アップデート処理を再開することが可能である。
よって、情報処理装置100は、発生した不具合を安定した環境で復旧することができる。
[第3の実施形態]
本実施形態では、第1の実施形態において説明を行ったアクセス制御モジュール31を用いて、システム復旧やミラーリングなどのセーフモード機能の処理を行う点について説明する。なお、以降に示す本実施形態では、第1の実施形態と同一の技術的事項について、第1の実施形態において説明に用いた同一図面及び参照符号をもって、ここでの説明を省略する。
<ソフトウェア構成>
図21は、本発明の第3の実施形態に係るソフトウェアの配置例を示す図である。図21に示すように、セーフモードシステム11bが、ノーマルモードシステム11aで発生した不具合の修復などを行うセーフモード機能実行モジュール116を有しており、このモジュール116は、NAND型FlashROM106bのセーフモードシステム領域Sbに配置される。
《セーフモード機能実行モジュール》
図22は、本発明の第3の実施形態に係るセーフモード機能実行モジュール116のソフトウェア構成例を示す図である。セーフモード機能実行モジュール116は、実行制御モジュール51と、一括消去実行モジュール61と、暗号化実行モジュール62と、HDDミラーリング実行モジュール63と、大容量HDD移行実行モジュール64と、システム復旧実行モジュール65とから構成される。
実行制御モジュール51は、上記各実行モジュール61〜65を実行するか否か(実行モジュール61〜65により実現される機能の動作させるか否か)を制御する機能である。実行制御モジュール51は、実行フラグの設定を基に、これらの各実行モジュール61〜65を実行するか否かを制御する。また、実行制御モジュール51は、各実行モジュール61〜65の排他制御や連携制御なども行う。例えば、連携制御には、大容量HDDデータ移行処理後に、プライマリディスクであるHDD#0の一括消去を行などがある。
実行制御モジュール51により実行制御される各実行モジュール61〜65は、以下の通りである。
一括消去実行モジュール61は、所定の記憶領域に格納されるデータを一括消去する機能である。ここで言う「消去」とは、データを記憶領域から削除するのではなく、乱数などを基に記憶されたデータを上書きし、データが読み取り不可能な(復元不可能な)状態にすることを意味する。
暗号化実行モジュール62は、暗号鍵の生成、また暗号化(再暗号化:1つの暗号文を異なる暗号文に生成し直す処理)や復号化を行う機能である。HDDミラーリング実行モジュール63は、所定の記憶領域に格納されるデータをミラーリングする機能(書き込まれたデータの複製を他の記憶領域に生成し2重化を行う機能)である。
大容量HDD移行実行モジュール64は、プライマリディスクであるHDD#0からセカンダリディスクのHDD#1へデータをコピーする機能である。システム復旧実行モジュール65は、リカバリーCDなどを用いて強制的にシステム11内の損傷箇所を修復し、システム11の再インストールを行う機能である。
上記実行モジュール61〜65が、実行制御モジュール51により実行制御されることで、本実施形態に係る情報処理装置100が提供するセーフモード機能が実現される。より具体的には、上記各モジュールが、NAND型FlashROM106bからRAM104に読み出されCPU107により実行されることで、上記セーフモード機能が実現される。
(処理手順)
ここからは、前述したセーフモード機能実行モジュール116が有する各機能の動作について説明する。なお、以下の説明では、各機能のうち、「(A)一括消去」、「(B)ミラーリング」、「(C)データ移行」の3つについての処理手順についてである。
(A)HDD一括消去時
一括消去は、主に、HDD109の破棄/交換、又はHDD109を備えた情報処理装置100を返却する場合に、情報漏洩を防ぐために用いられる機能である。情報処理装置100により生成した乱数や補数を、数回HDD109全体の記憶領域に上書きすることで、データが復元できないようにする機能である。例えば、この機能は、セキュリティの厳格な会社においては、情報処理装置100が部署移動する際に実行される。
ところで、HDD109と比較し、NAND型FlashROM106bやNVRAM105と言った記憶デバイスは高価であり、また、書き込み回数に上限があることから、データ量(サイズ)が大きく頻繁にアクセスするデータは、HDD109に記憶せざるを得ない。このようなデータの一例としては、システムログが挙げられる。
一括消去実行時において、その実行理由が、HDD109の破棄であれば、システムログを含む全データの消去が必須である。一方で、実行理由が、情報処理装置100の部署移動によるものであれば、システムログを、一括消去の対象外としなければならない。
しかし、どちらの理由で一括消去が実行されるのかは、情報処理装置100では分からないことから、単に、HDD109の特定パーティション(所定範囲の記憶領域)やディレクトリなどを、一括消去の対象外とする制御方法では、実現することができない。また、一括消去の対象外とするデータが、システムログなどであるため、どちらの理由で一括消去を実行するのかを、利用者に選択させたくない。
そこで、HDD109内の削除不可データを一括消去の実行前にNAND型FlashROM106bなどの他の記憶デバイスに退避する。一括消去実行後のシステム復旧(再インストール)の際に、退避したデータをHDD109に書き戻す(ロールバックする)。
・削除不可データを退避/復旧
ここからは、上記HDD一括消去時の処理手順について説明する。なお、以下に説明する処理手順では、NVRAM105に保持される起動・実行フラグに「セーフモード」と「HDD一括消去」の各指定が設定されている場合を想定している。
図23は、本発明の第3の実施形態に係る一括消去時の削除不可データを退避する処理手順例を示すフローチャートである。
セーフモードシステム11bは、起動プログラム21により起動されると(ステップS801)、まず、実行制御モジュール51が、アクセス制御モジュール31を介して、NVRAM105に保持される実行フラグの設定を確認する(ステップS802)。
実行制御モジュール51は、実行フラグに「HDD一括消去」の指定が設定されていることを受けて、一括消去実行モジュール61へ、削除不可データ(ログなどの一括消去時に削除対象から除外するデータ)有無の確認を要求し、一括消去実行モジュール61が、確認要求に従って、HDD109に削除不可データがあるか否かを確認する(ステップS803)。
削除不可データがある場合には(ステップS804:YES)、一括消去実行モジュール61が、確認の際に特定した削除不可データのコピー(退避)を、アクセス制御モジュール31に要求し、アクセス制御モジュール31は、コピー要求に従って、削除不可データを、HDD109からアクセス制御情報41を基に特定したコピー先のNAND型FlashROM106bへコピーする(ステップS805)。すなわち、アクセス制御モジュール31は、一括消去実行モジュール61から要求時に受け取った削除不可データを、アクセス制御情報41を基に特定した書き込み先のNAND型FlashROM106bに書き込み(データリード処理)を行う。
一括消去実行モジュール61は、アクセス制御モジュール31を介して、削除不可データのコピーが完了すると、HDD109の一括消去処理を行う(ステップS806)。
一方、削除不可データがない場合には(ステップS804:NO)、ステップS806の処理手順へ移行する。
セーフモードシステム11bは、一括消去実行モジュール61によるHDD一括消去処理が完了すると、アクセス制御モジュール31を介して、実行フラグの設定を「HDD一括消去」から「システム復旧」へ変更し、起動プログラム21へリブートを要求する(ステップS807)。
図24は、本発明の第3の実施形態に係る一括消去時の削除不可データを復旧する処理手順例を示すフローチャートである。
セーフモードシステム11bは、起動プログラム21により起動されると(ステップS901)、まず、実行制御モジュール51が、アクセス制御モジュール31を介して、NVRAM105に保持される実行フラグの設定を確認する(ステップS902)。
実行制御モジュール51は、実行フラグに「システム復旧」の指定が設定されていることを受けて、システム復旧実行モジュール65へ、HDD109のシステム復旧処理を要求し、システム復旧実行モジュール65は、復旧要求に従って、復旧処理を行う(ステップ903)。
システム復旧実行モジュール65は、システム復旧処理が完了すると、アクセス制御モジュール31を介して、退避データ(ログなどの一括消去時に削除対象から除外するデータ)があるか否か(有無)を確認する(ステップS904)。
退避データがある場合には(ステップS905:YES)、システム復旧実行モジュール65が、確認の際に特定した退避データのコピー(復旧)を、アクセス制御モジュール31に要求し、アクセス制御モジュール31は、コピー要求に従って、退避データを、NAND型FlashROM106bからアクセス制御情報41を基に特定したコピー先のHDD109へコピーする(ステップS906)。すなわち、アクセス制御モジュール31は、システム復旧実行モジュール65から要求時に受け取った退避データを、アクセス制御情報41を基に特定した書き込み先のHDD109に書き込み(データリード処理)を行う。
システム復旧実行モジュール65は、アクセス制御モジュール31を介して、退避データのコピーが完了すると、アクセス制御モジュール31を介して、実行フラグの設定を「システム復旧」から「設定なし(通常動作時の設定)」へ変更し、起動プログラム21へリブートを要求する(ステップS907)。
一方、退避データがない場合には(ステップS905:NO)、ステップS907の処理手順へ移行する。
前述した処理手順の中で、「HDD一括消去」の指定を、「システム復旧」などの指定を行った実行フラグに設定する例を示した。これは、例えば実行フラグが複数ビットで構成される場合を想定しており、Nビットでは、2通りのパターンが実行フラグとして設定可能である。また、このような1つの実行フラグにより制御する方法に限らず、実行指定の種類ごとにフラグを分けた構成であってよい。つまり、「HDD一括消去」を指定する一括消去フラグや、後述する「HDDミラーリング」を指定するミラーリングフラグなど、実行フラグと異なるフラグにより制御を行ってもよい。
また、前述した削除不可データのコピー先にNAND型FlashROM106bを例に説明を行ったが、一括消去対象のHDD109以外の記憶デバイスであればよい。
以上のように、一括消去の際に、削除不可データを、消去対象の記憶デバイスから一時的に他の記憶デバイスへ待避させ、後に、待避データを書き戻す構成としたことにより、一括消去を実行しても、HDD109に記憶されたシステムログなどの削除不可データを、HDD109に残すことができる。また、一括消去後にHDD109をそのまま使用する場合であっても、別の(新たな)HDD109に交換する場合であっても、削除不可データを残すことができる。
また、データ量の多い削除不可データを、NAND型FlashROM106bやNVRAM105より大容量であるHDD109に記憶させるため、有限である記憶資源を友情に運用することができ、コスト削減に繋がる。
・一括消去時のシステム設定のデータ整合
また、一括消去を行った場合に、HDD109以外の記憶デバイス(例えば「NAND型FlashROM106b」や「NVRAM105」など)に保持される各種設定値(例えば「システム設定」など)の整合をとる必要がある。このような場合、保持されるデータ種別に応じて整合処理を行う。例えば、HDD109以外の記憶デバイスに保持されるデータを、以下のように整合処理する。
・利用者情報(例えば「アドレス情報」や「アカウント情報」など)
:乱数や補数などにより上書き消去する
・UP/SPの設定値(初期値が必要なデータ)
:初期値(デフォルト値)に戻す
・エンジン調整値/課金情報(変更が不可能なデータ)
:現在値のままとする
そこで、上記のようなデータ種別に応じた整合処理を、アクセス制御モジュール31により行う。すなわち、アクセス制御モジュール31が、予め決められた所定の規則に従って、記憶デバイスに保持される設定値に対して、データ種別ごとに整合処理を切り換え制御する。アクセス制御モジュール31は、例えば、各データ種別において、どのような整合処理を行うかを指定する制御フラグに基づき上記処理の制御を行ってもよいし、ディレクトリなどによりグループ化された各データ種別に基づき上記処理の制御を行ってもよい。
以上のように、アクセス制御モジュール31が、一括消去時に、HDD109以外の記憶デバイスに保持される設定値に対して、データ種別に応じた整合処理を行うことにより、ノーマルモードシステム11aとセーフモードシステム11bにおいて、記憶デバイスに保持される上記データの不一致がなくなり、セーフモードからノーマルモードへ切り替わった場合でも正常に動作することができる。
(B)ミラーリング時
HDDミラーリングとは、同時に、複数のHDD109に同じデータを書き込む機能であり、一方のHDD109に何らかの障害(例えば「HDDアクセスエラー」など)が発生した場合であっても、他方の正常なHDD109のみでの運用が可能である。
また、暗号化とは、情報処理装置100により生成した(別の)暗号鍵を用いて暗号化(再暗号化)する機能である。
HDDミラーリング状態において暗号化を行う際に、ミラーリング制御に従って暗号化(再暗号化)したデータを、例えば2つのHDD109に同時に書き込んでしまうと、暗号化(再暗号化)の途中で何らかの障害が発生した場合、HDD109のデータを復旧することができなくなってしまう。復旧できない理由は、HDD109において、異なる(2つの)暗号鍵による暗号化データが混在する状態となり、復号化ができないためである。
そこで、HDDミラーリング時に、HDD暗号化(再暗号化を含む)を行う場合に、アクセス制御モジュール31を介して、プライマリディスクであるHDD#0からセカンダリディスクであるHDD#1の順で暗号化を行い、正常に暗号化されたHDD#0又はHDD#1のどちらか一方から、暗号化に失敗したHDD109を復旧する。
・暗号化
ここからは、上記HDDミラーリング時の暗号化処理手順について説明する。なお、以下に説明する処理手順では、NVRAM105に保持される起動・実行フラグに「セーフモード」と「HDDミラーリング」の各指定が設定されている場合を想定している。
図25は、本発明の第3の実施形態に係るミラーリング時に暗号化を行う処理手順例を示すフローチャートである。
セーフモードシステム11bは、起動プログラム21により起動されると(ステップS1001)、まず、実行制御モジュール51が、アクセス制御モジュール31を介して、NVRAM105に保持される実行フラグの設定を確認する(ステップS1002)。
実行制御モジュール51は、実行フラグに「HDDミラーリング」の指定が設定されていることを受けて、HDDミラーリング実行モジュール63へ、HDD109のミラーリング処理を要求し、HDDミラーリング実行モジュール63は、ミラーリング要求に従って、ミラーリング処理を行うためのデータ暗号化処理を、暗号化実行モジュール62へ要求し、暗号化実行モジュール62は、暗号化要求に従って、アクセス制御モジュール31を介して、HDDミラーリング状態を確認する(ステップ1003)。
暗号化実行モジュール62は、HDDミラーリング状態を確認すると、まず、プライマリディスクであるHDD#0のデータ暗号化を行う(ステップS1004)。
このとき、HDDアクセスエラーなどのエラーが発生した場合には(ステップS1005:YES)、暗号化実行モジュール62が、エラー発生ドライブとして、HDD#0を設定し(ステップS1006)、図に示す処理を終了する。
一方、エラーが発生することなく、HDD#1のデータ暗号化が完了した場合には(ステップS1005:NO)、暗号化実行モジュール62が、ミラーリング設定がオンか否かを判定し(ステップS1007)、ミラーリング設定がオンの場合には(ステップS1007:YES)、セカンダリディスクであるHDD#1のデータ暗号化を行う(ステップS1008)。
このとき、HDDアクセスエラーなどのエラーが発生した場合には(ステップS1009:YES)、暗号化実行モジュール62が、エラー発生ドライブとして、HDD#1を設定し(ステップS1010)、図に示す処理を終了する。
一方、エラーが発生することなく、HDD#1のデータ暗号化が完了した場合には(ステップS1005:NO)、暗号化実行モジュール62は、起動プログラム21へリブートを要求する(ステップS1011)。
また、ミラーリング設定がオフの場合には(ステップS1007:NO)、ステップS1011の処理手順へ移行する。
HDDミラーリング実行モジュール63は、前述した処理手順による暗号化処理において、プライマリディスクであるHDD#0の暗号化時にHDDアクセスエラーなどにより失敗した場合に、アクセス制御モジュール31を介して、セカンダリディスクであるHDD#1のデータを暗号化してHDD#0に書き込む。逆に、HDD#1の暗号化時にエラーで失敗した場合には、アクセス制御モジュール31を介して、HDD#0のデータをHDD#1に書き込む。
以上のように、アクセス制御モジュール31が、HDDミラーリング時に、まず、プライマリディスクであるHDD#0の暗号化を行い、その後にセカンダリディスクであるHDD#1の暗号化を行うように暗号化順序を制御することにより、HDD109の暗号化に失敗した場合であっても、データを復旧し正常に暗号化を行うことができる。
・プライマリー/セカンダリディスクの交互アクセス
セーフモードシステム11bにおいて行うHDDミラーリング処理は、情報処理装置100にセカンダリディスクであるHDD#1を装着したときに、プライマリディスクであるHDD#0からHDD#1へデータをコピーすることである。これにより2台のHDD109は、ミラーリング状態となり、ノーマルモードシステム11aの再起動時にミラーリングの運用が開始される。
ミラーリング状態では、データライト(データの書き込み)は、両方のHDD109に対して行われるが、データリード(データの読み込み)は、どちらか一方のHDD109にて行われる。このとき、片方のHDD109のみでデータリードを行うと、そのHDD109の故障率が上昇してしまう。
そこで、HDD109へのデータリードが、片方のHDD109に集中しないように、HDD#0とHDD#1との間で交互にデータリードされるように、アクセス先変換モジュール31により制御する。アクセス制御モジュール31では、HDD#0とHDD#1との間で行う交互に行うデータリードの切り換えは、データリードの回数を基に制御してもよいし、一定の経過時間を基に制御してもよい。また、データリードした総データ量を基に行ってもよい。
以上のように、アクセス制御モジュール31が、所定の切り換え制御値を基に、HDD#0とHDD#1との間で交互にデータリードされるように制御することにより、HDD#0とHDD#1へのデータリードを分散させることができ、データリードに伴うHDD109への負荷を軽減することができ、故障率の低下に繋がる。
・エラー発生時のアクセス切り換え
プライマリディスクであるHDD#0とセカンダリディスクであるHDD#1とにおいて、どちらか一方のHDD109に何らかの障害が発生した場合に、他方のHDD109のみの運用に切り換え、ジョブを完了させる。
そこで、アクセス制御モジュール31は、現在アクセス中のHDD109に障害が発生したか否かの判定結果に基づいて、正常なHDD109にデータリード/ライトするように切り換え制御する。
以上のように、アクセス制御モジュール31が、HDDアクセスエラーに基づき、エラーが発生したHDD109から正常なHDD109にアクセス先を切り換えることにより、モジュールによるデータアクセス時に、何らかの理由で障害が発生し、アクセス中のHDD109が故障した場合であっても、ジョブを完了することができる。
(C)大容量HDDへのデータ移行時
大容量HDD移行実行モジュール64によってデータ移行を行った後に、不要となったプライマリディスクであるHDD#0は、セキュリティなどの理由で、一括消去すべきである。
データ移行完了後に、そのまま消去対象のHDD#0を一括消去するようにしてもよいが、正常にデータ移行が完了したかを実際の動作において確認してから、一括消去を行いたいと言う場合がある。
・プライマリディスクの一括消去
そこで、アクセス制御モジュール31により、プライマリディスクであるHDD#0の一括消去を行う。また、データ移行と一括消去との両方を考慮した(合計した)処理の進捗割合(%)と処理完了までの予測時間を含む動作確認・一括消去指示画面が、UI112により、出力装置102であるディスプレイを介して表示され、利用者は、これらの動作確認・一括消去指示画面を基に、データ移行後の一括消去の選択指示を行う。
以上のように、利用者は、データ移行後のプライマリディスクであるHDD#0の一括消去の実行を選択することができ、データ移行先のHDD109で正常に動作することを確認した後に、データ移行元のHDD109を一括消去することができる。これにより、利用者にとって、データ管理上の利便性を向上させることができる。
・パーティションサイズ設定
大容量HDD(非図示)へのデータ移行とは、現在、情報処理装置100が備えるHDD109ではデータの記憶容量が足りず、より記憶容量の多いHDDへ交換する際に、最初に備えていたHDD109(データ移行元のHDD109)から、交換後の大容量HDD(データ移行先のHDD)へデータをコピーし、大容量HDDでの運用を行えるようにする機能である。このとき、画像データを多く扱う場合には、画像データ用のパーティション(所定範囲の記憶領域)を優先的に大きくし、ユーザ情報を多く扱う場合は、ユーザ情報用のパーティションを優先的に大きくするなど、利用者の使用用途に応じて、データ移行先の大容量HDDのパーティションサイズを、自由に設定できた方が、利用者によって利便性がよい。
そこで、例えば図26に示すような、利用者がパーティションサイズを使用用途に応じて設定可能なUI画面を、UI112により生成し、出力装置102であるディスプレイを介して表示する。
図26は、本発明の第3の実施形態に係るデータ移行に関する設定を行うUI画面例を示す図である。(A)に示すように、本実施形態では、データ移行元のHDD109(交換前のHDD)の各パーティションサイズを設定の最小値として表示し(図中の「最小:20GB」など)、データ移行先の大容量HDD(交換後のHDD)における該当パーティションサイズを設定可能なUI画面Wを表示する。
また、(B)に示すように、予めデータ種別ごとのパーティションサイズの組み合わせが決められた複数の設定パターンを保持しており、保持された複数の設定パターンから1つのパターンを選択指示するようなUI画面Wを表示するようにしてもよい。
以上のように、データ種別ごとにパーティションサイズを設定可能なUI画面Wを表示する構成としたことにより、利用者は、使用用途に応じて、大容量HDDの記憶領域を所望する記憶領域に分割することができる。これにより、利用者にとって、データ管理上の利便性を向上させることができる。
<まとめ>
以上のように、本発明の第3の実施形態によれば、本実施形態に係る情報処理装置100は、第1の実施形態において述べた構成に加えて、セーフモードシステム11bが有するセーフモード機能が、アクセス制御モジュール31を介して、一括消去、ミラーリング、暗号化、大容量HDDデータ移行、システム復旧(再インストール)などの各種機能を実行する。
これによって、情報処理装置100では、第1の実施形態と同様の効果を奏するとともに、システム管理上における情報の機密性や記憶デバイスの動作安定性、また利用者の利便性などを実現可能であり、利用者に提供する情報処理システム環境を安定して保守・運用することができる。
よって、情報処理装置100は、発生した不具合を安定した環境で復旧することができる。
ここまで、上記各実施形態に基づき本発明の説明を行ってきたが、上記各実施形態に係る各機能は、図を用いて説明を行った各処理手順を、情報処理装置100の動作環境(プラットフォーム)にあったプログラミング言語でコード化したプログラムを、コンピュータ(CPU107)で実行することで実現される。よって、上記プログラムは、コンピュータが読み取り可能な記録媒体103aに格納することができる。
よって、上記プログラムは、フロッピー(登録商標)ディスク、CD、DVD(Digital Versatile Disk)などの記録媒体103aに記憶させることによって、これらの記録媒体103aから、読み取り可能なドライブ装置103を介して、情報処理装置100にインストールすることができる。また、情報処理装置100は、ネットワークなどのデータ伝送路に接続可能なインタフェース装置108を備えていることから、インターネットなどの電気通信回線を用いて上記プログラムをダウンロードし、インストールすることもできる。
最後に、上記各実施形態に挙げた形状や構成に、その他の要素との組み合わせなど、ここで示した要件に、本発明が限定されるものではない。これらの点に関しては、本発明の主旨をそこなわない範囲で変更することが可能であり、その応用形態に応じて適切に定めることができる。
本発明の第1の実施形態に係る情報処理装置のハードウェア構成例を示す図である。 本発明の第1の実施形態に係る情報処理装置のソフトウェア構成例を示す図である。 本発明の第1の実施形態に係るROMにおける記憶領域の構成例を示す図である。 本発明の第1の実施形態に係るソフトウェアの配置例(その1)を示す図である。 本発明の第1の実施形態に係るシステム設定を整合させる動作例を示す図である。 本発明の第1の実施形態に係るシステムログをマージする動作例を示す図である。 本発明の第1の実施形態に係るソフトウェアの配置例(その2)を示す図である。 本発明の第1の実施形態に係るシステムを起動する処理手順例を示すフローチャートである。 本発明の第1の実施形態に係る異なる起動モードによる動作時のメモリマップ例を示す図である。 本発明の第1の実施形態に係る異なる起動モードによる動作の違いを模式的に示す図である。 本発明の第1の実施形態に係るアクセス制御情報のデータ例を示す図である。 本発明の第1の実施形態に係るアクセス制御情報のデータ遷移例を示す図である。 本発明の第1の実施形態に係るデータリード/ライトを行う処理手順例を示すフローチャートである。 本発明の第1の実施形態に係るシステムを復旧する処理手順例を示すフローチャートである。 本発明の第1の実施形態に係るシステムをリストアする処理手順例を示すフローチャートである。 本発明の第2の実施形態に係るソフトウェアの配置例を示す図である。 本発明の第2の実施形態に係るファームウェアをアップデートする動作例を示す図である。 本発明の第2の実施形態に係るアクセス制御情報のデータ例を示す図である。 本発明の第2の実施形態に係るファームウェアをアップデートする処理手順例を示すフローチャートである。 本発明の第2の実施形態に係るファームウェアを一括アップデートする処理手順例を示すフローチャートである。 本発明の第3の実施形態に係るソフトウェアの配置例を示す図である。 本発明の第3の実施形態に係るセーフモード機能実行モジュールのソフトウェア構成例を示す図である。 本発明の第3の実施形態に係る一括消去時の削除不可データを退避する処理手順例を示すフローチャートである。 本発明の第3の実施形態に係る一括消去時の削除不可データを復旧する処理手順例を示すフローチャートである。 本発明の第3の実施形態に係るミラーリング時に暗号化を行う処理手順例を示すフローチャートである。 本発明の第3の実施形態に係るデータ移行に関する設定を行うUI画面例を示す図である。
符号の説明
11 システム(a:ノーマルモード,b:セーフモード)
111 フレームワーク(a:ノーマルモード,b:セーフモード)
112 UI(a:ノーマルモード,b:セーフモード)
113 ログ出力(a:ノーマルモード,b:セーフモード)
114 アプリケーション
115 ファームウェアアップデートモジュール
116 セーフモード機能実行モジュール
21 起動プログラム
31 アクセス制御モジュール
41 アクセス制御情報
51 実行制御モジュール
61 一括消去実行モジュール
62 暗号化実行モジュール
63 HDDミラーリング実行モジュール
64 大容量HDD移行実行モジュール
65 システム復旧実行モジュール
100 情報処理装置
101 入力装置
102 出力装置
103 ドライブ装置(a:記録媒体)
104 RAM
105 NVRAM
106 Flash ROM(a:NOR型,b:NAND型)
107 CPU
108 インタフェース装置
109 HDD
D データ領域
DEV デバイス
S システム領域a:ノーマルモード,b:セーフモード)
M 割り当て領域
W UI画面

Claims (17)

  1. 記憶手段を備えた情報処理装置であって、
    起動指定が通常起動の場合に情報処理機能を提供する第1のシステムと、起動指定がセーフモード起動の場合に情報処理機能を提供する第2のシステムとから構成する2重化された情報処理システムを有し、さらに、
    前記第1のシステムと前記第2のシステムのどちらか一方を起動するシステム起動手段と、
    前記システム起動手段により起動されたシステム内のソフトウェア部品から前記記憶手段に保持されるデータへのアクセスを、前記起動指定に応じて制御するアクセス制御手段と、を有することを特徴とする情報処理装置。
  2. 前記アクセス制御手段は、
    前記ソフトウェア部品のデータアクセス先である記憶手段を、前記起動指定に応じて切り換えることを特徴とする請求項1に記載の情報処理装置。
  3. 当該情報処理装置が、複数の記憶手段を備え、
    前記アクセス制御手段は、
    前記起動指定に基づき、前記複数の記憶手段の中から前記ソフトウェア部品のデータアクセス先である記憶手段を特定することを特徴とする請求項2に記載の情報処理装置。
  4. 前記第1のシステム及び/又は前記第2のシステムを構成するソフトウェア部品は、
    前記アクセス制御手段を介して、
    前記記憶手段に保持されるデータを読み込む及び/又は前記記憶手段にデータを書き込むことを特徴とする請求項1ないし3のいずれか一項に記載の情報処理装置。
  5. 前記アクセス制御手段は、
    前記ソフトウェア部品が前記記憶手段に保持されるデータを読み込むときに、
    前記記憶手段にデータが存在しない場合、
    前記ソフトウェア部品に、前記データのデフォルト値を返すことを特徴とする請求項4に記載の情報処理装置。
  6. 当該情報処理装置は、
    前記第1のシステム又は前記第2のシステムのどちらか一方でシステム設定が変更された場合に、
    前記アクセス制御手段を介して、
    他方のシステムへ設定変更を反映することを特徴とする請求項1ないし5のいずれか一項に記載の情報処理装置。
  7. 当該情報処理装置は、
    前記アクセス制御手段を介して、
    前記第1のシステムにより収集されるログ情報に、前記第2のシステムにより収集されるログ情報をマージすることを特徴とする請求項1ないし6のいずれか一項に情報処理装置。
  8. 当該情報処理装置は、
    前記アクセス制御手段を介して、
    前記第1のシステム又は前記第2のシステムのどちらか一方が、他方のシステムのソフトウェア部品を更新することを特徴とする請求項1ないし7のいずれか一項に記載の情報処理装置。
  9. 当該情報処理装置は、
    前記アクセス制御手段を介して、システムを構成する複数のソフトウェア部品を一括更新する場合に、
    前記ソフトウェア部品の依存関係に基づき、予め決定しておいた更新順序に従って、前記ソフトウェア部品を更新することを特徴とする請求項8に記載の情報処理装置。
  10. 当該情報処理装置は、
    前記アクセス制御手段を介して、
    前記第1のシステムで発生した不具合を、前記第2のシステムが修復することを特徴とする請求項1ないし9のいずれか一項に記載の情報処理装置。
  11. 当該情報処理装置は、
    前記記憶手段に保持されるデータを消去する前に、消去可能なデータか否かを判定し、前記データが消去不可能なデータであった場合に、
    前記アクセス制御手段を介して、
    前記データを他の記憶手段に待避することを特徴とする請求項1ないし10のいずれか一項に記載の情報処理装置。
  12. 当該情報処理装置は、
    前記アクセス制御手段を介して、
    前記他の記憶手段に待避しておいたデータを、消去後の記憶手段に書き戻すことを特徴とする請求項11に記載の情報処理装置。
  13. 当該情報処理装置は、
    2つの記憶手段がミラーリング状態となっているときに暗号化を行う場合、
    前記アクセス制御手段を介して、
    前記2つの記憶手段に対する暗号化の実行順序を制御することを特徴とする請求項1ないし12のいずれか一項に記載の情報処理装置。
  14. 当該情報処理装置は、
    前記第1のシステムより前記第2のシステムに、
    起動時に記憶手段から確保するシステム動作用のメモリ領域を多く割り当てることを特徴とする請求項1ないし13のいずれか一項に記載の情報処理装置。
  15. 当該情報処理装置は、
    前記第1のシステムを構成するソフトウェア部品の部品数より、前記第2のシステムの部品数の方が少ないことを特徴とする請求項1ないし14のいずれか一項に記載の情報処理装置。
  16. 起動指定が通常起動の場合に情報処理機能を提供する第1のシステムと、起動指定がセーフモード起動の場合に情報処理機能を提供する第2のシステムとから構成する2重化された情報処理システムを有する、記憶手段を備えた情報処理装置における情報処理方法であって、
    前記第1のシステムと前記第2のシステムのどちらか一方を起動するシステム起動手順と、
    前記システム起動手順により起動されたシステム内のソフトウェア部品から前記記憶手段に保持されるデータへのアクセスを、前記起動指定に応じて制御するアクセス制御手順と、を有することを特徴とする情報処理方法。
  17. 起動指定が通常起動の場合に情報処理機能を提供する第1のシステムと、起動指定がセーフモード起動の場合に情報処理機能を提供する第2のシステムとから構成する2重化された情報処理システムを有する、記憶手段を備えた情報処理装置における情報処理プログラムであって、
    コンピュータを、
    前記第1のシステムと前記第2のシステムのどちらか一方を起動するシステム起動手段と、
    前記システム起動手段により起動されたシステム内のソフトウェア部品から前記記憶手段に保持されるデータへのアクセスを、前記起動指定に応じて制御するアクセス制御手段として機能させる情報処理プログラム。
JP2008171635A 2008-06-30 2008-06-30 情報処理装置、情報処理方法、及び情報処理プログラム Pending JP2010009553A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008171635A JP2010009553A (ja) 2008-06-30 2008-06-30 情報処理装置、情報処理方法、及び情報処理プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008171635A JP2010009553A (ja) 2008-06-30 2008-06-30 情報処理装置、情報処理方法、及び情報処理プログラム

Publications (1)

Publication Number Publication Date
JP2010009553A true JP2010009553A (ja) 2010-01-14

Family

ID=41589911

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008171635A Pending JP2010009553A (ja) 2008-06-30 2008-06-30 情報処理装置、情報処理方法、及び情報処理プログラム

Country Status (1)

Country Link
JP (1) JP2010009553A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012008861A (ja) * 2010-06-25 2012-01-12 Canon Inc データ処理装置、データ処理装置のデータ処理方法、プログラム
US20160162274A1 (en) * 2014-12-08 2016-06-09 Canon Kabushiki Kaisha Information processing apparatus, method of controlling the same and non-transitory computer readable medium
JP2021005337A (ja) * 2019-06-27 2021-01-14 キヤノン株式会社 情報処理装置、情報処理方法およびプログラム
WO2021024374A1 (ja) * 2019-08-06 2021-02-11 三菱電機株式会社 情報処理装置

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012008861A (ja) * 2010-06-25 2012-01-12 Canon Inc データ処理装置、データ処理装置のデータ処理方法、プログラム
US20160162274A1 (en) * 2014-12-08 2016-06-09 Canon Kabushiki Kaisha Information processing apparatus, method of controlling the same and non-transitory computer readable medium
US9563416B2 (en) 2014-12-08 2017-02-07 Canon Kabushiki Kaisha Information processing apparatus, method of controlling the same and non-transitory computer readable medium
JP2021005337A (ja) * 2019-06-27 2021-01-14 キヤノン株式会社 情報処理装置、情報処理方法およびプログラム
JP7289739B2 (ja) 2019-06-27 2023-06-12 キヤノン株式会社 情報処理装置、情報処理方法およびプログラム
WO2021024374A1 (ja) * 2019-08-06 2021-02-11 三菱電機株式会社 情報処理装置
JPWO2021024374A1 (ja) * 2019-08-06 2021-11-04 三菱電機株式会社 情報処理装置

Similar Documents

Publication Publication Date Title
JP3906825B2 (ja) 計算機システム、計算機システム起動方法およびプログラム
JP6064608B2 (ja) ストレージ装置、バックアッププログラム、およびバックアップ方法
JP2013520744A (ja) 最小ブートイメージの生成方法及びその装置
JP4833273B2 (ja) ストレージ装置、リストア方法およびリストアプログラム
WO2009153917A1 (ja) 仮想計算機システム、仮想計算機システムを提供する情報処理装置およびプログラム
JP6875808B2 (ja) 情報処理装置
JP2017027244A (ja) 情報処理装置と、前記情報処理装置による不揮発記憶装置の初期化方法、及びプログラム
JP2010009553A (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
WO2006011186A1 (ja) コントローラ、データ記憶システム、データ書き換え方法及びコンピュータプログラムプロダクト
JP5057887B2 (ja) データ更新装置及びデータ更新方法及びデータ更新プログラム
JP6004923B2 (ja) 情報処理装置及びその制御方法とプログラム
JP4026588B2 (ja) ディスクアレイ装置およびディスクキャッシュ管理方法ならびにプログラム
JP7401215B2 (ja) 情報処理装置、その制御方法およびプログラム
KR20150058092A (ko) 네트워크 부트 시스템
JP7214381B2 (ja) 画像形成装置、画像形成装置の制御方法及びプログラム
KR101850272B1 (ko) 빠른 부팅을 위한 부트 이미지를 업데이트하는 방법 및 이를 수행하는 화상형성장치
KR101845467B1 (ko) 빠른 부팅을 위한 부트 이미지의 에러를 복구하는 방법 및 이를 수행하는 화상형성장치
JP2007164392A (ja) 計算機
JP6142510B2 (ja) 情報格納制御装置及びその制御方法、並びにコンピュータ・プログラム
JP4170133B2 (ja) 情報処理装置
JP5218024B2 (ja) 情報処理装置、情報処理方法、情報処理プログラム
JP6221702B2 (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
JP2008217533A (ja) ソフトウェア管理装置およびソフトウェア管理プログラム
JP2024022079A (ja) 情報処理装置および情報処理装置の制御方法
JP2006127268A (ja) 情報処理装置