説明

情報処理装置及びこれを備えた画像形成装置

【課題】2台の補助記憶装置で複数のRAIDモードを共存させ且つ該2台の一方又は両方を、記憶容量が異なる他の未区画補助記憶装置と取り替えても、より短時間で使用可能状態にする。
【解決手段】HDD用の管理テーブルの内容を設定した後に管理テーブルを、HDDのみならずEEPROMにも格納させる。HDDを取り替えた場合、2台のHDDのそれぞれの記憶容量を取得し(S20〜S26)、管理テーブルの内容のみならず取替後の2台のHDDのそれぞれの記憶容量にも基づいて、取替後のHDDに対する管理テーブルを自動作成する(S27〜S32)。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、未区画(パーティション未設定)補助記憶装置を使用した場合にRAID(Redundant Arrays of Independent Disks)パーティションを自動設定する情報処理装置及びこれを備えた画像形成装置に関する。
【背景技術】
【0002】
RAID技術によれば、複数台のハードディスクを組み合わせて恰も物理的に1台のハードディスクのように運用することにより、モードに応じ高速性又は耐障害性を向上させることができる。
【0003】
本願発明者は、下記特許文献1に開示されているように、2台の補助記憶装置で複数のRAIDモードを共存させることが可能な情報処理装置を提案した。
【特許文献1】特開2009−104321号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
しかしながら、2台の一方又は両方を、記憶容量が異なる他の未区画補助記憶装置と取り替えた場合、補助記憶装置の管理領域に格納される管理テーブルを、取替先の補助記憶装置の容量に応じて対話的に作成する必要があるので、使用可能状態にするまでに要する時間が長くなる。
【0005】
一方、この取替後において、それまでの運用を継続させるとともに、未区画補助記憶装置の容量に応じて仮想ディスクの容量を変更するという場合が一般的と考えられる。
【0006】
本発明は、このような点に着眼して案出されたものであり、その目的とするところは、2台の補助記憶装置で複数のRAIDモードを共存させ且つ該2台の一方又は両方を、記憶容量が異なる他の未区画補助記憶装置と取り替えても、より短時間で使用可能状態にすることが可能な情報処理装置及びこれを備えた画像形成装置を提供することにある。
【課題を解決するための手段】
【0007】
本発明の第1態様では、2台の補助記憶装置と、該2台の補助記憶装置の少なくとも一方に格納された管理テーブルに基づいて複数のRAIDモードのうち選択されたモードで該2台の補助記憶装置を制御するディスクアレイ制御装置と、を備えた情報処理装置において、該管理テーブルは、該2台の補助記憶装置に構成されている各仮想ディスクについて、仮想ディスク識別コードと、RAIDモードと、論理ブロックアドレスのオフセットOFSiと、総セクタ数NSiとを含むレコードを有し、
不揮発性記憶装置と、
該管理テーブルの内容を設定した後に該管理テーブルを、該2台の補助記憶装置の少なくとも一方に格納させるとともに、該不揮発性記憶装置にも格納させる制御手段とをさらに有する。
【0008】
本発明による情報処理装置の第2態様では、該制御手段は、
(a)該2台の補助記憶装置の少なくとも一方が未区画であることを示す情報を該補助記憶装置から取得した場合、該不揮発性記憶装置に格納されている該管理テーブルを読み出し、
(b)該管理テーブルの内容と、該2台の補助記憶装置のそれぞれの記憶容量とに基づき該管理テーブルを書き換え、
(c)該2台の補助記憶装置の少なくとも一方に、該書き換えた管理テーブルを格納させる。
【0009】
本発明による情報処理装置の第3態様では、第2態様において、該制御手段は、処理(b)で、
該2台の補助記憶装置からそれぞれの全体の総セクタ数TS1及びTS2(TS1≦TS2)を取得し、
該管理テーブルの書き換えにおいて、論理ブロックアドレスのオフセットOFSiが最大値の仮想ディスクを除き、オフセットOFSiの小さいレコード順に、
OFSi+NSi≦TS1であればそのレコードをそのままとし、OFSi+NSi>TS1であればその総セクタ数NSiを、TS1−OFSiと書き換えてそれ以降のレコードを削除し、
全レコードについてこの削除が行われなかった場合、オフセットOFSiが最大値のレコードについては、その総セクタ数を、TS1−OFSiと書き換える。
【発明の効果】
【0010】
上記第1態様の構成によれば、補助記憶装置の管理テーブルの内容を設定した後に該管理テーブルを、該補助記憶装置のみならず不揮発性記憶装置にも格納させるので、該補助記憶装置を未区画の補助記憶装置と取り替えた場合に、該管理テーブルを参照して、取替後の補助記憶装置に対する管理テーブルを自動作成することが可能となるという効果を奏する。
【0011】
上記第2態様の構成によれば、該管理テーブルの内容のみならず2台の補助記憶装置のそれぞれの記憶容量にも基づいて管理テーブルを書き換えて、取替後の補助記憶装置に対する管理テーブルを自動作成するので、一般ユーザが望むと考えられるRAIDパーティションを自動作成することができるという効果を奏する。
【0012】
上記第3態様の構成によれば、取替後の補助記憶装置の記憶容量が取替前より大きくても小さくてもRAIDパーティションを適切に自動作成することができるという効果を奏する。
【0013】
本発明の他の目的、構成及び効果は以下の説明から明らかになる。
【実施例1】
【0014】
図9は、画像形成装置10のハードウェア構成を示す概略ブロック図である。
【0015】
この画像形成装置10では、CPU11がインターフェイス12を介してEEPROM13、DRAM14、RAIDコントローラ15、操作パネル16、印刷部17及びネットワークインターフェイス18に結合されている。図9では、簡単化の為に、複数種のインターフェイスを1つのブロック12で表している。
【0016】
RAIDコントローラ15には、RAIDを構成するHDD(Hard Disk Drive)191及びHDD192が接続され、RAIDコントローラ15とRAIDドライバとにより、OS(Operating System)からは恰も物理的に1台のハードディスクとして取り扱うことができる。この擬似的に1台のハードディスクは、管理テーブルを用いて、仮想的な複数のディスクに論理分割することができる。
【0017】
不揮発性記憶装置としてのEEPROM13は、例えばフラッシュメモリであり、これには、OS、RAIDドライバ及びEEPROMドライバを含む各種ドライバ、パーティション作成プログラムを含むユーティリティ、及び、画像形成アプリケーション、並びに、管理テーブルを含む各種データが格納される。DRAM14は、主記憶装置として用いられる。
【0018】
操作パネル16は、キー及び表示パネルを供えている。印刷部17は、プリントエンジン並びに用紙の給紙部、搬送部及び排紙部を備え、DRAM14に生成されたビットマップデータが供給され、このデータに基づいて感光ドラムに静電潜像を形成し、この像をトナーで現像し、トナー像を用紙に転写し定着させ、排紙する。ネットワークインターフェイス18は、不図示のLANに結合される。
【0019】
図7は、RAIDドライバ21に関係した構成を示す概略ブロック図である。図7において、HDD191、HDD192及びRAIDコントローラ15はハードウェア構成であり、その他は、ソフトウェア構成であって、実行時にはDRAM14内に構成される。
【0020】
HDD191及びHDD192には、上述の論理分割により、第1仮想ディスクLD1、第2仮想ディスクLD2及び第3仮想ディスクLD3が構成されている。仮想ディスクLD1〜LD3はいずれも、アドレス上、HDD191とHDD192との互いに対応する領域に作成され、それぞれRAID0モード、RAID0モード及びRAID1モードで両物理ディスクが同時にアクセスされる。
【0021】
RAIDドライバ21は、オペレーティングシステム22とRAIDコントローラ15との間のインターフェイスとして機能する。
【0022】
次に、ファイルアクセスにおける図3に示すような管理テーブル212の必要性について説明する。
【0023】
オペレーティングシステム22は、カーネル220と、ファイルシステム221とを備えている。プロセス24がファイルをアクセスする場合、まず、プロセス24からカーネル220に対しファイルのパスとリード又はライト等のアクセスモードとを指定したファイルオープンのシステムコールが行われる。カーネル220は、これに応答して、カーネル用メモリ領域にストリームバッファ領域222を確保し、その識別子をプロセス24に返す。プロセス24はこの後、この識別子及びバイト数を指定してカーネル220を介しこのストリームバッファ領域222をアクセスすることにより、間接的にファイルをアクセスすることができる。
【0024】
これを可能にするために、カーネル220は、ファイルシステム221を参照して、上記パスで指定されるファイルの先頭LBA(論理ブロックアドレス)の値を取得し、パスに含まれる仮想ディスク名と、このLBAと、必要なブロック数と、ストリームバッファストリームバッファ領域222内のアクセス先頭アドレス(ストリームバッファアドレス)とを含む、図8(A)に示すようなアクセス制御ブロック213を指定して、RAIDドライバ21に対し、ファイルアクセスを要求する。1ブロックサイズは、例えば1セクタサイズに等しく、例えば512バイトである。
【0025】
RAIDドライバ21において、論理/物理アクセス情報変換部211は、カーネル220からのアクセス要求に応答して、図3に示すような管理テーブル212を参照して、この要求に係る上記アクセス制御ブロックのうち論理アクセス情報である仮想ディスク名及びLBAをそれぞれ物理アクセス情報である物理ディスク名及び物理ブロックアドレス(PBA)に変換して、図8(A)に示すアクセス制御ブロック213に書き込む。LBAとPBAとの差は、図8(B)に示すように仮想ディスク毎に定まる定数である。
【0026】
管理テーブル212は、システムの立上げ時に、HDD191の管理領域MAに格納されているものをメモリ上に読出したものである。図3に示す管理テーブル212において、第1仮想ディスクLD1は、マイナー番号(仮想ディスク識別番号)50が1、ディスク制御モード51がRAID1(ミラーリング)、使用物理ディスクチャンネル番号52が0(HDD191)及び1(HDD192)、総セクタ数53が16進数で0x010000、LBAオフセット54が16進数で0x001000であることを示している。第2仮想ディスクLD2は、マイナー番号50が2、ディスク制御モード51がRAID1、使用物理ディスク52がHDD191及びHDD192、総セクタ数53が16進数で0x019000、LBAオフセット54が16進数で0x029000であることを示している。第3仮想ディスクLD3は、マイナー番号50が3、ディスク制御モード51がRAID0(ストライピング)、使用物理ディスク52がHDD191及びHDD192、総セクタ数53が16進数で0x018000、LBAオフセット54が16進数で0x011000であることを示している。
【0027】
論理/物理アクセス情報変換部211は、アクセス制御ブロック213の先頭アドレスを指定して、転送部214にデータ転送要求(サブルーチンコール)する。転送部214はこれに応答して、このアクセス制御ブロック213に含まれる物理ディスク名、PBA、モード、ブロック数及びストリームバッファストリームバッファ領域222内のアクセス先頭アドレスを、物理アクセス情報としてRAIDコントローラ15に転送する。
【0028】
RAIDコントローラ15はこれに応答して、この物理アクセス情報に基づきそのモードを実行するように、HDD191及びHDD192に対し、アクセス要求する。
【0029】
RAIDコントローラ15は、DMA(Direct Memory Access)コントローラ150を備えており、リードの場合には、HDD191及びHDD192から読み出されたデータを、DMAによりストリームバッファ領域222内へ、そのアクセス先頭アドレスから(ブロック数)*512バイトだけ転送し、ライトの場合には、このストリームバッファ領域222からDMAによりデータをHDD191及び192へ同様に転送する。HDD191及び192はいずれも、内部にハードディスクコントローラ及びバッファメモリを備えており、RAIDコントローラ15とのデータ転送は、このハードディスクコントローラを介しこのバッファメモリとの間で行われる。
【0030】
次に、HDDを未区画HDDに取り替えた場合の管理テーブル自動作成に関係した処理について説明する。
【0031】
図1(A)は、管理テーブル設定プログラムによる処理を示す概略フローチャートである。
【0032】
(S0)操作パネル16の操作に応じて対話的に、HDD191及びHDD192に対し管理テーブルを設定する。
【0033】
(S1)設定された管理テーブル212を、HDD191の管理領域MAに格納させる。
【0034】
(S2)更に、この管理テーブル212を所定のファイル名で、EEPROMドライバ25を介しEEPROM13内に格納する。
【0035】
既にEEPROM13内にこのファイルが存在する場合には、その内容がステップS2の処理で上書きされる。
【0036】
図1(B)は、画像形成装置10に電源を投入した際に実行される初期化処理の一部を示すフローチャートである。
【0037】
(S10)HDD191の管理領域MA内の所定アドレスの内容をメモリ上に読み出す。この所定アドレスには、未区画ハードディスクであるか否かを示す情報が格納されている。なお、管理領域MA内に管理テーブルが存在するか否かにより、未区画ハードディスクであるか否かを判定してもよい。
【0038】
(S11)未区画ハードディスクであれば、すなわち管理テーブル212が存在しないか、存在しても無効であれば、ステップS12へ進んでRAIDパーティションを自動設定し、存在すれば、その他の初期化処理へ移る。未区画ハードディスクであるか否かは、管理領域MA内の所定アドレスの情報に基づいて判定することができる。
【0039】
図2は、ステップS12の詳細フローチャートである。
【0040】
(S20)HDD191の総セクタ数を取得し、これを変数TS1に代入する。
【0041】
(S22)HDD192の総セクタ数を取得し、これを変数TS2に代入する。
【0042】
(S23)TS1<TS2であればステップS24へ進み、そうでなければステップS25へ進む。
【0043】
(S24)変数TSに総セクタ数TS1を代入し、ステップS26へ進む。
【0044】
(S25)変数TSに総セクタ数TS2を代入する。
【0045】
(S26)HDD191の管理領域MAから管理テーブル212をメモリ上に読み出す。
【0046】
(S27)管理テーブル212内の全レコードを、オフセットの昇順にソートする。
【0047】
(S27)ソートされたレコードのi番目を意味する変数iに、初期値1を代入する。
【0048】
(S28)iの値がレコード総数nに等しくなければステップS29へ進み、等しければステップS31へ進む。
【0049】
(S29)i番目のレコードのLBAオフセットOFSiと総セクタ数NSiとの和が、TSよりも小さければステップS30へ進み、大きければステップS31へ進み、等しければステップS32へ進む。
【0050】
(S30)i<nであればiの値を1だけインクリメントしてステップS28へ戻る。即ち、OFSi+NSi<TSであれば、このレコードを変更しない。i=nであれば、ステップS33へ進む。
【0051】
(S31)総セクタ数NSiをTS−OFSiの値で更新する。即ち、i番目の仮想ディスクに、TS中の残りの全セクタを割当てる。
【0052】
(S32)i<nであれば、i+1〜n番目のレコードを全て削除する。すなわち、これらに対応する仮想ディスクにパーティションを割当てない。
【0053】
(S33)HDD191とHDD192のうち、論理フォーマットがされていないものを、OSを介し論理フォーマットする。
【0054】
図4は、HDD191及び192をサイズのより大きい未区画HDDに取り替えた場合に、図2の処理により、図3の管理テーブルを参照して自動作成された管理テーブルを示す図である。図6(A)は、この図4に対応した仮想ディスクの領域説明図である。
【0055】
図5は、HDD191及び192をサイズのより小さい未区画HDDに取り替えた場合に、図2の処理により、図3の管理テーブルを参照して自動作成された他の管理テーブルを示す図である。図6(B)は、この図5に対応した仮想ディスクの領域説明図である。
【0056】
本実施例1によれば、HDD191用の管理テーブル212の内容を設定した後に管理テーブル212を、HDD191のみならずEEPROM13にも格納させるので、HDD191及び192を未区画のものと取り替えた場合に、管理テーブル212を参照して、取替後のHDDに対する管理テーブルを自動作成することが可能となるという効果を奏する。
【0057】
また、管理テーブル212の内容のみならず取替後の2台のHDDのそれぞれの記憶容量にも基づいて管理テーブル212を書き換えて、取替後のHDDに対する管理テーブルを自動作成するので、一般ユーザが望むと考えられるRAIDパーティションを自動作成することができるという効果を奏する。
【0058】
さらに、取替後のHDDの記憶容量が取替前より大きくても小さくてもRAIDパーティションを適切に自動作成することができるという効果を奏する。
【0059】
本発明の好適な実施例を説明したが、本発明には他にも種々の変形例が含まれ、上記複数の実施例で述べた構成要素の他の組み合わせ、各構成要素の機能を実現する他の構成を用いたもの、当業者であればこれらの構成又は機能から想到するであろう他の構成も、本発明に含まれる。
【0060】
例えば、RAIDモード以外にシングルモードを含む構成にも本発明を適用することができる。
【0061】
また、管理テーブルを2台の補助記憶装置のそれぞれに格納してミラーリングした構成であってもよい。
【図面の簡単な説明】
【0062】
【図1】(A)は管理テーブル設定プログラムによる処理を示す概略フローチャートであり、(B)は画像形成装置に電源を投入した際に実行される初期化処理の一部を示すフローチャートである。
【図2】図1(B)中のステップS12の詳細フローチャートである。
【図3】管理テーブル説明図である。
【図4】2台のハードディスクをサイズのより大きい未区画ハードディスクに取り替えた場合に、図2の処理により、図3の管理テーブルを参照して自動作成された管理テーブルを示す図である。
【図5】2台のハードディスクをサイズのより小さい未区画ハードディスクに取り替えた場合に、図2の処理により、図3の管理テーブルを参照して自動作成された他の管理テーブルを示す図である。
【図6】(A)は図4に対応した仮想ディスクの領域説明図、(B)は図4に対応した仮想ディスクの領域説明図である。
【図7】RAIDドライバに関係した構成を示す概略ブロック図である。
【図8】(A)はアクセス制御ブロック説明図、(B)は仮想ディスクの論理ブロックアドレスと物理ブロックアドレスとの対応関係を示す概略説明図である。
【図9】画像形成装置のハードウェア構成を示す概略ブロック図である。
【符号の説明】
【0063】
10 画像形成装置
11 CPU
12 インターフェイス
13 EEPROM
14 DRAM
15 RAIDコントローラ
150 DMAコントローラ
17 印刷部
18 ネットワークインターフェイス
191、192 HDD
21 RAIDドライバ
211 論理/物理アクセス情報変換部
212 管理テーブル
213 アクセス制御ブロック
214 転送部
22 オペレーティングシステム
220 カーネル
221 ファイルシステム
222 ストリームバッファ領域
24 プロセス
25 EEPROMドライバ
50 マイナー番号
51 ディスク制御モード
52 使用物理ディスク
53 総セクタ数
54 LBAオフセット
LD1 第1仮想ディスク
LD2 第2仮想ディスク
LD3 第3仮想ディスク
MA 管理領域
OFSi LBAオフセット
NSi、TS1、TS2 総セクタ数
TS 変数

