(57)【要約】【課題】システム制御部への電力供給を停止しつつ、リビルドやパトロール機能の実行中はＨＤＤユニットに電力供給を行って、省電力とミラーリングによるシステム保護の双方を実現すること。【解決手段】電源ユニット１は電源制御信号１が「Ｈ」のときにシステム制御部２００へ電力を供給する。また、電源ユニット２は電源制御信号２が「Ｈ」のときにＨＤＤユニット３００へ電力を供給する。また、システム制御部２００は通常稼動時には電源制御信号１を「Ｈ」として出力する。また、ミラーリング制御回路３０１はリビルド中には特定動作中信号１０６を「Ｈ」として出力する。さらに、ワイヤードＯＲ回路１０３は、システム制御部２００から出力される電源制御信号１と、ミラーリング制御回路３０１から出力される特定動作中信号１０６の論理和から電源制御信号２を生成して電源ユニット２に出力する。【選択図】図１
2011081550.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置本体の制御を行う本体制御部と、複数の記憶装置と、前記本体制御部からの指示に応じて前記複数の記憶装置へのアクセスを制御するアクセス制御装置とを有する情報処理装置であって、
前記本体制御部へ電力を供給する第１電力供給手段と、
前記アクセス制御装置と前記複数の記憶装置へ電力を供給する第２電力供給手段と、
前記本体制御部への電力供給状態と、前記アクセス制御装置による前記本体制御部が動作していなくても実行可能な特定動作の実行状態とを監視し、前記本体制御部へ電力が供給されている場合と、前記アクセス制御装置が前記特定動作の実行中である場合の、少なくとも一方の場合に、前記アクセス制御装置と前記複数の記憶装置へ電力を供給するように前記第２電力供給手段を制御する電源制御手段と、
を有することを特徴とする情報処理装置。
【請求項２】
前記第１電力供給手段は、前記本体制御部から出力される第１電源制御信号の信号状態に応じて電力の供給又は停止を行うものであり、
前記第２電力供給手段は、前記電源制御手段から出力される第２電源制御信号の信号状態に応じて電力の供給又は停止を行うものであり、
前記アクセス制御装置は、前記特定動作の実行中には、前記電源制御手段に出力する特定動作中信号を、前記特定動作の実行中を示す信号状態とするものであり、
前記電源制御手段は、前記第１電源制御信号が電力供給を要求する信号状態の場合と、前記特定動作中信号が前記特定動作の実行中を示す信号状態の場合の、少なくとも一方の場合に、前記第２電源制御信号を、電力供給を要求する信号状態で出力することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記本体制御部は、前記本体制御部を停止する際に、前記第１電源制御信号を、電力供給の停止を要求する信号状態とするものであり、
前記アクセス制御装置は、前記特定動作の実行中でない場合には、前記特定動作中信号を、前記特定動作を実行中でないことを示す信号状態とするものであり、
前記電源制御手段は、前記第１電源制御信号が電力供給を要求する信号状態の場合と、前記特定動作中信号が前記特定動作の実行中を示す信号状態の場合の、いずれでもない場合に、前記第２電源制御信号を、電力供給の停止を要求する信号状態とすることを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記本体制御部を停止する際とは、スリープ状態に移行する場合、あるいはシャットダウンを行う場合であることを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記電源制御手段は、前記第１電源制御信号と前記特定動作中信号との論理和として前記第２電源制御信号を生成することを特徴とする請求項２乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
情報処理装置本体の制御を行う本体制御部と、複数の記憶装置と、前記本体制御部からの指示に応じて前記複数の記憶装置へのアクセスを制御するアクセス制御装置とを有する情報処理装置であって、
前記本体制御部へ電力を供給する第１電力供給手段と、
前記アクセス制御装置と前記複数の記憶装置へ電力を供給する第２電力供給手段と、
前記本体制御部から通知される電源遮断時間を第１計時手段により計時し、前記電源遮断時間が経過した際に前記第２電力供給手段からの電力供給を停止させる電源制御手段とを有し、
前記アクセス制御装置は、前記電源遮断時間より電源遮断準備時間だけ短い時間を第２計時手段により計時し、該時間が経過した際に、前記本体制御部が動作していなくても実行可能な特定動作を中断することを特徴とする情報処理装置。
【請求項７】
前記本体制御部は、前記電源遮断時間を前記アクセス制御装置と前記電源制御手段に通知することを特徴とする請求項６に記載の情報処理装置。
【請求項８】
前記本体制御部は、前記電源遮断時間より電源遮断準備時間だけ短い時間を前記アクセス制御装置に通知し、前記電源遮断時間を前記電源制御手段に通知することを特徴とする請求項６に記載の情報処理装置。
【請求項９】
前記電源遮断時間は、前記アクセス制御装置にて前記特定動作を中断し、前記第２電力供給手段からの電力供給の停止に備える処理を行う時間であることを特徴とする請求項６乃至８のいずれか１項に記載の情報処理装置。
【請求項１０】
前記アクセス制御装置は、前記特定動作を中断した際には、該中断の箇所を記憶手段に記憶させ、前記特定動作を再開する際には、前記記憶手段に記憶された中断の箇所から処理を継続することを特徴とする請求項６乃至９のいずれか１項に記載の情報処理装置。
【請求項１１】
前記アクセス制御装置は、前記複数の記憶装置のミラーリング制御を行うものであり、
前記特定動作は、前記いずれかの記憶装置の全領域を前記その他の記憶装置へ複写するリビルド処理を含むことを特徴とする請求項１乃至１０のいずれか１項に記載の情報処理装置。
【請求項１２】
前記アクセス制御装置は、前記複数の記憶装置のミラーリング制御を行うものであり、
前記特定動作は、前記複数の記憶装置の全領域の読み出しテストを行うパトロール処理を含むことを特徴とする請求項１乃至１０のいずれか１項に記載の情報処理装置。
【請求項１３】
情報処理装置本体の制御を行う本体制御部と、複数の記憶装置と、前記本体制御部からの指示に応じて前記複数の記憶装置へのアクセスを制御するアクセス制御装置とを有する情報処理装置の電源制御方法であって、
第１電力供給手段が前記本体制御部へ電力を供給し、
第２電力供給手段が前記アクセス制御装置と前記複数の記憶装置へ電力を供給し、
電源制御手段が、前記本体制御部への電力供給状態と、前記アクセス制御装置による前記本体制御部が動作していなくても実行可能な特定動作の実行状態とを監視し、前記本体制御部へ電力が供給されている場合と、前記アクセス制御装置が前記特定動作の実行中である場合の、少なくとも一方の場合に、前記アクセス制御装置と前記複数の記憶装置へ電力を供給するように前記第２電力供給手段を制御する電源制御ステップを有することを特徴とする情報処理装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理装置の電源制御方法に関する。
【背景技術】
【０００２】
特許文献１には、複数のハードディスク（以下、ＨＤＤ）に同時に書き込みを行うことによって、システムを保護するミラーリングシステムの電源制御方法が記載されている。また、特許文献１では、ＨＤＤへの書き込みが終了した後にハードディスクの電源をオフすることを開示されている。
【０００３】
また、システム制御ＣＰＵとＨＤＤの間にオプション追加として挿入される形式のミラーリング制御ユニットの機能として下記の、（１）ミラー機能、（２）リビルド機能、（３）パトロール機能がある。
【０００４】
（１）ミラー機能；ホストからのライトコマンドに応じて、接続された全ＨＤＤへの同時書き込みを実行する機能。（２）リビルド機能；ＨＤＤが故障したときに、複製元ＨＤＤから複製先ＨＤＤへのコピーする機能。（３）パトロール機能；通常使用時、接続されているＨＤＤのリードテストを所定のタイミングで全領域行う機能。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平１０−２５５４５１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上述のように、ミラーリングシステムが実現できる機能としは、（１）ミラー機能、（２）リビルド機能、（３）パトロール機能の３つがある。特に、（２）、（３）についてはシステム制御ＣＰＵ部が動作しなくても処理が実行できる。
【０００７】
しかし、従来では、そのような場合であっても、システム制御部に、電力を供給していた。従来の構成では、上記（２）又は（３）は、ミラーリング制御回路とＨＤＤのみへの数ワットの供給電力で動作が可能であるにもかかわらず、システム制御回路への数十ワットの消費電力を数十分〜数時間供給する必要があるという課題があった。
【０００８】
なお、スリープモードに入る際に、リビルドやパトロールを中断させる構成をとれば、省電力は実現できる。しかし、このような構成の場合、頻繁にスリープモードに入る設定の装置では、リビルドやパトロールの動作完了までに要する積算時間の通電を確保するために相当の日数を要する場合がある。この場合、その期間はミラーリングによるシステム保護ができないという問題があった。
【０００９】
の目的は、情報処理装置本体の制御を行う制御部への電力供給を停止して省電力を実現しつつ、アクセス制御装置にて特定動作の実行中である場合は複数の記憶装置へ電力を供給する情報処理装置を提供することである。
【課題を解決するための手段】
【００１０】
本発明は、情報処理装置本体の制御を行う本体制御部と、複数の記憶装置と、前記本体制御部からの指示に応じて前記複数の記憶装置へのアクセスを制御するアクセス制御装置とを有する情報処理装置であって、前記本体制御部へ電力を供給する第１電力供給手段と、前記アクセス制御装置と前記複数の記憶装置へ電力を供給する第２電力供給手段と、前記本体制御部への電力供給状態と、前記アクセス制御装置による前記本体制御部が動作していなくても実行可能な特定動作の実行状態とを監視し、前記本体制御部へ電力が供給されている場合と、前記アクセス制御装置が前記特定動作の実行中である場合の、少なくとも一方の場合に、前記アクセス制御装置と前記複数の記憶装置へ電力を供給するように前記第２電力供給手段を制御する電源制御手段とを有することを特徴とする。
【発明の効果】
【００１１】
本発明によれば、情報処理装置の本体の制御を行う本体制御部への電力供給を停止して省電力を実現しつつ、アクセス制御装置にて特定動作の実行中である場合は、複数の記憶装置へ電力を供給する情報処理装置を提供することができる。
【図面の簡単な説明】
【００１２】
【図１】情報処理装置の電源制御構成の一例を示すブロック図。
【図２】図１に示した回路が搭載されているＭＦＰのブロック図。
【図３】ミラーリング動作を示すフローチャート。
【図４】ミラーリング制御回路によるリビルド動作を示すフローチャート。
【図５】ミラーリング制御回路によるパトロール動作を示すフローチャート。
【図６】システム制御ＣＰＵによる動作を示すフローチャート。
【図７】情報処理装置の電源制御構成の一例を示すブロック図。
【図８】システム制御ＣＰＵ２０１による動作を示すフローチャートである。
【図９】情報処理装置の電源制御構成の一例を示すブロック図。
【図１０】実施例３のシステム制御ＣＰＵによる動作を示すフローチャート。
【図１１】情報処理装置の電源制御構成の一例を示すブロック図。
【図１２】ベンダーユニークな拡張コマンド一覧を示す図。
【図１３】ＳＥＴＵＰ ＲＥＢＵＩＬＤコマンドを実行した際にシステム制御部からミラーリング制御回路へ送られるデータの一例を示す図。
【図１４】ＳＥＴＵＰ ＰＡＴＲＯＬコマンドを実行した際にシステム制御部からミラーリング制御回路へ送られるデータを示す図。
【図１５】実施例４のシステム制御ＣＰＵによる動作を示すフローチャート。
【発明を実施するための形態】
【００１３】
本発明の情報処理装置は、ミラーリングユニットが、オプション設定可能なように、ホストとＨＤＤの間に挿入されているシステムである。なお、この種のミラーリングユニットは、下記（１）〜（３）の特徴を有する。
【００１４】
（１）リビルド中には、ホストがシャットダウンする場合に、ホストからのライトコマンドの発行を停止しても、ミラーリングユニットからＨＤＤへの書き込みが実行される。このＨＤＤへの書き込み実行中にＨＤＤへの通電を遮断することは、ＨＤＤへ障害を与える可能性がある。
（２）スリープに頻繁に移行する装置、あるいは電源が切れている時間の長い装置に設置された場合、ＨＤＤへの通電時間が短く、リビルド処理を完了するための時間が充分にとれない。このため、長期にわたってミラーリングによるシステム保護動作ができない可能性がある。
（３）スリープに頻繁に移行する装置、あるいは電源が切れている時間の長い装置に設置された場合、ＨＤＤへの通電時間が短く、パトロール機能が実行される充分な時間が確保されない可能性がある。
【００１５】
なお、ミラーリングとは、ホストからのライトコマンドに応じて、接続された全ＨＤＤへの同時書き込みを実行する機能である。また、リビルドとは、ＨＤＤが故障したときに、複製元ＨＤＤから複製先ＨＤＤへのコピーする機能である。パトロールとは、通常使用時、接続されているＨＤＤのリードテストを所定のタイミングで全領域行う機能である。
以下、本発明を実施するための形態について図面を用いて説明する。
【実施例１】
【００１６】
図１は、本発明の実施例１を示す情報処理装置の電源制御構成の一例を示すブロック図である。図１において、２００はシステム制御部であり、情報処理装置本体のシステムを制御する本体制御部として機能する。
【００１７】
システム制御部２００において、２０１はシステム制御ＣＰＵであり、システム制御を行うためのものである。２０２はＨＤＤコントローラであり、システム制御ＣＰＵ２０１からの指示によりＡＴＡ信号をインタフェースする。２０３は制御信号線であり、システム制御ＣＰＵ２０１とＨＤＤコントローラ２０２を接続する。
【００１８】
３００はＨＤＤユニットであり、システム制御部２００とＡＴＡ信号線１０９で接続される。ＨＤＤユニット３００において、３０１はミラーリング制御回路であり、ＨＤＤコントローラ２０２とＨＤＤ１（３０２），ＨＤＤ２（３０３）との間に接続されている。なお、ミラーリング制御回路３０１は、ＡＴＡ信号線１（３０４）でＨＤＤ１（３０２）と接続され、ＡＴＡ信号線２（３０５）でＨＤＤ２（３０３）と接続されている。なお、ミラーリング制御回路３０１に接続されるＨＤＤは３つ以上であってもよい。ミラーリング制御回路３０１は、システム制御部２００からの指示に応じて複数の記憶装置へのアクセス制御を行う。
【００１９】
１０１はシステム制御部２００へ電力を供給するための電源ユニット１（第１電力供給部）である。電源ユニット１（１０１）は、電源制御信号１（第１電源制御信号）１０４の信号状態が「Ｈ」のときにシステム制御部２００へ電力を供給する。即ち、電源制御信号１（１０４）システム制御部２００への電力供給状態を示す。１０２はＨＤＤユニット３００へ電力を供給するための電源ユニット２（第２電力供給部）である。電源ユニット２（１０２）は、電源制御信号２（第２電源制御信号）１０８の信号状態が「Ｈ」のときにＨＤＤユニット３００へ電力を供給する。電源ユニット１（１０１）、電源ユニット２（１０２）は、それぞれに入力される電源制御信号１（１０４）、電源制御信号２（１０８）に応じて独立にオフオン制御される構成である。
【００２０】
１０６は特定動作中信号であり、ミラーリング制御回路３０１がリビルド動作やパトロール動作を含む特定動作中に信号状態が「Ｈ」となる信号である。なお、特定動作とは、システム制御ＣＰＵ２０１の関与しないＨＤＤへのアクセス動作であり、システム制御ＣＰＵ２０１が動作していない状態でも実行可能な動作である。即ち、特定動作中信号１０６は、上記特定動作の実行状態を示す。
【００２１】
１０３はワイヤードＯＲ回路であり、電源制御信号１（１０４）と特定動作中信号１０６の論理和として、電源制御信号２（１０８）を生成する。即ち、ワイヤードＯＲ回路１０３は、システム制御部２００への電力供給状態と、上記特定動作の実行状態とを監視し、システム制御部２００へ電力が供給されている場合と、上記特定動作の実行中である場合の、少なくとも一方の場合に、電源ユニット２（１０２）にＨＤＤユニット３００へ電力を供給させるように機能する。
ミラーリング制御回路３０１は、ＨＤＤコントローラ２０２とＨＤＤの間にオプション設定可能な形態にて挿入され、ミラーリング動作を制御する。このため、システム制御ＣＰＵ２０１は、ミラーリング動作しているか否かで制御を変更する必要がない。
【００２２】
図２は、図１に示した回路が搭載されているＭＦＰのブロック図であり、図１と同一のものには同一の符号を付してあり、説明は省略する。図２において、システム制御部２００は、ＭＦＰのコントローラ機能を有するものである。操作部４０１、スキャナ部４０２、プリンタ部４０３と電気的に接続されており、一方ではＬＡＮを介してＰＣや外部の装置などと画像データやデバイス情報の通信が可能となっている。
【００２３】
システム制御ＣＰＵ２０１は、ＲＯＭ２５３に記憶された制御プログラム等に基づいて接続中の各種デバイスとのアクセスを統括的に制御すると共に、コントローラ（システム制御部２００）内部で行われる各種処理についても統括的に制御する。ＲＡＭ２５２は、システム制御ＣＰＵ２０１が動作するためのシステムワークメモリであり、かつ画像データを一時記憶するためのメモリでもある。このＲＡＭ２５２は、記憶した内容を電源ｏｆｆ後も保持しておくＳＲＡＭ及び電源ｏｆｆ後には記憶した内容が消去されてしまうＤＲＡＭにより構成されている。ＲＯＭ２５３には、装置のブートプログラムが格納されている。
【００２４】
ＨＤＤコントローラ２０２には、ＨＤＤユニット３００が接続される。このＨＤＤユニット３００内のＨＤＤ１（３０２），ＨＤＤ２（３０３），には、システムソフトウェアや画像データを格納することが可能となっている。
【００２５】
操作部Ｉ／Ｆ２０５は、システムバス２０３と操作部４０１とを接続するためのインタフェース部である。この操作部Ｉ／Ｆ２０５は、操作部４０１に表示するための画像データをシステムバス２０３から受け取り、操作部４０１に出力すると共に、操作部４０１から入力された情報をシステムバス２０３へと出力する。
【００２６】
ネットワークＩ／Ｆ２０６は、ＬＡＮ及びシステムバス２０３に接続され、ＬＡＮとの接続を制御する。画像バス２５０は、画像データをやり取りするための伝送路であり、ＰＣＩバスで構成されている。
【００２７】
スキャナ画像処理部２１２は、スキャナ部４０２からスキャナＩ／Ｆ２１１を介して受け取った画像データに対して、補正、加工、及び編集を行う。画像変換部２１７は、伸張部２１８、圧縮部２１９、回転部２２０、変倍部２２１、色空間変換部２２２、２値多値部２２３、多値２値部２２４、移動部２２５、間引き部２２６、合成部２２７を有し、画像データに画像処理を施す。伸張部２１６は、画像データを伸張する。プリンタ画像処理部２１５は、伸張部２１６から画像データを受け取り、ラスタ展開する。プリンタ部４０３は、プリンタＩ／Ｆ２１４を介して受け取った画像データをプリント処理する。
【００２８】
以下、図１、図３〜図５を用いて、ミラーリング制御回路３０１によるミラーリング動作、リビルド動作、パトロール動作を説明する。
＜ミラーリング動作の説明＞
図３は、ミラーリング制御回路３０１によるミラーリング動作を示すフローチャートである。なお、このフローチャートの処理は、ミラーリング制御回路３０１に内蔵される記憶部に記録されているソフトウェアをミラーリング制御回路３０１が実行することにより実現される。
【００２９】
ミラーリング制御回路３０１は、起動後、ＨＤＤ１（３０２）とＨＤＤ２（３０３）の接続確認を行う（Ｓ３０１）。次に、ミラーリング制御回路３０１は、Ｓ３０１で確認したＨＤＤに対してＩｄｅｎｔｉｆｙコマンドを発行し、ＨＤＤから詳細情報（容量、型名、性能等）を取得する（Ｓ３０２）。次に、ミラーリング制御回路３０１は、転送モード設定を実行する（Ｓ３０３）。
【００３０】
次に、ミラーリング制御回路３０１は、上記Ｓ３０１〜Ｓ３０３の結果により、２台のＨＤＤをミラー動作させるか、１台で動作させるかを判定する（Ｓ３０４）。そして、ミラーリング制御回路３０１は、２台のＨＤＤでのミラー動作が可能であると判定した場合（Ｓ３０４でＹｅｓ）、２台のＨＤＤをミラー動作させると決定する（Ｓ３０５）。
【００３１】
一方、ミラーリング制御回路３０１は、２台のＨＤＤでのミラー動作が不可能であると判定した場合（Ｓ３０４でＮｏ）、リビルド条件を満たしているか判定する（Ｓ３０６）。なお、リビルド条件を満たしている場合とは、例えば、２台のＨＤＤのうち、１台のＨＤＤが交換された新たなＨＤＤの場合である。
【００３２】
そして、ミラーリング制御回路３０１は、リビルド条件を満たしていないと判定した場合（Ｓ３０６でＮｏ）、１台のＨＤＤを動作させると決定する（Ｓ３０７）。
一方、ミラーリング制御回路３０１は、リビルド条件を満たしていると判定した場合（Ｓ３０６でＹｅｓ）、リビルド動作を実行する（Ｓ３０８）。そして、リビルド動作の完了後、ミラーリング制御回路３０１は、２台のＨＤＤをミラー動作させると決定する。
【００３３】
なお、ミラーリング制御回路３０１は、ＨＤＤコントローラ２０２からのＡＴＡコマンドを、前記決定した１台乃至２台のＨＤＤへ伝達する。なお、ＨＤＤコントローラ２０２のシステム制御ＣＰＵ２０１は、ミラーリング動作を行うために、ミラーリング制御回路３０１に対してなんら介在をしない。
【００３４】
なお、システム制御ＣＰＵ２０１からのＨＤＤへのライトコマンドは、ＨＤＤコントローラ２０２を介してミラーリング制御回路３０１へ伝達される。これに応じて、ミラーリング制御回路３０１は、上記システム制御ＣＰＵ２０１からのライトコマンドを接続されている複数のＨＤＤに対して同時に発行する。
【００３５】
また、システム制御ＣＰＵ２０１からのＨＤＤへのリードコマンドは、ＨＤＤコントローラ２０２を介してミラーリング制御回路３０１に伝達される。これに応じて、ミラーリング制御回路３０１は、接続されているいずれかのＨＤＤに対して、読み出しコマンドを発行する。
【００３６】
＜リビルド動作の説明＞
図４は、ミラーリング制御回路３０１によるリビルド動作を示すフローチャートである。なお、このフローチャートの処理は、ミラーリング制御回路３０１に内蔵される記憶部（ＲＯＭやフラッシュメモリ等）に記録されているソフトウェア（ファームウェア）をミラーリング制御回路３０１が実行することにより実現される。
【００３７】
ミラーリング制御回路３０１は、片方のＨＤＤが交換されたこと（リビルド条件を満たしたこと）を認識すると、リビルド動作を開始する。まず、ミラーリング制御回路３０１は、特定動作中信号１０６を「Ｈ」とする（Ｓ４０１）。次に、ミラーリング制御回路３０１は、リビルドアドレスを従来より接続されるＨＤＤの先頭アドレスに設定し、リビルドアドレス終了か（従来より接続されるＨＤＤの全領域のデータ複写を終了したか）を判定する（Ｓ４０２）。そして、未だリビルドアドレス終了でないと判定した場合、Ｓ４０３に処理を進める。
【００３８】
Ｓ４０３では、ミラーリング制御回路３０１は、従来より接続されるＨＤＤのリビルドアドレスのデータを新しく接続されたＨＤＤへ複写し、リビルドアドレスを複写単位だけ更新する（Ｓ４０４）。
【００３９】
次に、ミラーリング制御回路３０１は、ホスト（システム制御部２００）からのコマンドを受信したか否かを判定し（Ｓ４０５）、受信していないと判定した場合には、Ｓ４０２に処理を戻す。
【００４０】
一方、上記Ｓ４０５において、ホスト（システム制御部２００）からのコマンドを受信したと判定した場合、ミラーリング制御回路３０１は、データ複写（リビルドの処理）を中断し（Ｓ４０６）、上記ホストから受信したコマンドを処理する（Ｓ４０７）。そして、コマンドの処理が終了すると、ミラーリング制御回路３０１は、Ｓ４０２に処理を戻す。
【００４１】
一方、上記Ｓ４０２において、ミラーリング制御回路３０１は、リビルドアドレス終了と判定した場合には、特定動作中信号１０６を「Ｌ」とし、本フローチャートの処理を終了する。
【００４２】
なお、ミラーリング制御回路３０１は、システム制御ＣＰＵ２０１からのコマンド等によって中断したリビルドの処理済のＨＤＤアドレス（中断箇所）を記憶する記憶部（フラッシュメモリ等）を備える。そして、コマンドの処理が終了し、リビルドの処理を再開するときには、上記記憶部に記憶されるリビルドの処理済のＨＤＤアドレスに基づいて、中断の続きからリビルドを実行する。
【００４３】
また、システム制御ＣＰＵ２０１は、リビルド動作に関して、開始から終了まで関知することが不要である。即ち、リビルド処理は、システム制御ＣＰＵ２０１の関与しないＨＤＤへのアクセスであり、システム制御ＣＰＵ２０１が動作していない状態でも実行可能な処理である。
【００４４】
＜パトロール機能の説明＞
図５は、ミラーリング制御回路によるパトロール動作を示すフローチャートである。なお、このフローチャートの処理は、ミラーリング制御回路３０１に内蔵される記憶部に記録されているソフトウェアをミラーリング制御回路３０１が実行することにより実現される。
【００４５】
ＨＤＤに所定時間アクセスがないときに、パトロール機能が起動される。まず、ミラーリング制御回路３０１は、特定動作中信号１０６を「Ｈ」とする（Ｓ５００）。次に、ミラーリング制御回路３０１は、パトロールアドレスを、接続されるいずれかのＨＤＤの先頭アドレスに設定し、パトロールアドレス終了か（上記ＨＤＤの全領域のデータの読み出しを終了したか）を判定する（Ｓ５０１）。そして、未だパトロールアドレス終了でないと判定した場合、Ｓ５０２に処理を進める。
【００４６】
Ｓ５０２では、ミラーリング制御回路３０１は、上記ＨＤＤのパトロールアドレスのデータの読み出し処理を行い、該読み出し処理でデータを読み出せたか否かを判定する（Ｓ５０３）。そして、上記Ｓ５０３において、データを読み出せたと判定した場合には、ミラーリング制御回路３０１は、パトロールアドレスを読み出し単位だけ更新し（Ｓ５０４）、Ｓ５０１に処理を戻す。一方、上記Ｓ５０３において、データを読み出せなかったと判定した場合には、ミラーリング制御回路３０１は、Ｓ５０５に処理を進める。
Ｓ５０５では、ミラーリング制御回路３０１は、他方のＨＤＤのパトロールアドレスのデータの読み出し処理を行い、該読み出し処理でデータを読み出せたか否かを判定する（Ｓ５０６）。そして、上記Ｓ５０６において、データを読み出せたと判定した場合、ミラーリング制御回路３０１は、上記他方のＨＤＤのパトロールアドレスから読み出したデータを上記ＨＤＤに複写してデータ修復し（Ｓ５０７）、Ｓ５０１に処理を戻す。一方、上記Ｓ５０６において、データを読み出せなかったと判定した場合、ミラーリング制御回路３０１は、両ＨＤＤエラーの処理（両ＨＤＤがエラーである旨をシステム制御部２００に通知して操作部４０１に表示させる等の処理）を行う（Ｓ５０８）。そして、特定動作中信号１０６を「Ｌ」とし（Ｓ５０９）本フローチャートの処理を終了する。
【００４７】
また、上記Ｓ５０１において、ミラーリング制御回路３０１は、パトロールアドレス終了と判定した場合には、特定動作中信号１０６を「Ｌ」とし（Ｓ５１０）、本フローチャートの処理を終了する。
【００４８】
なお、図示していないが、ミラーリング制御回路３０１は、パトロール処理においても、システム制御ＣＰＵ２０１からのコマンド等を受信した場合、パトロール処理を中断する。ミラーリング制御回路３０１は、上述のように、中断したリビルドの処理済のＨＤＤアドレス（中断箇所）を記憶する記憶部を備える。そして、コマンドの処理が終了し、パトロールの処理を再開するときには、上記記憶部に記憶されるパトロールの処理済のＨＤＤアドレスに基づいて、中断の続きからパトロールを実行する。
【００４９】
なお、パトロール動作に関しても、システム制御ＣＰＵ２０１は、開始から終了まで関知することが不要である。即ち、パトロール処理も、システム制御ＣＰＵ２０１の関与しないＨＤＤへのアクセスであり、システム制御ＣＰＵ２０１が動作していない状態でも実行可能な処理である。
【００５０】
以下、図１、図６を用いて、システム制御ＣＰＵ２０１による動作を説明する。
＜システム制御ＣＰＵの動作の説明＞
図６は、システム制御ＣＰＵ２０１による動作を示すフローチャートである。なお、このフローチャートの処理は、ＲＯＭ２５３やＨＤＤ１又はＨＤＤ２に記録されているソフトウェアをシステム制御ＣＰＵ２０１が実行することにより実現される。
【００５１】
システム制御ＣＰＵ２０１は、電源が投入されると、ステムを起動し（Ｓ６０１）、電源制御信号１（１０４）を「Ｈ」とし、Ｓ６０３に処理を進める。Ｓ６０３では、システム制御ＣＰＵ２０１は、スリープ要求がある（スリープ条件を満たした）か否かを判定し、スリープ要求があると判定した場合、Ｓ６０８に処理を進める。
【００５２】
Ｓ６０８では、システム制御ＣＰＵ２０１は、スリープ状態への移行処理を行い、ＨＤＤへのアクセスを停止し（Ｓ６０９）、電源制御信号１（１０４）を「Ｌ」とし、本フローチャートの処理を終了する。
【００５３】
一方、上記Ｓ６０３において、スリープ要求がないと判定した場合、システム制御ＣＰＵ２０１は、シャットダウン要求があるか否かを判定し（Ｓ６０４）、シャットダウン要求がないと判定した場合、Ｓ６０３に処理を戻す。一方、上記Ｓ６０４において、シャットダウン要求があると判定した場合、システム制御ＣＰＵ２０１は、Ｓ６０５に処理を進める。Ｓ６０５では、システム制御ＣＰＵ２０１は、シャットダウン処理を行い、ＨＤＤへのアクセスを停止し（Ｓ６０６）、電源制御信号１（１０４）を「Ｌ」とし、本フローチャートの処理を終了する。
【００５４】
＜電源制御の説明＞
図１に示したように、実施例１の情報処理装置は、システム制御部２００とＨＤＤユニット３００への電源系が独立にオフ／オン制御できる構成である。
【００５５】
システムが通常に稼動しているときは、システム制御部２００より電源制御信号１（１０４）として「Ｈ」が電源ユニット１（１０１）とワイヤードＯＲ回路１０３に出力される。この時、電源ユニット１（１０１）は、電源制御信号１（１０４）として「Ｈ」が入力されるため、電力（電源１）をシステム制御部２００へ供給する。
【００５６】
またこの時、ワイヤードＯＲ回路１０３は、電源制御信号１（１０４）として「Ｈ」が入力されるため、特定動作中信号１０６に関わらず、電源制御信号２（１０８）として「Ｈ」を電源ユニット２（１０２）に出力する。即ち、この時、電源ユニット２（１０２）は、電源制御信号２（１０８）として「Ｈ」が入力されるため、電力（電源２）をＨＤＤユニット３００へ供給する。
【００５７】
この状態で、ＨＤＤ２（３０３）の故障等により、新たなＨＤＤと交換されたとき、ミラーリング制御回路３０１は、リビルド条件に従ってリビルド動作を開始し、同時に、特定動作中信号１０６を「Ｈ」へ遷移させる。なお、リビルドを完了するためには、例えば８０ＧＢのＨＤＤを想定すると約３０分要する。
【００５８】
また、ミラーリング制御回路３０１は、パトロール起動開始条件を満たした場合に、パトロール動作を開始し、同時に、特定動作中信号１０６を「Ｈ」へ遷移させる。パトロール機能はジョブが例えば６日ごとに起動開始条件を見ることとし、パトロール起動開始条件はジョブが３０分発生しないときに開始する等の設定である。なお、パトロール機能は、ミラーリングと並んでＨＤＤの信頼性を確保するために重要な機能である。しかし、頻繁にシャットダウンあるいはスリープする設定の装置においては、パトロール機能が起動する時間がとれない、あるいは起動しても短時間しか通電できず中断する、ということが起きる。
【００５９】
ここで、リビルド（又は、パトロール）動作中に、操作者によってシャットダウンへの移行を指示されたとき（又は、スリープ条件を満たしたとき）の動作を説明する。システム制御部２００は、シャットダウン処理（スリープ処理）を実行した後、電源制御信号１（１０４）を「Ｌ」へ遷移させることで電源ユニット１（１０１）の出力を停止させ、システムの電源が落ちる。ただし、リビルド（又は、パトロール）動作中は、特定動作中信号１０６が「Ｈ」である。このため、ワイヤードＯＲ回路１０３の出力である電源制御信号２（１０８）は「Ｈ」となり、電源ユニット２（１０２）によるＨＤＤユニット３００への電力（電源２）の供給は継続される。
【００６０】
リビルド（又は、パトロール）終了時には、特定動作中信号１０６が「Ｌ」に遷移し、電源制御信号２（１０８）も「Ｌ」となるため、電源ユニット２（１０２）のＨＤＤユニット３００への電力（電源２）の供給は停止される。このとき、装置全体の電源（電力供給）が停止する。システム制御ＣＰＵ２０１は、システム制御部２００に搭載されている。システム制御部２００は、図２に示すようにスキャナ部４０２、プリンタ部４０３、操作部４０１、画像処理部２１２，２１５等を制御する必要があり、数十ワットの電力を消費する。シャットダウンあるいはスリープへ移行する際には、スキャナ部４０２、プリンタ部４０３、操作部４０１、画像処理部２１２，２１５等の動作は不要となるため、システム制御部２００への電源供給を遮断することができる。
【００６１】
ただし、システム制御部２００に接続されているＨＤＤユニット３００は例外である。ＨＤＤユニット３００は、システム制御ＣＰＵ２０１の制御外のリビルド動作あるいはパトロール機能中には、電源を遮断することなく動作を完了できる。しかも、リビルド動作あるいはパトロール機能中、ＨＤＤユニット３００とは独立にシステム制御部２００への電力を遮断することが可能である。
【００６２】
以上のように、本実施例によれば、システム制御部への電力供給を停止して省電力を実現しつつ、リビルドやパトロール機能の実行中はＨＤＤユニットに電力供給を行ってミラーリングによるシステム保護を実現することができる。
【００６３】
よって、リビルド又はパトロール動作中であっても、ＨＤＤへ障害を発生させることなく、システム制御部をシャットダウン又はスリープに移行させ、省電力の実現することができる。また、システム制御部をシャットダウン又はスリープに移行する際、ＨＤＤユニットには電力の供給を維持するため、リビルド又はパトロール動作を完了して、ミラーリングによるシステム保護を実現することができる。
【実施例２】
【００６４】
図７は、実施例２を示す情報処理装置の電源制御構成の一例を示すブロック図であり、図１と同一のものには同一の符号を付してあり、説明は省略する。
本実施例では、システム制御ＣＰＵ２０１からのステータス読み取り要求に対して、ミラーリング制御回路３０１は、リビルド中あるいはパトロール中であれば、その旨を示すステータス情報をＨＤＤコントローラ２０２経由でシステム制御ＣＰＵ２０１へ返す。
【００６５】
また、本実施例では、システム制御ＣＰＵ２０１からミラーリング制御回路３０１へのリビルド停止コマンドあるいはパトロール停止コマンドを用意しておく。そして、システム制御ＣＰＵ２０１は、シャットダウン（又はスリープ）処理時には、上記のコマンドをミラーリング制御回路３０１へ発行して、ミラーリング制御回路３０１によるリビルドあるいはパトロールの処理を中断させる。
【００６６】
なお、ミラーリング制御回路３０１は、システム制御ＣＰＵ２０１からのコマンド等によって中断したリビルド（又はパトロール）の処理済のＨＤＤアドレスを記憶する記憶部（フラッシュメモリ等）を備える。そして、コマンドの処理が終了し、リビルド（又はパトロール）処理を再開するときには、上記記憶部に記憶されるリビルド（又はパトロール）の処理済のＨＤＤアドレスに基づいて、中断の続きからリビルド（又はパトロール）を実行する。
【００６７】
＜システム制御ＣＰＵの動作の説明＞
図８は、実施例２のシステム制御ＣＰＵ２０１による動作を示すフローチャートである。なお、このフローチャートの処理は、ＲＯＭ２５３やＨＤＤ（ＨＤＤ１又はＨＤＤ２）に記録されているソフトウェアをシステム制御ＣＰＵ２０１が実行することにより実現される。なお、図６と同一のステップには同一のステップ番号を付してあり、説明は省略する。
【００６８】
シャットダウン要求があると判定した場合（Ｓ６０４でＹｅｓ）、システム制御ＣＰＵ２０１は、リビルド・パトロール停止処理を行う（Ｓ８０１）。そして、リビルド・パトロール停止処理の終了後、Ｓ６０５に処理を進める。また、スリープ要求があると判定した場合（Ｓ６０３でＹｅｓ）、システム制御ＣＰＵ２０１は、リビルド・パトロール停止処理を行う（Ｓ８０２）。そして、リビルド・パトロール停止処理の終了後、Ｓ６０８に処理を進める。
【００６９】
以下、Ｓ８０１，Ｓ８０２で示したリビルド・パトロール停止処理について説明する。システム制御ＣＰＵ２０１は、ステータス読み取り要求をミラーリング制御回路３０１に送信し、ミラーリング制御回路３０１のステータスを取得する（Ｓ８１１）。そして、システム制御ＣＰＵ２０１は、Ｓ８１１で取得したステータスに基づいて、ミラーリング制御回路３０１がリビルド中か否かを判定する（Ｓ８１２）。そして、上記Ｓ８１２において、リビルド中であると判定した場合、システム制御ＣＰＵ２０１は、リビルド停止コマンドをミラーリング制御回路３０１に送信し（Ｓ８１３）、リビルド・パトロール停止処理を終了する。
【００７０】
一方、システム制御ＣＰＵ２０１は、上記Ｓ８１２において、リビルド中でないと判定した場合には、システム制御ＣＰＵ２０１は、Ｓ８１１で取得したステータスに基づいて、ミラーリング制御回路３０１がパトロール中か否かを判定する（Ｓ８１４）。そして、上記Ｓ８１４において、パトロール中であると判定した場合、システム制御ＣＰＵ２０１は、パトロール停止コマンドをミラーリング制御回路３０１に送信し（Ｓ８１５）、リビルド・パトロール停止処理を終了する。  一方、システム制御ＣＰＵ２０１は、上記Ｓ８１４において、パトロール中でないと判定した場合には、システム制御ＣＰＵ２０１は、そのままリビルド・パトロール停止処理を終了する。
【００７１】
本実施例によれば、ミラーリング制御回路がリビルド（又はパトロール）中にＨＤＤへの電源遮断が発生し、ＨＤＤへの障害を発生させることを防止できる。
【実施例３】
【００７２】
図９は、実施例３を示す情報処理装置の電源制御構成の一例を示すブロック図であり、図１と同一のものには同一の符号を付してあり、説明は省略する。
本実施例のシステムは、システム制御部２００とＨＤＤユニット３００間に特有のコマンドとステータスを用意してないシステムである。このようなシステムにおいて、ミラーリング制御回路３０１は、システム制御ＣＰＵ２０１へ、リビルド中あるいはパトロール中には、リビルド中あるいはパトロール中を示す信号（ＳＴＳ信号１１０）を送出する。ＳＴＳ信号１１０は、リビルド中あるいはパトロール中に「Ｈ」となり、リビルド中でもパトロール中でもない場合に「Ｌ」となる。
【００７３】
システム制御ＣＰＵ２０１は、ミラーリング制御回路３０１がリビルド中あるいはパトロール中には、シャットダウンあるいはスリープに移行せず、リビルドあるいはパトロール終了までシャットダウンあるいはスリープを延期する。
【００７４】
＜システム制御ＣＰＵの動作の説明＞
図１０は、実施例３のシステム制御ＣＰＵ２０１による動作を示すフローチャートである。なお、このフローチャートの処理は、ＲＯＭ２５３やＨＤＤ（ＨＤＤ１又はＨＤＤ２）に記録されているソフトウェアをシステム制御ＣＰＵ２０１が実行することにより実現される。なお、図６と同一のステップには同一のステップ番号を付してあり、説明は省略する。
【００７５】
シャットダウン要求があると判定した場合（Ｓ６０４でＹｅｓ）、システム制御ＣＰＵ２０１は、ミラーリング制御回路３０１から出力されるＳＴＳ信号１１０の状態に基づいてリビルド中またはパトロール中であるか否かを判定する（Ｓ１００１）。そして、上記Ｓ１００１にて、リビルド中またはパトロール中（ＳＴＳ信号１１０が「Ｈ」）であると判定した場合、システム制御ＣＰＵ２０１は、リビルドまたはパトロールが終了する（ＳＴＳ信号１１０が「Ｌ」となる）までＳ１００１の処理を繰り返す。一方、システム制御ＣＰＵ２０１は、上記Ｓ１００１において、リビルド中またはパトロール中でない（ＳＴＳ信号１１０が「Ｌ」）と判定した場合には、システム制御ＣＰＵ２０１は、ステップＳ６０５に処理を進める。
【００７６】
また、スリープ要求があると判定した場合（Ｓ６０３でＹｅｓ）、システム制御ＣＰＵ２０１は、ミラーリング制御回路３０１から出力されるＳＴＳ信号１１０の状態に基づいてリビルド中またはパトロール中であるか否かを判定する（Ｓ１００２）。そして、上記Ｓ１００２にて、リビルド中またはパトロール中（ＳＴＳ信号１１０が「Ｈ」）であると判定した場合、システム制御ＣＰＵ２０１は、リビルドまたはパトロールが終了する（ＳＴＳ信号１１０が「Ｌ」となる）までＳ１００２の処理を繰り返す。一方、システム制御ＣＰＵ２０１は、上記Ｓ１００２において、リビルド中またはパトロール中でない（ＳＴＳ信号１１０が「Ｌ」）と判定した場合には、システム制御ＣＰＵ２０１は、ステップＳ６０８に処理を進める。
【００７７】
本実施例によれば、ミラーリング制御回路がリビルド（又はパトロール）中にＨＤＤへの電源遮断が発生し、ＨＤＤへの障害を発生させることを防止できる。
【実施例４】
【００７８】
図１１は、実施例４を示す情報処理装置の電源制御構成の一例を示すブロック図であり、図１と同一のものには同一の符号を付してあり、説明は省略する。Ａ１０３は電源制御部であり、電源制御信号１（１０４）を電源ユニット１（１０１）、電源制御信号２（１０８）を電源ユニット２（１０２）にそれぞれ出力し、電源ユニット１（１０１）、電源ユニット２（１０２）のオフ／オンを制御する。
【００７９】
Ａ１０４はタイマ（第１計時部）であり、タイマ（Ａ１０４）が電源制御部（Ａ１０３）へ接続される。図１１のミラーリング制御回路３０１において、Ａ１００２はフラッシュメモリ（Ｆｌａｓｈメモリ）であり、情報を保持しておくことが可能である。また、Ａ１００３はタイマ（第２計時部）であり、時間測定が可能である。
【００８０】
なお、本実施例のシステム制御ＣＰＵ２０１は、タイマ（Ａ１０４）へ時間指定を行い、タイマ（Ａ１０４）は、時間指定されたことを電源制御部（Ａ１０３）へそれを伝え、電源制御部（Ａ１０３）は、電源制御信号１（１０４）をローにする。これにより、電源ユニット１（１０１）はオフとなる（システム制御部２００への電力供給を停止する）。
【００８１】
また、タイマ（Ａ１０４）は、指定された時間が経過すると、その旨を電源制御部（Ａ１０３）へ伝え、電源制御部（Ａ１０３）は、電源制御信号２（１０８）をローにする。これにより、電源ユニット２（１０２）はオフとなる（ＨＤＤユニット３００への電力供給を停止する）。
【００８２】
タイマ（Ａ１０４）、電源制御部（Ａ１０３）は、不図示の常夜電源で動作している。このため、タイマ（Ａ１０４）、電源制御部（Ａ１０３）は、電源ユニット１（１０１）、電源ユニット２（１０２）がオフとなっても動作することができる。なお、ＡＣ電源をオフにした場合には、タイマ（Ａ１０４）、電源制御部（Ａ１０３）も電力供給が遮断される。
【００８３】
なお、図１１に示した回路が搭載されているＭＦＰの構成例は図２と同様である。即ち、図２と図１１との関連は図２と図１の関連と同様であるためここでは説明を割愛する。ミラーリング制御回路３０１は、ＡＴＡ信号線１０９を通じ、システム制御ＣＰＵ２０１からのコマンドを受け取ることができる。本実施例のミラーリング制御回路３０１は、通常のＡＴＡコマンドのほかに、ベンダーユニークに制定した拡張コマンドを受け取ることが可能である。
【００８４】
図１２は、実施例４で設定したベンダーユニークな拡張コマンド一覧を示す図である。図１２のように、ＡＴＡコマンドは、ホスト（システム制御部２００）からＨＤＤへデータを転送する「ＰＩＯＯＵＴ」コマンド、ＨＤＤからホストへデータを転送する「ＰＩＯＩＮ」コマンド、データ転送を伴わない「ＮＯＮＤＡＴＡ」コマンドに大別される。
【００８５】
システム制御部２００から送られた拡張コマンドは、ミラーリング制御回路３０１内のみで解釈される。即ち、システム制御部２００から送られた拡張コマンドは、ＡＴＡ信号線（３０４、３０５）を通じてＨＤＤ（３０２、３０３）へは通知されない。以下、拡張コマンドを示す。
【００８６】
ＳＥＴＵＰ ＲＥＢＵＩＬＤ：リビルド機能の設定を行うコマンド：ＰＩＯＯＵＴ
ＳＴＡＲＴ ＲＥＢＵＩＬＤ：リビルド開始を命令する：ＮＯＮＤＡＴＡ
ＰＡＵＳＥ ＲＥＢＵＩＬＤ：リビルド中断を命令する：ＮＯＮＤＡＴＡ
ＲＥＳＴＡＲＴ ＲＥＢＵＩＬＤ：リビルド再開を命令する：ＮＯＮＤＡＴＡ
ＳＥＴＵＰ ＰＡＴＲＯＬ：パトロール機能の設定を行うコマンド：ＰＩＯＯＵＴ
ＳＴＡＲＴ ＰＡＴＲＯＬ：パトロール開始を命令する：ＮＯＮＤＡＴＡ
ＰＡＵＳＥ ＰＡＴＲＯＬ：パトロール中断を命令する：ＮＯＮＤＡＴＡ
ＲＥＳＴＡＲＴ ＰＡＴＲＯＬ：パトロール再開を命令する：ＮＯＮＤＡＴＡ
【００８７】
図１３は、ＰＩＯＯＵＴコマンドであるＳＥＴＵＰ ＲＥＢＵＩＬＤコマンドを実行した際にシステム制御部２００からミラーリング制御回路３０１へ送られるデータの一例を示す図である。なお、このデータはシステム制御部２００で作成する。このデータには、図１３に示すように、「リビルド延長時間」、「自動リビルド有無」、「リビルド時ベリファイ有無」、「リビルド実行範囲」、「領域Ａ先頭セクタ、サイズ」等がある。以下、各データについて説明する。
【００８８】
「リビルド延長時間」とは、秒単位で指定するデータであり、ここで指定した秒数後にリビルドを終了する。「自動リビルド有無」とは、自動的にリビルドを実行するかどうかを設定するデータである。「リビルド時ベリファイ有無」とは、リビルド時にベリファイを行うか否かを設定するデータである。「リビルド実行範囲」とは、ＨＤＤ全体をリビルドするか、特定の範囲だけをリビルドするかを設定するデータである。「領域Ａ先頭セクタ、サイズ」とは、リビルド実行範囲に設定された範囲を設定するデータである。
【００８９】
図１４は、ＰＩＯＯＵＴコマンドであるＳＥＴＵＰ ＰＡＴＲＯＬコマンドを実行した際にシステム制御部２００からミラーリング制御回路３０１へ送られるデータを示す図である。このデータはシステム制御部２００で作成する。
このデータには、図１４に示すように、「パトロール延長時間」、「開始条件」、「パトロール実行範囲」、「領域Ａ先頭セクタ、サイズ」等がある。以下、各データについて説明する。
【００９０】
「パトロール延長時間」とは、秒単位で指定するデータであり、ここで指定した秒数後にパトロールを終了する。ミラーリング制御回路３０１は、この指定されたパトロール延長時間をタイマ（Ａ１００３）に設定することになる。「開始条件」とは、パトロールの開始条件を示すデータである。「パトロール実行範囲」とは、ＨＤＤ全体をパトロールするか、特定の範囲だけするかを設定するデータである。「領域Ａ先頭セクタ、サイズ」とは、パトロール実行範囲に設定された範囲を設定するデータである。
【００９１】
なお、図示しないが、本実施例でも、システム制御ＣＰＵ２０１は、ミラーリング制御回路３０１に対してステータス読み取り要求を送信して、ミラーリング制御回路３０１のステータス情報を取得することができる。このシステム制御ＣＰＵ２０１からのステータス読み取り要求に対して、ミラーリング制御回路３０１は、リビルド中あるいはパトロール中であれば、その旨を示すステータス情報をＨＤＤコントローラ２０２経由でシステム制御ＣＰＵ２０１へ返す。
＜リビルド動作の説明＞
実施例１と同様である。ただし、実施例１では、リビルド中は、特定動作中信号（図１の１０６）を「Ｈ」とし、終了したときに「Ｌ」となるのに対し、本実施例では、特定動作中信号線が無いため、上記のようにはならない。
【００９２】
＜パトロール機能の説明＞
実施例１と同様である。ただし、実施例１では、パトロール中は、特定動作中信号（図１の１０６）を「Ｈ」とし、終了したときに「Ｌ」となるのに対し、本実施例では、特定動作中信号線が無いため、上記のようにはならない。
【００９３】
なお、ミラーリング制御回路３０１は、システム制御ＣＰＵ２０１からのコマンド等によって中断したリビルド（又はパトロール）の処理済のＨＤＤアドレスをフラッシュメモリ（Ａ１００２）に記憶する。そして、ミラーリング制御回路３０１は、次に再開するときには、フラッシュメモリ（Ａ１００２）に記憶されたＨＤＤアドレスに基づいて中断の続きからリビルド（又はパトロール）を実行する。
【００９４】
＜電源制御の説明＞
システムが通常に稼動しているときは電源制御部（１０３）から電源制御信号１（１００４）として「Ｈ」が出力され、電源ユニット１（１０１）へは「Ｈ」が入力されるため電源１（１０５）をシステム制御部Ａ２００へ供給する。また、通常動作時にはタイマ（Ａ１０４）がセットされておらず、電源制御部（Ａ１０３）から電源制御信号２（１０８）として電源ユニット２（１０２）へ「Ｈ」が入力され、電源ユニット２はＨＤＤユニット３００へ電源２（１０７）が供給される。この状態でＨＤＤ２が故障し、交換されたとき、ミラーリング制御回路Ａ３０１はリビルド条件にしたがってリビルド動作を開始する。リビルドを完了するためには８０ＧＢのＨＤＤを想定すると約３０分要する。
【００９５】
リビルド動作中に、操作者によってスリープへの移行を指示されたときの動作を説明する。ＨＤＤにはＨＤＤが壊れるまでに電源をオフオンできる回数が決まっており、あまりに頻繁に電源をオフオンすることはＨＤＤの寿命を縮めることになる。従って最近ではスリープ処理を行った後も３０分なり、１時間程度ＨＤＤへ通電しておく仕組みが搭載されている。その間にスリープ復帰処理が必要となった場合には、ＨＤＤの電源をオフオンすることなく、スリープからの復帰が可能であり、ＨＤＤの寿命を延ばすことができる。なお、本実施例もこの種のシステムとする。
【００９６】
まず、システム制御ＣＰＵ２０１は、スリープへ移行することを決定すると、「あとどれくらいで電源ユニット２（１０２）からの電力供給を停止するか（電源遮断時間）」を取得する。本実施例では、電源遮断時間は予め設定されてＲＯＭ２５３に記憶されているものとする。次に、システム制御ＣＰＵ２０１は、電源遮断時間より電源遮断準備時間だけ短い時間を、リビルド延長時間（又はパトロール延長時間）として、拡張コマンド（ＳＥＴＵＰ ＲＥＢＵＩＬＤ又はＳＥＴＵＰ ＰＡＴＲＯＬ）にてミラーリング制御回路３０１へ送信する。なお、前記電源遮断準備時間とは、ＨＤＤユニット３００にて電源遮断準備処理を行う時間に対応するものであり、予め設定されてＲＯＭ２５３に記憶されている。この電源遮断準備処理は、リビルド（又はパトロール）を中断し、どのセクタまでリビルド（又はパトロール）を行ったかをフラッシュメモリ（Ａ１００２）に保存し、キャッシュの解決やスタンバイコマンド等を発行し、電力供給の停止に備える処理を示す。
【００９７】
その後、システム制御部２００は、タイマ（Ａ１０４）へ電源遮断時間をセットする。すると、タイマ（Ａ１０４）は、タイマ（Ａ１０４）に電源遮断時間がセットされたことを電源制御部（Ａ１０３）に通知する。電源制御部（Ａ１０３）は、タイマ（Ａ１０４）から電源遮断時間がセットされた旨の通知を受けると、電源制御信号１（１０４）を「Ｌ」へ遷移させることで電源ユニット１の出力を停止させる。これにより、システム制御部２００の電源が落ちる。また、電源制御部（Ａ１０３）は、タイマ（Ａ１０４）へ電源遮断時間が指定されてからタイマ（Ａ１０４）が電源遮断時間の経過を計時するまで電源制御信号２（１０８）を「Ｌ」へ遷移させない（「Ｈ」のままとする）。そのため、電源ユニット２（１０２）の出力は、電源遮断時間が経過するまで継続されてＨＤＤユニット３００へ電力が供給され続ける。
【００９８】
また、リビルド延長時間（又はパトロール延長時間）を受けたミラーリング制御回路３０１は、リビルド延長時間（又はパトロール延長時間）をフラッシュメモリ（Ａ１００２）へ保存し、タイマ（Ａ１００３）へリビルド延長時間（又はパトロール延長時間）をセットする。これによりタイマ（Ａ１００３）は、リビルド延長時間（又はパトロール延長時間）の計時を開始する。
【００９９】
ミラーリング制御回路３０１は、タイマ（Ａ１００３）が指定時間の経過を計時すると、上記電源遮断準備処理を実行する。この後、電源遮断時間が経過し、タイマ（Ａ１０４）が指定時間の経過を計時すると、電源制御部（Ａ１０３）は、電源制御信号２（１０８）を「Ｌ」へ遷移させ、電源ユニット２（１０２）からＨＤＤユニット３００への電力供給が停止される。なお、ＨＤＤ（ＨＤＤ１、ＨＤＤ２）は、電源遮断前に上記電源遮断準備処理を行っていたため、故障が発生しない。
【０１００】
以下、図１５を参照して、実施例４のシステム制御ＣＰＵ２０１による動作を説明する。
図１５は、実施例４のシステム制御ＣＰＵ２０１による動作を示すフローチャートである。なお、このフローチャートの処理は、ＲＯＭ２５３やＨＤＤ（ＨＤＤ１又はＨＤＤ２）に記録されているソフトウェアをシステム制御ＣＰＵ２０１が実行することにより実現される。なお、図６と同一のステップには同一のステップ番号を付してあり、説明は省略する。
【０１０１】
シャットダウン要求があると判定した場合（Ｓ６０４でＹｅｓ）、システム制御ＣＰＵ２０１は、リビルド・パトロール延長処理を行う（Ｓ１５０１）。そして、リビルド・パトロール延長処理の終了後、Ｓ６０５に処理を進める。また、スリープ要求があると判定した場合（Ｓ６０３でＹｅｓ）、システム制御ＣＰＵ２０１は、リビルド・パトロール延長処理を行う（Ｓ１５０２）。そして、リビルド・パトロール延長処理の終了後、Ｓ６０８に処理を進める。そして、ＨＤＤへのアクセス停止（Ｓ６０６又はＳ６０９）の後、システム制御ＣＰＵ２０１は、電源遮断時間をタイマ（Ａ１０４）に設定し（Ｓ１５０３）、本フローチャートの処理を終了する。
【０１０２】
以下、Ｓ１５０１，Ｓ１５０２で示したリビルド・パトロール延長処理について説明する。システム制御ＣＰＵ２０１は、ステータス読み取り要求をミラーリング制御回路３０１に送信し、ミラーリング制御回路３０１のステータスを取得する（Ｓ１５１１）。そして、システム制御ＣＰＵ２０１は、Ｓ１５１１で取得したステータスに基づいて、ミラーリング制御回路３０１がリビルド中か否かを判定する（Ｓ１５１２）。そして、上記Ｓ１５１２にて、リビルド中であると判定した場合、システム制御ＣＰＵ２０１は、Ｓ１５１３に処理を進める。Ｓ１５１３では、システム制御ＣＰＵ２０１は、リビルド延長時間をＳＥＴＵＰ ＲＥＢＵＩＬＤコマンドにより、ミラーリング制御回路３０１に送信し（Ｓ１５１３）、リビルド・パトロール延長処理を終了する。なお、リビルド延長時間は、電源遮断時間から電源遮断準備時間だけ短い時間とする。
【０１０３】
一方、上記Ｓ１５１２にて、リビルド中でないと判定した場合には、システム制御ＣＰＵ２０１は、Ｓ１５１４に処理を進める。Ｓ１５１４では、システム制御ＣＰＵ２０１は、パトロール中か否かを判定する。そして、上記Ｓ１５１４にて、パトロール中であると判定した場合、システム制御ＣＰＵ２０１は、パトロール延長時間をＳＥＴＵＰＰＡＴＲＯＬコマンドにより、ミラーリング制御回路３０１に送信し（Ｓ１５１５）、リビルド・パトロール延長処理を終了する。なお、パトロール延長時間は、電源遮断時間から電源遮断準備時間だけ短い時間とする。
一方、システム制御ＣＰＵ２０１は、上記Ｓ１５１４にて、パトロール中でないと判定した場合、そのままリビルド・パトロール延長処理を終了する。
【０１０４】
なお、本実施例では、システム制御ＣＰＵ２０１がスリープ又はシャットダウンに移行する際に、リビルド（又はパトロール）延長時間を、ミラーリング制御回路３０１に送信し、タイマ（Ａ１００３）で計時させる構成を示した。しかし、予めリビルド（又はパトロール）延長時間をミラーリング制御回路３０１に送信してフラッシュメモリ（Ａ１００２）に記憶させておき、スリープやシャットダウンのトリガーとなるコマンドをミラーリング制御回路３０１へ送信してもよい。この場合、ミラーリング制御回路３０１は、スリープ等のトリガーとなるコマンドをシステム制御ＣＰＵ２０１から取得した際に、タイマ（Ａ１００３）に上記リビルド（又はパトロール）延長時間の計時を開始させる。
【０１０５】
また、本実施例では、システム制御ＣＰＵ２０１がスリープ又はシャットダウンに移行する際に、リビルド（又はパトロール）延長時間を、ミラーリング制御回路３０１に送信し、タイマ（Ａ１００３）で計時させる構成を示した。しかし、予めリビルド（又はパトロール）延長時間をミラーリング制御回路３０１に送信してフラッシュメモリ（Ａ１００２）に記憶させておき、スリープやシャットダウンのトリガーとなるコマンドをミラーリング制御回路３０１へ送信してもよい。この場合、ミラーリング制御回路３０１は、スリープ等のトリガーとなるコマンドをシステム制御ＣＰＵ２０１から取得した際に、タイマ（Ａ１００３）に上記リビルド（又はパトロール）延長時間の計時を開始させる。
【０１０６】
また、本実施例では、電源遮断時間より電源遮断準備時間だけ短い時間を、リビルド（又はパトロール）延長時間としてミラーリング制御回路３０１に送信する構成を説明した。しかし、電源遮断時間を、リビルド（又はパトロール）延長時間としてミラーリング制御回路３０１に送信してもよい。この場合、ミラーリング制御回路３０１では、電源遮断時間より電源遮断準備時間だけ短い時間をタイマ（Ａ１００３）にセットするように構成する。即ち、ミラーリング制御回路３０１において、電源遮断時間より電源遮断準備時間だけ短い時間を計測する構成であればどのような構成であってもよい。
【０１０７】
また、図１５では、ミラーリング制御回路３０１のステータスを取得し、リビルド中であればリビルド延長時間、パトロール中であればパトロール延長時間をミラーリング制御回路３０１に送信する構成とした。しかし、ミラーリング制御回路３０１のステータスを取得することなく、リビルド延長時間とパトロール延長時間の双方をミラーリング制御回路３０１に送信するように構成してもよい。この場合、ミラーリング制御回路３０１が、リビルド中であればリビルド延長時間、パトロール中であればパトロール延長時間を使用するように構成する。
【０１０８】
また、本実施例では、リビルド延長時間はＳＥＴＵＰ ＲＥＢＵＩＬＤコマンドで送信し、パトロール延長時間はＳＥＴＵＰ ＰＡＴＲＯＬコマンドで送信する構成となっている。しかし、リビルド延長時間とパトロール延長時間の区別をなくし、延長時間として、１つの拡張コマンドで送信するように構成してもよい。この場合、ミラーリング制御回路３０１では、この延長時間をタイマ（Ａ１００３）にセットして、この延長時間の計測後に、電源遮断準備処理を実行するように構成する。
【０１０９】
以上のように、本実施例によれば、システム制御部への電力供給を停止して省電力を実現しつつ、リビルドやパトロール機能の実行中はＨＤＤユニットに電力供給を行ってミラーリングによるシステム保護を実現できる。また、本実施例によれば、ミラーリング制御回路がリビルド中にスリープモードに入っても、リビルド延長時間（又はパトロール延長時間）、リビルドを継続することができる。
【０１１０】
以上、示したように、本発明では、ミラーリングシステムで、リビルドあるいはパトロール動作時には、システム制御部の電源をミラーリングシステムとは独立に遮断する。これにより、スリープあるいはシャットダウン時には動作中のミラーリングシステムを残して電源を遮断しておくことが可能となる。また、停電などにより一定時間後にどうしても電源を遮断する必要がある場合にも指定時間内にリビルド、パトロールを中断することも可能である。
【０１１１】
（その他の実施例）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。なお、上記各種記憶媒体は、上記プログラムをコンピュータ読み取り可能に記録したものであれば、どのような種類の記録媒体であってもよい。
【符号の説明】
【０１１２】
１０１    電源ユニット１
１０２    電源ユニット２
１０４    電源制御信号１
１０５    特定動作中信号
２００    システム制御部
３００    ＨＤＤユニット
３０１    ミラーリング制御回路
３０２，３０３    ＨＤＤ
【図１】
2011081550.tif 000003
【図２】
2011081550.tif 000004
【図３】
2011081550.tif 000005
【図４】
2011081550.tif 000006
【図５】
2011081550.tif 000007
【図６】
2011081550.tif 000008
【図７】
2011081550.tif 000009
【図８】
2011081550.tif 000010
【図９】
2011081550.tif 000011
【図１０】
2011081550.tif 000012
【図１１】
2011081550.tif 000013
【図１２】
2011081550.tif 000014
【図１３】
2011081550.tif 000015
【図１４】
2011081550.tif 000016
【図１５】
2011081550.tif 000017