JP4806084B1 - 情報処理装置 - Google Patents

情報処理装置 Download PDF

Info

Publication number
JP4806084B1
JP4806084B1 JP2010123532A JP2010123532A JP4806084B1 JP 4806084 B1 JP4806084 B1 JP 4806084B1 JP 2010123532 A JP2010123532 A JP 2010123532A JP 2010123532 A JP2010123532 A JP 2010123532A JP 4806084 B1 JP4806084 B1 JP 4806084B1
Authority
JP
Japan
Prior art keywords
raid controller
mode
storage devices
controller card
information processing
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.)
Expired - Fee Related
Application number
JP2010123532A
Other languages
English (en)
Other versions
JP2011248783A (ja
Inventor
泰弘 川本
努 楚南
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2010123532A priority Critical patent/JP4806084B1/ja
Priority to US13/100,828 priority patent/US20110296236A1/en
Application granted granted Critical
Publication of JP4806084B1 publication Critical patent/JP4806084B1/ja
Publication of JP2011248783A publication Critical patent/JP2011248783A/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0727Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a storage system, e.g. in a DASD or network based storage system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1076Parity data used in redundant arrays of independent storages, e.g. in RAID systems

Abstract

【課題】RAIDコントローラカードに障害が生じた場合、使用できない時間を短くすることが可能な情報処理装置を提供すること。
【解決手段】情報処理装置はRAIDコントローラカードとプロセッサとを有する。RAIDコントローラカードは、第1のモードの場合に、データを分散して複数の第1記憶装置に書き込み、複数の第1記憶装置に書き込まれるデータのパリティを演算し、演算されたパリティを第2記憶装置に書き込む書き込み制御と、前記複数の第1記憶装置に分散されたデータを読み込む読み込み制御とを行う。プロセッサは、第2のモードの場合に、前記書き込み制御および前記読み込み制御を行うプロセッサであって、前記複数の第1記憶装置および前記第2記憶装置とのデータの転送は前記RAIDコントローラカードを介して行う。
【選択図】 図1

Description

本発明の実施形態は、RAID(Redundant Array Of Inexpensive Disks)機能を備えた情報処理装置に関する。
サーバの分野では、データを冗長化して保存するためにRAIDがよく用いられている。RAIDを構成する記憶装置に障害が起きた場合には、障害が起きた記憶装置を正常な記憶装置で置き換えればよい。
ところで、一般的にRAIDに係わるパリティ計算や記憶装置の管理等の処理は、PCI(Peripheral Component Interconnect)−Express等の拡張スロットに挿入されたRAIDコントローラカードによって行われる。
RAIDコントローラカードに障害が生じた場合、RAIDコントローラカードは、障害発生時、障害箇所に該当するエラーコードとログを表示、もしくは記録し、動作を停止させる。
通常、RAIDコントローラカードの障害発生時には保守員が現場に向かい、RAIDコントローラカードを交換する。この間、RAIDコントローラカードは停止していて、記憶装置へのアクセスが不可能であり、サーバを使用することができない。また、記憶装置もRAIDとしてコンフィギュレーションされているため、その他の機器でのアクセスはできない。保守員がサーバの設置場所に到着するまで時間がかかり、サーバが使用できるようになるまで多くの時間を要していた。
ところで、近年、CO2の放出量を抑制するために、使用電力を削減することが求められている。
特開2008−40612号公報
RAIDコントローラカードに障害が生じた場合、使用できない時間をできるだけ短くしたいという要望があった。
また、使用電力を削減することが求められている。
本発明の目的は、RAIDコントローラカードに障害が生じた場合、使用できない時間を短くすることが可能な情報処理装置を提供することである。
また、本発明の別の目的は、使用電力を削減することが可能な情報処理装置を提供することである。
実施形態によれば、情報処理装置はRAIDコントローラカードとプロセッサとを有する。RAIDコントローラカードは、第1のモードの場合に、データを分散して複数の第1記憶装置に書き込み、複数の第1記憶装置に書き込まれるデータのパリティを演算し、演算されたパリティを第2記憶装置に書き込む書き込み制御と、前記複数の第1記憶装置に分散されたデータを読み込む制御とを行う。プロセッサは、第2のモードの場合に、前記書き込み制御および前記読み込み制御を行うプロセッサであって、前記複数の第1記憶装置および前記第2記憶装置とのデータの転送は前記RAIDコントローラカードを介して行う。
第1の実施形態のサーバ装置のシステム構成の一例を示すブロック図。 第1の実施形態のメイン基板およびRAIDコントローラカードの外観の一例を示す斜視図。 第1の実施形態のRAIDコントローラカードのシステム構成の一例を示すブロック図。 第1の実施形態のRAIDコントローラカードに障害が発生した場合の処理の手順の一例を示すフローチャート。 第1の実施形態のRAIDコントローラカードに障害が発生した場合の処理の手順の一例を示すフローチャート。 第2の実施形態の情報処理装置のシステム構成を示すブロック図。 第2の実施形態のRAIDコントローラカードのシステム構成をの一例を示すブロック図。 第2の実施形態のハードウェアモードとソフトウェアモードとを切り替える処理の手順の一例を示すフローチャート。 第2の実施形態のハードウェアモードとソフトウェアモードとを切り替える処理の手順の一例を示すフローチャート。
以下、実施の形態について図面を参照して説明する。
(第1の実施形態)
図1を参照して第1の実施形態に係わる情報処理装置を説明する。情報処理装置は、コンピュータサーバとして実現されている。
図1は、コンピュータサーバ10のシステム構成を示すブロック図である。図1に示すように、コンピュータサーバ10は、CPU11、ノースブリッジ12、主メモリ13、グラフィックスコントローラ14、VRAM14A、サウスブリッジ16、BIOS−ROM17、RAIDコントローラカード18、およびハードディスクドライブ(HDD)19等を備えている。
CPU11は、コンピュータサーバ10内の各部の動作を制御するプロセッサである。CPU11は、HDD19から主メモリ13にロードされるオペレーティングシステムや、このオペレーティングシステムの制御下で動作する各種プログラムを実行する。また、CPU11は、BIOS−ROM17に格納された基本入出力システム(BIOS)も実行する。なお、以下では、このBIOS−ROM17に格納された基本入出力システム自体をBIOSと称することがある。
ノースブリッジ12は、CPU11のローカルバスとサウスブリッジ16との間を接続するブリッジデバイスである。ノースブリッジ12は、バスを介してグラフィックスコントローラ14との通信を実行する機能を有しており、また、主メモリ13をアクセス制御するメモリコントローラも内蔵されている。グラフィックスコントローラ14は、本10側のディスプレイ15を制御する表示コントローラである。グラフィックスコントローラ14は、VRAM14Aに書き込まれた画像データからディスプレイ15に送出すべき映像信号を生成する。
サウスブリッジ16は、PCI Express(PCIe)バスの各種デバイスを制御するコントローラである。また、このサウスブリッジ16には、BIOS−ROM17が直接的に接続され、これらを制御する機能も有している。
図2は、CPU11および主メモリ13等が実装されるメイン基板およびRAIDコントローラカード18を示す斜視図である。
図2に示すように、メイン基板101上に複数の拡張スロット104、105が設けられている。拡張スロット104、105にはPCIeバスが接続される。なお、拡張スロット104には8レーン以下のPCI Express拡張カードが挿入することができ、拡張スロット105には16レーン以下のPCI Express拡張カードが挿入することができる。図2に示すように、拡張スロット104には、RAIDコントローラカード18を構成する拡張基板200のコネクタ部206が挿入されている。
コンピュータサーバ10は、RAIDコントローラカード18に障害が発生した場合に、通常の動作モードであるハードウェアモードから、ハードウェアセーフモードまたはソフトウェアセーフモードに切り替えられる。通常、RAIDコントローラカード18に障害が発生すると、RAIDコントローラカード18は機能を停止し、コンピュータサーバ10も動作しなくなる。コンピュータサーバ10は、ハードウェアセーフモードまたはソフトウェアセーフモードに切り替えることによって、コンピュータサーバ10を稼働し続けることが可能である。
ハードウェアセーフモードでは、障害の原因であるデバイスが停止されている。また、ソフトウェアセーフモードでは、パリティの演算等の書込み処理、および読み込み処理がCPU11によって行われる。
次に、RAIDコントローラカード18のシステム構成について図3を参照して説明する。RAIDコントローラカード18は、プロセッサコントローラ301、PCIeコントローラ302、SAS/S−ATAコントローラ303、拡張BIOS−ROM304、揮発性メモリ311、不揮発性メモリバックアップモジュール312、温度/電圧監視モジュール313、第1不揮発性メモリ321、第2不揮発性メモリ322、第3不揮発性メモリ323、ブザー331、表示パネル332、および電源コントローラ333等を備えている。
プロセッサコントローラ301は、不揮発性メモリ321に格納されたファームウェア3211または不揮発性メモリ322に格納されたファームウェア3221を実行する。ハードウェアモードおよびハードウェアセーフモードの場合、プロセッサコントローラ301は、2台のHDD19にデータを分散して書き込み、2台のハードディスクドライブ19に書き込まれるデータのパリティを演算し、演算されたパリティを1台のハードディスクドライブ19に書き込む書き込み制御と、2台のハードディスクドライブ19に分散されて書き込まれたデータを読み込む読み込み制御とを行う。また、ソフトウェアセーフモードの場合、プロセッサコントローラ301は、CPU11とHDD19との間のデータの転送を制御する。なお、プロセッサコントローラ301内にはパリティを計算する回路が設けられている。ファームウェア3211を実行する場合、ファームウェア3211は揮発性メモリ311にロードされる。また、ファームウェア3221を実行する場合、ファームウェア3221はプロセッサコントローラ301内に設けられているメモリにロードされる。
PCIeコントローラ302は、サウスブリッジ16との間のデータの伝送を制御するためのPCI Expressインタフェースである。SAS/S−ATAコントローラ303は、HDD19との間のデータの伝送を制御するためのインタフェースである。
拡張BIOS−ROM304には、ハードウェアモードおよびハードウェアセーフモードの場合にコンピュータサーバ10の起動時に主メモリ13にロードされるHW拡張BIOS(HW_Ex._BIOS)304が格納されている。また、拡張BIOS−ROM3041には、ソフトウェアセーフモードの場合にコンピュータサーバ10の起動時に主メモリ13にロードされるSW拡張BIOS(SW_Ex._BIOS)3042が格納されている。
バックアップモジュール312は、メイン基板101から供給される電力の電圧値が低下した場合に、揮発性メモリ311に電力を供給するためのバッテリ等を備えている。温度/電圧監視モジュール313は、バッテリの温度やバッテリの電圧等を監視する。
揮発性メモリ311には、ホストからデータをキャッシュするために用いられる。揮発性メモリ311は、例えばDDR2 SDRAM(Double-Data-Rate2 Synchronous Dynamic Random Access Memory)によって構成されている。
第1不揮発性メモリ321にはハードウェアモードおよびハードウェアセーフモード用のファームウェア(HW_FW)3211が格納されている。RAIDコントローラカード18の起動時に、通常のハードウェアモードで起動するかを示すハードウェアモードフラグ(HWn_FRG)3212が設けられている。RAIDコントローラカード18の起動時に、ハードウェアセーフモードで起動するかを示すハードウェアセーフモードフラグ(HWs_FRG)3213が設けられている。また、第1不揮発性メモリ321には、揮発性メモリ311、バックアップモジュール312、温度/電圧監視モジュール313等のRAIDコントローラカード18内の各デバイスに電力を供給するかを示す電力供給フラグ(PW_FRG)3214が設けられている。
第2不揮発性メモリ322にはソフトウェアセーフモード用のファームウェア3221が格納されている。RAIDコントローラカード18の起動時に、ソフトウェアセーフモードで起動するかを示すソフトウェアセーフモードフラグ(SWs_FRG)3222が設けられている。
通常、第1不揮発性メモリ321に格納されているハードウェアモードおよびハードウェアセーフモード用のファームウェア3211が実行されるが、コントローラカード18に故障が生じた場合に、第2不揮発性メモリ322に格納されているソフトウェアセーフモード用のファームウェア3221が実行される。
第3不揮発性メモリ323には、管理情報3231が格納されている。管理情報3231は、RAIDアレイの構成情報やRAIDアレイに属するHDD19の情報等を示す。なお、管理情報3231は、各HDD19にも格納されている。
ブザー331は、RAIDコントローラカード18に障害が発生した場合に警報を発するために設けられている。また、表示パネル332は、障害が発生した場合に障害の原因を示すエラーコードを表示するために設けられている。
次に、図4,5のフローチャートを参照してRAIDコントローラカード18に障害が発生した場合の処理の手順を説明する。
プロセッサコントローラ301は、RAIDコントローラカード18に障害が生じたら、障害の原因を特定し、特定された原因を示すエラーコードを表示パネル332に表示し、原因をログファイルに記録する(ステップ401)。ログファイルは、第3不揮発性メモリ323に格納される。
プロセッサコントローラ301は、ログファイルを参照し、障害が致命的な物であるかを判定する(ステップ402)。
致命的なエラーであると判定された場合(ステップ402のYes)、プロセッサコントローラ301はRAIDコントローラカード18の停止させる(ステップ403)。致命的なエラーではないと判定された場合(ステップ402のNo)、プロセッサコントローラ301は、テストモードに移行する(ステップ404)。
プロセッサコントローラ301は、RAIDコントローラカード18内の各デバイスをテストし、テスト結果とログファイルに記録されたエラーコードとから故障箇所を特定する(ステップ406)。
プロセッサコントローラ301は、故障箇所が動作しなくても、RAIDコントローラカード18がハードウェアセーフモードで動作可能であるかを判定する(ステップ407)。
ハードウェアセーフモードで動作可能な場合(ステップ407のYes)、プロセッサコントローラ301は、第1不揮発性メモリ321内のハードウェアモードフラグ3212の値をFalseにし、第1不揮発性メモリ321内のハードウェアセーフモードフラグ3213の値をTrueにする(ステップ408)。そして、プロセッサコントローラ301は、ステップ406において特定された故障箇所に対応するデバイスの電力供給フラグ3214の値をFalseにする(ステップ409)。
ハードウェアセーフモードで動作可能ではない場合(ステップ407のNo)、プロセッサコントローラ301は、第1不揮発性メモリ321内のハードウェアモードフラグ3212の値をFalseにし、第2不揮発性メモリ322内のソフトウェアセーフモードフラグ3222の値をTrueにする(ステップ410)。
プロセッサコントローラ301は、再起動が必要であるかを判定する(ステップ411)。再起動が必要ではないと判定された場合(ステップ411のNo)、プロセッサコントローラ301は、設定を変更して動作を継続する(ステップ412)。例えば、温度/電圧監視モジュール313が故障したとする。この場合、バックアップモジュール312は動作することができない。しかし、揮発性メモリ311は動作するので、データの書き込み速度は落ちるが、ハードウェアモードでは動作することができる。この場合は、再起動が必要ではないので、Write Back Cache機能を使わない設定にする。また、バックアップモジュール312および温度/電圧監視モジュール313への電力の供給を停止する。
また、揮発性メモリ311が故障した場合を考える。この場合、ハードウェアテストモードはファームウェアを揮発性メモリ311に展開し、自立動作する性質上、揮発性メモリが故障するとハードウェアモードでは起動できない。その場合はソフトウェアモードで動作させる。電力供給フラグ3214の値を変更した後、再起動させ、最低限のハードウェアで動作することが可能である。
再起動が必要な場合(ステップ411のYes)、再起動が行われる(ステップ413)。再起動後、コントローラ301は、ハードウェアモードフラグ3212の値を読み出す。ここでハードウェアモードフラグ3212の値はFalseであるので、コントローラ301は、ハードウェアセーフモードフラグ3213の値を読み出す。ハードウェアセーフモードフラグ3213の値がTrueであれば、電力供給フラグ3214の値を読み出し、電力供給フラグ3214の値がFalseのデバイスへの給電を停止するように電源コントローラ333に命令する(ステップ415)。そして、第1不揮発性メモリ321に格納されているファームウェアがメモリ311にロードされ、ファームウェアが起動される(ステップ416)。そして、ハードウェアモードおよびハードウェアセーフモード用のHW拡張BIOS3041が主メモリ13にロードされる(ステップ417)。また、RAIDコントローラカード18に対応するPCIコンフィギュレーション内にRAIDコントローラカード18の動作モードがハードウェアセーフモードであることを示す情報が記録される。
ハードウェアセーフモードフラグ3213の値がFalseであれば、コントローラ301はソフトウェアセーフモードフラグ3222の値を読み出す。ソフトウェアセーフモードフラグ3222の値がTrueであれば(ステップ414のNo)、コントローラ301はソフトウェアセーフモードの実行に最低限必要なデバイス以外のデバイスへの給電を停止するように電源コントローラ333に命令する(ステップ418)。そして、第2不揮発性メモリ322に格納されているファームウェア3221がコントローラ301内のメモリにロードされ、プロセッサコントローラ301によってファームウェア3221が実行される(ステップ419)。そして、ソフトウェアモード用のSW拡張BIOS3042が主メモリ13にロード5される(ステップ420)。また、RAIDコントローラカード18に対応するPCIコンフィギュレーション内にRAIDコントローラカード18の動作モードがソフトウェアセーフモードであることを示す情報が記録される。
その後、オペレーティングシステムが起動する(ステップ421)。RAIDコントローラカード18のドライバはRAIDコントローラカード18に対応するPCIコンフィギュレーションを参照し、RAIDコントローラカード18の動作モードを取得する。
RAIDコントローラカード18の動作モードがハードウェアセーフモードの場合(ステップ422のYes)、RAIDコントローラカード18のドライバは、ハードウェアウェアセーフモードで動作する(ステップ423)。RAIDコントローラカード18の動作モードがソフトウェアセーフモードの場合(ステップ422のNo)、RAIDコントローラカード18のドライバは、ソフトウェアウェアセーフモードで動作する(ステップ424)。
以上説明したように、RAIDコントローラカード18に障害が発生しても、ハードウェアセーフモードまたはソフトウェアセーフモードで運用することによって、使用できない時間をできるだけ短くすることが可能になる。
また、ハードウェアモード、ハードウェアセーフモード、ソフトウェアモードの3段階準備し、故障デバイスの種類により削減する機能を選定することで、機能と性能の劣化をなるべく抑えることができる。
(第2の実施形態)
図6を参照して第2の実施形態に係わる情報処理装置を説明する。情報処理装置は、コンピュータサーバとして実現されている。
図6は、第2の実施形態の情報処理装置のシステム構成を示すブロック図である。
図6に示すように、コンピュータサーバ500は、CPU11、ノースブリッジ12、主メモリ13、グラフィックスコントローラ14、VRAM14A、サウスブリッジ16、BIOS−ROM17、RAIDコントローラカード518、およびハードディスクドライブ(HDD)19等を備えている。なお、図1と同一な部位には同一符号を付し、その説明を省略する。
CPU11は、コンピュータサーバ500の各種デバイスを総合的に制御する制御装置である。また、CPU11は、主メモリ13にロードされたオペレーティングシステム521および省エネルギーアプリケーション522等を実行する。RAIDコントローラカード518は、複数のインターフェースに接続されたHDD19のRAID制御のコントロールを行う。
本実施形態のRAIDコントローラカード518およびコンピュータサーバ500は二つの動作モードが設定可能である。第1のモード(ハードウェアモード)ではRAIDコントローラカード18は通常のハードウェアモードとして動作する。第2のモード(ソフトウェアモード)では、ハードウェアモードからソフトウェアモードに動的に切り替わるモードである。前述した省エネルギーアプリケーション522は、ハードウェアモードとソフトウェアモードとを切り替えるためのアプリケーションプログラムである。
動的に切り替わるモードに関しては、予め、自動でRAIDコントローラカード518の負荷を時間軸で記録しておき、それらの情報を元に、負荷の低い時間帯の予測情報を割り出し、現時点前後の負荷状態を確認後、モードの切替を行う機能である。
図7は、第2の実施形態のRAIDコントローラカード518のシステム構成を示すブロック図ある。
RAIDコントローラカード518は、プロセッサコントローラ301、PCIeコントローラ302、SAS/S−ATAコントローラ303、拡張BIOS−ROM304、揮発性メモリ311、不揮発性メモリバックアップモジュール312、温度/電圧監視モジュール313、第1不揮発性メモリ621、第2不揮発性メモリ622、第3不揮発性メモリ323、ブザー331、表示パネル332、および電源コントローラ333等を備えている。なお、図3に示したものと同一な部位には同一符号を付し、詳細な説明を省略する。
第1不揮発性メモリ621にはハードウェアモード用のファームウェア(HW_FW)6211が格納されている。RAIDコントローラカード518の起動時に、通常のハードウェアモードで起動するかを示すハードウェアモードフラグ(HWn_FRG)6212が設けられている。
第2不揮発性メモリ622にはソフトウェアセーフモード用のファームウェア6221が格納されている。RAIDコントローラカード518の起動時に、ソフトウェアセーフモードで起動するかを示すソフトウェアセーフモードフラグ(SWs_FRG)6222が設けられている。
通常、第1不揮発性メモリ621に格納されているハードウェアモード用のファームウェア6211が実行されるが、ソフトウェアモードの場合に第2不揮発性メモリ622に格納されているソフトウェアセーフモード用のファームウェア6221が実行される。
次に、図8,9のフローチャートを参照してハードウェアモードとソフトウェアモードとを切り替える処理の手順を説明する。
先ず、オペレーティングシステム521の起動後、省エネルギーアプリケーション522が起動する(ステップ711)。省エネルギーアプリケーション522は、一定時間間隔(例えば、10分)でハードディスクドライブ8のI/O(Input/Output)数をログファイルに記録する(ステップ712)。ログファイルは例えばHDD19に格納される。ハードディスクドライブ8のI/O数の代わりに、プロセッサコントローラ301のI/O数を取得しても良い。
そして、省エネルギーアプリケーション522は、ログファイルからタイムテーブルを作成し、どの時間帯にアクセスがあるか、およびそのI/O数を統計化し、あるI/O数の閾値以下が続く所定時間(例えば1時間)をソフトウェアモードの時間とし、ソフトウェアモード以外の時間帯をハードウェアモードとするタイムマップを作成する(ステップ713)。
省エネルギーアプリケーション522は、現在の動作モードとタイムマップ中の動作モードとが合致しているかを判定する(ステップ714)。
合致していないと判定された場合(ステップ714のNo)、現在の動作モードがハードウェアモードであるかを判定する(ステップ715)。ハードウェアモードであると判定された場合、省エネルギーアプリケーション522は、ハードウェアモードフラグ6212の値をFalseにし、ソフトウェアモードフラグ6222の値をTrueにする(ステップ716)。ハードウェアモードではないと判定された場合、省エネルギーアプリケーション522は、ハードウェアモードフラグ6212の値をTrueにし、ソフトウェアモードフラグ6222の値をFalseにする(ステップ717)。
省エネルギーアプリケーション522は、現在より前の時間(例えば5分)の間に、アクセスが無いことを確認した後、コンピュータサーバ500を再起動する(ステップ718)。
再起動後、コントローラ301は、ハードウェアモードフラグ6212の値を読み出す。ハードウェアモードフラグ6212の値がTrueの場合、第1不揮発性メモリ621に格納されているファームウェア6211がメモリ311にロードされ、ファームウェア6211が起動される(ステップ720)。そして、ハードウェアモード用のHW拡張BIOS3041が主メモリ13にロードされる(ステップ721)。また、RAIDコントローラカード18に対応するPCIコンフィギュレーション内にRAIDコントローラカード18の動作モードがハードウェアモードであることを示す情報が記録される。
ハードウェアモードフラグ6212の値がFalseであれば、コントローラ301はソフトウェアモードフラグ6222の値を読み出す。ソフトウェアモードフラグ6222の値がTrueであれば(ステップ719のNo)、コントローラ301はソフトウェアモードの実行に最低限必要なデバイス以外のデバイスへの給電を停止するように電源コントローラ333に命令する(ステップ722)。そして、第2不揮発性メモリ622に格納されているファームウェア6221がコントローラ301内のメモリにロードされ、プロセッサコントローラ301によってファームウェア6221が実行される(ステップ723)。そして、ソフトウェアモード用のSW拡張BIOS3042が主メモリ13にロード5される(ステップ724)。また、RAIDコントローラカード18に対応するPCIコンフィギュレーション内にRAIDコントローラカード18の動作モードがソフトウェアモードであることを示す情報が記録される。
その後、オペレーティングシステムが起動する(ステップ725)。RAIDコントローラカード518のドライバはRAIDコントローラカード1に対応するPCIコンフィギュレーションを参照し、RAIDコントローラカード1の動作モードを取得する。
RAIDコントローラカード1の動作モードがハードウェアモードの場合(ステップ726のYes)、RAIDコントローラカード518のドライバは、ハードウェアウェアモードで動作する(ステップ727)。RAIDコントローラカード518の動作モードがソフトウェアモードの場合(ステップ726のNo)、RAIDコントローラカード518のドライバは、ソフトウェアウェアモードで動作する(ステップ728)。
HDD19へのI/O数が少ない時間帯にソフトウェアモードにすることで、使用電力を削減することが可能になる。
なお、本発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
10…コンピュータサーバ(情報処理装置),11…CPU(プロセッサ),18…RAIDコントローラカード,19…ハードディスクドライブ,101…メイン基板,301…プロセッサコントローラ,333…電源コントローラ,3211…ファームウェア,3212…ハードウェアモードフラグ,3213…ハードウェアセーフモードフラグ,3214…電力供給フラグ,3221…ファームウェア,3222…ソフトウェアセーフモードフラグ,500…コンピュータサーバ(情報処理装置),518…RAIDコントローラカード,521…オペレーティングシステム,522…省エネルギーアプリケーション,621…不揮発性メモリ,622…不揮発性メモリ,6211…ファームウェア,6212…ハードウェアモードフラグ,6221…ファームウェア,6212…ハードウェアモードフラグ。

Claims (17)

  1. 拡張スロットを有する基板と、
    前記拡張スロットに挿入され、第1のモードの場合に、データを分散して複数の第1記憶装置に書き込み、前記複数の第1記憶装置に書き込まれるデータのパリティを演算し、演算されたパリティを第2記憶装置に書き込む書き込み制御と、前記複数の第1記憶装置に分散されて書き込まれたデータを読み込む読み込み制御とを行うRAIDコントローラを含むRAIDコントローラカードと、
    前記基板上に設けられ、第2のモードの場合に、前記書き込み制御および前記読み込み制御を行うプロセッサであって、前記複数の第1記憶装置および前記第2記憶装置とのデータの転送は前記RAIDコントローラカードを介して行うプロセッサと
    を具備する情報処理装置。
  2. 前記RAIDコントローラカードは、前記第2のモードの場合に、前記複数の第1記憶装置および前記第2記憶装置と前記プロセッサとのデータの伝送を行うのに必要な前記RAIDコントローラカード内のデバイスに選択的に電力を供給する電源コントローラを更に具備する
    請求項1に記載の情報処理装置。
  3. 前記第1のモードは、前記RAIDコントローラカードに障害が発生していない場合であり、
    前記第2のモードは、前記RAIDコントローラカードに障害が発生している場合である、
    請求項1に記載の情報処理装置。
  4. 前記障害が前記書き込み制御を行うことが可能なものの場合、前記RAIDコントローラが前記書き込み制御および前記読み込み制御を行う請求項3に記載の情報処理装置。
  5. 前記障害が起きているデバイスへの電力の供給を停止する電源コントローラを更に具備する請求項3に記載の情報処理装置。
  6. 前記複数の第1記憶装置および前記第2記憶装置のI/O数を等時間間隔毎に取得し、取得されたI/O数に応じて前記第1のモードと第2のモードとを切り替える切り替え手段を更に具備する請求項1に記載の情報処理装置。
  7. 基板の拡張スロットに挿入されるRAIDコントローラカードであって、
    第1のモードの場合に、データを分散して複数の第1記憶装置に書き込み、複数の第1記憶装置に書き込まれるデータのパリティを演算し、演算されたパリティを第2記憶装置に書き込む書き込み制御と、前記複数の第1記憶装置から読み込む読み込み制御とを行い、
    第2のモードの場合に、RAIDコントローラカードと通信を行うによって前記書き込み制御および前記読み込み制御を行う前記基板に設けられたプロセッサと前記複数の第1記憶装置および前記第2記憶装置との間のデータの転送を制御する制御を行うコントローラ、
    を具備するRAIDコントローラカード。
  8. 前記第2のモードの場合に、前記複数の第1記憶装置および前記第2記憶装置と前記プロセッサとのデータの伝送を行うのに必要な前記RAIDコントローラカード内のデバイスに選択的に電力を供給する電源コントローラを更に具備する
    請求項7に記載のRAIDコントローラカード。
  9. 前記第1のモードは、前記RAIDコントローラカードに障害が発生していない場合であり、
    前記第2のモードは、前記RAIDコントローラカードに障害が発生している場合である、
    請求項7に記載のRAIDコントローラカード。
  10. 前記障害が前記書き込み制御を行うことが可能なものの場合、前記RAIDコントローラが前記書き込み制御および前記読み込み制御を行う請求項9に記載のRAIDコントローラカード。
  11. 前記障害が起きているデバイスへの電力の供給を停止する電源コントローラを更に具備する請求項9に記載のRAIDコントローラカード。
  12. 拡張スロットを有する基板と、RAIDコントローラを有する前記拡張スロットに挿入されたRAIDコントローラカードと、前記基板上に設けられたプロセッサとを具備する情報処理装置の制御方法であって、
    第1のモードの場合に、データを分散して複数の第1記憶装置に書き込み、複数の第1記憶装置に書き込まれるデータのパリティを演算し、演算されたパリティを第2記憶装置に書き込む書き込み制御と、前記複数の第1記憶装置に分散されたデータを読み込む読み込み制御とを前記RAIDコントローラによって行い、
    第2のモードの場合に、前記書き込み制御および前記読み込み制御を前記プロセッサによって行い、前記複数の第1記憶装置および前記第2記憶装置とのデータの転送は前記RAIDコントローラカードを介して行う
    情報処理装置の制御方法。
  13. 前記RAIDコントローラカードは、前記第2のモードの場合に、前記複数の第1記憶装置および前記第2記憶装置と前記プロセッサとのデータの伝送を行うのに必要な前記RAIDコントローラカード内のデバイスに選択的に電力を供給する
    請求項12に記載の情報処理装置の制御方法。
  14. 前記第1のモードは、前記RAIDコントローラカードに障害が発生していない場合であり、
    前記第2のモードは、前記RAIDコントローラカードに障害が発生している場合である、
    請求項12に記載の情報処理装置の制御方法。
  15. 前記障害が前記書き込み制御を行うことが可能なものの場合、前記RAIDコントローラによって前記書き込み制御および前記読み込み制御を行う
    請求項14に記載の情報処理装置の制御方法。
  16. 前記障害が起きているデバイスへの電力の供給を停止する
    請求項14に記載の情報処理装置の制御方法。
  17. 前記複数の第1記憶装置および前記第2記憶装置のI/O数を等時間間隔毎に取得し、
    取得されたI/O数に応じて前記第1のモードと第2のモードとを切り替える
    請求項12に記載の情報処理装置の制御方法。
JP2010123532A 2010-05-28 2010-05-28 情報処理装置 Expired - Fee Related JP4806084B1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2010123532A JP4806084B1 (ja) 2010-05-28 2010-05-28 情報処理装置
US13/100,828 US20110296236A1 (en) 2010-05-28 2011-05-04 Information Processing Apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010123532A JP4806084B1 (ja) 2010-05-28 2010-05-28 情報処理装置

Publications (2)

Publication Number Publication Date
JP4806084B1 true JP4806084B1 (ja) 2011-11-02
JP2011248783A JP2011248783A (ja) 2011-12-08

Family

ID=45023148

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010123532A Expired - Fee Related JP4806084B1 (ja) 2010-05-28 2010-05-28 情報処理装置

Country Status (2)

Country Link
US (1) US20110296236A1 (ja)
JP (1) JP4806084B1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110033743A (zh) * 2017-12-20 2019-07-19 精工爱普生株式会社 图像显示装置及其控制方法

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120284459A1 (en) * 2011-05-05 2012-11-08 International Business Machines Corporation Write-through-and-back cache
US9417672B2 (en) * 2012-03-30 2016-08-16 Lenovo (Singapore) Pte. Ltd. Separate customizable thermal control table
WO2014011011A1 (ko) * 2012-07-13 2014-01-16 삼성전자(주) 솔리드 스테이트 드라이브 콘트롤러, 솔리드 스테이트 드라이브, 솔리드 스테이트 드라이브의 데이터 처리 방법, 다채널 솔리드 스테이트 드라이브, 레이드 콘트롤러, 시퀀스 정보를 솔리드 스테이트 드라이브에 제공하는 컴퓨터 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체
EP3479529B1 (en) * 2016-09-30 2022-09-21 Hewlett-Packard Development Company, L.P. Safe peripheral device communications
US20190034306A1 (en) * 2017-07-31 2019-01-31 Intel Corporation Computer System, Computer System Host, First Storage Device, Second Storage Device, Controllers, Methods, Apparatuses and Computer Programs

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6192481B1 (en) * 1998-08-18 2001-02-20 International Business Machines Corporation Structure and method for power sequencing of disk drives in a computer system
US6651138B2 (en) * 2000-01-27 2003-11-18 Hewlett-Packard Development Company, L.P. Hot-plug memory catridge power control logic
JP2007213721A (ja) * 2006-02-10 2007-08-23 Hitachi Ltd ストレージシステム及びその制御方法
JP2007293448A (ja) * 2006-04-21 2007-11-08 Hitachi Ltd ストレージシステム及びその電源制御方法
JP2009015584A (ja) * 2007-07-04 2009-01-22 Hitachi Ltd 記憶制御装置及び筐体単位の電源制御方法
US8446729B2 (en) * 2009-03-23 2013-05-21 Ocz Technology Group Inc. Modular mass storage system and method therefor

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110033743A (zh) * 2017-12-20 2019-07-19 精工爱普生株式会社 图像显示装置及其控制方法

Also Published As

Publication number Publication date
JP2011248783A (ja) 2011-12-08
US20110296236A1 (en) 2011-12-01

Similar Documents

Publication Publication Date Title
JP4806089B1 (ja) 情報処理装置、raidコントローラカード、およびミラーリング方法
JP4806084B1 (ja) 情報処理装置
US20080052506A1 (en) Storage apparatus, control method, and control device
US20090083483A1 (en) Power Conservation In A RAID Array
JP2004038290A (ja) 情報処理システムおよび同システムで用いられるディスク制御方法
JP2011170589A (ja) ストレージ制御装置、ストレージ装置およびストレージ制御方法
US9262078B2 (en) Information processing device, method for controlling information processing device
JP2010186341A (ja) メモリシステム
US20180039553A1 (en) Storage control device and storage control method
US9298635B2 (en) Storage device and rebuild process method for storage device
JP2009026242A (ja) データ処理装置
JP5909948B2 (ja) 情報処理装置および情報処理装置の試験方法
US11385815B2 (en) Storage system
JP2001337789A (ja) ディスクサブシステム
JP5505329B2 (ja) ディスクアレイ装置及びその制御方法
JP2008071189A (ja) ディスクアレイ装置、raidコントローラおよびディスクアレイ装置のディスクアレイ構築方法
JP2006221335A (ja) 情報記録装置
CN113050896A (zh) 一种支持nvdimm的国产飞腾服务器及数据保护方法
JP5107196B2 (ja) 情報処理装置および再構築処理および修復処理の制御方法
JP2011076528A (ja) Raidカードの冗長化方法及びraidカードの冗長化装置
JPWO2008090620A1 (ja) 記憶装置、記録復旧方法、記録復旧プログラム
KR101564144B1 (ko) 펌웨어 관리 장치 및 방법
JP2014106811A (ja) 記憶装置、冗長性回復方法、およびプログラム
KR101469059B1 (ko) 내고장성 향상 시스템 및 그 구동 방법
JP6519266B2 (ja) 情報処理装置、デバイス、および復旧方法、並びにコンピュータ・プログラム

Legal Events

Date Code Title Description
TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110719

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110811

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140819

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees