JP2006344119A - ストレージ装置、構成情報管理方法及びプログラム - Google Patents

ストレージ装置、構成情報管理方法及びプログラム Download PDF

Info

Publication number
JP2006344119A
JP2006344119A JP2005170743A JP2005170743A JP2006344119A JP 2006344119 A JP2006344119 A JP 2006344119A JP 2005170743 A JP2005170743 A JP 2005170743A JP 2005170743 A JP2005170743 A JP 2005170743A JP 2006344119 A JP2006344119 A JP 2006344119A
Authority
JP
Japan
Prior art keywords
configuration information
control unit
configuration
processing
input
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
JP2005170743A
Other languages
English (en)
Inventor
Shoji Oshima
章二 大嶋
Tatsuhiko Machida
達彦 町田
Hirokazu Matsubayashi
宏和 松林
Satoshi Yazawa
悟史 矢澤
Koichi Tsukada
孝一 塚田
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2005170743A priority Critical patent/JP2006344119A/ja
Priority to US11/223,005 priority patent/US20060282638A1/en
Publication of JP2006344119A publication Critical patent/JP2006344119A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0637Permissions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/062Securing storage systems
    • G06F3/0622Securing storage systems in relation to access
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0632Configuration or reconfiguration of storage systems by initialisation or re-initialisation of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】メインCPUによる構成テーブルの書替え中に、サブCPUの入出力制御に伴う参照を抑止して誤動作を防止する。
【解決手段】 ストレージシステムは、第1入出力制御部と構成管理部と実行対象として備えた第1処理部(メインCPU)と、第2入出力制御部とこれより実行優先度の高い高優先度制御部とを実行対象として備えた第2処理部(サブCPU)と、構成情報を格納した構成テーブルを配置した共用メモリとを備える。構成情報変更制御部は、構成情報の変更指示を受けた際に、第2処理部により高優先度制御部の処理を実行させて第2入出力制御部による構成テーブルの参照を抑止した状態で構成テーブルの構成情報を変更し、構成情報の変更完了で第2処理部に高優先度制御部の処理を終了させる。高優先度制御部は、システム制御部、コマンド中継制御部(保守エージェント)、又は排他専用タスク制御部である。
【選択図】 図1

Description