【特許請求の範囲】
【請求項1】
2台の補助記憶装置と、該2台の補助記憶装置の少なくとも一方に格納された管理テーブルに基づいて複数のRAIDモードのうち選択されたモードで該2台の補助記憶装置を制御するディスクアレイ制御装置と、を備えた情報処理装置において、該管理テーブルは、該2台の補助記憶装置に構成されている各仮想ディスクについて、仮想ディスク識別コードと、RAIDモードと、論理ブロックアドレスのオフセットOFSiと、総セクタ数NSiとを含むレコードを有し、
不揮発性記憶装置と、
該管理テーブルの内容を設定した後に該管理テーブルを、該2台の補助記憶装置の少なくとも一方に格納させるとともに、該不揮発性記憶装置にも格納させる制御手段と、
をさらに有することを特徴とする情報処理装置。
【請求項2】
該制御手段は、
(a)該2台の補助記憶装置の少なくとも一方が未区画であることを示す情報を該補助記憶装置から取得した場合、該不揮発性記憶装置に格納されている該管理テーブルを読み出し、
(b)該管理テーブルの内容と、該2台の補助記憶装置のそれぞれの記憶容量とに基づき該管理テーブルを書き換え、
(c)該2台の補助記憶装置の少なくとも一方に、該書き換えた管理テーブルを格納させる、
ことを特徴とする情報処理装置。
【請求項3】
該制御手段は、処理(b)において、
該2台の補助記憶装置からそれぞれの全体の総セクタ数TS1及びTS2(TS1≦TS2)を取得し、
該管理テーブルの書き換えにおいて、論理ブロックアドレスのオフセットOFSiが最大値の仮想ディスクを除き、オフセットOFSiの小さいレコード順に、
OFSi+NSi≦TS1であればそのレコードをそのままとし、OFSi+NSi>TS1であればその総セクタ数NSiを、TS1−OFSiと書き換えてそれ以降のレコードを削除し、
全レコードについてこの削除が行われなかった場合、オフセットOFSiが最大値のレコードについては、その総セクタ数を、TS1−OFSiと書き換える、
ことを特徴とする請求項2に記載の情報処理装置。
【請求項4】
該制御手段は、電源投入時の初期化処理において、処理(a)を実行することを特徴とする請求項2に記載の情報処理装置。
【請求項5】
請求項1乃至4のいずれか1つに記載の情報処理装置を備えたことを特徴とする画像形成装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate