以下、実施の形態を図面を参照して詳細に説明する。
〔第1の実施の形態〕
図1は、第1の実施の形態に係る情報処理装置の構成を示す図である。
図1に示す情報処理装置1は、ある装置において実行するプログラムを第1のプログラムから第2のプログラムに切り替える際の作業を支援する処理を実行する。ここで、第1のプログラムおよび第2のプログラムは、例えば、図1の情報処理装置1自体によって実行されるものであってよい。あるいは、情報処理装置1は、第1のプログラムおよび第2のプログラムが実行される装置とは別の装置であってもよい。また、実行するプログラムの切り替え後には、第2のプログラムのみが実行され、第1のプログラムは実行されないものとする。ただし、切り替えの前の時点では、第1のプログラムは、実行されていても、あるいは、実行されていなくてもよい。
第2のプログラムは、第1のプログラムとは別に用意されたプログラムであっても、あるいは、第1のプログラムを変換して生成されたプログラムであってもよい。また、第2のプログラムの実行時には、第1のプログラムの実行時に参照される複数の制御情報のうち、少なくとも一部が参照される。例えば、第1のプログラムおよび第2のプログラムは、実現する主な機能やプログラム名が同じでありながら互いに版数の異なるプログラムである。あるいは、第2のプログラムは、第1のプログラムが実現するほとんどの機能を引き継ぎながら、別の名称が付されて新たに提供されたプログラムであってもよい。なお、第1の実施の形態では、制御情報とは、制御に利用される値が設定された項目を指すものとするが、項目に設定された値自体を指すものとしてもよい。
情報処理装置1は、実行するプログラムの切り替え作業を支援する処理を実行するために、処理機能判別手段11と制御情報判別手段12とを有する。なお、処理機能判別手段11および制御情報判別手段12の処理は、例えば、情報処理装置1が備えるCPU(Central Processing Unit)が所定の作業支援プログラムを実行することで実現される。また、この作業支援プログラムは、例えば、第1のプログラムに組み込まれていてもよい。
処理機能判別手段11は、第1のプログラムによって実現されるが、第2のプログラムによって実現されない処理機能である差分処理機能を判別する。例えば、処理機能判別手段11は、第1のプログラムによって実現される処理機能を識別する処理機能識別情報21と、第2のプログラムによって実現される処理機能を識別する処理機能識別情報22とに基づいて、差分処理機能を判別する。処理機能識別情報21,22は、例えば、第1,第2のプログラムによってそれぞれ実現される処理機能を示す情報を含んでいる。また、処理機能識別情報21,22は、例えば、複数の処理機能のそれぞれが、第1,第2のプログラムによってそれぞれ実現されるか否かを示す情報を含んでいてもよい。
制御情報判別手段12は、処理機能判別手段11によって判別された差分処理機能に関連する制御情報を判別する。より具体的には、制御情報判別手段12は、複数の処理機能と、各処理機能に関連する1つまたは複数の制御情報とを対応付けた関係情報31を、図示しない記憶装置から読み出す。そして、制御情報判別手段12は、読み出した関係情報31に基づいて、差分処理機能に関連する制御情報を判別する。制御情報判別手段12は、差分処理機能に関連する制御情報を判別すると、例えば、判別した制御情報を識別する情報を出力する。
図1に示した例では、第1のプログラムによって処理機能F1〜F5が実現され、第2のプログラムによって処理機能F1,F2,F4,F5が実現される。この場合、処理機能判別手段11は、処理機能F3が差分処理機能であると判別する。一方、関係情報31では、制御情報C1,C2,C3のうち、制御情報C1,C3が処理機能F3に対して対応付けられている。このため、制御情報判別手段12は、制御情報C1,C3が、差分処理機能である処理機能F3に関連する制御情報であると判別する。
差分処理機能が存在する場合、実行するプログラムが第1のプログラムから第2のプログラムに切り替えられると、差分処理機能に関連する制御情報などが原因となって、第2のプログラムの実行中に異常が発生する場合がある。このため、実行するプログラムの切り替え作業を行う作業者は、第2のプログラムを実行する前に、差分処理機能が存在するか否かを判定していた。そして、作業者は、差分処理機能が存在する場合には、差分処理機能に関連する制御情報を特定して、特定された制御情報の設定変更や削除などを行っていた。
上記の情報処理装置1では、差分処理機能が特定され、特定された差分処理機能に関連する制御情報が判別されるので、確認すべき制御情報をすべての制御情報の中から作業者が絞り込まなくてもよくなり、作業者による切り替え作業の負荷が軽減される。その結果、切り替え作業後に第2のプログラムが実行された際に、処理の異常が発生する可能性が低減される。
制御情報判別手段12の判別結果を利用することで、例えば、情報処理装置1あるいはその外部の装置において、判別された制御情報を確認することを画面などを通じて作業者に促すことができる。判別された制御情報の確認を促す方法としては、例えば、判別された制御情報を表示する表示画面に、画像や文字情報などによる警告情報を表示する方法などがある。
また、制御情報判別手段12によって判別された制御情報の一覧表示画面や、一覧表示した制御情報に対する設定変更を受け付ける画面を、モニタに表示させてもよい。また、制御情報判別手段12によって判別された制御情報を表示した画面や、表示した制御情報に対する設定変更を受け付ける画面を表示させるように、画面上などで作業者を誘導するようにしてもよい。このような処理により、作業者による制御情報の確認作業の効率を高めるとともに、切り替え作業後の異常発生の可能性を低減することができる。
なお、関係情報31は、例えば、1つ以上の制御情報を含む制御情報群ごとに用意されて、各制御情報群に含まれる少なくとも1つの制御情報に関連する処理機能を識別する情報であってもよい。この場合、制御情報判別手段12は、関係情報31を基に、差分処理機能に関連する制御情報を含む制御情報群を判別する。
また、関係情報31は、例えば、制御情報群に含まれる制御情報を表示する制御情報表示画面ごとに用意されてもよい。この場合、関係情報31は、各制御情報表示画面に表示される少なくとも1つの制御情報に関連する処理機能を識別する。そして、制御情報判別手段12は、関係情報31を基に、差分処理機能に関連する制御情報を1つ以上表示する制御情報表示画面を判別する。このため、例えば、判別された制御情報表示画面を表示させる処理や、判別された制御情報表示画面を確認するように作業者を誘導する処理などを、情報処理装置1あるいはその外部の装置において効率よく実行できるようになる。
次に、上記の第1のプログラムおよび第2のプログラムが実行される電子機器としてRAID装置を例示し、RAID装置を含むストレージ制御システムを適用した実施の形態について説明する。なお、以下の説明では、第1,第2のプログラムとして、版数の異なる同種のプログラムを例示する。また、実行するプログラムを版数の異なる同種のプログラムに切り替える処理を、“改版処理”と呼ぶ。
〔第2の実施の形態〕
図2は、第2の実施の形態のシステム構成を示す図である。
図2に示すRAID装置100は、複数のストレージ装置と、これらのストレージ装置の物理記憶領域をRAIDによって管理するストレージ制御機能とを備えている。本実施の形態では、ストレージ装置としてHDD(Hard Disk Drive)が使用されるが、例えばSSD(Solid State Drive)などの他の種類のストレージ装置が使用されてもよい。
RAID装置100には、ホスト装置200と管理端末300とが接続されている。ホスト装置200は、ユーザの操作に応じて、RAID装置100が提供する論理記憶領域に対するアクセスを要求する装置である。管理端末300は、管理者の操作に応じて、RAID装置100に対する各種設定処理や、RAID装置100で実行されるファームウェアの改版処理の実行要求などを行う装置である。
ホスト装置200とRAID装置100は、例えば、図示しないファイバチャネルスイッチなどを介して、光ファイバによって接続されている。管理端末300とRAID装置100は、LANによって接続されている。管理端末300とRAID装置100は、例えば、LANケーブルによって直接接続されていてもよいし、あるいは、LAN(Local Area Network)スイッチなどを介して接続されていてもよい。
RAID装置100は、CM(Centralized Module)110a,110b、CA(Channel Adapter)121a,121b,122a,122bおよびHDD131a,131b,132a,132bを備えている。
CM110aは、HDD131a,131bの物理記憶領域をRAIDによって管理し、この物理記憶領域に対するアクセスなどを制御する制御モジュールである。また、CM110bは、HDD132a,132bの物理記憶領域をRAIDによって管理し、この物理記憶領域に対するアクセスなどを制御する制御モジュールである。ここで、それぞれ別のストレージ装置を管理する2系統のCM110a,110bが設けられることで、システムに冗長性が与えられ、その信頼性が向上される。
CA121a,121bは、ホスト装置とCM110aとの間でデータを送受信するインタフェース機能を提供する。図2の例では、ホスト装置200は、CA121aを通じてCM110aにアクセスする。また、CA122a,122bは、ホスト装置とCM110bとの間でデータを送受信するインタフェース機能を提供する。図2の例では、ホスト装置200は、CA122aを通じてCM110bにアクセスする。
次に、CM110a,110bのハードウェア構成について説明する。
CM110aは、CPU111、RAM(Random Access Memory)112、フラッシュROM(Read Only Memory)113、キャッシュメモリ114、DA(Device Adapter)115a,115bおよびLANインタフェース(I/F)116を備えている。
CPU111は、フラッシュROM113などに記憶されたプログラムを実行することにより、CM110a全体を統括的に制御する。RAM112は、CPU111に実行させるプログラムの少なくとも一部や、プログラムによる処理に必要な各種データを一時的に記憶する。フラッシュROM113は、CPU111により実行されるプログラムや、プログラムの実行に必要な各種のデータなどを記憶する。
キャッシュメモリ114は、HDD131a,131bから読み出したデータをキャッシュする。また、キャッシュメモリ114には、CPU111による処理に必要なデータが一時的に記憶されてもよい。
DA115aは、HDD131aとキャッシュメモリ114との間でデータを送受信するインタフェース機能を提供する。また、DA115bは、HDD131bとキャッシュメモリ114との間でデータを送受信するインタフェース機能を提供する。
LANインタフェース116は、LANケーブルを介して管理端末300などの外部装置と接続し、外部装置との間でデータの送受信を行う。
なお、CM110bは、CM110aと同様のハードウェア構成を有するので、ここでは説明を省略する。
図3は、管理端末のハードウェア構成を示す図である。
管理端末300は、例えば、図3に示すようなコンピュータによって実現される。このコンピュータは、CPU301、RAM302、HDD303、グラフィック処理部304、入力インタフェース(I/F)305、書き込み/読み取り部306およびLANインタフェース(I/F)307を備えており、これらの各部はバス308によって相互に接続されている。
CPU301は、HDD303に記憶された各種プログラムを実行することにより、このコンピュータ全体を統括的に制御する。RAM302は、CPU301に実行させるプログラムの少なくとも一部や、プログラムによる処理に必要な各種データを一時的に記憶する。HDD303は、CPU301により実行されるプログラムや、プログラムの実行に必要な各種のデータなどを記憶する。
グラフィック処理部304には、例えば、モニタ304aが接続されている。グラフィック処理部304は、CPU301からの命令に従って、モニタ304aの画面上に画像を表示させる。
入力インタフェース305には、例えば、キーボード305aやマウス305bが接続されている。入力インタフェース305は、キーボード305aやマウス305bからの信号を、バス308を介してCPU301に送信する。
書き込み/読み取り部306は、CPU301からバス308を介して受け取ったデータを、可搬型記憶媒体306aに書き込む。また、可搬型記憶媒体306aからデータを読み取り、バス308を介してCPU301に送信する。なお、可搬型記憶媒体306aとしては、例えば、光ディスク、フレキシブルディスク、USB(Universal Serial Bus)インタフェースなどを介して接続される半導体メモリなどを適用可能である。
LANインタフェース307は、LANケーブルを介してRAID装置100などの外部装置と接続し、外部装置との間でデータの送受信を行う。
なお、ホスト装置200も、図3に示した管理端末300と同様のハードウェア構成によって実現可能である。
次に、RAID装置100内のCM110a,110bが実行する処理について説明する。CM110a,110bはともに同様の処理を実行可能であるため、以下ではCM110aでの処理についてのみ説明する。
まず、図4は、CMおよび管理端末において実行されるプログラムを示す図である。この図4を用いて、各プログラムがCM110aに実行させる処理について簡単に説明する。
CM110aでは、RAIDファームウェアと、起動制御プログラム420と、メンテナンスプログラム430とが実行される。これらのプログラムは、CM110aのフラッシュROM113に記憶され、CPU111によりRAM112に読み込まれて実行される。
RAIDファームウェアは、CM110aのCPU111が実行するメインのプログラムである。RAIDファームウェアは、HDD131a,131bの物理記憶領域をRAIDによって管理するRAID制御処理や、このRAID制御処理に対する保守処理を、CM110aに実行させる。保守処理には、後述するように、RAIDファームウェアの改版処理が含まれる。
RAIDファームウェアの実行時には、ファームウェア版数テーブル440と、画面テーブル450と、複数の制御データテーブル500とが参照される。
ファームウェア版数テーブル440には、RAIDファームウェアの版数と、RAID制御処理によって実現される各種処理機能のサポート状況を示す機能情報とが、対応付けて格納されている。なお、RAID制御処理によって実現される処理機能としては、例えば、各種のRAIDレベルによる制御機能、HDD131a,131bに記憶するデータの暗号化機能などが考えられる。
画面テーブル450には、制御データテーブル500内の情報の閲覧や設定変更を簡易的に行うための簡易表示画面の識別情報と、各簡易表示画面に関連するRAID制御上の処理機能を示す関連機能情報とが、対応付けて格納されている。ここで、簡易表示画面に関連する処理機能とは、簡易表示画面内に表示される少なくとも1つの制御データの項目に関連する処理機能を示す。
ファームウェア版数テーブル440および画面テーブル450は、RAIDファームウェアの実行により、RAIDファームウェアの改版処理が行われる際に参照される。
複数の制御データテーブル500のそれぞれには、RAID制御処理の実行に必要な各種の制御データが格納されている。従って、CM110aのCPU111は、RAIDファームウェアを実行したとき、制御データテーブル500内の制御データを参照しながら、RAID制御処理を行う。
また、各制御データテーブル500には、それぞれに関連する処理機能を示す関連機能情報が記録されている。ここで、制御データテーブル500に関連する処理機能とは、制御データテーブル500内に記録された少なくとも1つの制御データの項目に関連する処理機能を示す。なお、各制御データテーブル500と関連機能情報とは、制御データテーブル500とは別の情報において対応付けられていてもよい。
ところで、CM110aのフラッシュROM113には、版数の異なる2つのRAIDファームウェア410a,410bを記憶する領域が設けられている。図4では、RAIDファームウェア410bよりRAIDファームウェア410aの方が、版数が新しいものとする。
CM110aのCPU111は、記憶されたRAIDファームウェア410a,410bのうち一方を実行する。起動設定情報460には、RAIDファームウェア410a,410bのうちどちらを実行するかを示すフラグ情報が記憶される。起動制御プログラム420は、CM110aの起動時にCPU111によって最初に実行されるプログラムである。起動制御プログラム420を実行したCPU111は、システムの初期化などの所定の起動処理を実行した後、起動設定情報460に記憶されたフラグ情報に基づき、RAIDファームウェア410a,410bのうち一方を起動する。RAIDファームウェアの改版時には、起動設定情報460が書き替えられた後、CM110aが再起動される。
メンテナンスプログラム430は、主として、RAIDファームウェアがCM110aに実行させる保守処理を管理端末300から制御するためのGUI(Graphical User Interface)を提供するプログラムである。CM110aは、メンテナンスプログラム430に従い、フラッシュROM113に記憶された複数の画面情報600のうち1つを読み出すとともに、表示に必要な制御データの要求を発する。このとき、CM110aは、RAIDファームウェア410aに従い、表示に必要な制御データを制御データテーブル500から読み出す。そして、CM110aは、メンテナンスプログラム430に従い、制御データテーブル500から読み出した制御データを画面情報600に組み込み、管理端末300に出力する。各画面情報600は、例えば、1つの簡易表示画面を生成するHTML(HyperText Markup Language)データや画像データなどを含む。
管理端末300では、Web閲覧プログラム310が実行され、このプログラムに基づくWeb閲覧ウィンドウが表示される。そして、管理端末300は、CM110aから画面情報600を受信すると、受信した画面情報600に基づく簡易表示画面を、Web閲覧ウィンドウ内に表示する。このとき、簡易表示画面には、制御データテーブル500から読み出された制御データが表示される。また、管理端末300を操作する管理者は、Web閲覧ウィンドウを通じて簡易表示画面の遷移や情報の設定などを要求することで、制御データテーブル500の閲覧や設定変更、RAIDファームウェアの改版などの処理をCM110aに実行させることができる。
管理端末300ではさらに、制御データテーブル500の内容をより詳細に閲覧し、閲覧した制御データの設定を変更するための詳細設定プログラム320が実行される。メンテナンスプログラム430は、詳細設定プログラム320を実行する管理端末300からの要求に応じて、制御データテーブル500内の制御データの読み出しや、制御データの更新を行う処理も、CM110aに実行させる。
例えば、CM110aは、RAIDファームウェア410aに従い、管理端末300から要求された制御データを制御データテーブル500から読み出す。そして、メンテナンスプログラム430に従い、制御データテーブル500から読み出された制御データを管理端末300に送信する。管理端末300は、詳細設定プログラム320に従い、CM110aから受信した制御データを表示した詳細表示画面を、モニタ304aに表示させる。
ここで、RAIDファームウェアの改版時の処理について、簡単に説明する。なお、本実施の形態では、CM110aでの改版処理は、実行対象を新版のRAIDファームウェア410aから旧版のRAIDファームウェア410bに切り替える“下方改版”であるものとする。
CM110aは、改版前のRAIDファームウェア410aとメンテナンスプログラム430とに従い、改版処理を実行する。管理端末300から改版処理が要求されると、CM110aは、ファームウェア版数テーブル440を参照して、改版前のRAIDファームウェア410aはサポートしているが、改版後のRAIDファームウェア410bはサポートしていない処理機能を抽出する。ここでは、抽出された処理機能を“差分処理機能”と呼ぶ。
差分処理機能が抽出された場合、CM110aは、制御データテーブル500に格納された制御データのうち、確認すべきと考えられる制御データを特定し、特定した制御データを管理者に確認させる処理を実行する。本実施の形態では、制御データを確認させる処理として、次の2種類の処理を実行可能である。
第1の処理は、Web閲覧プログラム310の実行により管理端末300に表示させる簡易表示画面を通じて、制御データを確認させる処理である。この処理では、画面テーブル450に基づいて、差分処理機能に関連する画面情報600が特定され、特定された画面情報600に基づく画面を閲覧するように、簡易表示画面を通じて閲覧者に促される。この場合、特定された画面情報600に基づく画面には、差分処理機能に関連するために確認が必要と考えられる制御データが、1つ以上表示される。なお、特定された画面情報600に基づく画面には、1つまたは複数の制御データテーブル500から読み出された制御データが表示される。
第2の処理は、詳細設定プログラム320の実行により管理端末300に表示させる詳細表示画面を通じて、制御データを確認させる処理である。この処理では、各制御データテーブル500に格納された関連機能情報に基づいて、差分処理機能に関連する制御データテーブル500が特定され、特定された制御データテーブル500内の制御データが、詳細制御画面に一覧表示される。この場合、特定された制御データテーブル500には、差分処理機能に関連するために確認が必要と考えられる制御データが、1つ以上含まれている。
次に、図5は、管理端末の機能を示すブロック図である。
管理端末300は、Web閲覧処理部311と、詳細設定処理部321とを備えている。
Web閲覧処理部311の処理は、CPU301がWeb閲覧プログラム310を実行することで実現される。Web閲覧処理部311は、モニタ304aに対してWeb閲覧ウィンドウを表示させ、CM110aから受信した画面情報600に基づく簡易表示画面を、Web閲覧ウィンドウ内に表示させる。また、簡易表示画面に対する管理者の操作入力に応じて、CM110aに対して処理を要求する。
詳細設定処理部321は、CPU301が詳細設定プログラム320を実行することで実現される。詳細設定処理部321は、画面情報600に基づく簡易表示画面と比較して、制御データテーブル500に格納された制御データをより詳細に表示し、制御データの設定をより詳細に変更することを可能にする。詳細設定処理部321は、詳細表示画面をモニタ304aに対して表示させ、CM110aから受信した制御データを、詳細表示画面内に表示させる。また、詳細設定処理部321は、管理者の操作入力に応じて変更された制御データをCM110aに送信し、設定変更を要求する。
次に、CM110aが版数の新しいRAIDファームウェア410aを実行している場合を想定して、RAIDファームウェア410aおよびメンテナンスプログラム430によって実行される処理について、詳細に説明する。
図6は、CMの機能を示すブロック図である。
CM110aは、RAID制御部411、読み出し/設定制御部412、改版処理部413、機能判定部414、画面抽出部415、制御データテーブル抽出部416、GUI処理部431および詳細設定インタフェース(I/F)部432を備えている。
GUI処理部431および詳細設定インタフェース部432の処理は、CPU111がメンテナンスプログラム430を実行することで実現される。
GUI処理部431は、画面情報600の1つを読み出して管理端末300に送信する。管理端末300では、Web閲覧処理部311の処理により、受信した画面情報600に基づく簡易表示画面が表示される。また、表示された簡易表示画面に対する操作が行われると、GUI処理部431は、操作に応じた処理要求をWeb閲覧処理部311から受信して、要求された処理を実行する。
例えば、管理端末300から、制御データテーブル500に記憶された制御データの閲覧要求を受けた場合、GUI処理部431は、閲覧要求に対応する画面情報600を読み出す。これとともに、GUI処理部431は、読み出した画面情報600に記述された情報を基に、簡易表示画面に表示する制御データの項目を判別し、判別した項目を読み出し/設定制御部412に通知して、通知した項目に設定された制御データの読み出しを要求する。
読み出し/設定制御部412は、読み出しを要求された制御データを制御データテーブル500から読み出し、GUI処理部431に通知する。詳細設定インタフェース部432は、読み出し/設定制御部412から取得した制御データを、画面情報600とともに管理端末300に送信する。管理端末300では、送信した画面情報600に基づく簡易表示画面が表示され、簡易表示画面内の所定の欄に、制御データテーブル500から読み出された制御データが表示される。
また、例えば、管理端末300から、制御データテーブル500に対する情報の設定要求を受けた場合、GUI処理部431は、設定要求とともに受信した新たな制御データの値と、設定を要求された制御データの項目とを、読み出し/設定制御部412に通知する。読み出し/設定制御部412は、制御データテーブル500において、通知された項目に設定された制御データを、管理端末300から受信した制御データで更新する。また、読み出し/設定制御部412は、制御データテーブル500を更新する際、必要に応じて、RAID制御部411に所定の処理の実行を要求する。
ここで、図7は、画面情報に基づく簡易表示画面の表示例を示す図である。
図7では、画面情報600を受信した管理端末300のモニタ304aにおいて、Web閲覧ウィンドウ内に表示される簡易表示画面の例を示している。画面情報600に基づく簡易表示画面には、基本的に、タブ選択領域611,612と制御データ表示/設定領域613とが表示される。
タブ選択領域611,612には、それぞれ複数のタブが表示され、管理者からの操作入力に応じて1つのタブが選択可能になっている。タブ選択領域612内のタブは、タブ選択領域611内の各タブの下位階層に対応づけられており、選択されたタブの下層に対応付けられた複数のタブが、タブ選択領域612に表示される。
図7の例では、タブ選択領域611には、状態表示タブ620、ボリューム設定タブ630、共通設定タブ640およびメンテナンスタブ650の4つのタブが表示されている。状態表示タブ620は、CM110aに設定された制御データを閲覧するためのタブである。ボリューム設定タブ630は、CM110aに設定された制御データのうち、物理記憶領域に対して設定されるボリュームに関する制御データの設定を変更するためのタブである。共通設定タブ640は、CM110aに設定された制御データのうち、ボリューム間で共通の制御データの設定を変更するためのタブである。メンテナンスタブ650は、RAID装置100のハードウェアやソフトウェアのメンテナンスを行うためのタブである。
図7の例では、タブ選択領域611において状態表示タブ620が選択されている。このとき、タブ選択領域612には、状態表示タブ620の下層に対応付けられた装置状態タブ621、RAIDグループタブ622、ボリューム状態タブ623およびコピー設定状態タブ624が表示される。
装置状態タブ621は、CM110aの装置全体に関する制御データを表示するためのタブである。RAIDグループタブ622は、RAIDグループの構成に関する制御データを表示するためのタブである。ボリューム状態タブ623は、CM110aにより設定されたボリュームに関する制御データを表示するためのタブである。コピー設定状態タブ624は、ボリュームを所定の記憶領域に複製するボリュームコピー機能に関する制御データを表示するためのタブである。
図7の例では、タブ選択領域612においてボリューム状態タブ623が選択されている。制御データ表示/設定領域613には、ボリューム状態タブ623の下位階層に対応付けられた情報として、CM110aにおいて設定された全ボリュームの属性を一覧表示する“ボリューム一覧情報”が表示される。
ボリューム一覧情報には、各ボリュームの識別番号623a、名前623b、タイプ623cおよび容量623dの各情報が、所定の制御データテーブル500から読み出されて表示される。なお、タイプ623cとは、ボリュームの用途を示す情報であり、図7では、“Open”“Copy”“Copy_ex”の3種類の情報が例示されている。“Open”は用途が限定されていないことを示し、“Copy”は、ボリュームの複製先領域として使用されることを示し、“Copy_ex”は、ボリュームの複製先の拡張領域として使用されることを示す。
ボリューム一覧情報においては、例えば、ボリュームの識別番号623aに対する選択操作が行われることで、選択されたボリュームに関するより詳細な属性情報を、制御データ表示/設定領域613に表示させることもできる。
以上のような簡易表示画面を表示させたWeb閲覧処理部311は、タブ選択領域611,612におけるタブの選択操作や、制御データ表示/設定領域613における選択操作に応じて、選択結果をCM110aのGUI処理部431に送信する。GUI処理部431は、選択結果に応じた画面情報600および制御データを返信する。Web閲覧処理部311は、GUI処理部431から返信された画面情報600および制御データに基づいて、タブ選択領域611,612におけるタブの選択状態を変更するとともに、制御データ表示/設定領域613に表示させる情報を変更する。
GUI処理部431がWeb閲覧処理部311に送信する画面情報600は、例えば、タブ選択領域611,612のそれぞれにおいて選択されるタブの組み合わせごとに用意される。制御データ表示/設定領域613に1つ以上の制御データを表示する画面に対応する画面情報600には、制御データ表示/設定領域613に表示する制御データの読み出し元を識別する情報が記述されている。すなわち、各画面情報600は、制御データテーブル500内に記録された1つ以上の制御データに対応している。GUI処理部431は、送信する画面情報600に記述された識別情報に対応する制御データを、読み出し/設定制御部412を通じて制御データテーブル500から読み込む。そして、GUI処理部431は、読み込んだ制御データを画面情報600に組み込んで、Web閲覧処理部311に送信する。
また、タブ選択領域611において、状態表示タブ620が選択された場合には、制御データ表示/設定領域613には、制御データテーブル500に基づく制御データが表示されるのみである。しかし、ボリューム設定タブ630および共通設定タブ640が選択された場合には、制御データ表示/設定領域613においては、制御データテーブル500に基づく制御データが表示されるだけでなく、表示された制御データの設定を変更可能になっている。Web閲覧処理部311は、表示された制御データの設定を変更する操作入力を受けた場合、変更後の制御データおよびその項目をCM110aのGUI処理部431に送信する。CM110aでは、受信した制御データによって、制御データテーブル500内の対応する項目に設定された制御データが更新される。
また、後述するように、タブ選択領域611においてメンテナンスタブ650が選択された場合には、タブ選択領域612にRAIDファームウェアの改版処理を行うためのファームウェア改版タブが表示される。管理者は、ファームウェア改版タブを選択したとき、制御データ表示/設定領域613内の表示情報に対する操作入力を行うことで、RAIDファームウェアの改版処理を実行させることができる。また、後述するように、改版処理に問題が生じた場合には、タブ選択領域611,612の対応するタブなどに対して警告表示が行われる。
以下、図6に戻って説明する。
GUI処理部431は、管理端末300のWeb閲覧処理部311からRAIDファームウェアの改版処理の要求を受けると、機能判定部414に対して、改版処理の実行を要求するとともに、改版後のRAIDファームウェアの版数を通知する。ここで、機能判定部414において、改版前のRAIDファームウェアがサポートするRAID制御上の処理機能の中に、改版後のRAIDファームウェアがサポートしていない処理機能が存在した場合には、改版処理が中断される。
このとき、GUI処理部431は、例えば、画面抽出部415から、改版後のRAIDファームウェアがサポートしていない処理機能に関連する画面情報600の識別情報の通知を受ける。GUI処理部431は、管理端末300に対して、画面抽出部415から通知された識別情報に対応する簡易表示画面の閲覧を管理者に促すような表示を実行させる。
詳細設定インタフェース部432は、管理端末300の詳細設定処理部321と連携して処理を実行する。詳細設定インタフェース部432は、詳細設定処理部321からの要求に応じて、読み出し/設定制御部412を通じて制御データテーブル500から読み出した制御データを、詳細設定処理部321に送信する。また、詳細設定処理部321において制御データが変更されると、詳細設定インタフェース部432は、変更された制御データとその項目とを受信して読み出し/設定制御部412に通知する。そして、受信した制御データによって、制御データテーブル500内の対応する項目に設定された制御データを更新するように要求する。
次に、RAID制御部411、読み出し/設定制御部412、改版処理部413、機能判定部414、画面抽出部415および制御データテーブル抽出部416の各処理は、CPU111がRAIDファームウェア410aを実行することで実現される。
RAID制御部411は、RAIDファームウェア410aの実行により実現される主たる処理ブロックであり、HDD131a,131bの物理記憶領域をRAIDによって管理する。RAID制御部411は、制御データテーブル500に設定された制御データに基づいて動作する。
読み出し/設定制御部412は、GUI処理部431、詳細設定インタフェース部432または制御データテーブル抽出部416からの要求に応じて、制御データテーブル500から制御データを読み出す。また、読み出し/設定制御部412は、GUI処理部431または詳細設定インタフェース部432からの要求に応じて、制御データテーブル500内の制御データを更新する。また、読み出し/設定制御部412は、制御データテーブル500を更新する際、必要に応じて、RAID制御部411に対して所定の処理の実行を要求する。
改版処理部413は、機能判定部414において改版処理の実行が許可された場合に、起動設定情報460を書き替えた後、CM110aのシステムをリセットさせる。本実施の形態では、改版処理部413は、古い版数のRAIDファームウェア410bへ実行対象を切り替える下方改版処理を行う。
なお、改版後のRAIDファームウェア410bは、例えば、あらかじめCM110aのフラッシュROM113に格納されている。しかし、改版後のRAIDファームウェア410bは、改版処理部413の制御により、例えば、HDD131aもしくはHDD131b、または、管理端末300などの外部機器から読み込まれて、フラッシュROM113に書き込まれてもよい。
ところで、RAID制御部411がサポートする処理機能は、RAIDファームウェアの版数によって異なる。例えば、各種のRAIDレベルによる制御機能、HDD131a,131bに記憶するデータの暗号化機能などの処理機能は、すべての版数のRAIDファームウェアがサポートしている訳ではない場合が考えられる。特に、新しい版数のRAIDファームウェアが対応している処理機能の中には、古い版数のRAIDファームウェアは対応していない処理機能が存在する場合がある。
機能判定部414は、GUI処理部431から改版処理の開始要求を受けると、ファームウェア版数テーブル440を参照して、改版前および改版後の各版数のRAIDファームウェアがサポートしている処理機能の差分があるか否かを判定する。改版前のRAIDファームウェア410aはサポートしているものの、改版後のRAIDファームウェア410bはサポートしていない処理機能があった場合、機能判定部414は、改版処理を中断する。そして、機能判定部414は、画面抽出部415および制御データテーブル抽出部416の動作を開始させる。
画面抽出部415は、画面テーブル450を参照して、差分として抽出された処理機能に関連する画面情報600の識別情報を抽出し、抽出した識別情報をGUI処理部431に通知する。
制御データテーブル抽出部416は、差分として抽出された処理機能に関連する制御データが設定された制御データテーブル500を抽出し、抽出した制御データテーブル500を識別する識別情報を、読み出し/設定制御部412に通知する。
次に、機能判定部414、画面抽出部415および制御データテーブル抽出部416の処理について、より具体的に説明する。
まず、図8は、改版処理を要求するための簡易表示画面の表示例を示す図である。
管理端末300において、管理者の操作入力により簡易表示画面上のメンテナンスタブ650が選択されると、図8に示すように、タブ選択領域612には、ハードウェア保守タブ651およびファームウェア改版タブ652が表示される。ハードウェア保守タブ651は、RAID装置100内のハードウェアに関するメンテナンスを行うためのタブである。
ファームウェア改版タブ652が選択されると、制御データ表示/設定領域613に、RAIDファームウェアの改版処理を要求するための情報が表示される。制御データ表示/設定領域613には、例えば、版数選択部653と改版開始ボタン654とが表示される。
版数選択部653では、改版後のRAIDファームウェアの版数が、ラジオボタンによって選択される。いずれか1つのラジオボタンが選択された後、改版開始ボタン654に対するクリック操作が行われると、管理端末300のWeb閲覧処理部311は、CM110aのGUI処理部431に対して、改版処理の開始を要求する。また、Web閲覧処理部311は、選択された版数を示す識別情報を、GUI処理部431に送信する。
GUI処理部431は、改版処理の開始要求を受けると、受信した版数の識別情報を機能判定部414に通知し、通知した版数への改版処理の開始を要求する。これにより、機能判定部414の処理が開始される。機能判定部414は、次のようなファームウェア版数テーブル440を参照しながら、処理を実行する。
図9は、ファームウェア版数テーブルに格納された情報の例を示す図である。
ファームウェア版数テーブル440には、RAIDファームウェアの版数を示す版数情報441に対して、サポートされている処理機能を示す機能情報442が対応付けて記憶されている。機能情報442は、1つのビットが1つの処理機能に割り当てられたビット列であり、図9では、機能情報442を示すビット列が16進数として表されている。
図10は、機能情報のビットと処理機能との関係を示す図である。
機能情報442は、例えば、図10に示すように、16ビットのビット列として表される。1つのビットは、1つの処理機能に割り当てられる。図10の例では、各ビットには上位側から処理機能A,B,・・・,O,Pが割り当てられている。機能情報442の各ビットの値は、対応する処理機能がサポートされている場合には“1”とされ、サポートされていない場合には“0”とされる。
図10の例では、機能情報442の値は“1111 1100 0000 0000”(16進表記で“fc00”)とされている。この場合、対応する版数のRAIDファームウェアは、処理機能A〜Fをサポートしているが、処理機能G〜Pをサポートしていないことが表される。
図11は、機能判定部における演算例を示す図である。
機能判定部414は、GUI処理部431から改版処理の開始要求を受けたとき、GUI処理部431から改版後のRAIDファームウェアの版数の通知も受ける。機能判定部414は、改版後の版数に対応する機能情報442と、改版前の版数に対応する機能情報442とを、ファームウェア版数テーブル440から読み出す。
機能判定部414は、改版前および改版後のそれぞれの版数に対応する機能情報442同士を比較し、改版前の版数に対応する機能情報442での値が“1”で、改版後の版数に対応する機能情報442での値が“0”であるビットを判別する。このビット判別処理は、例えば、改版前の版数に対応する機能情報442と、改版後の版数に対応する機能情報442を反転した反転情報との間で、ビットごとの論理積をとることで実行でき、その演算結果は機能差分値443として出力される。機能差分値443において値が“1”となるビットが存在した場合、そのビットに対応する処理機能は、改版後のRAIDファームウェア410bによってサポートされないことになる。
なお、例えば、旧版のRAIDファームウェア410bがサポートしているすべての処理機能は、新版のRAIDファームウェア410aによってサポートされていることが保証されている場合には、上記のビット判別処理は、改版前および改版後のそれぞれの版数に対応する機能情報442のビットごとの排他的論理和をとることで行うことができる。
図11の例では、改版前および改版後の版数に対応する機能情報442が、16進表記でそれぞれ“fe00”“fc00”となっている。従って、機能差分値443においては、上位から7ビット目の値のみが“1”となり、機能判定部414は、改版後のRAIDファームウェア410bが処理機能Gをサポートしないことを認識する。
機能判定部414は、算出した機能差分値443の全ビットが“0”である場合、改版処理部413に改版処理を開始させる。一方、機能判定部414は、算出した機能差分値443のビットの中に“1”が含まれていた場合、改版処理を中断して、画面抽出部415または制御データテーブル抽出部416の処理を開始させる。本実施の形態では、先に画面抽出部415の処理を開始させるものとする。
図12は、画面テーブルに格納された情報の例を示す図である。
画面テーブル450には、画面情報600を識別する画面識別情報451に対して、関連する処理機能を示す関連機能情報452が対応付けて記憶されている。関連機能情報452は、機能情報442と同じビット数を有するビット列であり、機能情報442と同様の割り当て順で、1つのビットに対して1つの処理機能が割り当てられている。そして、ビットの値が“1”である場合、そのビットに対応する処理機能に、対応する画面情報600が関連していることを示す。すなわち、関連機能情報452は、対応する画面情報600に基づく簡易表示画面に表示される制御データの項目が、どの処理機能に関連しているかを示す。
図12の例では、関連機能情報452は16進数として表されている。図12において、例えば、“簡易表示画面A”で識別される画面情報600には、関連機能情報452として“0010 1111 0000 0001”(16進表記で“2f01”)が対応付けられている。この場合、“簡易表示画面A”に対応する簡易表示画面に表示される制御データの項目は、処理機能C,E〜H,Pに関連している。また、“簡易表示画面A”に対応する簡易表示画面が、制御データの設定を行う画面であるとすると、この簡易表示画面に対する操作に応じて設定変更が行われた場合、処理機能C,E〜H,Pに対して影響を与える可能性がある。
図13は、画面抽出部の処理例を説明する図である。
画面抽出部415は、画面テーブル450から関連機能情報452を順次読み出し、機能判定部414によって算出された機能差分値443と比較する。画面抽出部415は、画面テーブル450から読み出した関連機能情報452のビットのうち、機能差分値443において値が“1”であるビットの値を抽出する。画面抽出部415は、抽出した値が“1”である場合、関連機能情報452に対応付けられた画面識別情報451を画面テーブル450から取得する。以上の処理は、例えば、関連機能情報452と機能差分値443との間でビットごとの論理積をとり、値が“1”となるビットが存在した場合に、関連機能情報452に対応する画面識別情報451を取得することで実行可能である。
図13の例では、機能差分値443のビットのうち、処理機能Gに対応するビットが“1”とされている。また、4つの関連機能情報452の例のうち、“簡易表示画面A”および“簡易表示画面D”にそれぞれ対応する関連機能情報452において、処理機能Gに対応するビットが“1”とされている。従って、画面抽出部415は、画面識別情報451として“簡易表示画面A”および“簡易表示画面D”を取得する。
画面抽出部415は、取得した画面識別情報451に基づく表示制御処理を、GUI処理部431に要求する。GUI処理部431は、画面抽出部415により取得された画面識別情報451に対応する簡易表示画面の閲覧を管理者に促すような表示制御処理を実行する。例えば、管理端末300に表示させる簡易表示画面において、画面抽出部415が取得した画面識別情報451に対応する簡易表示画面の閲覧を促すような警告画像を表示させる。
ここで、図14は、改版処理が中断されたときの簡易表示画面の表示例を示す図である。
GUI処理部431は、画面抽出部415から画面識別情報451に基づく表示制御処理の要求を受けると、管理端末300のWeb閲覧処理部311に対して新たな画面情報600を送信し、簡易表示画面を例えば図14のように遷移させる。図14に示す簡易表示画面では、制御データ表示/設定領域613に、文字領域655、確認済みボタン656およびキャンセルボタン657が表示されている。
文字領域655には、例えば、改版処理を継続した場合にサポートされなくなる処理機能があることを管理者に通知し、この処理機能に関連する制御データを確認するように促す文字情報が表示される。確認済みボタン656は、管理者が、簡易表示画面において必要な情報を確認し、改版処理を続行させる場合に選択される。キャンセルボタン657は、改版処理を終了する場合に選択される。
また、タブ選択領域611には、確認が必要であることを警告する警告画像661,662が表示される。図14の例では、状態表示タブ620に関連付けて警告画像661が表示され、ボリューム設定タブ630に関連付けて警告画像662が表示されている。警告画像661は、状態表示タブ620の下層に対応付けられた簡易表示画面に、確認すべき制御データが表示されることを示す。また、警告画像662は、ボリューム設定タブ630の下層に対応付けられた簡易表示画面に、確認すべき制御データが表示されることを示す。これらの警告画像661,662により、管理者に対して制御データの確認が促される。
図14に示した簡易表示画面において、例えば、状態表示タブ620に対する選択操作が行われた場合には、次の図15に示すような簡易表示画面に遷移する。
図15は、警告画像が関連付けられたタブが選択されたときの簡易表示画面の表示例を示す図である。
状態表示タブ620に対する選択操作が行われると、図7に示した簡易表示画面に対して警告画像663,664が付加された状態となる。この簡易表示画面では、図15に示すように、タブ選択領域612において、RAIDグループタブ622に関連付けて警告画像663が表示され、ボリューム状態タブ623に関連付けて警告画像664が表示されている。
警告画像663は、RAIDグループタブ622が選択されたときに制御データ表示/設定領域613に表示される制御データが、改版処理後にサポートされなくなる処理機能に関連していることを示す。また、警告画像664は、ボリューム状態タブ623が選択されたときに制御データ表示/設定領域613に表示される制御データが、改版処理後にサポートされなくなる処理機能に関連していることを示す。
また、図示しないが、図14または図15の簡易表示画面において、ボリューム設定タブ630が選択された場合には、ボリューム設定タブ630の下層に対応付けられた簡易表示画面において、所定の制御データが表示される。このとき、管理者の操作入力により、表示された制御データの設定を変更することもできる。制御データの設定変更を要求する操作入力が行われた場合、Web閲覧処理部311は、CM110aのGUI処理部431に対して、変更された制御データおよびその項目を送信するとともに、設定の変更を要求する。GUI処理部431は、Web閲覧処理部311から受信した制御データと、その制御データの項目とを、読み出し/設定制御部412に通知する。読み出し/設定制御部412は、通知された制御データにより、制御データテーブル500内の制御データのうち、通知された項目に設定された制御データを更新する。
なお、GUI処理部431は、例えば、図14,図15のような警告画像が付加された簡易表示画面を、次のような手順で管理端末300に表示させる。GUI処理部431は、画面抽出部415が取得した画面識別情報451に対応する画面情報600が、タブ選択領域611,612におけるどのタブの下層に対応付けられているかを判定する。次に、GUI処理部431は、次に表示すべき簡易表示画面に対応する画面情報600を読み込み、判定したタブに関連付けて警告画像が表示されるように画面情報600を編集して、編集後の画面情報600を管理端末300のWeb閲覧処理部311に送信する。
また、上記の図14,図15の例では、タブに関連付けた警告画像を表示することで、確認の対象を管理者に通知したが、通知の方法はこのような方法に限定されない。例えば、確認の対象とするタブの文字情報について、強調表示する、表示色を変える、点滅させるなどの方法が採られてもよい。
管理者は、簡易表示画面における制御データの確認や、制御データの設定変更などを行った後、メンテナンスタブ650を選択して、図14に示した簡易表示画面を再度表示させる。このとき、確認済みボタン656に対するクリック操作が行われると、Web閲覧処理部311は、CM110aのGUI処理部431に対して、簡易表示画面を確認済みである旨を通知する。確認済みの通知を受けたGUI処理部431は、画面抽出部415に対して処理の完了を通知する。完了通知を受けた画面抽出部415は、制御データテーブル抽出部416の処理を開始させる。
制御データテーブル抽出部416は、機能判定部414により算出された機能差分値443に基づき、改版後にサポートされなくなる処理機能に関連する制御データが記録された制御データテーブル500を抽出する。
ここで、図16は、制御データテーブルに記録される情報を示す図である。
制御データテーブル500のそれぞれには、各種の制御データとともに、関連機能情報501が記録されている。関連機能情報501は、機能情報442と同じビット数を有するビット列であり、機能情報442と同様の割り当て順で、1つのビットに対して1つの処理機能が割り当てられている。そして、ビットの値が“1”である場合、そのビットに対応する処理機能に、制御データテーブル500が関連していることを示す。すなわち、関連機能情報501は、対応する制御データテーブル500に記録された少なくとも1つの制御データの項目が、どの処理機能に関連しているかを示す。換言すれば、関連機能情報501は、対応する制御データテーブル500に記録された制御データの設定が変更された場合に、影響を受ける可能性がある処理機能を識別する情報である。
制御データテーブル抽出部416は、制御データテーブル500をスキャンして関連機能情報501を順次読み出す。制御データテーブル抽出部416は、読み出した関連機能情報501のビットのうち、機能差分値443において値が“1”であるビットの値を抽出する。制御データテーブル抽出部416は、抽出した値が“1”である場合、関連機能情報501が記録された制御データテーブル500を識別する識別情報を取得する。以上の処理は、例えば、関連機能情報501と機能差分値443との間でビットごとの論理積をとり、値が“1”となるビットが存在した場合に、関連機能情報501が記録された制御データテーブル500の識別情報を取得することで実行可能である。
制御データテーブル抽出部416は、制御データテーブル500の識別情報を取得すると、GUI処理部431を通じて、管理端末300のWeb閲覧処理部311に対して詳細設定プログラム320の起動を要求する。要求を受けたWeb閲覧処理部311は、詳細設定プログラム320を起動させる。これにより、詳細設定処理部321が起動する。
また、制御データテーブル抽出部416は、取得した識別情報を読み出し/設定制御部412に対して通知し、詳細表示画面の表示処理を要求する。詳細表示画面の表示処理を要求された読み出し/設定制御部412は、通知された識別情報に対応する制御データテーブル500からすべての制御データを読み出す。読み出し/設定制御部412は、読み出した制御データとそれらの項目名とを詳細設定インタフェース部432に通知する。詳細設定インタフェース部432は、通知された制御データおよび項目名を管理端末300の詳細設定処理部321に送信し、送信した制御データを項目名とともに詳細表示画面上に表示するように要求する。
図17は、改版処理時における詳細表示画面の表示例を示す図である。
詳細設定処理部321は、モニタ304a上に詳細表示画面322を表示させ、詳細表示画面322内に、詳細設定インタフェース部432から受信した制御データおよびその項目名を一覧表示させる。図17に示すように、詳細表示画面322は、例えば、簡易表示画面312の前面に重ねて表示される。
詳細表示画面322では、例えば、表示された制御データが管理者の操作に応じて変更されることで、変更された制御データがCM110aの詳細設定インタフェース部432に送信される。詳細設定インタフェース部432は、受信した制御データを読み出し/設定制御部412に通知し、制御データテーブル500の更新を要求する。なお、詳細設定処理部321は、例えば、詳細表示画面322を表示した状態から別の設定専用画面を表示させ、表示させた設定専用画面を通じて、制御データテーブル500の設定変更を要求するようにしてもよい。
管理者は、詳細表示画面322を通じた制御データの閲覧や、制御データの設定変更などを行った後、例えば、詳細設定プログラム320の実行を終了させる。Web閲覧処理部311は、詳細設定プログラム320の実行終了を検知すると、その旨をCM110aのGUI処理部431に通知する。
通知を受けたGUI処理部431は、例えば、Web閲覧処理部311に対して所定の画面情報600を送信し、改版処理を続行するか否かを選択させる選択ボタンを表示させた簡易表示画面を表示させる。この簡易表示画面を通じて、改版処理を続行することが選択された場合には、GUI処理部431は、制御データテーブル抽出部416に対して、詳細表示画面の表示処理が終了したことを通知する。通知を受けた制御データテーブル抽出部416は、改版処理部413に対して改版処理を開始するように要求する。
次に、以上で説明した改版処理の手順について、フローチャートを用いて説明する。図18は、CMにおける改版処理手順を示すフローチャートである。
[ステップS11]CM110aのGUI処理部431は、図8に示した簡易表示画面を管理端末300に表示させた状態で、改版処理の開始要求を待機する。簡易表示画面上の改版開始ボタン654に対するクリック操作が行われると、管理端末300のWeb閲覧処理部311は、GUI処理部431に対して改版処理の開始を要求する。このとき、Web閲覧処理部311は、簡易表示画面上で選択された版数を示す識別情報を、GUI処理部431に送信する。
[ステップS12]GUI処理部431は、管理端末300から改版処理の開始要求を受けると、機能判定部414の処理を開始させる。機能判定部414は、管理端末300から送信された改版後の版数に対応する機能情報442と、改版前の版数に対応する機能情報442とを、ファームウェア版数テーブル440から読み出す。
[ステップS13]機能判定部414は、改版前の版数に対応する機能情報442と、改版後の版数に対応する機能情報442を反転した反転情報との間で、ビットごとの論理積をとり、その演算結果を機能差分値443として出力する。
[ステップS14]算出された機能差分値443の全ビットが“0”である場合、改版処理によりサポートされなくなる処理機能は存在しないと判定され、ステップS21の処理が実行される。一方、機能差分値443のビットのうち1つでも“1”のビットがある場合には、改版処理によりサポートされなくなる処理機能が存在すると判定され、ステップS15の処理が実行される。
[ステップS15]機能判定部414は、画面抽出部415の処理を開始させる。画面抽出部415は、画面テーブル450から関連機能情報452を順次読み出し、読み出した関連機能情報452と、ステップS13で算出された機能差分値443との間でビットごとの論理積をとる。
[ステップS16]画面抽出部415は、ステップS15での論理積演算の結果が“0”でない関連機能情報452を認識し、画面テーブル450から、認識した関連機能情報452に対応する画面識別情報451を取得する。ここで取得された画面識別情報451に対応する画面情報600は、機能差分値443により特定される処理機能に関連する制御データが表示される簡易表示画面に対応する情報となる。
画面抽出部415は、取得した画面識別情報451をGUI処理部431に通知する。GUI処理部431は、通知された画面識別情報451に対応する簡易表示画面の閲覧を促す警告画像などを、管理端末300に表示させる。
GUI処理部431は、例えば、図14に示したような簡易表示画面を最初に表示させる。この後、簡易表示画面上から、警告画像が指し示すタブの選択などが行われることで、GUI処理部431は、必要な画面情報600を管理端末300に出力して、制御データが表示された簡易表示画面を表示させる。また、簡易表示画面を通じて制御データの設定変更が要求されると、GUI処理部431は、読み出し/設定制御部412を通じて制御データテーブル500を更新する。
[ステップS17]管理者は、簡易表示画面を通じた制御データの確認を終了した後、例えば、図14に示した簡易表示画面から、改版処理を継続するか否かの選択操作を行う。改版処理を継続する場合には、確認済みボタン656に対するクリック操作が行われ、次にステップS18の処理が実行される。一方、改版処理を終了する場合には、キャンセルボタン657に対するクリック操作が行われる。この場合、GUI処理部431は、CM110aの改版処理を終了させる。
管理端末300のWeb閲覧処理部311は、管理者による操作入力に応じた情報を、CM110aのGUI処理部431に送信する。GUI処理部431は、改版処理の終了要求を受けた場合には、改版処理を終了する。一方、改版処理の継続が要求された場合には、ステップS18の処理が実行される。
なお、ステップS17では、管理者は、改版処理を継続する場合に、詳細設定プログラム320を起動するか、または、詳細設定プログラム320を起動せずに、実際の改版処理を実行させるかを、簡易表示画面から選択してもよい。詳細設定プログラム320の起動が要求された場合、ステップS18の処理が実行される。一方、実際の改版処理の実行が要求された場合、ステップS21の処理が実行される。
[ステップS18]改版処理の継続要求を受けたGUI処理部431は、画面抽出部415に対して処理の完了を通知する。完了通知を受けた画面抽出部415は、制御データテーブル抽出部416の処理を開始させる。
制御データテーブル抽出部416は、各制御データテーブル500に記録された関連機能情報501を順次読み出し、読み出した関連機能情報501と、ステップS13で算出された機能差分値443との間でビットごとの論理積をとる。
[ステップS19]制御データテーブル抽出部416は、ステップS18での論理積演算の結果が“0”でない制御データテーブル500を認識し、認識した制御データテーブル500の識別情報を取得する。制御データテーブル抽出部416は、GUI処理部431を通じて、管理端末300のWeb閲覧処理部311に対して詳細設定プログラム320の起動を要求する。また、制御データテーブル抽出部416は、取得した識別情報を読み出し/設定制御部412に対して通知し、詳細表示画面の表示処理を要求する。
詳細表示画面の表示処理を要求された読み出し/設定制御部412は、通知された識別情報に対応する制御データテーブル500からすべての制御データを読み出す。読み出し/設定制御部412は、読み出した制御データとそれらの項目名とを、詳細設定インタフェース部432を通じて管理端末300の詳細設定処理部321に送信し、送信した制御データを詳細表示画面上に表示するように要求する。
管理端末300では、図17に示したような、制御データと項目名とが一覧表示された詳細表示画面が表示され、管理者により表示内容が確認される。また、必要に応じて、管理者によって制御データの設定変更が行われる。
[ステップS20]管理者は、詳細表示画面を通じた制御データの確認を終了した後、詳細設定プログラム320の実行を終了させる。Web閲覧処理部311は、詳細設定プログラム320の実行終了を検知すると、その旨をCM110aのGUI処理部431に通知する。
通知を受けたGUI処理部431は、例えば、Web閲覧処理部311に対して所定の画面情報600を送信し、改版処理を続行するか否かを選択させる選択ボタンを表示した簡易表示画面を表示させる。この簡易表示画面を通じて、改版処理を続行することが選択された場合には、GUI処理部431は、制御データテーブル抽出部416に対して、詳細表示画面の表示処理が終了したことを通知する。通知を受けた制御データテーブル抽出部416は、改版処理部413に対して改版処理を開始するように要求する。この後、ステップS21の処理が実行される。一方、改版処理を終了することが選択された場合、GUI処理部431は、改版処理を終了する。
[ステップS21]改版処理部413は、起動設定情報460を書き替えた後、システムをリセットさせる。CM110aが再起動されると、起動制御プログラム420が実行され、起動設定情報460に基づき、旧版のRAIDファームウェア410bが実行される。
なお、上記の処理例では、ステップS14で機能差分値443が“0”でないと判定された場合、その次に画面抽出部415の処理を開始させたが、画面抽出部415の代わりに制御データテーブル抽出部416の処理を開始させてもよい。この場合、制御データテーブル抽出部416によりステップS18〜S20に対応する処理が実行され、ステップS20で管理者が改版処理の継続を要求した場合、画面抽出部415の処理が実行される。また、画面抽出部415によりステップS15〜S17に対応する処理が実行され、ステップS17で管理者が改版処理の継続を要求した場合、ステップS21の処理が実行される。
また、ステップS14で機能差分値443が“0”でないと判定されたとき、画面抽出部415と制御データテーブル抽出部416のどちらの処理を実行させるかを、管理者の操作入力により選択できるようにしてもよい。
以上説明したRAID装置100では、下方改版処理が要求された場合に、改版後にサポートされなくなる処理機能があるか否かが自動的に判定される。そして、改版後にサポートされなくなる処理機能がある場合には、下方改版処理が一旦停止され、その処理機能に関連する制御データを確認するように画面を通じて管理者に促す処理が実行される。
改版後にサポートされなくなる処理機能がある場合、その処理機能に固有な制御データが制御データテーブル500に残ることなどが原因となって、改版後のファームウェアを正常に実行できなくなる場合がある。上記のRAID装置100では、管理者に制御データの確認を促すことで、このような問題を未然に防ぐことができる。
また、RAID装置100では、改版後にサポートされなくなる処理機能に関連する可能性のある制御データが自動的に絞り込まれる。そして、管理者に対して、絞り込まれた制御データを表示する簡易表示画面に誘導する情報や、絞り込まれた制御データを一覧表示した詳細表示画面が提示される。従って、これらの制御データを管理者が特定する作業の負荷が軽減される。また、管理者のスキルに関係なく、必要な制御データを管理者が認識しやすくなる。さらに、絞り込まれた制御データの設定変更を行う画面に誘導する情報を、管理者に対して提示することもできるので、作業の負荷をより軽減できる。
また、改版後にサポートされなくなる処理機能に関連する制御データの特定処理では、各ビットに処理機能を対応付けた情報(機能情報442、機能差分値443、関連機能情報452,501)が利用される。このため、制御データ特定処理の効率が高められ、処理が高速化される。
例えば、機能判定部414では、改版前後の機能情報442同士の排他的論理和をとることで、改版後にサポートされなくなる処理機能を特定することができる。また、画面抽出部415や制御データテーブル抽出部416では、機能差分値443と、関連機能情報452,501との論理積をとることで、目的とする画面情報600や制御データテーブル500を特定できる。このように、それぞれビット列である機能情報442、機能差分値443および関連機能情報452,501を利用することで、論理演算により目的とする情報を特定できるようになり、処理手順が単純化される。
なお、本実施の形態では下方改版のみを実行するものとするが、例えば、下方改版だけでなく、版数の新しいRAIDファームウェアへの改版(上方改版と呼ぶ)も可能とされてもよい。この場合に、図18に示した処理が実行されると、下方改版だけでなく、上方改版の実行時でも、改版後にサポートされなくなる処理機能がある場合には、機能差分値443の該当ビットが“1”となり、ステップS15からの処理が実行される。
なお、版数の古いRAIDファームウェアがサポートする全ての処理機能が、版数の新しいRAIDファームウェアによってサポートされることが保証されている場合には、例えば、次のような処理が行われてもよい。図18のステップS11で改版処理の開始が要求されると、機能判定部414によって下方改版であることが判定された場合に、ステップS12の処理が実行される。機能判定部414は、管理端末300から通知された改版後のRAIDファームウェアの版数と、改版前のRAIDファームウェア410aの版数とを比較して、下方改版であるか否かを判定する。下方改版であった場合にはステップS12の処理が実行される。この場合、ステップS13では、改版前および改版後のそれぞれの版数に対応する機能情報442のビットごとの排他的論理和をとることで、機能差分値443が算出されてもよい。また、下方改版でない場合には、ステップS13,S14の処理がスキップされて、ステップS21の処理が実行される。
次に、RAIDファームウェアがサポートする処理機能、改版処理時に表示される簡易表示画面、および、改版処理時に抽出される制御データテーブルの具体例について説明する。ここでは、RAIDファームウェアの版数によってはサポートされていない場合がある処理機能として、RAIDレベル5による制御機能(以下、“RAIDレベル5機能”と呼ぶ)、暗号化機能および複製領域拡張機能を例示する。
なお、これらの処理機能の説明においては、CM110aに接続されて物理記憶領域を実現するストレージ装置であるHDD(HDD131a,131bなどに対応)を“HDD131”と表記する。そして、CM110aには、HDD131が複数台接続されているものとする。
<1>RAIDレベル5機能
RAIDレベル5機能は、RAID制御部411によって次のように実現される。RAID制御部411は、記録データを複数のブロックに分割し、各ブロックを複数のHDD131にそれぞれ分散して格納する。また、分散して格納したブロックに基づくパリティデータを、ブロックが格納されたHDD131とはさらに異なるHDD131に格納する。このとき、すべてのパリティデータの格納先としては、専用のHDD131が割り当てられない。すなわち、記録データを分割した各ブロックおよびパリティデータは、それぞれ異なる任意のHDDに格納され、元の記録データを単位としてパリティデータ自体も分散して格納される。
ここで、RAIDレベル5機能は、改版前のRAIDファームウェア410aはサポートしているが、改版後のRAIDファームウェア410bはサポートしていないものとする。この場合、CM110aに対して改版処理が要求されると、管理端末300のモニタ304aには、まず、図14と同様の簡易表示画面が表示される。
この場合、画面抽出部415の処理により、例えば、状態表示タブ620およびボリューム設定タブ630のそれぞれの下層に対応付けられた画面が抽出される。これにより、図14に示すように、状態表示タブ620およびボリューム設定タブ630に対して、それぞれ警告画像661,662が表示される。
ここで、管理者の操作により状態表示タブ620が選択されると、次の図19のような簡易表示画面が表示される。図19は、状態表示タブおよびRAIDグループタブが選択された場合の簡易表示画面の表示例を示す図である。
状態表示タブ620が選択されると、図19に示すように、タブ選択領域612において、警告画像665,666が、RAIDグループタブ622およびボリューム状態タブ623にそれぞれ関連付けて表示される。この場合、画面抽出部415によって抽出された画面情報600は、RAIDグループタブ622およびボリューム状態タブ623のそれぞれの下層に対応付けられた簡易表示画面を表示するものであったことになる。そして、管理者は、警告画像665,666により、RAIDグループタブ622およびボリューム状態タブ623をそれぞれ選択したときの簡易表示画面を確認するように促される。
RAIDグループタブ622が選択されると、制御データ表示/設定領域613には、“RAIDグループ一覧情報”が表示される。RAIDグループ一覧情報には、各RAIDグループの識別番号622a、名前622b、RAIDレベル622c、容量622dおよび用途622eの各項目に対応する制御データが表示される。これらのうち、RAIDレベル622cは、RAIDレベル5機能に関連する制御データの項目である。
従って、管理者は、警告画像665に従ってRAIDグループタブ622を選択することで、RAIDレベル622cを確認することができる。そして、管理者は、RAIDレベル622cに“RAIDレベル5”が設定されていた場合、例えば、警告画像662に従ってボリューム設定タブ630を選択することで、設定変更のための操作を行う。
一方、制御データテーブル抽出部416は、RAIDレベル5機能に関連する制御データテーブル500の1つとして、次の図20に示すRAIDグループ情報テーブルを抽出したものとする。
図20は、RAIDグループ情報テーブルに記録された情報の例を示す図である。
RAIDグループ情報テーブル510には、RAIDグループに関連する制御データが記録されている。このRAIDグループ情報テーブル510は、CM110aによって設定されたRAIDグループごとに用意される。RAIDグループ情報テーブル510には、例えば、図20に示すように、前述した関連機能情報501が記録されている他、RAIDグループ番号511、RAIDレベル512、ストライプサイズ513などの項目についての制御データが記録されている。なお、ストライプサイズ513は、データを分割したグループのサイズを示す項目である。
制御データテーブル抽出部416によりRAIDグループ情報テーブル510を識別する情報が抽出されると、管理端末300では、詳細表示画面において、関連機能情報501を除くRAIDグループ情報テーブル510内のすべての制御データが表示される。
また、図19のような簡易表示画面が表示される場合、GUI処理部431は、例えば、制御データとして、RAIDグループ情報テーブル510からRAIDグループ番号511およびRAIDレベル512の各項目に設定された情報を読み込む。そして、GUI処理部431は、読み込んだRAIDグループ番号511およびRAIDレベル512の各設定情報が、それぞれ識別番号622aおよびRAIDレベル622cの表示欄に表示されるように、画面情報600を編集して、Web閲覧処理部311に送信する。
ここで、例えば、RAIDグループ情報テーブル510のRAIDレベル512に“RAIDレベル5”が設定されたまま、RAIDレベル5機能をサポートしないRAIDファームウェアへの改版処理が行われた場合を考える。この場合、改版処理後にRAIDファームウェアが実行されたときに、RAIDレベル512に設定された“RAIDレベル5”が参照されると、この設定値を認識できないことから、処理に異常が発生する場合があり得る。このため、管理者は、RAIDレベル512の設定値を、改版後のRAIDファームウェアがサポートするRAIDレベルに変更する、あるいは、“RAIDレベル5”が設定されたRAIDグループを削除するなどの設定変更操作を行う。例えば、図19に示した簡易表示画面において、RAIDレベル622cに“RAIDレベル5”が設定されていた場合、管理者は、警告画像662に従ってボリューム設定タブ630を選択して、上記のような設定変更のための操作を行う。
<2>暗号化機能
暗号化機能は、ボリュームの記録データを暗号化する機能であり、本実施の形態では、ボリュームごとに記録データを暗号化するか否かを設定できるものとする。RAID制御部411は、ボリュームに対してデータを記録する際に、制御データテーブル500を参照し、記録先のボリュームについて暗号化機能が設定されていた場合に、データを暗号化して記録する。
図21は、改版後にサポートされない処理機能として暗号化機能が抽出された場合の簡易表示画面の表示例を示す図である。
機能判定部414により、改版後にサポートされない処理機能として暗号化機能が抽出された場合、管理端末300のモニタ304aには例えば、図21に示すような簡易表示画面が表示される。図21の簡易表示画面は、図14に示した簡易表示画面に、さらに警告画像667が付加された状態となっている。
警告画像661,662,667は、状態表示タブ620、ボリューム設定タブ630および共通設定タブ640にそれぞれ関連付けて表示されている。この場合、画面抽出部415によって抽出された画面情報600は、状態表示タブ620、ボリューム設定タブ630および共通設定タブ640のそれぞれの下層に対応付けられた簡易表示画面を表示するものであったことになる。そして、管理者は、警告画像661,662,667により、状態表示タブ620、ボリューム設定タブ630および共通設定タブ640をそれぞれ選択したときの簡易表示画面を確認するように促される。
図22は、状態表示タブおよびボリューム状態タブが選択された場合の簡易表示画面の表示例を示す図である。
図21に示した状態から、例えば、状態表示タブ620が選択されると、図22に示すように、タブ選択領域612には装置状態タブ621、RAIDグループタブ622、ボリューム状態タブ623およびコピー設定状態タブ624の各項目に対応する制御データが表示される。そして、ボリューム状態タブ623に関連付けて、警告画像668が表示される。この場合、画面抽出部415によって抽出された画面情報600は、ボリューム状態タブ623の下層に対応付けられた簡易表示画面を表示するものであったことになる。そして、管理者は、警告画像668により、ボリューム状態タブ623を選択したときの簡易表示画面を確認するように促される。
ボリューム状態タブ623が選択された初期状態では、制御データ表示/設定領域613には、図15に示すようなボリューム一覧が表示される。そして、ボリューム一覧の中の識別番号623aから1つが選択されると、制御データ表示/設定領域613には図22に示すようなボリューム詳細情報が表示される。ボリューム詳細情報には、ボリュームの識別番号623e、名前623f、タイプ623g、容量623h、ボリュームに対する暗号化設定623i、および、ボリュームに対して設定されたRAIDグループ623jの各項目に対応する制御データが表示される。これらのうち、暗号化設定623iに対応する制御データは、ボリュームの記録データを暗号化するか否かを示す情報であり、暗号化機能に関連する情報である。従って、管理者は、警告画像668に従ってボリューム状態タブ623を選択することで、暗号化設定623iを確認することができる。
また、図23は、共通設定タブが選択された場合の簡易表示画面の表示例を示す図である。
図21あるいは図22に示した状態から共通設定タブ640が選択されると、図23に示すように、タブ選択領域612には、ネットワーク管理タブ641および暗号化設定タブ642が表示される。また、暗号化設定タブ642に関連付けて、警告画像669が表示される。この場合、画面抽出部415によって抽出された画面情報600は、暗号化設定タブ642の下層に対応付けられた簡易表示画面を表示するものであったことになる。そして、管理者は、警告画像669により、暗号化設定タブ642を選択したときの簡易表示画面を確認するように促される。
暗号化設定タブ642が選択されると、制御データ表示/設定領域613には、図23に示すような選択領域642aが表示される。選択領域642aでは、CM110aが管理する記憶領域の全体について暗号化機能を有効にするか否かが、ラジオボタンにより選択される。以上の簡易表示画面によれば、管理者は、警告画像669に従って暗号化設定タブ642を選択することで、選択領域642aを表示させて、暗号化機能に対する設定操作を行うことが可能になる。
一方、制御データテーブル抽出部416は、暗号化機能に関連する制御データテーブル500の1つとして、次の図24に示すボリューム情報テーブルと、図25に示す暗号化情報テーブルとを抽出したものとする。
図24は、ボリューム情報テーブルに記録された情報の例を示す図である。
ボリューム情報テーブル520には、ボリュームの設定に関連する制御データが記録されている。このボリューム情報テーブル520は、CM110aによって設定されたボリュームごとに用意される。ボリューム情報テーブル520には、例えば、図24に示すように、前述した関連機能情報501が記録されている他、ボリューム番号521、ボリュームタイプ522および暗号化フラグ523などの項目についての制御データが記録されている。ボリューム番号521、ボリュームタイプ522および暗号化フラグ523にそれぞれ設定される制御データは、例えば、図22に示した簡易表示画面における識別番号623e、タイプ623gおよび暗号化設定623iの各項目に対して表示される情報である。
改版後のファームウェアが暗号化機能に対応していない場合、ボリュームの記録データが暗号化されたままになっていると、このボリュームのデータを、改版後のファームウェアの実行時に正常な状態で読み出すことができなくなる。このため、管理者は、例えば、ボリューム情報テーブル520内の暗号化フラグ523の値を暗号化無効を示すように設定変更し、対応するボリュームのデータを暗号化されていない状態に変化させる。
なお、図23に示した簡易表示画面の選択領域642aでは、例えば、暗号化機能を無効にするように選択されると、すべてのボリュームについてのボリューム情報テーブル520において、暗号化フラグ523が暗号化無効を示すように設定される。このとき、読み出し/設定制御部412は、GUI処理部431からの要求に応じて暗号化フラグ523の更新を行う。これとともに、読み出し/設定制御部412は、暗号化フラグ523が暗号化無効を示すように更新したボリューム情報テーブル520に対応するボリュームについて、記録データを復号して更新するようにRAID制御部411に要求する。
また、図23に示した簡易表示画面を表示する画面情報600が、画面抽出部415によって抽出された場合、GUI処理部431は、例えば、すべてのボリューム情報テーブル520から暗号化フラグ523の設定値を読み出す。そして、GUI処理部431は、読み出した暗号化フラグ523の設定値の中に1つでも暗号化有効を示す値があれば、簡易表示画面上の選択領域642aにおいて、暗号化機能が有効であることを示すように表示させる。
図25は、暗号化情報テーブルに記録された情報の例を示す図である。
暗号化情報テーブル530には、CM110aが管理する記憶領域全体についての暗号化機能に関する制御データが記録されている。暗号化情報テーブル530には、例えば、図25に示すように、関連機能情報501が記録されている他、ライセンス情報531、暗号化方式532、暗号鍵533などの項目についての制御データが記録されている。ライセンス情報531には、暗号化処理の際に使用する証明書を識別する情報が設定される。暗号化方式532には、暗号化処理の方式を示す情報が設定される。暗号鍵533には、暗号化処理の際に使用される鍵情報が設定される。
これらのライセンス情報531、暗号化方式532および暗号鍵533の各項目に設定された制御データは、図23に示した簡易表示画面において暗号化機能を無効にするように選択され、RAID制御部411が暗号化されたデータを復号する際に、RAID制御部411によって参照される。なお、データの復号が完了した後、ライセンス情報531、暗号化方式532および暗号鍵533の各項目に設定された制御データは、RAID制御部411によって削除されてもよい。ただし、データが復号され、RAIDファームウェアの改版処理が実行された後に、改版後のRAIDファームウェアが実行された際に、これらの制御データが参照されない場合には、これらの制御データは削除されずにそのまま残されてもよい。
管理端末300では、詳細表示画面において、関連機能情報501を除くボリューム情報テーブル520内および暗号化情報テーブル530内のすべての制御データが、それらの項目名とともに表示される。なお、前述のように、ボリューム情報テーブル520はボリュームごとに用意される。このため、制御データテーブル抽出部416によってボリューム情報テーブル520が抽出された場合には、全ボリュームについてのボリューム情報テーブル520の内容が、詳細表示画面上に一覧表示される。
<3>複製領域拡張機能
複製領域拡張機能は、ボリュームを所定の記憶領域に複製する際に、その複製先の記憶領域を動的に拡張することを可能にする処理機能である。ボリュームを複製先の拡張領域として使用する際には、例えば、図24に示したボリューム情報テーブル520のボリュームタイプ522において、ボリュームの用途を拡張領域として使用するように設定される。
従って、改版後にサポートされない処理機能として複製領域拡張機能が抽出された場合、制御データテーブル抽出部416は、複製領域拡張機能に関連する制御データテーブル500の1つとして、ボリューム情報テーブル520を抽出する。
また、図26は、改版後にサポートされない処理機能として複製領域拡張機能が抽出された場合の簡易表示画面の表示例を示す図である。
また、ボリューム情報テーブル520内のボリュームタイプ522に設定された制御データは、例えば、図15に示した簡易表示画面におけるタイプ623c、図19に示した簡易表示画面における用途622eなどの読み出し元になる情報である。従って、改版後にサポートされない処理機能として複製領域拡張機能が抽出された場合、最初の簡易表示画面においては、例えば、タブ選択領域611の状態表示タブ620に関連付けて警告画像661が表示される(図14参照)。また、ボリュームの用途はボリューム設定タブ630を選択することで設定変更されるので、タブ選択領域611のボリューム設定タブ630に関連付けて警告画像662が表示される(図14参照)。
また、この状態から状態表示タブ620が選択された場合、図26に示すように、タブ選択領域612においては、例えば、RAIDグループタブ622およびボリューム状態タブ623にそれぞれ関連付けて警告画像663,664が表示される。また、図示しないが、コピー設定状態タブ624が選択された場合、制御データ表示/設定領域613には、複製領域拡張機能を含む、ボリュームの複製に関する制御データが表示される。従って、タブ選択領域612においては、コピー設定状態タブ624に関連付けて警告画像670が表示される。
改版後のRAIDファームウェアが複製領域拡張機能をサポートしていない場合、管理者は、例えば、図26に示した簡易表示画面を閲覧して、各ボリュームに対して設定されたタイプ623cの値を確認する。タイプ623cに“Copy_ex”が設定されていた場合、対応するボリューム情報テーブル520内のボリュームタイプ522に、ボリュームの用途をボリューム複製先の拡張領域とするように設定されている。この場合、改版処理後にRAIDファームウェアが実行されたとき、ボリュームタイプ522の設定値が参照されると、この設定値を認識できないことから、処理に異常が発生する場合があり得る。
このため、管理者は、例えば、ボリューム設定タブ630の下層に対応付けられた、ボリューム設定のための簡易表示画面を閲覧する。そして、管理者は、ボリュームの用途を、ボリューム複製先の拡張領域以外の用途に変更する、あるいは、用途がボリューム複製先の拡張領域に設定されたボリュームを削除するなどの設定変更を行う。
ところで、上記で説明したように、簡易表示画面あるいは詳細表示画面が管理端末300に表示された状態で、管理者によって制御データの設定変更操作が行われると、CM110aでは、RAID制御部411において設定変更処理が実行される。設定変更処理の内容は変更された制御データによって異なり、短時間で終了する場合もあれば、比較的長時間を要する場合もある。また、変更された制御データによっては、設定変更処理を完了できない場合もあり、この場合には改版処理を続行できなくなる。
GUI処理部431は、次の図27に示すように、設定変更処理の状態をRAID制御部411から読み出し/設定制御部412を通じて受け付け、受け付けた情報に応じた画面を管理端末300に表示させ、管理者の作業を支援するようにしてもよい。
図27は、制御データの設定変更が要求された場合のCM内の処理手順の例を示すフローチャートである。なお、この図27では、例として、簡易表示画面を通じて設定変更が行われる場合について説明する。例えば、図18のステップS16において警告画像を含む簡易情報画面が表示された状態で、警告画像662が付されたボリューム設定タブ662(図14,図15などを参照)、または、警告画像667が付された共通設定タブ640(図21〜図23などを参照)に対する選択操作が行われたときに、図27の処理が開始される。
[ステップS31]GUI処理部431は、画面抽出部415によって抽出された1つ以上の画面情報600のうち、設定画面を表示するための画面情報600を1つ選択する。そして、選択した画面情報600に基づく設定画面を表示するように、管理端末300のWeb閲覧処理部311に要求する。Web閲覧処理部311は、簡易表示画面内に、要求された設定画面を表示させる。
[ステップS32]ステップS31で表示させた設定画面内の制御データについて、管理者の操作入力により設定変更が要求された場合、GUI処理部431は、変更された制御データをWeb閲覧処理部311から受信する。この場合、次にステップS34の処理が実行される。一方、制御データの設定変更操作が行われなかった場合には、ステップS33の処理が実行される。例えば、ステップS31で表示させた設定画面内の確認済みボタンがクリック操作された場合に、ステップS33の処理に進む。
[ステップS33]GUI処理部431は、画面抽出部415によって抽出された、設定画面を表示するための画面情報600のうち、確認済みでない設定画面に対応する画面情報600が他にあるか否かを判定する。確認済みでない設定画面に対応する画面情報600がある場合には、ステップS31に進み、GUI処理部431は、確認済みでない設定画面に対応する画面情報600を1つ選択して、選択した画面情報600に基づく設定画面の表示を管理端末300に要求する。一方、確認済みでない設定画面に対応する画面情報600がない場合には、簡易表示画面の表示処理が終了され、次に図18のステップS17の処理が実行される。
なお、ステップS31において、GUI処理部431は、画面情報600が設定画面を表示するための情報であるか否か、および、その設定画面がどのタブの下層に属するかを、例えば、画面情報600を識別する画面識別番号を基に判別する。ステップS31が最初に実行される際には、簡易情報画面上でクリック操作されたタブの下層に属する画面情報600が必ず選択される。
また、ステップS31が繰り返されるごとに画面情報600が1つ選択されるが、この選択処理では、あらかじめ決められた優先順位に従って画面情報600が順次選択されればよい。画面情報600の優先順位を示す情報は、例えば、画面テーブル450において各画面情報600の画面識別情報451に対応付けられて記憶され、画面抽出部415によってGUI処理部431に読み出されてもよい。あるいは、優先順位を示す情報は、メンテナンスプログラム430のデータの一部として用意されてもよい。
また、ステップS31が繰り返されるごとに、最初は、同じタブの下層に属する画面情報600が順次選択される。そして、同じタブ(例えば、ボリューム設定タブ662)の下層に属するすべての画面情報600がすべて選択された後、ステップS33で、他のタブ(例えば、共通設定タブ640)の下層に属する画面情報600があると判定された場合には、そのタブの下層に属する画面情報600がステップS31で順次選択される。
[ステップS34]GUI処理部431は、設定変更された制御データおよびその項目を、読み出し/設定制御部412を通じてRAID制御部411に通知する。そして、RAID制御部411に対して、制御データテーブル500におけるデータの更新と、変更された制御データに応じた設定変更処理の実行を要求する。
制御データを受け取ったRAID制御部411は、設定変更処理を開始する。この設定変更処理では、必要に応じてHDD131内のデータの移動や変換が行われる。一方、GUI処理部431は、Web閲覧処理部311に対して、設定変更処理を実行中であることを示す画面を表示するための画面情報600を送信して、その画面情報600に基づく画面の表示を要求する。Web閲覧処理部311は、受信した画面情報600に基づく画面を簡易表示画面上に表示させる。
[ステップS35]RAID制御部411は、要求された設定変更処理を正常に完了できなかった場合には、エラー通知を出力する。GUI処理部431は、RAID制御部411から読み出し/設定制御部412を通じてエラーが通知されたか否かを判定する。GUI処理部431に対してエラーが通知された場合、ステップS37の処理が実行される。一方、RAID制御部411からエラー通知が出力されない場合、ステップS36の処理が実行される。
[ステップS36]RAID制御部411は、要求された設定変更処理を正常に完了した場合には、設定変更処理の完了通知を出力する。GUI処理部431は、RAID制御部411から読み出し/設定制御部412を通じて設定変更処理の完了が通知されたか否かを判定する。GUI処理部431に対して設定変更処理の完了が通知された場合、ステップS33の処理が実行される。一方、RAID制御部411から完了通知が出力されない場合、ステップS35の処理が再度実行される。ステップS35,S36のループ処理は、一定時間ごとに繰り返される。
[ステップS37]GUI処理部431は、Web閲覧処理部311に対して、設定変更処理の実行が不可能であったことを示すエラー通知画面を表示するための画面情報600を送信して、エラー通知画面の表示を要求する。
また、ステップS35でRAID制御部411から通知されるエラー情報には、設定変更処理を完了させるために推奨される作業を示す情報が含まれていてもよい。この場合、GUI処理部431は、エラー通知画面上に、推奨作業を示す情報を表示させる。推奨作業を示す情報には、例えば、設定変更すべき制御データの項目を示す情報、その項目の設定変更画面を示唆する情報、増設すべき機器の数やその増設手順などが含まれてよい。
[ステップS38]エラー通知画面には、例えば、推奨された作業を実行するための実行ボタンや、改版処理を終了するための終了ボタンが表示される。ここで、管理者により実行ボタンに対するクリック操作が行われた場合には、そのことがWeb閲覧処理部311からGUI処理部431に通知され、次にステップS40の処理が実行される。一方、管理者により終了ボタンに対するクリック操作が行われた場合には、そのことがWeb閲覧処理部311からGUI処理部431に通知され、次にステップS39の処理が実行される。なお、例えば、推奨された作業が、CM110a自体を停止させる必要がある作業である場合には、終了ボタンがクリックされる。
[ステップS39]GUI処理部431は、改版処理を終了することを示す画面の表示をWeb閲覧処理部311に要求するとともに、CM110aにおける改版処理を終了させる。
なお、GUI処理部431は、例えば、ステップS35においてRAID制御部411からエラー通知を受けると、Web閲覧処理部311に対してエラー通知画面の表示を要求するとともに、CM110aにおける改版処理を自動的に終了させてもよい。あるいは、GUI処理部431は、Web閲覧処理部311に対してエラー通知画面の表示を要求した後、エラー通知画面に表示された確認ボタンへのクリック操作を受けたとき、Web閲覧処理部311からの操作検知通知に応じてCM110aにおける改版処理を終了させてもよい。
[ステップS40]管理者は、エラー通知画面において推奨された作業を行う。例えば、管理者は、簡易表示画面または詳細表示画面を表示させて、必要な制御データの設定変更操作をさらに行う。RAID制御部411は、設定変更操作に応じた設定変更処理を実行する。また、管理者は、必要に応じて機器の増設を行い、増設された機器をCM110aが利用可能にするための設定操作を行う。
管理者による作業が終了すると、例えば、管理端末300のモニタ304aに表示されたボタンへのクリック操作により、作業が正常に完了したか否かがGUI処理部431に対して通知される。
[ステップS41]GUI処理部431に対して、管理者による作業が正常に完了したことが通知された場合には、ステップS42の処理が実行される。一方、GUI処理部431に対して、管理者による作業が正常に完了しなかったことが通知された場合には、ステップS39の処理が実行される。
[ステップS42]GUI処理部431は、直近のステップS31で選択した画面情報600をWeb閲覧処理部311に送信し、送信した画面情報600に基づく設定画面の表示を再度要求する。この後、ステップS32の処理が実行され、表示させた設定画面内の制御データについて、管理者の操作入力により設定変更が要求された場合には、ステップS34に進んで、RAID制御部411によって再度設定変更処理が実行される。
以上の処理によれば、画面抽出部415によって抽出された画面情報600に基づく設定画面から、管理者が設定変更を行ったときに、設定変更処理を完了できなかった場合には、改版処理を終了させることができる。また、設定変更処理を完了できなかった場合に、その処理を完了させるための別の作業を示す情報を管理者に提示し、管理者の作業を支援することもできる。さらに、推奨された作業を完了した後、前回正常に実行できなかった設定変更処理を再度実行させることもできる。
ここで、設定変更処理の例としてRAIDレベルを変更する処理を挙げ、RAIDレベル変更処理の手順の例を、図18および図27の処理ステップに対応付けて説明する。
RAIDレベルを変更する場合には、変更の前後で、必要な物理記憶領域の容量や、HDDまたはSSDのドライブ数などが変化する場合がある。このため、物理記憶領域の空き容量や接続されたドライブ数などによっては、RAIDレベルを所望のレベルに変更できない場合がある。
例えば、RAIDレベルを“6”から“5”に変更する場合には、パリティの記憶領域が削減されるため、RAID制御部411は通常、設定変更処理を正常に完了することができる。しかしながら、例えば、RAIDレベルを“6”または“5”から“1”に変更する場合には、必要なドライブ数が増加するため、RAID制御部411は、接続されたドライブ数によっては設定変更処理を完了できない。
改版処理後にサポートされなくなるRAIDレベルがある場合、画面抽出部415は、RAIDレベルの設定データを表示するための画面情報600を抽出する(図18のステップS16)。このとき、抽出された画面情報600には、RAIDレベル設定画面を表示するための画面情報600が含まれる。また、例えば、複数のRAIDグループが設定されている場合には、RAIDレベル設定画面を表示するための画面情報600が、RAIDグループの数だけ抽出される。
GUI処理部431は、画面抽出部415によって抽出された、RAIDレベル設定画面を表示するための画面情報600のうち、1つのRAIDグループについてのRAIDレベル設定画面に対応する画面情報600を選択し、そのRAIDレベル設定画面を表示させる(ステップS31)。なお、ここでは、画面抽出部415によって抽出された、設定画面を表示するための画面情報600のうち、RAIDレベル設定画面を表示するための画面情報600の優先順位が最も高かったものとする。
表示されたRAIDレベル設定画面上に設定されたRAIDレベルが、改版処理後にもサポートされるレベルであった場合には、管理者は、設定変更操作を行わずに、RAIDレベル設定画面内の確認ボタンをクリック操作する(ステップS32)。
GUI処理部431は、確認が済んでいない他のRAIDグループが存在する場合には、他のRAIDグループについてのRAIDレベル設定画面を管理端末300に表示させる(ステップS33,S31)。なお、RAIDグループごとのRAIDレベル設定画面のような同じ種類の画面に対応する画面情報600には、例えば、表示させる優先順位として同じ値が付与されていればよい。この場合、ステップS31では、例えば、設定されたRAIDグループのグループ番号の小さい順に、画面情報600が選択されればよい。
ここで、表示されたRAIDレベル設定画面に設定されたRAIDレベルが、改版処理後にサポートされなくなるレベルであった場合、管理者は、RAIDレベルの設定値を変更し、設定変更を要求する操作を行う(ステップS32)。GUI処理部431は、設定変更処理の実行中であることを示す画面を管理端末300に表示させる。このとき、RAID制御部411は、変更されたRAIDレベルに応じて、データの複製や削除、ドライブ内のボリュームの配置変更などの必要な処理を実行する(ステップS34)。
ここで例えば、ドライブ数が足りないために設定変更処理が正常に完了できない場合には、RAID制御部411からGUI処理部431に対して、エラーが通知される。これとともに、設定変更処理を完了するための作業としてドライブの増設が推奨され、また、増設すべきドライブ数が通知される(ステップS35)。
GUI処理部431は、例えば、ドライブの増設を推奨する情報と、増設すべきドライブ数とを表示したエラー通知画面を、管理端末300に表示させる(ステップS37)。管理者は、例えば、表示された情報に従ってドライブの増設を行い、さらに増設したドライブをCM110aが利用可能にするための設定操作を行って、作業を完了したことを示す操作を行う(ステップS40,S41)。
この場合、管理端末300には、RAIDレベル設定画面が再度表示され(ステップS42)、管理者は、RAIDレベルを変更する操作を再度行う(ステップS32)。RAID制御部411は、RAIDレベルを変更する設定変更処理を正常に完了し(ステップS34)、処理の完了通知をGUI処理部431に出力する(ステップS36)。この後、GUI処理部431は、確認が済んでいない他のRAIDグループが存在する場合には、さらに別のRAIDグループについてのRAIDレベル設定画面を管理端末300に表示させる(ステップS33,S31)。
また、ステップS37において、エラー通知画面を閲覧した管理者は、ドライブの増設を行わない場合には、エラー通知画面上の終了ボタンをクリックすることで、改版処理を終了させることもできる(ステップS38,S39)。従って、必要な設定変更処理がRAID制御部411において正常に完了していない状態のまま、RAIDファームウェアの改版処理が続行されることがなくなる。
なお、上記では例としてRAIDレベル設定画面を用いた設定変更処理について説明したが、例えば、暗号化機能の設定画面や、複製領域拡張機能の設定画面を用いた設定変更処理も、図27の手順に従って実行可能である。
〔第3の実施の形態〕
上記の第2の実施の形態では、RAIDファームウェアの改版処理や、改版処理作業の支援処理が、RAID装置において実行されていた。しかしながら、これらの処理は、RAIDファームウェアが実行されるRAID装置の外部の装置において実行されてもよい。例えば、これらの処理が管理端末において実行されてもよい。
図28は、第3の実施の形態のシステム構成を示す図である。なお、図28では、図2に対応する構成要素には同じ符号を付して示している。
本実施の形態のストレージ制御システムの基本的なシステム構成は、図2に示した第2の実施の形態のシステム構成と同様である。図28において、RAID装置100aおよび管理端末300aは、図2に示したRAID装置100および管理端末300にそれぞれ対応する。RAID装置100aのハードウェア構成は、図2に示したRAID装置100と同様であり、RAID装置100aが備えるCM110c,110dは、RAID装置100が備えるCM110a,110bにそれぞれ対応する。また、管理端末300aのハードウェア構成も、図3に示した管理端末300のハードウェア構成と同様である。
ただし、本実施の形態では、CM110c,110dおよび管理端末300aにおいてプログラムに従って実行される処理が異なる。本実施の形態では、CM110c,110dで実行されるRAIDファームウェアの改版処理と、改版作業の支援処理とが、管理端末300aにおいて実行される。
次に、RAID装置100内aのCM110c,110dおよび管理端末300aが実行する処理について説明する。CM110c,110dはともに同様の処理を実行可能であるため、以下ではCM110cでの処理についてのみ説明する。
図29は、第3の実施の形態に係るCMおよび管理端末の機能を示すブロック図である。なお、図29では、図5,図6に対応する構成要素には同じ符号を付して示している。
CM110cでは、RAIDファームウェア410cに従い、記録領域をRAIDによって制御するRAID制御部411の処理が実行される。また、第2の実施の形態と同様に、CM110cが備えるフラッシュROM113には、RAID制御部411によって参照される制御データテーブル500と、起動時に利用される起動設定情報460とが保持されている。
一方、管理端末300aは、Web閲覧処理部311、詳細設定処理部321a、読み出し/設定制御部412、改版処理部413、GUI処理部431、機能判定部414、画面抽出部415および制御データテーブル抽出部416を備えている。また、管理端末300aが備える不揮発性記憶領域(例えば、HDD303)には、画面情報600、ファームウェア版数テーブル440および画面テーブル450が保持される。
Web閲覧処理部311の処理は、第2の実施の形態と同様に、Web閲覧プログラム310に従って実行される。ただし、Web閲覧処理部311は、GUI処理部431との間で、LANを介さずに情報を受け渡す。
詳細設定処理部321aの処理は、詳細設定プログラム320aに従って実行される。詳細設定処理部321aは、第2の実施の形態における詳細設定処理部321と同様の処理を実行する。ただし、詳細設定処理部321aは、読み出し/設定制御部412との間で、詳細設定インタフェース部432を介さずに情報を受け渡す。
読み出し/設定制御部412、改版処理部413、GUI処理部431、機能判定部414、画面抽出部415および制御データテーブル抽出部416の処理は、改版制御プログラム330に従って実行される。これらの処理ブロックは、それぞれ第2の実施の形態における対応する処理ブロックと同様の処理を実行する。ただし、改版処理部413は、LANを介して起動設定情報460を更新し、読み出し/設定制御部412は、LANを介して制御データテーブル500にアクセスする。また、GUI処理部431および読み出し/設定制御部412は、それぞれWeb閲覧処理部311および詳細設定処理部321aとの間で、LANを介さずに情報を受け渡す。
以上の第3の実施の形態では、管理端末300aの処理により、第2の実施の形態と同様のRAIDファームウェアの改版処理、および、改版作業の支援処理が実行される。従って、改版作業の効率が高められる。
なお、管理端末300aが有する読み出し/設定制御部412、改版処理部413、機能判定部414、画面抽出部415および制御データテーブル抽出部416のうち、少なくとも1つによって実行される処理は、CM110cにおいて実行されてもよい。また、上記各処理ブロックのうち少なくとも1つによる処理は、所定のプログラムが管理端末300aからCM110cに送信され、送信されたプログラムがCM110cにおいて実行されることで、CM110cにおいて実現されてもよい。
なお、上記各実施の形態に示した各装置が有する機能の少なくとも一部は、コンピュータによって実現することができる。その場合には、上記機能の処理内容を記述したプログラムが提供される。そして、そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリなどがある。
プログラムを流通させる場合には、例えば、そのプログラムが記録された光ディスクなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、そのプログラムを、サーバコンピュータからネットワークを介して他のコンピュータに転送することもできる。
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムまたはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、そのプログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムに従った処理を実行することもできる。
以上の各実施の形態に関し、さらに以下の付記を開示する。
(付記1) 第1のプログラムによって実現される処理機能のうち、前記第1のプログラムの代わりに第2のプログラムが実行された際に実現されなくなる差分処理機能を判別する処理機能判別手段と、
少なくとも前記第1のプログラムによって実現される複数の処理機能と、各処理機能に関連する1つまたは複数の制御情報とを対応付けた関係情報を記憶手段から読み出し、前記関係情報を用いて、前記差分処理機能に関連する制御情報を判別する制御情報判別手段と、
を有することを特徴とする情報処理装置。
(付記2) 前記関係情報は、1つ以上の制御情報を含む制御情報群ごとに前記記憶手段に記憶されて、各制御情報群に含まれる少なくとも1つの制御情報に関連する処理機能を識別する情報であり、
前記制御情報判別手段は、前記関係情報を用いて、前記差分処理機能に関連する制御情報を含む制御情報群を判別する、
ことを特徴とする付記1記載の情報処理装置。
(付記3) 前記関係情報は、1つ以上の制御情報を表示する制御情報表示画面ごとに前記記憶手段に記憶されて、前記制御情報表示画面に表示される少なくとも1つの制御情報に関連する処理機能を識別する情報であり、
前記制御情報判別手段は、前記関係情報を用いて、前記差分処理機能に関連する制御情報を表示する前記制御情報表示画面を判別する、
ことを特徴とする付記2記載の情報処理装置。
(付記4) 前記差分処理機能に関連する制御情報を表示する前記制御情報表示画面が前記制御情報判別手段により判別されると、判別された前記制御情報表示画面の閲覧を閲覧者に促す情報の表示を要求する表示制御手段をさらに有することを特徴とする付記3記載の情報処理装置。
(付記5) 複数の前記制御情報表示画面のうちの少なくとも1つは、表示した制御情報の設定変更を受け付けるための操作画面であることを特徴とする付記3または4記載の情報処理装置。
(付記6) 前記第1のプログラムおよび前記第2のプログラムは、ストレージ装置を制御するプログラムであり、
前記処理機能判別手段および前記制御情報判別手段は、前記ストレージ装置を制御するストレージ制御装置において実行するプログラムを前記第1のプログラムから前記第2のプログラムに変更するプログラム変更処理を開始する際に起動し、
複数の前記制御情報表示画面のうちの少なくとも1つは、表示した制御情報の設定変更を受け付けるための操作画面であり、
前記差分処理機能に関連する制御情報を表示する前記操作画面が前記制御情報判別手段により判別されると、判別された前記操作画面の閲覧を閲覧者に促す情報の表示を要求する表示制御手段と、
前記表示制御手段によって閲覧を促した前記操作画面の表示時に行われた操作入力に応じて設定が変更された前記制御情報を、前記ストレージ制御装置が備える設定制御手段に通知して、設定が変更された前記制御情報に応じた設定変更処理の実行を前記設定制御手段に要求する設定変更要求手段と、
をさらに有することを特徴とする付記3記載の情報処理装置。
(付記7) 前記表示制御手段は、前記設定変更要求手段が要求した前記設定変更処理の完了通知を前記設定制御手段から受けると、前記制御情報判別手段によって判別された他の前記操作画面の表示を要求することを特徴とする付記6記載の情報処理装置。
(付記8) 前記差分処理機能に関連する制御情報を含む制御情報群が前記制御情報判別手段により判別されると、判別された制御情報群を表示する一覧表示画面の表示を要求する表示制御手段をさらに有することを特徴とする付記2記載の情報処理装置。
(付記9) 前記処理機能判別手段は、前記第1のプログラムによって実現される処理機能を識別する第1の情報と、前記第2のプログラムによって実現される処理機能を識別する第2の情報とに基づいて、前記差分処理機能を判別することを特徴とする付記1〜8のいずれか1つに記載の情報処理装置。
(付記10) 前記第1の情報および前記第2の情報は、同じビット数を有するビット列を含み、それぞれのビットに対して処理機能が割り当てられ、
前記第1の情報の各ビットは、各ビットに割り当てられた処理機能が前記第1のプログラムによって実現されるか否かを示し、
前記第2の情報の各ビットは、各ビットに割り当てられた処理機能が前記第2のプログラムによって実現されるか否かを示す、
ことを特徴とする付記9記載の情報処理装置。
(付記11) 前記処理機能判別手段は、前記第1の情報のビット列と前記第2の情報のビット列との間でビットごとの論理演算を行い、その演算結果のビット列を基に前記差分処理機能を判別することを特徴とする付記10記載の情報処理装置。
(付記12) 前記関係情報は、1つ以上の制御情報を含む制御情報群ごとに前記記憶手段に記憶された、前記第1の情報および前記第2の情報と同じビット数を有するビット列を含み、それぞれのビットに対して前記第1の情報および前記第2の情報と同じ順で処理機能が割り当てられ、
前記関係情報の各ビットは、制御情報群に含まれる少なくとも1つの制御情報が、各ビットに割り当てられた処理機能に関連するか否かを示す、
ことを特徴とする付記10または11記載の情報処理装置。
(付記13) 前記制御情報判別手段は、前記第1の情報のビット列と前記第2の情報のビット列との間でのビットごとに論理演算された演算結果のビット列と、前記関係情報のビット列とを比較し、その比較結果を基に、前記関係情報に対応する制御情報群に含まれる少なくとも1つの制御情報が、前記差分処理機能に関連するか否かを判別することを特徴とする付記12記載の情報処理装置。
(付記14) コンピュータに、
第1のプログラムによって実現される処理機能のうち、前記第1のプログラムの代わりに第2のプログラムが実行された際に実現されなくなる差分処理機能を判別し、
少なくとも前記第1のプログラムによって実現される複数の処理機能と、各処理機能に関連する1つまたは複数の制御情報とを対応付けた関係情報を記憶手段から読み出し、前記関係情報を用いて、前記差分処理機能に関連する制御情報を判別する、
処理を実行させることを特徴とする情報処理プログラム。
(付記15) 情報処理装置が、
第1のプログラムによって実現される処理機能のうち、前記第1のプログラムの代わりに第2のプログラムが実行された際に実現されなくなる差分処理機能を判別し、
少なくとも前記第1のプログラムによって実現される複数の処理機能と、各処理機能に関連する1つまたは複数の制御情報とを対応付けた関係情報を記憶手段から読み出し、前記関係情報を用いて、前記差分処理機能に関連する制御情報を判別する、
ことを特徴とする情報処理方法。