本発明は、上位装置からの入出力要求を処理するRAID構成のボリュームを備えたストレージ装置、構成情報管理方法及びプログラムに関し、特に共用メモリの構成情報をデュアル構成のCPUで管理するストレージ装置、構成情報管理方法及びプログラムに関する。
従来、グローバルサーバやオープンサーバ等のストレージ装置として使用されるRAID装置にあっては、制御モジュール、チャネルアダプタ、デバイスアダプタ及びルータで構成されている。
制御モジュールには、CPU及びキャッシュ等が搭載され、ストレージ装置全体の動作を制御する。チャネルアダプタは、RAID装置と各種サーバとを接続するモジュールであり、ファイバチャネル、iSCSI等のインタフェースを使用している。デバイスアダプタは、制御モジュールと複数の磁気ディスクドライブを搭載したドライブエンクロージャとを接続するモジュールであり、ファイバチャネルインタフェースを使用している。更に、ルータは制御モジュール、チャネルアダプタ及びデバイスアダプタの間を高速に接続するためのモジュールである。
このような従来のストレージ装置にあっては、制御モジュールに搭載しているCPUが1台であり、CPUによるプログラムの実行により、システム全体の状態を管理するシステム制御、サーバからのユーザボリュームに対する入出力要求をキャッシュ制御を介して処理する入出力制御、更にサービスプロセッサからの指示で動作する保守制御等のファームウェア機能を実現している。
このうち、システム制御には構成制御が含まれており、システム起動時にメモリ上に構成テーブルを展開し、構成テーブルにはユーザ操作により部品構成やRAID構成などの装置設定情報を格納し、また装置の現在の状態を示す各部品のステータスなどの状態情報を格納している。
またシステムの運用中に装置の設定や設置状態に変化があった場合には、構成テーブルの構成情報を変更する構成変更処理が行われる。またサーバからの入出力処理を実行する入出力制御部にあっては、必要に応じて入出力処理を実行する際に構成テーブルを参照している。
ところで、近年にあっては、CPUの動作周波数が限界に近づき、大幅な処理性能の向上が期待できないことから、デュアル構成のプロセッサが使用されており、ストレージ装置の制御モジュールについても、デュアル構成のプロセッサを採用することでCPUを2台搭載することが考えられている。
このように制御モジュールにCPUを2台搭載した場合には、2台のCPUによるプログラムの実行により、システム全体の状態を管理するシステム制御、サーバからのユーザボリュームに対する入出力要求をキャッシュ制御を介して処理する入出力制御、更にサービスプロセッサからの指示で動作する保守制御等のファームウェア機能を2つ実現することができ、従来の1CPUの制御モジュールを2台設置したと同等な処理性能の向上が期待できる。
特開平5−334163号公報 特開2001−5720号公報 特開2004−334723号公報
しかしながら、ストレージ装置の制御モジュールに2台のCPUを搭載した場合、構成制御テーブルは両方のCPUの共用メモリに展開されており、次の問題がある。
まず構成情報管理を含むシステム制御タスクと入出力制御タスクとの間では、タスク優先度はシステム制御タスクの方が高い。このため従来の1CPUにあっては,システム制御タスクが構成テーブルを書替中には、入出力制御タスクが動作することはなく、書替中の構成テーブルを参照することはなかった。
しかしながら、構成テーブルが両CPUの共用メモリに展開されている場合、メインCPUで構成テーブルを書替えている間、メインCPUの入出力制御タスクは動作できないが、サブCPUの入出力制御タスクは動作できることになる。これは構成テーブルの書替ええ途中の情報を入出力制御部が参照できるということであり、書替え途中の矛盾した状態を参照することで、誤動作する可能性がある。
本発明は、メインCPUによる構成テーブルの書替え中に、サブCPUの入出力制御に伴う参照を抑止して誤動作を防止するストレージ装置、構成情報管理方法及びプログラムを提供することを目的とする。
図1は本発明の原理説明図である。
(高優先制御部の実行による排他制御)
本発明は、構成情報を参照してボリュームの入出力処理を実行する第1入出力制御部(38−1)と、システム制御部38−1に含まれ構成情報を管理する構成管理部60とを実行対象として備えた第1処理部(メインCPU22)と、構成情報を参照して別のボリュームの入出力処理を実行する第2入出力制御部(36−2)と、第2入出力制御部より実行優先度の高い高優先度制御部を実行対象として備えた第2処理部(サブCPU24)と、構成情報を格納した構成テーブル48を配置した共用メモリ28とを備えたストレージ装置(RAID装置10)を対象とする。
このようなストレージ装置につき本発明は、構成情報の変更指示を受けた際に、第2処理部(サブCPU24)により高優先度制御部の処理を実行させて第2入出力制御部による構成テーブル48の参照を抑止した状態で構成テーブル48の構成情報を変更し、構成情報の変更完了で第2処理部に高優先度制御部の処理を終了させる構成情報変更制御部76を設けたことを特徴とする。
ここで、高優先度制御部は、装置全体を管理するシステム制御部であり、構成情報変更制御部は、構成情報の変更指示を受けた際に、構成テーブルの書替中フラグをオンすると共に第2処理部受信フラグをオフした後に第2処理部に構成情報の書替え開始を通知し、第2処理部によるシステム制御部の処理実行に伴う第2処理部受信フラグのオンを検出した際に構成テーブルの構成情報を変更し、構成情報の変更完了で前記書替中フラグをオフして第2処理部に前記システム制御部の処理を終了させる。
高優先度制御部は、システム制御部と第2入出力制御部との間でコマンドを中継するコマンド中継制御部であり、構成情報変更制御部は、構成情報の変更指示を受けた際に、構成テーブルの書替中フラグをオンすると共に第2処理部受信フラグをオフした後に第2処理部に構成情報の書替え開始を通知し、第2処理部による前記コマンド中継制御部の処理実行に伴う第2処理部受信フラグのオンを検出した際に構成テーブルの構成情報を変更し、構成情報の変更完了で書替中フラグをオフして第2処理部にコマンド中継制御部の処理を終了させる。
また高優先度制御部は、システム制御部と第2入出力制御部との間でコマンドを中継するコマンド中継制御部であり、構成情報変更制御部は、構成情報の変更指示を受けた際に、セマフォを獲得した後に第2処理部によりコマンド中継制御部にセマフォ獲得処理を実行させて第2入出力処理部による構成テーブルの参照を抑止した状態で構成テーブルの構成情報を変更し、構成情報の変更完了で前記セマフォを解放して第2処理部のコマンド中継制御部に獲得させた後にセマフォ獲得処理を終了させる。
また高優先度制御部は、システム制御部と第2入出力制御部との間でコマンドを中継するコマンド中継制御部であり、構成情報変更制御部は、構成情報の変更指示を受けた際に、第2処理部によりコマンド中継部に中継キューの読出処理を実行させて第2入出力制御部による構成テーブルの参照を抑止した状態で構成テーブルの構成情報を変更し、構成情報の変更完了を中継キューに書込んで第2処理部のコマンド中継制御部に中継キュー読出処理を終了させる。
更に、高優先度制御部は、排他専用のタスク処理のために設けた排他専用タスク制御部であり、構成情報変更制御部は、構成情報の変更指示を受けた際に、書替中フラグをオンすると共に第2処理部受信フラグをオフした後に第2処理部に構成情報の書替え開始を通知し、第2処理部による排他専用タスク制御部の処理実行に伴う第2処理部受信フラグのオンを検出した際に構成テーブルの構成情報を変更し、構成情報の変更完了で書替中フラグをオフして第2処理部に排他専用タスク制御部の処理を終了させる。
本発明は、第1入出力制御部と構成情報を管理する構成管理部と実行対象として備えた第1処理部と、第2入出力制御部と第2入出力制御部より実行優先度の高い高優先度制御部とを実行対象として備えた第2処理部と、構成テーブルを配置した共用メモリとを備えたストレージ装置の構成情報管理方法に於いて、
構成情報の変更指示を受けた際に、第2処理部により高優先度制御部の処理を実行させて第2入出力制御部による構成テーブルの参照を抑止させる参照抑止ステップと、
構成テーブルの参照を抑止させた状態で構成テーブルの構成情報を変更する構成情報変更ステップと、
構成情報の変更完了で第2処理部に高優先度制御部の処理を終了させる参照抑止解除ステップと、
を備えたことを特徴とする。
本発明は、第1入出力制御部と構成情報を管理する構成管理部と実行対象として備えた第1処理部と、第2入出力制御部と第2入出力制御部より実行優先度の高い高優先度制御部とを実行対象として備えた第2処理部と、構成テーブルを配置した共用メモリとを備えたストレージ装置の前記第1処理部を構成するコンピュータに、
構成情報の変更指示を受けた際に、第2処理部により高優先度制御部の処理を実行させて第2入出力制御部による構成テーブルの参照を抑止させる参照抑止ステップと、
構成テーブルの参照を抑止させた状態で構成テーブルの構成情報を変更する構成情報変更ステップと、
構成情報の変更完了で第2処理部に高優先度制御部の処理を終了させる参照抑止解除ステップと、
を実行させることを特徴とする。
(個別テーブル構成)
本発明は、第1入出力制御部と構成管理部とを実行対象として備えた第1処理部と、第2入出力制御部を備えた第2処理部を実行対象として備えたストレージ装置に於いて、
第1処理部が参照する構成情報を格納した第1構成テーブルと第2処理部が参照する構成情報を格納した第2構成テーブルを配置した共用メモリと、
構成情報変更指示を受けた際に、第1構成テーブルの構成情報を変更した後に、構成情報変更指示を第に処理部に配信して第2構成テーブルの構成情報を変更させる構成情報変更制御部と、
を備えたことを特徴とする。
本発明は、第1入出力制御部と構成管理部とを実行対象として備えた第1処理部と、第2入出力制御部を備えた第2処理部を実行対象として備えたストレージ装置の構成情報管理方法に於いて、
共用メモリに、第1処理部が参照する構成情報を格納した第1構成テーブルと第2処理部が参照する構成情報を格納した第2構成テーブルを配置するテーブル配置ステップと、
構成情報変更指示を受けた際に、第1構成テーブルの構成情報を変更した後に、構成情報変更指示を第2処理部に配信して第2構成テーブルの構成情報を変更させる構成変更ステップと、
を備えたことを特徴とする。
本発明は、第1入出力制御部と構成管理部とを実行対象として備えた第1処理部と、第2入出力制御部を備えた第2処理部を実行対象として備えたストレージ装置における第1処理部を構成するコンピュータに、
共用メモリに、第1処理部が参照する構成情報を格納した第1構成テーブルと第2処理部が参照する構成情報を格納した第2構成テーブルを配置するテーブル配置ステップと、
構成情報変更指示を受けた際に、第1構成テーブルの構成情報を変更した後に、構成情報変更指示を第2処理部に配信して第2構成テーブルの構成情報を変更させる構成変更ステップと、
を実行させることを特徴とする。
(二重化テーブル)
本発明は、第1入出力制御部と構成管理部を実行対象として備えた第1処理部と、第2入出力制御部を実行対象として備えた第2処理部とを有するストレージ装置に於いて、
構成情報を個別に格納したミラー構成の第1構成テーブルと第2構成テーブルを配置した共用メモリと、
構成情報変更指示を受けた際に、第2構成テーブルの変更位置に参照ポインタを設定して第1構成テーブルの同じ変更位置の構成情報を変更し、続いて第1構成テーブルの変更位置に参照ポインタを設定して第2構成テーブルの同じ変更位置の構成情報を変更する構成情報変更制御部と、
を備えたことを特徴とする。
本発明は、第1入出力制御部と構成管理部を実行対象として備えた第1処理部と、第2入出力制御部を実行対象として備えた第2処理部とを有するストレージ装置の構成情報管理方法に於いて、
共用メモリに、構成情報を個別に格納したミラー構成の第1構成テーブルと第2構成テーブルを配置するテーブル配置ステップと、
構成情報変更指示を受けた際に、第2構成テーブルの変更位置に参照ポインタを設定して第1構成テーブルの同じ変更位置の構成情報を変更し、続いて第1構成テーブルの変更位置に参照ポインタを設定して第2構成テーブルの同じ変更位置の構成情報を変更する構成変更ステップと、
を備えたことを特徴とする。
本発明は、第1入出力制御部と構成管理部を実行対象として備えた第1処理部と、第2入出力制御部を実行対象として備えた第2処理部を有するストレージ装置の前記第1処理部を構成するコンピュータに、
共用メモリに、構成情報を個別に格納したミラー構成の第1構成テーブルと第2構成テーブルを配置するテーブル配置ステップと、
構成情報の変更指示を受けた際に、第2構成テーブルの変更位置に参照ポインタを設定して第1構成テーブルの同じ変更位置の構成情報を変更し、続いて第1構成テーブルの変更位置に参照ポインタを設定して第2構成テーブルの同じ変更位置の構成情報を変更する構成変更ステップと、
を実行させることを特徴とする。
(中断通知による排他制御)
本発明は、第1入出力制御部と構成管理部を実行対象として備えた第1処理部と、第2入出力制御部を実行対象として備えた第2処理部と、構成テーブルを配置した共用メモリとを備えたストレージ装置に於いて、
構成情報の変更指示を受けた際に、第2処理部に対し受付け済みの入出力要求は完了させ新規の入出力は受付けなくする中断処理を指示した後に構成テーブルの構成情報を変更し、記構成情報の変更完了で第2処理部に処理の再開を指示する構成情報変更制御部を設けたことを特徴とする。
本発明は、第1入出力制御部と構成管理部を実行対象として備えた第1処理部と、第2入出力制御部を実行対象として備えた第2処理部と、構成テーブルを配置した共用メモリとを備えたストレージ装置の構成情報管理方法に於いて、
構成情報の変更指示を受けた際に、第2処理部に、受付け済みの入出力要求は完了させ、新規の入出力は受付けなくする中断処理を指示する中断指示ステップと、
中断処理を指示した後に構成テーブルの構成情報を変更する構成情報変更ステップと、
構成情報の変更完了で第2処理部に処理の再開を指示する再開指示ステップと、
を備えたことを特徴とする。
本発明は、第1入出力制御部と構成管理部を実行対象として備えた第1処理部と、第2入出力制御部を実行対象として備えた第2処理部と、構成テーブルを配置した共用メモリとを備えたストレージ装置の第1処理部を構成するコンピュータに、
構成情報の変更指示を受けた際に、第2処理部に、受付け済みの入出力要求は完了させ、新規の入出力は受付けなくする中断処理を指示する中断指示ステップと、
中断処理を指示した後に構成テーブルの構成情報を変更する構成情報変更ステップと、
構成情報の変更完了で前記第2処理部に処理の再開を指示する再開指示ステップと、
を実行させることを特徴とする。
(テーブル参照時の排他制御)
本発明は、第1入出力制御部と構成管理部を実行対象として備えた第1処理部と、第2入出力制御部を実行対象として備えた第2処理部と、構成テーブルを配置した共用メモリとを備えたストレージ装置に於いて、
構成情報の変更指示を受けた際に、構成テーブルに排他制御情報を設定して第2入出力制御部の参照を抑止(ロック)した後に構成テーブルの構成情報を変更し、構成情報の変更完了で排他制御情報の設定を解除する構成情報変更制御部を設けたことを特徴とする。
本発明は、第1入出力制御部と構成管理部を実行対象として備えた第1処理部と、第2入出力制御部を実行対象として備えた第2処理部と、構成テーブルを配置した共用メモリとを備えたストレージ装置の構成情報管理方法に於いて、
構成情報の変更指示を受けた際に、構成テーブルに排他制御情報を設定して第2入出力制御部の参照を抑止する排他制御設定ステップと、
排他制御情報を設定した状態で構成テーブルの構成情報を変更する構成情報変更ステップと、
構成情報の変更完了で排他制御情報の設定を解除する排他制御解除ステップと、
を備えたことを特徴とする。
本発明は、第1入出力制御部と構成管理部を実行対象として備えた第1処理部と、第2入出力制御部を実行対象として備えた第2処理部と、構成テーブルを配置した共用メモリとを備えたストレージ装置の第1処理部を構成するコンピュータに、
構成情報の変更指示を受けた際に、構成テーブルに排他制御情報を設定して第2入出力制御部の参照を抑止する排他制御設定ステップと、
排他制御情報を設定した状態で構成テーブルの構成情報を変更する構成情報変更ステップと、
構成情報の変更完了で排他制御情報の設定を解除する排他制御解除ステップと、
を実行させることを特徴とする。
本発明によれば、第1処理部となるメインCPUから共用メモリに展開された構成テーブルを構成情報変更依頼に基づいた書替中に、第2処理部となるサブCPUの入出力制御部の処理実行を、
(1)優先度の高い高優先度制御部(システム制御部の処理実行、コマンド中継制御部又は排他専用タスク制御部)の処理実行
(2)優先度の高いコマンド中継制御部(エージェント動作、セマフォ獲得又はメッセージキュー利用)の処理実行
(3)構成テーブルの個別配置
(4)構成テーブルのミラー化(2面化)
(5)入出力制御のサスペンド通知(中断通知)
(6)構成テーブル参照時のフラグ排他制御
のいずれかより抑止し、これによってメインCPUによる構成テーブルの書替え途中の矛盾した状態をサブCPUが参照することによる誤動作を確実に防止することができ、デュアルCPU構成により処理性能を向上した場合に信頼性の高いストレージ装置が実現できる。
図2は本発明が適用されるRAID装置のハードウェア装置のブロック図である。図2において、RAID装置10はチャネルアダプタ16−11〜16−22、制御モジュール18−1,18−2、ドライブエンクロージャ20−1,20−2を備えている。RAID装置10には例えばチャネルアダプタ16−11によって上位装置としてグローバルサーバ12が接続され、またチャネルアダプタ16−22によってオープンサーバ14が接続されている。
制御モジュール18−1,18−2は同じ構成を有し、第1処理部としてのメインCPU22−1,22−2、第2処理部としてのサブCPU24−1,24−2、デバイスインターフェース26−11,26−12,26−21、26−22、共用メモリ28−1、28−2、DMA処理部30−1,30−2を設けている。
更にドライブエンクロージャ20−1,20−2には例えばハードディスクドライブを用いたディスク装置32−11〜32−15,32−21〜32−25が設けられている。尚、RAID装置10は最小構成を例にとっており、最大構成としては2台の制御モジュール18−1,18−2を8台に増設することができ、またドライブエンクロージャについても拡張筐体を使用することで必要に応じて更に増設することができる。
制御モジュール18−1,18−2につき、制御モジュール18−1を例にとって説明すると、本発明の制御モジュール18−1にあっては2台のCPUとして、メインCPU22−1とサブCPU24−1を設けており、1台の制御モジュール18−1で実質的に2台の制御モジュールを設けたのと同等の処理機能を実現している。また制御モジュール18−1に設けたメモリは、メインCPU22−1とサブCPU24−1に対し共用メモリ28−1として使用されており、共用メモリ28−1にはキャッシュメモリとしての使用領域及び本発明が対象とする構成管理の対象となる構成テーブルの割り当て領域が確保されている。
図3は本発明によるRAID装置の機能構成のブロック図であり、図2における制御モジュール18−1,18−2のそれぞれは同じ構成を持つことから、図3にあっては制御モジュール18としてその機能構成を示している。
図3において、制御モジュール18にはメインCPU22とサブCPU24が設けられており、それぞれプログラムの実行によりRAID装置としての機能が実現されている。まずメインCPU22を見ると、通信処理部34−1、入出力制御部36−1、システム制御部38−1及び保守制御部40が設けられる。これに対しサブCPU24については通信処理部34−2、入出力制御部36−2更にシステム制御部38−2が設けられているが、保守制御部は設けられていない。
通信処理部34−1,34−2はチャネルアダプタ16−11,16−12を経由した制御モジュール間の通信、メインCPU22とサブCPU24との間のCPU間通信などを行う。
入出力制御部36−1,36−2は上位のサーバからの入出力要求を処理する。そのため入出力制御部36−1に対してはユーザボリューム44−1が設けられ、一方、入出力制御部36−2に対してはユーザボリューム44−2が設けられている。
入出力制御部36−,36−2にはチャネルアダプタ制御部50−1,50−2が設けられ、通信処理部34−1,34−2を介してチャネルアダプタ16−11,16−12に接続される図2に示したグローバルサーバ12、オープンサーバ14との間で通信を行うためのファイバーチャネルドライバもしくはiSCSIドライバとして動作する。
また入出力制御部36−1,36−2には基本的な制御部としてレイヤー構成をとるリソース処理部52−1,52−2、コピー処理部54−1,54−2、キャッシュ処理部56−1,56−2及びRAID制御部58−1,58−2が設けられている。リソース処理部52−1,52−2は上位装置からの入出力要求の排他や監視を行う。
コピー処理部54−1,54−2はRAID装置内部及び外部の別のRAID装置との間でボリューム単位でのコピー処理を行う。キャッシュ処理部56−1,56−2は上位装置からのリード要求、ライト要求に対するキャッシュメモリを管理しており、リードまたはライト要求に対するヒットとミスヒットの判定及びステージングやライトバックなどのスケジュールなどを実行する。
RAID制御部58−1,58−2は各RAIDレベルでのディスクエンクロージャ側に対する入出力処理を制御する。この例では例えばRAID装置58−1はユーザボリューム44−1につきRAIDレベル4で入出力処理を実行し、一方、RAID制御部58−2はユーザボリューム44−2に対しRAIDレベル5で入出力処理を実行する。
メインCPU22に設けたシステム制御部38−1は、RAID装置全体の状態を管理する。RAID装置におけるシステム制御は基本的にメインCPU22のシステム制御部38−1が実行しており、サブCPU24にもシステム制御部38−2が設けられているが、これはサブCPU24に結合されているハードウェアを操作する必要がある場合にのみ、例外的に動作させるようにしている。
メインCPU22のシステム制御部38−1には本発明が対象とする構成テーブルの変更処理を行う構成管理部60が設けられている。システム制御部38−1には構成管理部60の機能以外に、電源投入切断シーケンスと停電復電処理とを制御するパワー制御、装置内部でエラーが発生したときの障害部位の特定と障害部位の切り離しと再組み込みを行うRAS制御部、ディスクの障害時や発生補充時にホットスペアディスク(予備ディスク)の割当てやRAIDグループの状態制御を制御するRAIDリカバリー部、ディスク以外の部品の活性交換と物理的な活性増設または減設処理を制御する活性処理部及び電源や温度などのアラームや部品のマウント情報サービスプロセッサなどから通知されるイベントを装置内で同期させ必要な処理を起動するシステム管理部などが設けられている。
サブCPU24側のシステム制御部38−2にはメインCPU22のシステム制御部38−1に設けている各制御部の一部の機能が割り当てられる。
更にシステム制御部38−1,38−2には、保守エージェント62−1,62−2が設けられている。保守エージェント62−1,62−2は、システム制御部38−1,38−2と入出力制御部36−1,36−2の間に位置し、両者の間でコマンドの中継を行うコマンド中継処理部として機能する。
メインCPU22側については、保守エージェント62−1は保守制御部40と入出力制御部36−1との間のコマンド中継も行う。これは入出力制御部36−1,36−2に対しシステム制御部38−1,38−2と保守制御部40側のコマンド形式が異なっていることに起因している。メインCPU22の保守制御部40はRAID装置の保守管理に必要な各種の保守タスクを実行する。
メインCPU22とサブCPU24の両方で使用される共用メモリ28にはキャッシュメモリ46と構成テーブル48が展開されている。メインCPU22のシステム制御部38−1に設けた構成管理部60は、共用メモリ28の構成テーブル48を使用して装置の構成情報を管理している。
構成管理部60は例えば
(1)構成参照処理
(2)構成変更処理
(3)構成配信処理
の各処理機能を備えている。
ここで構成参照処理は依頼された構成参照コマンドの内容を解析し、装置の構成情報を構成テーブル48から読み出して指定された形式に従って加工して取り出す機能である。構成変更処理は依頼された構成変更コマンドの内容を解析し、構成テーブル48に格納している装置の構成情報変更する機能である。更に構成配信処理は、構成変更処理において変更された構成テーブル48の装置の構成情報を同一装置内の他のレイヤーや別の制御モジュールに配信する機能である。
構成管理部60に対する構成変更依頼は、装置の設定や装置状態の変化などにより構成テーブル48を変更する必要がある場合に構成管理部60にCGI(Common Gateway Interface)プログラムから発行され、保守制御部40における保守タスクを通じてシステム制御部38−1の構成管理部60に通知される。
構成管理部60にあっては構成変更を要求するコマンドを受理すると、このコマンドに応じて構成テーブル48を書き替える構成変更を行い、構成変更が済むと変更された構成情報を適切な相手に配信する。
図4は図3の共用メモリ28に設けた構成テーブル48の説明図である。図4において、構成テーブル48は構成管理テーブル64と基本マスタテーブル66で構成される。構成管理テーブル64は主に図3の保守制御部40とシステム制御部38−1,38−2が使用するテーブルである。基本マスタテーブル66は入出力制御部36−1,36−2が動作するために必要とする構成情報を集めたテーブルである。
構成管理テーブル64の情報は設定情報68と状態情報70に分けられる。設定情報68はユーザアプリケーションにより設定された部品構成やRAID構成などの情報であり、状態情報70は装置の現在の情報を表す各部品のステータスなどを表す情報である。この点は基本マスタテーブル66でも同様に設定情報72と状態情報74が格納されており、設定情報72と状態情報74は基本マスタテーブル66の場合には入出力制御部36−1,36−2が動作するために必要な情報である。
再び図3を参照するに、メインCPU22に設けたシステム制御部38−1の構成管理部60には構成テーブル48の構成情報を書き替える構成変更処理の際にサブCPU24の入出力制御部36−2による書き替え途中の構成情報の参照による誤動作を防止するための排他制御を行う構成情報変更処理部としての機能が設けられている。この構成情報変更処理部としての機能として、本発明にあっては次の(1)〜(5)のいずれかの処理を実行するようにしている。
(1)メインCPU22による構成テーブル48の変更時にサブCPU24において入出力制御部36−2より優先度の高優先度制御部の処理を実行させる。この高優先度制御部による処理は、第2システム制御部38−2を実行又は保守エージェント62−2の実行で実現される。
(2)共用メモリ28にメインCPUが使用する構成テーブルと、サブCPU24が使用する構成テーブルを個別に配置する。
(3)メインCPU22が書き替える共用メモリ28の構成テーブルをミラー化し、一方の構成テーブルの書き替え中、サブCPU24は他方の構成テーブルを参照させることで書き替え途中の参照による誤動作を防ぐ。
(4)メインCPU22は構成テーブル48の変更に先立ちサブCPU24に新たな入出力制御を辞めさせるサスペンド通知(中断通知)を行って参照を抑止する。
(5)共用メモリ28の構成テーブル48に排他フラグを設け、メインCPU22は構成テーブル48の変更時に排他フラグを獲得し、排他フラグを獲得できないサブCPU24による参照を抑止する。
以下(1)〜(5)について各実施例を具体的に説明する。
図5は構成テーブルの書き替え時にサブCPUにシステム制御タスクを実行させて入出力制御によるテーブル参照を抑止する本発明の第1実施形態の説明図である。
図5において、メインCPU22に設けられたシステム制御部38−1の構成管理部60には構成情報変更処理部76が設けられている。構成情報変更処理部76は構成情報の変更指示を受けた際に、サブCPU24に入出力制御部36−2の入出力制御タスクより優先度の高い適宜の高優先度制御の処理を実行させることで、入出力制御部36−2による構成テーブル48の書き替え途中での参照を抑止する。
このサブCPU24で入出力制御部36−2より優先度の高い高優先度制御部の処理を実行させる例として、図5の第1実施形態にあってはサブCPU24に設けたシステム制御部38−2の処理を実行させる。本発明のRAID装置にあっては、各CPUにおける制御タスクの実行優先度は入出力制御タスクに対し、システム制御タスクが高く設定されている。
このためメインCPU22で構成テーブル48の書き替えに先立って、サブCPU24でシステム制御部38−2の処理を実行すれば、それより優先度の低い入出力制御部36−2の処理は実行されず、構成テーブル48を参照することを防止できる。
このサブCPU24でシステム制御部36−2の処理を実行させるための具体例として構成情報変更処理部76にあっては、構成情報の変更指示を受けた際に共用メモリ28上に設けている書替中フラグ78をオンするともに、サブCPU24が応答確認に使用するサブCPU受信フラグ80をオフした後に、サブCPU24に構成情報書替開始通知82を行う。
この構成情報書替開始通知82を受けてサブCPU24でシステム制御部36−2が実行84の状態になると、共用メモリ28のサブCPU受信フラグ80をオンすることで受信した通知による確認応答をメインCPU22に返す。続いてシステム制御部38−2は共用メモリ28の書替中フラグ78を定期的に参照して確認するポーリング処理に入る。
メインCPU22の構成情報変更制御部76にあっては、構成書替開始通知82を行った後、共用メモリ28のサブCPU受信フラグ80を監視しており、サブCPU受信フラグ80がシステム制御部36−2の動作によりオンされると、これを認識し構成変更88を実行して構成テーブル48を書替える。
構成テーブル48の書替えが済むと構成情報変更制御部76は共用メモリ28の書替中フラグ78をオンする。書替中フラグ78をオンすると、これがサブCPU24のシステム制御部38−2で検出され、システム制御部38−2は処理の実行を終了し、入出力制御部36−2によるタスク実行可能状態に復旧する。
図6は図5の第1実施形態におけるメインCPUとサブCPUのフローチャートである。図6において、メインCPUはステップS1で構成情報の変更コマンドの受領の有無をチェックしており、コマンドを受領するとステップS2に進み、共用メモリ28の書替中フラグをオンし、またサブCPU受信フラグ80をオフする。そしてステップS3で構成情報書替開始通知をサブCPUに送る。
サブCPUにあっては、ステップS101でメインCPUからの構成情報書替開始通知の受信の有無をチェックしており、受信するとステップS102に進み、共用メモリ28のサブCPU受信フラグ80をオンする。このサブCPU受信フラグ80のオンはメインCPUのステップS4によるサブCPU受信フラグ80のオンを検出したか否かの判別処理で認識され、ステップS5で構成テーブルの構成情報を書き替える変更処理が行われる。
構成情報の変更が済むとステップS6で共用メモリ28の書替中フラグ78をオフする。この書替中フラグ78のオフはサブCPUのステップS104で判別され、ステップS105でシステム制御部38−2における書替中フラグ78をポーリングする処理を終了し、これによってシステム制御部38−2に対しタスク優先度の低い入出力制御部36−2による入出力処理のタスクが実行可能となる。
一方、メインCPUにあってはステップS6で書替中フラグ78をオフしたあと、ステップS7でシステム内の各レイヤーに変更した構成情報を通知して一連の処理を終了する。尚、メインCPU及びサブCPUのいずれにあっても、ステップS8,S106で停止指示があるまでステップS1,S101からの処理を繰り返すことになる。
このように図5の第1実施形態にあっては、サブCPU24に設けている入出力制御部36−2によりタスク優先度の高い高優先度制御部のタスクを構成テーブルの変更中に実行させることで、入出力制御部36−2による書替え途中の構成テーブルの参照を防止し、書替え途中の構成情報の参照による誤動作を確実に防止することができる。
また入出力制御部36−2による構成テーブル48の参照を抑止させるためのシステム制御部38−2の処理内容は、共用メモリ28の書替中フラグ78が構成情報の変更でオンになることを監視する簡単なポーリング処理の実行であり、このような書替中フラグ78のポーリング処理機能のタスクをサブCPU24のシステム制御部38−2に設けることで、簡単にメインCPU22による構成テーブル48の書替に対するサブCPU24の入出力制御部36−2の排他をとることができる。
図7は本発明による第2実施形態の説明図であり、この第2実施形態にあってはメインCPUによる構成テーブルの書替中にサブCPUに保守エージェントの処理を実行させて入出力制御のテーブル参照を抑止するようにしたことを特徴とする。
図7において、メインCPUのシステム制御部38−1に設けた構成管理部60には構成情報変更制御部76が設けられており、共用メモリ28の構成テーブル48を書替える際には、サブCPU24に対する構成情報書替開始通知90により保守エージェント62−2の処理を実行させる。
保守エージェント62−2はシステム制御部38−2と入出力制御部36−2の間のコマンド中継機能が本来の機能であり、このため入出力制御部36−2に対し、制御タスクの実行優先度が保守エージェント62−2のほうが高くなっている。メインCPU22で構成テーブル48を書替える際にサブCPU24で保守エージェント62−2による適当な処理を実行させれば、それより実行タスクの優先度の低い入出力制御部36−2による構成テーブル48の書替え途中での参照を抑止することができる。
構成情報変更制御部76による具体的な処理は、基本的には図5の第1実施形態と同様、共用メモリ28に書替中フラグ78とサブCPU受信フラグ80を設けることで行っている。すなわち構成情報変更制御部76は構成情報の変更指示を受けると共用メモリ28の書替中フラグ78をオンする共に、サブCPU受信フラグ80をオフし、続いてサブCPU24に対し、構成情報書替開始通知90を発行する。
この構成情報書替開始通知90を受けてサブCPU24は保守エージェント62−2を起動し、起動した保守エージェント62−2はまずサブCPU受信フラグ80をオンすることで、通知に対する確認応答をメインCPUに返す。続いて保守エージェント62−2は書替中フラグ78がオンになることを監視するポーリング処理に入る。
構成情報変更制御部76は共用メモリ28のサブCPU受信フラグ80のオンを検出するとサブCPU24側で保守エージェント62−2が動作状態となったことを検出し、構成変更94により構成テーブル48の書替を行う。このときサブCPU24にあっては保守エージェント62−2が動作しているため、それより実行タスクの優先度の低い入出力制御部36−2は動作しておらず、参照抑止92の状態となっている。
構成テーブル48の書替えが完了すると、構成情報変更制御部76は共用メモリ28の書替中フラグをオフする。これを検出してサブCPU24の保守エージェント62−2はポーリング処理を終了し、入出力制御部36−2の制御タスクが実行可能となる。
図8は図6の第2実施形態におけるメインCPUとサブCPUの制御処理のフローチャートである。図8において、メインCPUはステップS1で構成情報変更コマンドを受領すると、ステップS2で書替中フラグ78をオンし、サブCPU受信フラグ80をオフする。続いてステップS3で構成情報書替開始をサブCPU24に通知する。
サブCPUにあってはステップS101でメインCPUからの構成情報書替通知の受信の有無をチェックしており、通知を受信するとステップS102でサブCPU受信フラグ80をオンする。サブCPU受信フラグのオンはメインCPUのステップS4で検出され、ステップS5で構成テーブル48の構成情報を変更する。
この間サブCPUにあってはステップS103のように保守エージェントの処理として共用メモリ28の書替中フラグ78をポーリングする処理を実行している。このため構成テーブル48の書替中、サブCPU24の入出力制御部36−2のタスクは実行されず、書替途中にある構成情報の参照を抑止できる。
メインCPUで構成情報の変更が済むとステップS6で書替中フラグ78をオフする。書替中フラグのオフはサブCPUのステップS104で判別され、ステップS105で保守エージェントの処理を終了し、実行タスクの優先度の低い入出力制御部36−2による処理を実行可能とする。
またメインCPUにあってはステップS6で書替中フラグ78をオフした後、ステップS7でシステム内の各レイヤーに変更した構成情報を通知する。更にメインCPU及びサブCPUのいずれについてもステップS8,S106で停止指示があるまでステップS1,S101からの処理を繰り返す。
図9は本発明による第3実施形態の説明図であり、この第3実施形態にあっては、メインCPUによる構成テーブルの書替え時に、保守エージェントの処理として、セマフォを獲得してサブCPUの入出力制御によるテーブル参照を抑止するようにしたことを特徴とする。
図9において、メインCPU22のシステム制御部38−1は構成管理部60を有し、構成管理部60には構成情報変更制御部76が設けられている。この第3実施形態の構成情報変更制御部76は、構成情報の変更指示を受けた際に、メインCPU22のOSが提供する共用メモリ28のセマフォフラグ106を獲得するセマフォ獲得108を実行した後に、構成テーブル48の構成変更114を実行する。具体的には、構成情報変更制御部76は、構成情報の変更指示を受けた際に、セマフォフラグ106を獲得すると共に、サブCPU受信フラグをオフした状態で構成情報書替開始通知110をサブCPU24に発行する。
サブCPU24は、構成情報書替開始通知110に対し保守エージェント62−2を起動し、確認応答のためサブCPU受信フラグ80をオンした後、セマフォフラグ106の獲得処理を実行する。しかしながら、構成テーブル48の書替え中にあっては、セマフォフラグ106はメインCPU22が獲得しているため、サブCPU24の保守エージェント64−2はセマフォフラグ106を獲得することができず、保守エージェント62−2がセマフォ獲得処理を実行している間、実行優先度の低い入出力制御部36−2は動作することがなく、構成テーブルの参照をすることができない参照抑止112状態となっている。
図10は図9の第3実施形態におけるメインCPUとサブCPUの制御処理のフローチャートである。図10において、メインCPUは、ステップS1で構成情報の変更依頼コマンドを受領すると、ステップS2でセマフォフラグ106を獲得し、またサブCPU受信フラグ80をオフし、続いてステップS3で構成情報書替開始をサブCPU24に通知する。
サブCPUは、ステップS101でメインCPUからの構成情報書替通知を受信すると保守エージェントを起動し、ステップS102でサブCPU受信フラグ80をオンする。メインCPUは、ステップS4でサブCPU受信フラグのオンを検出して、ステップS5に進み、構成テーブル48の構成情報を変更する。この間、サブCPU側では保守エージェントがステップS103でセマフォ獲得処理を行うことになるが、このときセマフォフラグはメインCPU側で獲得されているため、セマフォ獲得はできず、ステップS104でセマフォが獲得されるまで、ステップS103の処理を繰り返している。このため、構成テーブルの書替え途中でサブCPU24の入出力制御による参照を抑止できる。
メインCPUで構成情報の変更が済むと、ステップS6でセマフォフラグ106が解放される。このためサブCPUの保守エージェントは、メインCPUのセマフォ解放に伴って直ちにセマフォフラグ106を獲得でき、ステップS104でセマフォ獲得が判別されると、ステップS105で直ちにセマフォフラグを解放して保守エージェントの実行処理を終了し、入出力制御部36−2による構成テーブル参照抑止状態を解除し、通常の入出力制御部36−2による実行状態に入る。
なおメインCPUにあっては、ステップS6でセマフォを開放した後、ステップS7でシステム内の各レイヤーに変更した構成情報を通知することになる。またメインCPUとサブCPUは、ステップS8,S106で停止指示を判別するまで、ステップS1,S101からの処理を繰り返す。
このような図9のセマフォ獲得を利用した構成テーブル書替え時のサブCPUの保守エージェントのセマフォ獲得処理に伴う入出力制御の実行禁止によるテーブル参照の抑止にあっては、OSの提供するセマフォ機能を利用することで簡単に構成テーブル書替え中の参照を抑止する処理が実現できる。
図11は本発明による第4実施形態の説明図であり、この第4実施形態にあっては、メインCPUによる構成テーブルの変更時に保守エージョントによるメッセージキューのポーリング処理を利用してサブCPUの入出力制御によるテーブル参照を抑止するようにしたことを特徴とする。
図13において、メインCPU24のシステム制御部38−1には構成管理部60が設けられ、その中に構成情報変更制御部76が設けられている。この第5実施形態の構成情報変更制御部76は、構成情報の変更指示を受けた際に、共用メモリ28のサブCPU受信フラグ80をオフして、構成情報書替開始通知118をサブCPU24に発行する。
構成情報書替開始通知118を受けたサブCPU24は、保守エージェント62−2を起動する。保守エージェント62−2は、共用メモリ28のサブCPU受信フラグ80をオンして、通知に対する応答をメインCPU22に対し行った後、共用メモリ28に設けたメッセージキュー116に対するメインCPU22からの書替え完了メッセージの書込みを検出するポーリング処理に入る。
このため、メインCPU22による構成テーブル48の書替え中は、サブCPU24にあっては実行タスクの優先度の高い保守エージェント62−2が動作しており、それより優先度の低い入出力制御部36−2のタスクは動作しないことからテーブル参照を抑止できる。
構成情報変更制御部76は、構成テーブル48の構成変更122による処理が終了すると、メッセージキュー116に対し書替完了書込124を行う。このメッセージキュー116に書き込まれた書替込了は保守エージェント62−2で検出され、保守エージェント62−2はメッセージキュー116の読出処理を終了し、入出力制御部36−2によるタスク実行を可能とする。
図12は図11の第4実施形態におけるメインCPUとサブCPUの制御処理のフローチャートである。図12において、メインCPUは、ステップS1で構成情報の変更依頼コマンドを受領すると、ステップS2でサブCPU受信フラグ80をオフした後、ステップS3で構成情報書替開始をサブCPU24に通知する。
サブCPUは、ステップS101でメインCPUからの構成情報書替通知の受信を判別すると保守エージェント62−2を起動し、ステップS102でサブCPU受信フラグ80をオンし、通知に対する確認応答を返す。メインCPUは、ステップS4でサブCPU受信フラグのオンの検出を判別すると、ステップS5で構成テーブルの構成情報の変更を実行する。
このときサブCPUにあっては、保守エージェント62−2により、ステップS103でメッセージキュー116の読出処理をステップS104で書込完了を読出すまで繰り返し実行しており、保守エージェント62−2の実行処理により、それより優先度の低い入出力制御部36−2は動作せず、書替え中の構成テーブルの参照を抑止できる。
メインCPUが構成情報の変更を終了すると、ステップS6で書込完了をメッセージキュー116に書き込む。このメッセージキュー116に書き込まれた書込完了は、ステップS103で読み出された後、ステップS104で判別され、ステップS105で保守エージェント62−2によるメッセージキュー116の読出処理を終了し、入出力制御部36−2による処理を実行可能とする。
一方、メインCPUにあっては、ステップS6で書替完了をメッセージキュー116に書き込んだ後、ステップS7でシステム内の各レイヤーに構成変更を通知する。また、メインCPU,サブCPUのいずれについても、ステップS8,S106で停止指示があるまで、ステップS1,S101からの処理を繰り返している。
図13は本発明による第5実施形態の説明図であり、この第5実施形態にあっては、メインCPU22による構成テーブル48の書替え時に、サブCPU24に入出力制御より実行タスクの優先度の高い排他専用タスク制御を実行させて、入出力制御のテーブル参照を抑止するようにしたことを特徴とする。
図13において、メインCPU22のシステム制御部38−1の構成管理部60には、構成情報変更制御部76が設けられる。構成情報変更制御部76は、構成情報の変更指示を受けた際に構成書替開始通知98をサブCPU24に発行し、排他専用タスク制御部96を起動して実行100の状態とする。
排他専用タスク制御部96は実行タスクの優先度が入出力制御部36−2より高いタスクであり、排他専用タスク制御部96の実行100によって入出力制御部36−2のタスクは実行されず、構成テーブル48の参照抑止102の状態とすることができる。
具体的には、構成情報変更制御部76で構成情報の変更指示を受けると、共用メモリ28の書込中フラグ78をオンすると共に、サブCPU受信フラグ80をオフとし、続いて構成書替開始通知98をサブCPU24に発行して、排他専用タスク制御部96を起動する。起動した排他専用タスク制御部96は、まず共用メモリ28のサブCPU受信フラグ80をオンして、通知に対する応答をメインCPU22に通知した後、書込中フラグ78がオンとなることを監視するポーリング処理に入る。
構成情報変更制御部76は、共用メモリ28のサブCPU受信フラグ80のオンにより、サブCPU24側で排他専用タスク制御部96が実行状態となって入出力制御部36−2による参照抑止を確認した後、構成変更104を実行して構成テーブル48の書替えを行う。構成テーブル48の書替えが完了すると、書込中フラグ78をオフし、これをサブCPU24側で検出し、排他専用タスク制御部96の処理を終了して入出力制御部36−2のタスクを実行可能とする。
図14は図13の第5実施形態におけるメインCPUとサブCPUの制御処理のフローチャートである。図14において、メインCPUは、ステップS1で構成情報の変更依頼コマンドを受領すると、ステップS2で書込中フラグ78をオンし、サブCPUフラグ80をオフした後、ステップS3で構成情報書替開始をサブCPUに通知する。
サブCPUは、ステップS101でメインCPUからの構成情報書替通知を受信して、ステップS102でサブCPU受信フラグ80をオンする。メインCPUは、ステップS4でサブCPU受信フラグのオンを検出し、ステップS5で構成テーブルの構成情報を変更する。このときサブCPUにあっては、ステップS103で排他専用タスク制御部96の処理、具体的には共用メモリ28の書込中フラグ78のオンを監視するポーリング処理を実行しており、これより優先度の低い入出力制御部36−2による書替え中の構成テーブルの参照は抑止される。
メインCPUは、ステップS5で構成情報の変更が済むと、ステップS6で書込中フラグ78をオフする。そして、ステップS7でシステム内の各レイヤーに変更した構成情報を通知する。サブCPUは、ステップS104で書込中フラグ78のオフを検出し、ステップS105で排他専用タスク制御部96の処理を終了し、それよりタスク実行優先度の低い入出力制御部36−2を実行可能とする。
図15は本発明による第6実施形態の説明図であり、この第6実施形態にあってはメインCPUとサブCPUの各々につき専用の構成テーブルを共用メモリに配置するようにしたことを特徴とする。
図15において、共用メモリ28には、メインCPU22が使用する第1構成テーブル48−1とサブCPU24が使用する第2構成テーブル48−2が個別に設けられている。メインCPU22のシステム制御部38−1には構成管理部60が設けられており、その中に構成情報変更制御部76が設けられている。
構成情報変更制御部76は、構成情報の変更指示を受けると、第1構成テーブル48−1の構成情報の変更126を実行した後、変更済みの構成情報の配信128をサブCPU24に対し行う。メインCPU22から変更済み構成情報の配信を受けたサブCPU24は、第2構成テーブル48−2に変更済みの構成情報を書き込んで構成情報の書替えを行う。
メインCPU22による第1構成テーブル48−1の書替え中、サブCPU24の入出力制御部36−2は別に設けた自分専用の第2構成テーブル48−2を参照していることから、書替え中の構成情報の参照による誤動作を起こすことを防止できる。この点は、メインCPU22から変更済み構成情報の配信を受けてサブCPU24で第2構成テーブル48−2の書替えを行う場合にも同様である。
図16は図15の第6実施形態におけるメインCPU側の構成情報変更処理のフローチャートである。図16において、メインCPU22にあっては、ステップS1で構成情報の変更依頼コマンドの受領を判別すると、ステップS2でコマンドを解析して第1構成テーブルの構成情報を変更する。
ステップS3で全コマンドの処理終了を判別すると、ステップS4で配信先にサブCPU24を設定して変更済みの構成情報を配信し、サブCPU24側で第2構成テーブル48−2の構成情報の変更を行わせる。そしてステップS5で、配信先となるサブCPU24からの正常終了応答を待って一連の処理を終了する。また、ステップS1〜ステップS5の処理を、ステップS6で停止指示を判別するまで繰り返す。
この図15の第6実施形態にあっては、共用メモリ28メインCPU22とサブCPU24についてそれぞれ専用の構成テーブル48−1,48−2を設けることで、メモリ領域がその分、必要になるが、それぞれ独立に構成テーブルを持って構成情報の変更を行っているため、構成テーブルの共用による排他制御を考慮する必要がなく、その分、メインCPU22とサブCPU24の制御処理が簡単にできる。
図17は本発明による第7実施形態の説明図であり、この第7実施形態にあっては共用メモリに展開する構成テーブルを2面設けてミラー化することで、テーブル書替え中の参照を抑止するようにしたことを特徴とする。
図17において、共用メモリ28には、メインCPU22の構成情報変更制御部76により構成情報の変更が行われる第1構成テーブル48−1と第2構成テーブル48−2が設けられている。第1構成テーブル48−1と第2構成テーブル48−2は同じ構成情報を格納することでミラー化されている。
メインCPU22の構成情報変更制御部76は、構成情報の変更指示を受けると、まず第2構成テーブル48−2に参照ポインタを設定してアクティブ状態とすることで入出力制御による参照を可能とし、参照ポインタを外している非アクティブ側となる第1構成テーブル48−1について構成情報を書き替える構成変更130の処理を実行する。
第1構成テーブル48−1の書替えが済むと、参照ポインタを第2構成テーブル48−2から第1構成テーブル48−1に移してアクティブ状態とし、参照ポインタを外した非アクティブ側となる第2構成テーブル48−2について構成情報を変更する構成変更130を実行する。
このため、第1構成テーブル48−1及び第2構成テーブル48−2の書替え中にあっては、参照ポインタを外すことで非アクティブ状態となっており、参照ポインタを設定したもう一方の構成テーブルについてサブCPU24からの入出力制御による参照132が行われることで、構成テーブル書替え中の参照による誤動作を確実に防止できる。
図18は図17の第7実施形態における一方の構成テーブルの書替え中の他方の構成テーブルの参照処理の説明図である。図18(A)は、共用メモリ28に設けた第2構成テーブル48−2に参照ポインタ135を設定してアクティブ状態とし、これによってサブCPU24の入出力制御部36−2による参照132を可能としている。
一方、構成情報変更対象となる第1構成テーブル48−1については、参照ポインタ135を外していることで非アクティブ状態となり、入出力制御による参照は行われず、メインCPU22の構成情報変更制御部76による構成情報変更領域134−1の変更130が実行される。
第1構成テーブル48−1の書替えが済むと、図18(B)のように参照ポインタ135が第1構成テーブル48−1側に切り替えられてアクティブ状態となり、第2構成テーブル48−2は参照ポインタが外されることで非アクティブ状態となり、この非アクティブ状態でメインCPU22による構成情報変更制御部76による構成情報変更領域134−2に対する変更130が実行される。
図19は図17の第7実施形態における構成情報変更処理のフローチャートである。図19において、ステップS1でメインCPU22に設けている構成情報変更制御部76で構成情報の受信コマンドの受領が判別されると、ステップS2でコマンドを解析して変更内容を認識し、ステップS3で第2構成テーブル48−2に参照ポインタ135をセットしてアクティブ状態とすることで入出力制御による参照を可能とし、次にステップS4で参照ポインタを外して非アクティブ状態にある第1構成テーブル48−1の構成情報を変更する。
次にステップS5で第1構成テーブル48−1に参照ポインタをセットしてアクティブ状態とすることで入出力制御による参照を可能とし、ステップS6で参照ポインタを外して非アクティブ状態とした第2構成テーブル48−2の構成情報を変更する。このステップS2からの処理を、ステップS7で全コマンドが終了するまで繰り返す。またステップS8で停止指示が判別するまで、ステップS1からの処理を繰り返す。
この図17の第7実施形態にあっては、共用メモリ28にミラー化した2面の構成テーブルを設け、参照ポインタを切り替えて、一方を参照に対するアクティブ状態、他方を非アクティブ状態とし、非アクティブ状態側について構成情報の変更を行うことで、構成情報書替え途中における参照による誤動作を確実に防止できる。
また図15のメインCPU22とサブCPU24のそれぞれに個別に専用の構成テーブルを設けた場合に比べ、ミラー化により2つのテーブルについての構成情報の変更はメインCPU22側の処理のみで実現できる分だけ、処理が簡単になる。
図20は本発明による第8実施形態の説明図であり、この第8実施形態にあっては、メインCPUにおける構成テーブルの変更時に、サブCPUに対しサスペンド(中断)を通知して入出力要求の受付けを中断し、テーブル書替え中の参照を抑止するようにしたことを特徴とする。
図20において、メインCPU22のシステム制御部38−1には構成管理部60が設けられ、その中に構成情報変更制御部76が設けられている。構成情報変更制御部76は構成情報の変更指示を受けた際に、サブCPU24に対しサスペンド通知134を発行する。
メインCPU22からサスペンド通知134を受けたサブCPU24は、入出力制御部36−2において、上位装置としてのサーバから既に受け付けている入出力要求についてはそれを完了させ、新規の入出力要求を受け付けないようにする。具体的には、入出力制御部36−2に対するサーバからの入出力ポートを受付禁止状態に設定する。これによって、入出力制御部36−2は中断136の状態となる。
続いて、メインCPU22の構成情報変更制御部76は、共用メモリ28の構成テーブル48の構成情報を書き替える構成変更138を実行する。構成テーブル48の書替えが済むと、構成情報変更制御部76はサブCPU24に対しリジューム通知(再開通知)を行う。リジューム通知を受けたサブCPU24は中断状態を開放し、ホストからの入出力要求を可能とする。
図21は図20の第8実施形態におけるメインCPU処理のフローチャートである。図21において、メインCPU22は、ステップS1で構成情報の変更依頼コマンドの受領を判別すると、ステップS2でサブCPU24に対しサスペンドを指示する。続いてステップS3でサスペンドの完了応答を判別すると、ステップS4で構成テーブルの構成情報を変更する。
次にステップS5で全コマンドの処理終了を判別すると、ステップS6でサブCPUに対するリジュームを通知して処理の再開を依頼する。続いてステップS7でサブCPUからの再開完了応答を判別すると、一連の処理を終了する。このようなステップSS1〜S7の処理は、ステップS8で停止指示があるまで繰り返される。
図22は図20の第8実施形態におけるサブCPU処理のフローチャートである。図22において、サブCPU24にあっては、ステップS1でコマンド受領の有無をチェックし、ステップS2で受領したコマンドとして中断コマンドを判別すると、ステップS3で受付済みの入出力要求を実行した後、ステップS4で新規の入出力要求の受付けを禁止する。
続いてステップS5でメインCPU22に対し中断完了を応答する。続いてステップS6でコマンド受信を判別しており、コマンド受信を判別しステップS7で再開コマンドを判別すると、ステップS8で入出力要求の受付禁止を解除し、ステップS9で解除完了をメインCPUに応答する。
ステップS2またはステップS7でそれぞれ判断対象としているコマンドでなかった場合には、ステップS10に進み、他のコマンド処理を実行している。またステップS11で停止指示があるまで、ステップS1からの処理を繰り返す。
この図20の第8実施形態にあっては、メインCPU22のシステム制御部38−1が備えている入出力制御部36−1,36−2に対するサスペンド通知による中断とリジューム通知による再開のコマンド機能を利用して、構成テーブル書替え中の入出力制御部による参照を抑止することができる。
なお、サスペンド通知によるサブCPU24の中断は、そのとき受領している入出力要求の処理を完了した後に新たな入出力要求を受け付けないようにするため、サスペンド通知を発行してから実際に中断に入るまで、ある程度の処理時間がかかることになり、その分、構成テーブルの書替えは処理待ちとなる。
これに対し、図5の第1実施形態、図7の第2実施形態、図9の第3実施形態、図11の第4実施形態及び図13の第5実施形態にあっては、タスクレベルの処理によりサブCPU24側に構成テーブル書替え中の入出力制御による参照を抑止する動作を行わせることで、ほぼ割込み的に機能させることができ、その分、図20の第8実施形態に比べると処理性能が高くなる。
一方、第8実施形態にあっては、システム制御部が入出力制御部に対し予め持っているサスペンド及びリジュームという既存のコマンドを利用して構成情報書替え中の入出力制御による参照を抑止できるため、構成情報変更制御部76の制御機能を簡略化することができる点でメリットがある。
図23は本発明による第9実施形態の説明図であり、この第9実施形態にあっては、メインCPUによる構成テーブルの書替えに先立って構成テーブルの排他ロックを獲得し、サブCPUの入出力制御によるテーブル参照を抑止するようにしたことを特徴とする。
図23において、メインCPU22のシステム制御部38−1は構成管理部60を有し、構成管理部60には構成情報変更制御部76が設けられている。この第9実施形態の構成情報変更制御部76は、構成情報の変更指示を受けた際に、構成テーブル48に設けた排他フラグ140をオンして排他ロックを獲得する排他制御142を実行した後に、構成テーブル48の構成変更144を実行する。
サブCPU24の入出力制御部36−2は、メインCPU22による構成テーブル48の書替え中に構成テーブル48を参照する場合、排他フラグ140を獲得しようとするが、このとき既にCPU22により獲得されてロック状態にあるため獲得できずに参照抑止146の状態となり、構成テーブル48の参照は構成変更完了により排他フラグ140がオフされてアンロックとなるまで待たされる。
図24は図23の第9実施形態におけるメインCPUによる構成情報変更処理のフローチャートである。図24において、メインCPUは、ステップS1で構成情報の変更依頼コマンドを受領すると、ステップS2で構成テーブル48の排他フラグ140を獲得し、ステップS3で構成情報の変更を実行する。この処理をステップS4で全コマンド終了まで繰り返した後、ステップS5で構成テーブル48の排他フラグ140をオフしてアンロックとし、サブCPU22の入出力制御部による排他ロックの獲得を可能とし、構成テーブル48の参照を許容する。この処理をステップS6で停止指示があるまで繰り返す。
このような図23の第9実施形態は、構成テーブル書替中の参照を抑止するため、参照時に排他フラグをオフによるアンロックを待つことで、確実に書替え途中でのサブCPUの入出力制御による構成テーブルの参照を抑止し、誤動作を防止できる。
また本発明は、RAID装置を構成するコンピュータ、具体的にはメインCPUで実行されるプログラムを提供するものであり、そのプログラムは図6,図8,図10,図12,図14,図16,図19,図21,図24にメインCPU処理として示したフローチャートの内容を持つ。
また本発明は、その目的と利点を損なうことのない適宜の変形を含み、更に上記の実施形態に示した数値による限定は受けない。
ここで本発明の特徴を列挙すると次の付記のようになる。
(付記)
(付記1)
構成情報を参照してボリュームの入出力処理を実行する第1入出力制御部と、構成情報を管理する構成管理部とを実行対象として備えた第1処理部と、
前記構成情報を参照して別のボリュームの入出力処理を実行する第2入出力制御部と、前記第2入出力制御部より実行優先度の高い高優先度制御部を実行対象として備えた第2処理部と、
前記構成情報を格納した構成テーブルを配置した共用メモリと、
を備えたストレージ装置に於いて、
前記構成情報の変更指示を受けた際に、前記第2処理部に前記高優先度制御部の処理を実行させることにより前記第2入出力制御部による前記構成テーブルの参照を抑止した状態で前記構成テーブルの構成情報を変更し、前記構成情報の変更完了で前記第2処理部に前記高優先度制御部の処理を終了させる構成情報変更制御部を設けたことを特徴とするストレージ装置。(1)
(付記2)
付記1記載のストレージ装置に於いて、前記高優先度制御部は、装置全体を管理するシステム制御部であり、
前記構成情報変更制御部は、構成情報の変更指示を受けた際に、前記構成テーブルの書替中フラグをオンすると共に第2処理部受信フラグをオフした後に前記第2処理部に構成情報の書替え開始を通知し、前記第2処理部による前記システム制御部の処理実行に伴う前記第2処理部受信フラグのオンを検出した際に前記構成テーブルの構成情報を変更し、前記構成情報の変更完了で前記書替中フラグをオフして前記第2処理部に前記システム制御部の処理を終了させることを特徴とするストレージ装置。(2)
(付記3)
付記1記載のストレージ装置に於いて、前記高優先度制御部は、装置全体を管理するシステム制御部と前記第2入出力制御部との間でコマンドを中継するコマンド中継制御部であり、
前記構成情報変更制御部は、構成情報の変更指示を受けた際に、前記構成テーブルの書替中フラグをオンすると共に第2処理部受信フラグをオフした後に前記第2処理部に構成情報の書替え開始を通知し、前記第2処理部による前記コマンド中継制御部の処理実行に伴う前記第2処理部受信フラグのオンを検出した際に前記構成テーブルの構成情報を変更し、前記構成情報の変更完了で前記書替中フラグをオフして前記第2処理部に前記コマンド中継制御部の処理を終了させることを特徴とするストレージ装置。(3)
(付記4)
付記1記載のストレージ装置に於いて、前記高優先度制御部は、装置全体を管理するシステム制御部と前記第2入出力制御部との間でコマンドを中継するコマンド中継制御部であり、
前記構成情報変更制御部は、構成情報の変更指示を受けた際に、セマフォを獲得した後に前記第2処理部により前記コマンド中継制御部にセマフォ獲得処理を実行させて前記第2入出力処理部による前記構成テーブルの参照を抑止した状態で前記構成テーブルの構成情報を変更し、前記構成情報の変更完了で前記セマフォを解放して前記第2処理部のコマンド中継制御部に獲得させた後に前記セマフォ獲得処理を終了させることを特徴とするストレージ装置。
(付記5)
付記1記載のストレージ装置に於いて、前記高優先度制御部は、装置全体を管理するシステム制御部と前記第2入出力制御部との間でコマンドを中継するコマンド中継制御部であり、
前記構成情報変更制御部は、構成情報の変更指示を受けた際に、前記第2処理部により前記コマンド中継部に前記中継キューの読出処理を実行させて前記第2入出力制御部による前記構成テーブルの参照を抑止した状態で前記構成テーブルの構成情報を変更し、前記構成情報の変更完了を前記中継キューに書込んで前記第2処理部の前記コマンド中継制御部に中継キュー読出処理を終了させることを特徴とするストレージ装置。
(付記6)
付記1記載のストレージ装置に於いて、前記高優先度制御部は、排他専用のタスク処理のために設けた排他専用タスク制御部であり、
前記構成情報変更制御部は、構成情報の変更指示を受けた際に、前記構成テーブルの書替中フラグをオンすると共に第2処理部受信フラグをオフした後に前記第2処理部に構成情報の書替え開始を通知し、前記第2処理部による前記排他専用タスク制御部の処理実行に伴う前記第2処理部受信フラグのオンを検出した際に前記構成テーブルの構成情報を変更し、前記構成情報の変更完了で前記書替中フラグをオフして前記第2処理部に前記排他専用タスク制御部の処理を終了させることを特徴とするストレージ装置。
(付記7)
構成情報を参照してボリュームの入出力処理を実行する第1入出力制御部と、前記構成情報を管理する構成管理部とを実行対象として備えた第1処理部と、
前記構成情報を参照して別のボリュームの入出力処理を実行する第2入出力制御部と、
前記第2入出力制御部より実行優先度の高い高優先度制御部とを実行対象として備えた第2処理部と、
前記構成情報を格納した構成テーブルを配置した共用メモリと、
を備えたストレージ装置の構成情報管理方法に於いて、
構成情報の変更指示を受けた際に、前記第2処理部により前記高優先度制御部の処理を実行させて前記第2入出力制御部による前記構成テーブルの参照を抑止させる参照抑止ステップと、
前記構成テーブルの参照を抑止させた状態で前記構成テーブルの構成情報を変更する構成情報変更ステップと、
前記構成情報の変更完了で前記第2処理部に前記高優先度制御部の処理を終了させる参照抑止解除ステップと、
を備えたことを特徴とする構成情報管理方法。(4)
(付記8)
付記7記載の構成情報管理方法に於いて、前記高優先度制御部は、装置全体を管理するシステム制御部であり、
前記参照抑止ステップは、構成情報の変更指示を受けた際に、前記構成テーブルの書替中フラグをオンすると共に第2処理部受信フラグをオフした後に前記第2処理部に構成情報の書替え開始を通知し、
前記構成情報変更ステップは、前記第2処理部による前記システム制御部の処理実行に伴う前記第2処理部受信フラグのオンを検出した際に前記構成テーブルの構成情報を変更し、
前記参照抑止解除ステップは、前記構成情報の変更完了で前記書替中フラグをオフして前記第2処理部に前記システム制御部の処理を終了させることを特徴とする構成情報管理方法。
(付記9)
付記7記載の構成情報管理方法に於いて、前記高優先度制御部は、装置全体を管理するシステム制御部と前記第2入出力制御部との間でコマンドを中継するコマンド中継制御部であり、
前記参照抑止ステップは、構成情報の変更指示を受けた際に、前記構成テーブルの書替中フラグをオンすると共に第2処理部受信フラグをオフした後に前記第2処理部に構成情報の書替え開始を通知し、
前記構成情報変更ステップは、前記第2処理部による前記コマンド中継制御部の処理実行に伴う前記第2処理部受信フラグのオンを検出した際に前記構成テーブルの構成情報を変更し、
前記参照抑止解除ステップは、前記構成情報の変更完了で前記書替中フラグをオフして前記第2処理部に前記コマンド中継制御部の処理を終了させることを特徴とする構成情報管理方法。
(付記10)
付記7記載の構成情報管理方法に於いて、前記高優先度制御部は、装置全体を管理するシステム制御部と前記第2入出力制御部との間でコマンドを中継するコマンド中継制御部であり、
構成情報の変更指示を受けた際に、セマフォを獲得した後に前記第2処理部のコマンド中継制御部にセマフォ獲得処理を実行させて前記第2入出力制御部による前記構成テーブルの参照を抑止させる参照抑止ステップと、
前記構成テーブルの参照を抑止した状態で前記構成テーブルの構成情報を変更する構成情報変更ステップと、
前記構成情報の変更完了で前記セマフォを解放して前記第2処理部のコマンド中継制御部に獲得させた後に前記セマフォ獲得処理を終了させる参照抑止解除ステップと、
を備えたことを特徴とする構成情報管理方法。
(付記11)
付記7記載の構成情報管理方法に於いて、前記高優先度制御部は、装置全体を管理するシステム制御部と前記第2入出力制御部との間でコマンドを中継するコマンド中継制御部であり、
構成情報の変更指示を受けた際に、前記第2処理部のコマンド中継制御部に前記中継キューの読出処理を実行させて前記第2入出力制御理部による前記構成テーブルの参照を抑止させる参照抑止ステップと、
前記構成テーブルの参照を抑止した状態で前記構成テーブルの構成情報を変更する構成情報変更ステップと、
前記構成情報の変更完了を前記中継キューに書込んで前記第2処理部のコマンド中継制御部に中継キュー読出処理を終了させる参照抑止解除ステップと、
を備えたことを特徴とする構成情報管理方法。
(付記12)
構成情報を参照してボリュームの入出力処理を実行する第1入出力制御部と、前記構成情報を管理する構成管理部とを実行対象として備えた第1処理部と、
前記構成情報を参照して別のボリュームの入出力処理を実行する第2入出力制御部と、前記第2入出力制御部より実行優先度の高い高優先度制御部を実行対象として備えた第2処理部と、
前記構成情報を格納した構成テーブルを配置した共用メモリと、
を備えたストレージ装置の前記第1処理部を構成するコンピュータに、
構成情報の変更指示を受けた際に、前記第2処理部により前記高優先度制御部の処理を実行させて前記第2入出力処理部による前記構成テーブルの参照を抑止させる参照抑止ステップと、
前記構成テーブルの参照を抑止させた状態で前記構成テーブルの構成情報を変更する構成情報変更ステップと、
前記構成情報の変更完了で前記第2処理部に前記高優先度制御部の処理を終了させる参照抑止解除ステップと、
を実行させることを特徴とする構成情報管理プログラム。(5)
(付記13)
付記12記載の構成情報管理プログラムに於いて、前記高優先度制御部は、装置全体を管理するシステム制御部であり、
前記参照抑止ステップは、構成情報の変更指示を受けた際に、前記構成テーブルの書替フラグをオンすると共に第2処理部受信フラグをオフした後に前記第2処理部に構成情報の書替え開始を通知し、
前記構成情報変更ステップは、前記第2処理部による前記システム制御部の処理実行に伴う前記第2処理部受信フラグのオンを検出した際に前記構成テーブルの構成情報を変更し、
前記参照抑止解除ステップは、前記構成情報の変更完了で前記書替中フラグをオフして前記第2処理部に前記システム制御部の処理を終了させることを特徴とする構成情報管理プログラム。
(付記14)
付記12記載の構成情報管理プログラムに於いて、前記高優先度制御部は、装置全体を管理するシステム制御部と前記第2入出力制御部との間でコマンドを中継するコマンド中継制御部であり、
前記参照抑止ステップは、構成情報の変更指示を受けた際に、前記構成テーブルの書替中フラグをオンすると共に第2処理部受信フラグをオフした後に前記第2処理部に構成情報の書替え開始を通知し、
前記構成情報変更ステップは、前記第2処理部による前記コマンド中継制御部の処理実行に伴う前記第2処理部受信フラグのオンを検出した際に前記構成テーブルの構成情報を変更し、
前記参照抑止解除ステップは、前記構成情報の変更完了で前記書替中フラグをオフして前記第2処理部に前記コマンド中継制御部の処理を終了させることを特徴とする構成情報管理プログラム。
(付記15)
付記12記載の構成情報管理プログラムに於いて、前記高優先度制御部は、装置全体を管理するシステム制御部と前記第2入出力制御部との間でコマンドを中継するコマンド中継制御部であり、
構成情報の変更指示を受けた際に、セマフォを獲得した後に前記第2処理部のコマンド中継制御部にセマフォ獲得処理を実行させて前記第2入出力制御部による前記構成テーブルの参照を抑止させる参照抑止ステップと、
前記構成テーブルの参照を抑止した状態で前記構成テーブルの構成情報を変更する構成情報変更ステップと、
前記構成情報の変更完了で前記セマフォを解放して前記第2処理部のコマンド中継制御部に獲得させた後に前記セマフォ獲得処理を終了させる参照抑止解除ステップと、
を実行させることを特徴とする構成情報管理プログラム。
(付記16)
付記12記載の構成情報管理プログラムに於いて、前記高優先度制御部は、装置全体を管理するシステム制御部と前記第2入出力制御部との間でコマンドを中継するコマンド中継制御部であり、
構成情報の変更指示を受けた際に、前記第2処理部のコマンド中継制御部に前記中継キューの読出処理を実行させて前記第2入出力制御部による前記構成テーブルの参照を抑止させる参照抑止ステップと、
前記構成テーブルの参照を抑止した状態で前記構成テーブルの構成情報を変更する構成情報変更ステップと、
前記構成情報の変更完了を前記中継キューに書込んで前記第2処理部のコマンド中継制御部に中継キュー読出処理を終了させる参照抑止解除ステップと、
を備えたことを特徴とする構成情報管理プログラム。
(付記17)
構成情報を参照してボリュームの入出力処理を実行する第1入出力制御部と、前記構成情報を管理する構成管理部とを実行対象として備えた第1処理部と、
前記構成情報を参照して別のボリュームの入出力処理を実行する第2入出力制御部を実行対象として備えた第2処理部と、
を備えたストレージ装置に於いて、
前記第1処理部が参照する前記構成情報を格納した第1構成テーブルと前記第2処理部が参照する前記構成情報を格納した第2構成テーブルを配置した共用メモリと、
構成情報変更指示を受けた際に、前記第1構成テーブルの構成情報を変更した後に、構成情報変更指示を前記サブプロセッサに配信して前記第2構成テーブルの構成情報を変更させる構成情報変更制御部と、
を備えたことを特徴とするストレージ装置。
(付記18)
構成情報を参照してボリュームの入出力処理を実行する第1入出力制御部と、前記構成情報を管理する構成管理部とを実行対象として備えた第1処理部と、
前記構成情報を参照して別のボリュームの入出力処理を実行する第2入出力制御部を実行対象として備えた第2処理部と、
を備えたストレージ装置に於いて、
前記構成情報を個別に格納したミラー構成の第1構成テーブルと第2構成テーブルを配置した共用メモリと、
構成情報変更指示を受けた際に、前記第2構成テーブルに参照ポインタを設定して前記第1構成テーブルの構成情報を変更し、続いて前記第1構成テーブルに参照ポインタを設定して前記第2構成テーブルの構成情報を変更する構成情報変更制御部と、
を備えたことを特徴とするストレージ装置。
(付記19)
構成情報を参照してボリュームの入出力処理を実行する第1入出力制御部と、前記構成情報を管理する構成管理部とを実行対象として備えた第1処理部と、
前記構成情報を参照して別のボリュームの入出力処理を実行する第2入出力制御部を実行対象として備えた第2処理部と、
前記構成情報を格納した構成テーブルを配置した共用メモリと、
を備えたストレージ装置に於いて、
構成情報の変更指示を受けた際に、前記第2処理部に受付け済みの入出力要求は完了させ、新規の入出力は受付けなくする中断処理を指示した後に、前記構成テーブルの構成情報を変更し、前記構成情報の変更完了で前記第2処理部に処理の再開を指示する構成情報変更制御部を設けたことを特徴とするストレージ装置。
(付記20)
構成情報を参照してボリュームの入出力処理を実行する第1入出力制御部と、前記構成情報を管理する構成管理部とを実行対象として備えた第1処理部と、
前記構成情報を参照して別のボリュームの入出力処理を実行する第2入出力制御部を実行対象として備えた第2処理部と、
前記構成情報を格納した構成テーブルを配置した共用メモリと、
を備えたストレージ装置に於いて、
構成情報の変更指示を受けた際に、前記構成テーブルに排他制御情報を設定して前記第2入出力制御部の参照を抑止した後に前記構成テーブルの構成情報を変更し、前記構成情報の変更完了で前記排他制御情報の設定を解除する構成情報変更制御部を設けたことを特徴とするストレージ装置。
本発明の原理説明図 本発明が適用されたRAID装置のハードウェア構成のブロック図 本発明によるRAID装置の機能構成のブロック図 図3の構成テーブルの説明図 構成テーブル書替え時にサブCPUにシステム制御タスクを実行させて入出力制御のテーブル参照を抑止する本発明の第1実施形態の説明図 図5の第1実施形態におけるメインCPUとサブCPUの制御処理のフローチャート 構成テーブル書替え時にサブCPUに保守エージェントの処理を実行させて入出力制御のテーブル参照を抑止する本発明の第2実施形態の説明図 図7の第2実施形態におけるメインCPUとサブCPUの制御処理のフローチャート 構成テーブル書替え時にセマフォを獲得してサブCPUの入出力制御によるテーブル参照を抑止する本発明の第3実施形態の説明図 図9の第3実施形態におけるメインCPUとサブCPUの制御処理のフローチャート メッセージキューを利用してサブCPUの入出力制御によるテーブル参照を抑止する本発明の第4実施形態の説明図 図11の第4実施形態におけるメインCPUとサブCPUの制御処理のフローチャート 構成テーブル書替え時にサブCPUに排他専用タスク制御を実行させて入出力制御のテーブル参照を抑止する本発明の第5実施形態の説明図 図13の第5実施形態におけるメインCPUとサブCPUの制御処理のフローチャート メインCPUとサブCPUの各々につき構成テーブルを共用メモリに配置してテーブル書替中の参照を抑止する本発明の第6実施形態の説明図 図15の第6実施形態における構成情報変更処理のフローチャート 共用メモリに構成テーブルをミラー化して2面設けてテーブル書替中の参照を抑止する本発明の第7実施形態の説明図 図17の第7実施形態における一方の構成テーブルの書替中に他方の構成テーブルを参照させた処理の説明図 図17の第7実施形態における構成情報変更処理のフローチャート 構成テーブルの変更時にサブCPUにサスペンドを通知して入出力要求の受付けを中断してテーブル書替中の参照を抑止する本発明の第8実施形態の説明図 図20の第8実施形態におけるメインCPU処理のフローチャート 図20の第8実施形態におけるサブCPU処理のフローチャート 構成テーブルの変更時に排他フラグによりロックを獲得してテーブル書替中の参照を抑止する本発明の第9実施形態の説明図 図23の第9実施形態における構成情報変更処理のフローチャート
符号の説明
10:RAID装置
12:グローバルサーバ
14:オープンサーバ
16−11,16−12,16−21,16−22:チャネルアダプタ
18,18−1,18−2:制御モジュール
20−1,20−2:ドライブエンクロージャ
22,22−1,22−2:メインCPU
24,24−1,24−2:サブCPU
26−11,26−12,26−21,26−22:デバイスインタフェース
28,28−1,28−2:共用メモリ
30−1,30−2:DMA処理部
32−11〜32−15,32−21〜32−25:ディスク装置
34−1,34−2:通信制御部
36−1,36−2:入出力制御部
38−1,38−2:システム制御部
40:保守制御部
42:システムボリューム
44−1,44−2:ユーザボリューム
46:キャッシュメモリ
48:構成テーブル
48−1:第1構成テーブル
48−2:第2構成テーブル
50−1,50−2:チャネルアダプタ制御部
52−1,52−2:リソース処理部
54−1,54−2:コピー処理部
56−1,56−2:キャッシュ制御部
58−1,58−2:RAID制御部
60:構成管理部
62−1,62−2:保守エージェント
64:構成管理テーブル
66:基本マスタテーブル
68,72:設定情報
70,74:状態情報
76:構成情報変更制御部
78:書替中フラグ
80:サブCPU受信フラグ
96:排他専用タスク制御部
106:セマフォフラグ
116:メッセージキュー
140:排他フラグ

Claims (5)

  1. 構成情報を参照してボリュームの入出力処理を実行する第1入出力制御部と、構成情報を管理する構成管理部とを実行対象として備えた第1処理部と、
    前記構成情報を参照して別のボリュームの入出力処理を実行する第2入出力制御部と、前記第2入出力制御部より実行優先度の高い高優先度制御部を実行対象として備えた第2処理部と、
    前記構成情報を格納した構成テーブルを配置した共用メモリと、
    を備えたストレージ装置に於いて、
    前記構成情報の変更指示を受けた際に、前記第2処理部に前記高優先度制御部の処理を実行させることにより前記第2入出力制御部による前記構成テーブルの参照を抑止した状態で前記構成テーブルの構成情報を変更し、前記構成情報の変更完了で前記第2処理部に前記高優先度制御部の処理を終了させる構成情報変更制御部を設けたことを特徴とするストレージ装置。
  2. 請求項1記載のストレージ装置に於いて、前記高優先度制御部は、装置全体を管理するシステム制御部であり、
    前記構成情報変更制御部は、構成情報の変更指示を受けた際に、前記構成テーブルの書替中フラグをオンすると共に第2処理部受信フラグをオフした後に前記第2処理部に構成情報の書替え開始を通知し、前記第2処理部による前記システム制御部の処理実行に伴う前記第2処理部受信フラグのオンを検出した際に前記構成テーブルの構成情報を変更し、前記構成情報の変更完了で前記書替中フラグをオフして前記第2処理部に前記システム制御部の処理を終了させることを特徴とするストレージ装置。
  3. 請求項1記載のストレージ装置に於いて、前記高優先度制御部は、装置全体を管理するシステム制御部と前記第2入出力制御部との間でコマンドを中継するコマンド中継制御部であり、
    前記構成情報変更制御部は、構成情報の変更指示を受けた際に、前記構成テーブルの書替中フラグをオンすると共に第2処理部受信フラグをオフした後に前記第2処理部に構成情報の書替え開始を通知し、前記第2処理部による前記コマンド中継制御部の処理実行に伴う前記第2処理部受信フラグのオンを検出した際に前記構成テーブルの構成情報を変更し、前記構成情報の変更完了で前記書替中フラグをオフして前記第2処理部に前記コマンド中継制御部の処理を終了させることを特徴とするストレージ装置。
  4. 構成情報を参照してボリュームの入出力処理を実行する第1入出力制御部と、前記構成情報を管理する構成管理部とを実行対象として備えた第1処理部と、
    前記構成情報を参照して別のボリュームの入出力処理を実行する第2入出力制御部と、
    前記第2入出力制御部より実行優先度の高い高優先度制御部とを実行対象として備えた第2処理部と、
    前記構成情報を格納した構成テーブルを配置した共用メモリと、
    を備えたストレージ装置の構成情報管理方法に於いて、
    構成情報の変更指示を受けた際に、前記第2処理部により前記高優先度制御部の処理を実行させて前記第2入出力制御部による前記構成テーブルの参照を抑止させる参照抑止ステップと、
    前記構成テーブルの参照を抑止させた状態で前記構成テーブルの構成情報を変更する構成情報変更ステップと、
    前記構成情報の変更完了で前記第2処理部に前記高優先度制御部の処理を終了させる参照抑止解除ステップと、
    を備えたことを特徴とする構成情報管理方法。
  5. 構成情報を参照してボリュームの入出力処理を実行する第1入出力制御部と、前記構成情報を管理する構成管理部とを実行対象として備えた第1処理部と、
    前記構成情報を参照して別のボリュームの入出力処理を実行する第2入出力制御部と、前記第2入出力制御部より実行優先度の高い高優先度制御部を実行対象として備えた第2処理部と、
    前記構成情報を格納した構成テーブルを配置した共用メモリと、
    を備えたストレージ装置の前記第1処理部を構成するコンピュータに、
    構成情報の変更指示を受けた際に、前記第2処理部により前記高優先度制御部の処理を実行させて前記第2入出力制御部による前記構成テーブルの参照を抑止させる参照抑止ステップと、
    前記構成テーブルの参照を抑止させた状態で前記構成テーブルの構成情報を変更する構成情報変更ステップと、
    前記構成情報の変更完了で前記第2処理部に前記高優先度制御部の処理を終了させる参照抑止解除ステップと、
    を実行させることを特徴とする構成情報管理プログラム。
JP2005170743A 2005-06-10 2005-06-10 ストレージ装置、構成情報管理方法及びプログラム Pending JP2006344119A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005170743A JP2006344119A (ja) 2005-06-10 2005-06-10 ストレージ装置、構成情報管理方法及びプログラム
US11/223,005 US20060282638A1 (en) 2005-06-10 2005-09-12 Storage device, configuration information management method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005170743A JP2006344119A (ja) 2005-06-10 2005-06-10 ストレージ装置、構成情報管理方法及びプログラム

Publications (1)

Publication Number Publication Date
JP2006344119A true JP2006344119A (ja) 2006-12-21

Family

ID=37525399

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005170743A Pending JP2006344119A (ja) 2005-06-10 2005-06-10 ストレージ装置、構成情報管理方法及びプログラム

Country Status (2)

Country Link
US (1) US20060282638A1 (ja)
JP (1) JP2006344119A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110018891A (zh) * 2018-11-28 2019-07-16 阿里巴巴集团控股有限公司 一种任务管理系统、一种任务管理方法及装置

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8528102B2 (en) * 2006-10-06 2013-09-03 Broadcom Corporation Method and system for protection of customer secrets in a secure reprogrammable system
US9251498B2 (en) * 2006-10-23 2016-02-02 Oracle International Corporation Facilitating deployment of customizations of enterprise applications
CN101916218B (zh) * 2010-08-10 2012-07-04 西安电子科技大学 基于解析冗余机制的双cpu冗余控制系统
JP6127489B2 (ja) * 2012-12-11 2017-05-17 株式会社リコー 処理要求装置、処理要求装置の制御プログラム
JP5949801B2 (ja) * 2014-01-29 2016-07-13 日本電気株式会社 ディスクアレイ装置、制御方法、および、プログラム
US9716618B2 (en) * 2014-04-22 2017-07-25 International Business Machines Corporation Script termination
JP6425473B2 (ja) * 2014-09-09 2018-11-21 キヤノン株式会社 印刷装置、印刷方法、及びプログラム
US10176012B2 (en) 2014-12-12 2019-01-08 Nxp Usa, Inc. Method and apparatus for implementing deterministic response frame transmission
US10505757B2 (en) * 2014-12-12 2019-12-10 Nxp Usa, Inc. Network interface module and a method of changing network configuration parameters within a network device
US10091703B2 (en) * 2015-03-20 2018-10-02 Denso Corporation Relay apparatus
US10013370B2 (en) * 2015-12-29 2018-07-03 EMC IP Holding Company LLC Method and system for providing access of a storage system using a shared storage module as a transport mechanism
US10628352B2 (en) 2016-07-19 2020-04-21 Nxp Usa, Inc. Heterogeneous multi-processor device and method of enabling coherent data access within a heterogeneous multi-processor device
CN109062693A (zh) * 2018-07-26 2018-12-21 郑州云海信息技术有限公司 一种内存管理方法及相关设备
US10740024B1 (en) * 2019-04-04 2020-08-11 EMC IP Holding Company LLC Minimizing runtime feature overhead in a storage system
US11038750B2 (en) * 2019-10-23 2021-06-15 Toshiba Global Commerce Solutions Holdings Corporation Management of configuration modifications in distributed data systems

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3726484B2 (ja) * 1998-04-10 2005-12-14 株式会社日立製作所 記憶サブシステム
US6282637B1 (en) * 1998-12-02 2001-08-28 Sun Microsystems, Inc. Partially executing a pending atomic instruction to unlock resources when cancellation of the instruction occurs
JP2005115603A (ja) * 2003-10-07 2005-04-28 Hitachi Ltd 記憶デバイス制御装置及びその制御方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110018891A (zh) * 2018-11-28 2019-07-16 阿里巴巴集团控股有限公司 一种任务管理系统、一种任务管理方法及装置
CN110018891B (zh) * 2018-11-28 2023-11-21 创新先进技术有限公司 一种任务管理系统、一种任务管理方法及装置

Also Published As

Publication number Publication date
US20060282638A1 (en) 2006-12-14

Similar Documents

Publication Publication Date Title
JP2006344119A (ja) ストレージ装置、構成情報管理方法及びプログラム
JP6437656B2 (ja) ストレージ装置、ストレージシステム、ストレージシステムの制御方法
US9575905B2 (en) Storage controller cache synchronization method and apparatus
JP4475598B2 (ja) ストレージシステム及びストレージシステムの制御方法
EP1839156B1 (en) Managing multiprocessor operations
US9632701B2 (en) Storage system
JP3628777B2 (ja) 外部記憶装置
US7734741B2 (en) Method, system, and apparatus for dynamic reconfiguration of resources
KR100267029B1 (ko) 메모리갱신이력보존장치를구비한컴퓨터시스템
JP2009075759A (ja) ストレージ装置及びストレージ装置におけるデータの管理方法
JP5026375B2 (ja) ストレージ装置及びストレージ装置の制御方法
JPH0683686A (ja) タイム・ゼロ・バックアップ・セッションの安全保護機能を有するデータ処理方法及びシステム
CN103443773A (zh) 利用多个存储设备减少数据库录入的写延迟的方法和系统
JP6130520B2 (ja) 多重系システムおよび多重系システム管理方法
US20040148607A1 (en) Methods and apparatus for managing the execution of a task among a plurality of autonomous processes
JP2006221451A (ja) ディスクアレイ装置
US8799903B1 (en) Systems and methods for exchanging runtime functionalities between software stacks
JP2008250506A (ja) ディスクアレイ装置,ディスクアレイ制御システム及び制御方法,制御用プログラム
US20050097208A1 (en) Node removal using remote back-up system memory
JP6519266B2 (ja) 情報処理装置、デバイス、および復旧方法、並びにコンピュータ・プログラム
US20120233420A1 (en) Fault-tolerant system, memory control method, and computer-readable recording medium storing programs
JP2009093378A (ja) ストレージシステム
JP2004046474A (ja) マルチos環境の計算機システムおよびそのプログラム
JP2001175518A (ja) バックアップ作成システム、方法および記録媒体
JP3487337B2 (ja) メモリ検査方法、情報記憶媒体、データ処理装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090203

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090707