(57)【要約】【課題】  ディスクアレイ装置において、ドライブのアイドルシークによるホスト装置の処理の中断・遅延を防ぎ、全てのドライブでアイドルシークが定期的に近く実行されるようにする。【解決手段】  ディスクドライブ２３，２３、…のそれぞれのアイドルシーク開始予定時刻が近づいたことを予測し、同一パリティグループ内で、２つ以上のドライブ２３，２３、…が同時にアイドルシークを実行しないように制御する。同一パリティグループ内で、アイドルシーク開始予定時刻が近づいたドライブのうち１つを、事前にアイドルシーク実行中とみなして、事前にデータアクセスを禁止する。アイドルシーク実行中とみなされたドライブ２３に対するデータリード要求を受けた場合、同一パリティグループに属する他の全てのドライブ２３、２３、…からデータをリードして要求されたデータを複製する。【選択図】図１
2005157622.tif 000002
【特許請求の範囲】
【請求項１】
上位装置からデータのリード要求に応じて要求されたデータを前記上位装置に提供するディスクアレイ装置において、
少なくとも一つのパリティグループに属する複数のディスクドライブであって、各ディスクドライブは前回のアイドルシーク終了時から第１の閾値時間以上の時間が経過するとデータアクセスがない限りアイドルシークを開始するようになっている前記複数のディスクドライブと、
前記ディスクドライブと通信するためのディスクインタフェースと、
前記上位装置と通信するための上位装置インタフェースと、
前記ディスクインタフェース及び前記上位装置インタフェースと接続され、前記ディスクアレイ装置を制御する制御装置と
を備え、前記制御装置が、
前記複数のディスクドライブのそれぞれについてON又はOFFのステータス情報を有し、各ディスクドライブの前記ステータス情報をONとOFFに交互に切り替えるものであって、前記各ディスクドライブの前記ステータス情報をONからOFFに切り替えた後前記第１の閾値時間より短い第２の閾値時間以上の時間が経過した場合、前記各ディスクドライブと同一のパリティグループに属する他の全てのディスクドライブの前記ステータス情報がOFFである場合に、前記各ディスクドライブの前記ステータス情報をOFFからONに切り替え、その後前記各ディスクドライブのアイドルシークが終了してから前記各ディスクドライブの前記ステータス情報をONからOFFに切り替える時間監視部と、
前記各ディスクドライブの前記ステータス情報がONからOFFに切り替わった後前記第２の閾値時間以上の時間が経過した場合、前記各ディスクドライブと同一のパリティグループに属する他のいずれかのディスクドライブの前記ステータス情報がONである場合には、前記各ディスクドライブに対してダミーアクセスを行うことで前記各ディスクドライブがアイドルシークを開始することを阻止する多重アイドルシーク阻止部と、
前記上位装置からの前記リード要求に応答して前記ディスクドライブから要求されたデータを読み出す場合において、前記要求されたデータが格納されている対象ディスクドライブの前記ステータス情報がOFFである場合には、前記対象ディスクドライブから前記要求されたデータをリードして前記上位装置に送り、前記対象ディスクドライブの前記ステータス情報がONである場合には、前記対象ディスクドライブに対してデータアクセスを行なわず、前記対象ディスクドライブと同一のパリティグループに属する他の全てのディスクドライブからデータをリードして前記要求されたデータを複製し、複製された前記要求されたデータを前記上位装置に送るデータアクセス制御部と
を備えるディスクアレイ装置。
【請求項２】
前記ステータス情報制御部は、前記複数のディスクドライブのそれぞれについて、前記ステータス情報と、前記ステータス情報をONからOFFに前回切り替えた時からの経過時間とを、それぞれのディスクドライブの識別情報及びそれが属するパリティグループの識別情報と関連づけて記憶しているドライブ管理テーブルを有し、前記ドライブ管理テーブルを参照することにより、前記各ディスクドライブの前記ステータス情報をOFFからONに切り替えるか否かを判断するディスクアレイ装置。
【請求項３】
少なくとも一つのパリティグループに属する複数のディスクドライブを備え、各ディスクドライブは所定の時間的スケジュールに従って、データアクセスがない限り、アイドルシークを開始するようになっているディスクアレイ装置において、
同一のパリティグループ内では、多くても１つのディスクドライブのみがアイドルシークを実行し、同時に２つ以上のディスクドライブがアイドルシークを実行しないよう、前記複数のディスクドライブを制御する多重アイドルシーク阻止部と、
アイドルシークを実行中のディスクドライブに対するデータリード要求を受けた場合、前記アイドルシークを実行中のディスクドライブと同一のパリティグループに属する他の全てのディスクドライブからデータをリードして要求されたデータを複製するデータリード制御手段と
を備えるディスクアレイ装置。
【請求項４】
請求項３記載のディスクアレイ装置において、
前記所定の時間的スケジュールに従ってアイドルシークを開始すると予測されるディスクドライブを事前に検出するアイドルシーク開始予測部を更に備え、
前記多重アイドルシーク阻止部は、前記アイドルシーク開始予測部によって前記アイドルシークを開始すると予測されるディスクドライブが検出された場合において、前記検出されたディスクドライブと同一パリティグループ内の他のドライブがアイドルシークを実行中である場合には、前記検出されたディスクドライブに対してダミーアクセスを行なうことにより前記検出されたディスクドライブがアイドルシークを開始しないようにするディスクアレイ装置。
【請求項５】
請求項３記載のディスクアレイ装置において、
前記所定の時間的スケジュールに従ってアイドルシークを開始すると予測されるディスクドライブを事前に検出するアイドルシーク開始予測部を更に備え、
前記データリード制御手段は、前記アイドルシーク開始予測部によって前記アイドルシークを開始すると予測されるディスクドライブが検出された場合において、前記検出されたディスクドライブと同一パリティグループ内の他のいずれのディスクドライブもアイドルシークを実行中でない場合には、前記検出されたディスクドライブがアイドルシークを実行中であるとみなし、その後前記検出されたディスクドライブがアイドルシークを終了するまでは、前記検出されたディスクドライブに対するデータリード要求を受けた場合、前記検出されたディスクドライブと同一のパリティグループに属する他の全てのディスクドライブ内のデータから要求されたデータを複製するディスクアレイ装置。
【請求項６】
少なくとも一つのパリティグループに属する複数のディスクドライブを備えたディスクアレイ装置において、
同一のパリティグループ内で、所定の時間的スケジュールに従って、データアクセスのない多くても１つのディスクドライブがアイドルシークを実行するよう、前記複数のディスクドライブを制御するアイドルシーク制御部と、
アイドルシークを実行中のディスクドライブに対するデータリード要求を受けた場合、前記アイドルシークを実行中のディスクドライブと同一のパリティグループに属する他の全てのディスクドライブからデータをリードして要求されたデータを複製するデータリード制御手段と
を備えるディスクアレイ装置。
【請求項７】
請求項６記載のディスクアレイ装置において、
前記アイドルシーク制御部は、同一のパリティグループ内で、前回のアイドルシークの終了から所定時間以上の時間が経過した多くても１つのディスクドライブが、データアクセスがない限り、アイドルシークを実行するように、前記ディスクドライブを制御するディスクアレイ装置。
【請求項８】
時間を計測し、計測した時間に基づき所定の時間的スケジュールに従って、データアクセスがない限り、アイドルシークを開始するようになっているディスクドライブにおいて、
外部装置に対して、アイドルシークを実行しているか否かのステータス情報を通知するステータス情報通知部と、
前記外部装置に対して、前記計測した時間を通知する時間通知部と
を備えたディスクドライブ。
【請求項９】
請求項８記載のディスクドライブにおいて、
前記外部装置から命令を受けて、所定の時間的スケジュールに拘らず強制的に、アイドルシークを開始する又は開始しないようにするアイドルシーク外部制御部を更に備えたディスクドライブ。
【請求項１０】
上位装置からデータのリード要求に応じて要求されたデータを前記上位装置に提供するディスクアレイ装置であって、
少なくとも一つのパリティグループに属する複数のディスクドライブであって、各ディスクドライブは前回のアイドルシーク終了時から第１の閾値時間以上の時間が経過するとデータアクセスがない限りアイドルシークを開始するようになっている前記複数のディスクドライブと、
前記ディスクドライブと通信するためのディスクインタフェースと、
前記上位装置と通信するための上位装置インタフェースと、
前記ディスクインタフェース及び前記上位装置インタフェースと接続され、前記ディスクアレイ装置を制御する制御装置と
を備えたディスクアレイ装置における、前記複数のディスクドライブのアイドルシークを制御する方法において、
前記複数のディスクドライブのそれぞれについてON又はOFFのステータス情報を記憶するステップと、
各ディスクドライブの前記ステータス情報がONからOFFに切り替わった後前記第１の閾値時間より短い第２の閾値時間以上の時間が経過した場合、前記各ディスクドライブと同一のパリティグループに属する他の全てのディスクドライブの前記ステータス情報がOFFである場合に、前記各ディスクドライブの前記ステータス情報をOFFからONに切り替えるステップと、
前記各ディスクドライブの前記ステータス情報がOFFからONに切り替わった後、前記各ディスクドライブのアイドルシークが終了してから前記各ディスクドライブの前記ステータス情報をONからOFFに切り替えるステップと、
前記各ディスクドライブの前記ステータス情報がONからOFFに切り替わった後前記第２の閾値時間以上の時間が経過した場合、前記各ディスクドライブと同一のパリティグループに属する他のいずれかのディスクドライブの前記ステータス情報がONである場合には、前記各ディスクドライブに対してダミーアクセスを行うことで前記各ディスクドライブがアイドルシークを開始することを阻止するステップと、
前記上位装置からの前記リード要求に応答して前記ディスクドライブから要求されたデータを読み出す場合において、前記要求されたデータが格納されている対象ディスクドライブの前記ステータス情報がOFFである場合には、前記対象ディスクドライブから前記要求されたデータをリードして前記上位装置に送るステップと、
前記上位装置からの前記リード要求に応答して前記ディスクドライブから要求されたデータを読み出す場合において、前記対象ディスクドライブの前記ステータス情報がONである場合には、前記対象ディスクドライブに対してデータアクセスを行なわず、前記対象ディスクドライブと同一のパリティグループに属する他の全てのディスクドライブからデータをリードして前記要求されたデータを複製し、複製された前記要求されたデータを前記上位装置に送るステップと、
を有するディスクアレイ装置におけるアイドルシークの制御方法。
【請求項１１】
少なくとも一つのパリティグループに属する複数のディスクドライブを備え、各ディスクドライブは所定の時間的スケジュールに従って、データアクセスがない限り、アイドルシークを開始するようになっているディスクアレイ装置における、前記複数のディスクドライブのアイドルシークを制御する方法において、
同一のパリティグループ内では、多くても１つのディスクドライブのみがアイドルシークを実行し、同時に２つ以上のディスクドライブがアイドルシークを実行しないよう、前記複数のディスクドライブを制御するステップと、
アイドルシークを実行中のディスクドライブに対するデータリード要求を受けた場合、前記アイドルシークを実行中のディスクドライブと同一のパリティグループに属する他の全てのディスクドライブからデータをリードして要求されたデータを複製するステップと
を有するディスクアレイ装置におけるアイドルシーク制御方法。
【請求項１２】
少なくとも一つのパリティグループに属する複数のディスクドライブを備えたディスクアレイ装置における、前記複数のディスクドライブのアイドルシークを制御する方法において、
同一のパリティグループ内で、所定の時間的スケジュールに従って、データアクセスのない多くても１つのディスクドライブがアイドルシークを実行するよう、前記複数のディスクドライブを制御するステップと、
アイドルシークを実行中のディスクドライブに対するデータリード要求を受けた場合、前記アイドルシークを実行中のディスクドライブと同一のパリティグループに属する他の全てのディスクドライブからデータをリードして要求されたデータを複製するステップと
を有するディスクアレイ装置におけるアイドルシーク制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ディスクアレイ装置内の複数のディスクドライブのアイドルシークを制御するための技術に関する。
【背景技術】
【０００２】
ディスクドライブは一般に、微少な塵が特定トラック上に堆積しないようにするために、定期的にヘッドを移動させて微小な塵を吹き飛ばすアイドルシークという機能を備えている。ディスクドライブは通常、前回のアイドルシークの終了時から一定時間以上の時間が経過すると、アイドルシークの開始を試み、その時データアクセスが行われていなければ、アイドルシークを開始する。しかし、その時ちょうどデータアクセスが行われていれば、そのデータアクセスが終わった後に、再度アイドルシークの開始が試みられる。
【０００３】
特許文献１には、節電処理状態にあるときには、アイドルシーク要求があってもアイドルシークを実行しないことにより、ＣＰＵのオーバーヘッドを減らすとともに、ディスクドライブの寿命をできるだけ長くするという技術について開示されている。
【０００４】
【特許文献１】特開平７−１２１３０６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし、ディスクアレイ装置において、ディスクドライブへのデータアクセスが頻繁に行なわれていると、ディスクドライブがアイドルシークを試みた時はいつもデータアクセスが行われているという状態が続き、アイドルシークが長い間実行されない場合がある。また、ディスクドライブのアイドルシーク実行中にそのディスクドライブに対するリード要求を上位装置から受信した場合、アイドルシークが終わるまでそのディスクドライブにアクセスできないため上位装置の処理が中断又は遅延するという問題もある。これらの問題は特に大容量ディスクドライブ及び高負荷環境の場合に顕著である。
【０００６】
よって本発明の目的は、ディスクドライブのアイドルシークによって上位装置の処理が遅れることを阻止することにある。
【０００７】
本発明の別の目的は、ディスクドライブのアイドルシークが満遍なく出来る限り定期的に近く実行されるようにすることである。
【課題を解決するための手段】
【０００８】
本発明の一つの観点に従う、上位装置からデータのリード要求に応じて要求されたデータを前記上位装置に提供するディスクアレイ装置は、少なくとも一つのパリティグループに属する複数のディスクドライブであって、各ディスクドライブは前回のアイドルシーク終了時から第１の閾値時間以上の時間が経過するとデータアクセスがない限りアイドルシークを開始するようになっている前記複数のディスクドライブと、前記ディスクドライブと通信するためのディスクインタフェースと、前記上位装置と通信するための上位装置インタフェースと、前記ディスクインタフェース及び前記上位装置インタフェースと接続され、前記ディスクアレイ装置を制御する制御装置とを備える。そして、前記制御装置は、
(1)  前記複数のディスクドライブのそれぞれについてON又はOFFのステータス情報を有し、各ディスクドライブの前記ステータス情報をONとOFFに交互に切り替えるものであって、前記各ディスクドライブの前記ステータス情報をONからOFFに切り替えた後前記第１の閾値時間より短い第２の閾値時間以上の時間が経過した場合、前記各ディスクドライブと同一のパリティグループに属する他の全てのディスクドライブの前記ステータス情報がOFFである場合に、前記各ディスクドライブの前記ステータス情報をOFFからONに切り替え、その後前記各ディスクドライブのアイドルシークが終了してから前記各ディスクドライブの前記ステータス情報をONからOFFに切り替える時間監視部と、
(2)  前記各ディスクドライブの前記ステータス情報がONからOFFに切り替わった後前記第２の閾値時間以上の時間が経過した場合、前記各ディスクドライブと同一のパリティグループに属する他のいずれかのディスクドライブの前記ステータス情報がONである場合には、前記各ディスクドライブに対してダミーアクセスを行うことで前記各ディスクドライブがアイドルシークを開始することを阻止する多重アイドルシーク阻止部と、
(3)  前記上位装置からの前記リード要求に応答して前記ディスクドライブから要求されたデータを読み出す場合において、前記要求されたデータが格納されている対象ディスクドライブの前記ステータス情報がOFFである場合には、前記対象ディスクドライブから前記要求されたデータをリードして前記上位装置に送り、、前記対象ディスクドライブの前記ステータス情報がONである場合には、前記対象ディスクドライブに対してデータアクセスを行なわず、前記対象ディスクドライブと同一のパリティグループに属する他の全てのディスクドライブからデータをリードして前記要求されたデータを複製し、複製された前記要求されたデータを前記上位装置に送るデータアクセス制御部と
を備える。
【０００９】
一つの実施形態においては、前記ステータス情報制御部は、前記複数のディスクドライブのそれぞれについて、前記ステータス情報と、前記ステータス情報をONからOFFに前回切り替えた時からの経過時間とを、それぞれのディスクドライブの識別情報及びそれが属するパリティグループの識別情報と関連づけて記憶しているドライブ管理テーブルを有し、前記ドライブ管理テーブルを参照することにより、前記各ディスクドライブの前記ステータス情報をOFFからONに切り替えるか否かを判断する。
【００１０】
本発明の別の観点に従う、少なくとも一つのパリティグループに属する複数のディスクドライブを備え、各ディスクドライブは所定の時間的スケジュールに従って、データアクセスがない限り、アイドルシークを開始するようになっているディスクアレイ装置は、同一のパリティグループ内では、多くても１つのディスクドライブのみがアイドルシークを実行し、同時に２つ以上のディスクドライブがアイドルシークを実行しないよう、前記複数のディスクドライブを制御する多重アイドルシーク阻止部と、アイドルシークを実行中のディスクドライブに対するデータリード要求を受けた場合、前記アイドルシークを実行中のディスクドライブと同一のパリティグループに属する他の全てのディスクドライブからデータをリードして要求されたデータを複製するデータリード制御手段とを備える。
【００１１】
一つの実施形態においては、前記所定の時間的スケジュールに従ってアイドルシークを開始すると予測されるディスクドライブを事前に検出するアイドルシーク開始予測部が更に備えられる。そして、前記多重アイドルシーク阻止部は、前記アイドルシーク開始予測部によって前記アイドルシークを開始すると予測されるディスクドライブが検出された場合において、前記検出されたディスクドライブと同一パリティグループ内の他のドライブがアイドルシークを実行中である場合には、前記検出されたディスクドライブに対してダミーアクセスを行なうことにより前記検出されたディスクドライブがアイドルシークを開始しないようにする。
【００１２】
一つの実施形態においては、前記データリード制御手段は、前記アイドルシーク開始予測部によって前記アイドルシークを開始すると予測されるディスクドライブが検出された場合において、前記検出されたディスクドライブと同一パリティグループ内の他のいずれのディスクドライブもアイドルシークを実行中でない場合には、前記検出されたディスクドライブがアイドルシークを実行中であるとみなし、その後前記検出されたディスクドライブがアイドルシークを終了するまでは、前記検出されたディスクドライブに対するデータリード要求を受けた場合、前記検出されたディスクドライブと同一のパリティグループに属する他の全てのディスクドライブ内のデータから要求されたデータを複製する。
【００１３】
本発明のまた別の観点に従う、少なくとも一つのパリティグループに属する複数のディスクドライブを備えたディスクアレイ装置は、同一のパリティグループ内で、所定の時間的スケジュールに従って、データアクセスのない多くても１つのディスクドライブがアイドルシークを実行するよう、前記複数のディスクドライブを制御するアイドルシーク制御部と、アイドルシークを実行中のディスクドライブに対するデータリード要求を受けた場合、前記アイドルシークを実行中のディスクドライブと同一のパリティグループに属する他の全てのディスクドライブからデータをリードして要求されたデータを複製するデータリード制御手段とを備える。
【００１４】
一つの実施形態においては、前記アイドルシーク制御部は、同一のパリティグループ内で、前回のアイドルシークの終了から所定時間以上の時間が経過した多くても１つのディスクドライブが、データアクセスがない限り、アイドルシークを実行するように、前記ディスクドライブを制御する。
【００１５】
本発明の更に別の観点に従う、時間を計測し、計測した時間に基づき所定の時間的スケジュールに従って、データアクセスがない限り、アイドルシークを開始するようになっているディスクドライブは、外部装置に対して、アイドルシークを実行しているか否かのステータス情報を通知するステータス情報通知部と、前記外部装置に対して、前記計測した時間を通知する時間通知部とを備える。
【００１６】
一つの実施形態では、前記外部装置から命令を受けて、所定の時間的スケジュールに拘らず強制的に、アイドルシークを開始する又は開始しないようにするアイドルシーク外部制御部が更に備えられる。
【００１７】
本発明の更にまた別の観点に従う、ディスクアレイ装置におけるアイドルシークを制御する方法は、上位装置からデータのリード要求に応じて要求されたデータを前記上位装置に提供するディスクアレイ装置であって、少なくとも一つのパリティグループに属する複数のディスクドライブであって、各ディスクドライブは前回のアイドルシーク終了時から第１の閾値時間以上の時間が経過するとデータアクセスがない限りアイドルシークを開始するようになっている前記複数のディスクドライブと、前記ディスクドライブと通信するためのディスクインタフェースと、前記上位装置と通信するための上位装置インタフェースと、前記ディスクインタフェース及び前記上位装置インタフェースと接続され、前記ディスクアレイ装置を制御する制御装置とを備えたディスクアレイ装置に適用される。この制御方法は、
(1)  前記複数のディスクドライブのそれぞれについてON又はOFFのステータス情報を記憶するステップと、
(2)  各ディスクドライブの前記ステータス情報がONからOFFに切り替わった後前記第１の閾値時間より短い第２の閾値時間以上の時間が経過した場合、前記各ディスクドライブと同一のパリティグループに属する他の全てのディスクドライブの前記ステータス情報がOFFである場合に、前記各ディスクドライブの前記ステータス情報をOFFからONに切り替えるステップと、
(3)  前記各ディスクドライブの前記ステータス情報がOFFからONに切り替わった後、前記各ディスクドライブのアイドルシークが終了してから前記各ディスクドライブの前記ステータス情報をONからOFFに切り替えるステップと、
(4)  前記各ディスクドライブの前記ステータス情報がONからOFFに切り替わった後前記第２の閾値時間以上の時間が経過した場合、前記各ディスクドライブと同一のパリティグループに属する他のいずれかのディスクドライブの前記ステータス情報がONである場合には、前記各ディスクドライブに対してダミーアクセスを行うことで前記各ディスクドライブがアイドルシークを開始することを阻止するステップと、
(5)  前記上位装置からの前記リード要求に応答して前記ディスクドライブから要求されたデータを読み出す場合において、前記要求されたデータが格納されている対象ディスクドライブの前記ステータス情報がOFFである場合には、前記対象ディスクドライブから前記要求されたデータをリードして前記上位装置に送るステップと、
(6)  前記上位装置からの前記リード要求に応答して前記ディスクドライブから要求されたデータを読み出す場合において、前記対象ディスクドライブの前記ステータス情報がONである場合には、前記対象ディスクドライブに対してデータアクセスを行なわず、前記対象ディスクドライブと同一のパリティグループに属する他の全てのディスクドライブからデータをリードして前記要求されたデータを複製し、複製された前記要求されたデータを前記上位装置に送るステップと
を有する。
【００１８】
本発明のまた更に別の観点に従う、ディスクアレイ装置におけるアイドルシークを制御する方法は、少なくとも一つのパリティグループに属する複数のディスクドライブを備え、各ディスクドライブは所定の時間的スケジュールに従って、データアクセスがない限り、アイドルシークを開始するようになっているディスクアレイ装置に適用される。この制御方法は、同一のパリティグループ内では、多くても１つのディスクドライブのみがアイドルシークを実行し、同時に２つ以上のディスクドライブがアイドルシークを実行しないよう、前記複数のディスクドライブを制御するステップと、アイドルシークを実行中のディスクドライブに対するデータリード要求を受けた場合、前記アイドルシークを実行中のディスクドライブと同一のパリティグループに属する他の全てのディスクドライブからデータをリードして要求されたデータを複製するステップとを有する。
【００１９】
本発明のまた更に別の観点に従う、少なくとも一つのパリティグループに属する複数のディスクドライブを備えたディスクアレイ装置における、前記複数のディスクドライブのアイドルシークを制御する方法は、同一のパリティグループ内で、所定の時間的スケジュールに従って、データアクセスのない多くても１つのディスクドライブがアイドルシークを実行するよう、前記複数のディスクドライブを制御するステップと、アイドルシークを実行中のディスクドライブに対するデータリード要求を受けた場合、前記アイドルシークを実行中のディスクドライブと同一のパリティグループに属する他の全てのディスクドライブからデータをリードして要求されたデータを複製するステップとを有する。
【発明の効果】
【００２０】
本発明によれば、同一パリティグループ内では多くても１つのディスクドライブだけがアイドルシークを実行して、他のディスクドライブが同時にアイドルシークを実行しないようにし、そして、アイドルシーク中のディスクドライブに対してデータアクセス要求があった場合、同一のパリティグループに属する他のディスクドライブからリードしたデータにより要求されたデータを複製するので、ディスクドライブのアイドルシークによって上位装置の処理が遅れることを阻止することができる。
【００２１】
また、所定の時間的スケジュールに従ってアイドルシークが開始されるディスクドライブを事前に把握して、同一パリティグループ内の他のいずれのディスクドライブもアイドルシーク実行中でない限り、その検出されたディスクドライブを事前にアイドルシークを開始したものとみなして、その検出されたディスクドライブへのデータアクセスを停止し、同一のパリティグループに属する他のディスクドライブからリードしたデータからその検出されたディスクドライブのデータを複製するようにした場合には、ディスクドライブのアイドルシークが出来る限り定期的に近く実行されるようになる。
【発明を実施するための最良の形態】
【００２２】
以下、本発明によるディスクアレイ装置の実施形態について説明する。
【００２３】
図１は、本発明の一実施形態に係るディスクアレイ装置の概略構成図である。
【００２４】
ディスクアレイ装置１は、ホストインターフェース（以下、ホストＩ／Ｆという）３を介して１又は複数のホスト装置５に接続されている。ディスクアレイ装置１とホスト装置５とは、例えば、ＳＣＳＩ（Small Computer System Interface）、ファイバチャネルなどのインターフェースを介して接続可能である。
【００２５】
ディスクアレイ装置１は、キャッシュメモリ９と、データ制御メモリ１１と、１又は複数のＣＰＵ７と、ドライブインターフェース（以下、ドライブＩ／Ｆという）２１と、ドライブＩ／Ｆ２１に接続された複数のディスクドライブ（以下、単にドライブという）２３、２３、・・・を備える。
【００２６】
ホストＩ／Ｆ３は、主に、ホスト装置５との通信、例えば、ホスト装置５に対するデータアクセス要求等のコマンド及びそれに対する応答並びにリード・ライト対象のデータの受信と送信などを行なう。ドライブＩ／Ｆ２１は、ドライブ２３、２３、・・・との通信、例えば、ドライブ２３、２３、・・・に対するデータアクセス等のコマンド及びリード・ライト対象のデータの受信と送信などを行なう。
【００２７】
ＣＰＵ７は、ホスト装置５からのデータアクセス要求等のコマンドの解釈及び処理、並びに、このディスクアレイ装置１の全体の制御を行なうものである。ＣＰＵ７は、また、本発明に従ったドライブ２３、２３、・・・のアイドルシークの制御も行なう。
【００２８】
キャッシュメモリ９は、ホスト装置５から受信されたデータ及びドライブ２３、２３、・・・から読み込まれたデータが、一時的に格納される。例えば、このディスクアレイ装置１がホスト装置５から、あるドライブ２３内のデータのリード要求を受信すると、キャッシュメモリ９に該当データがあるかどうかがチェックされ、キャッシュメモリ９に該当データが存在しない場合、そのドライブ２３からそのデータがキャッシュメモリ９に読み込まれて、キャッシュメモリ９からホスト装置５へ送られる。
【００２９】
データ制御メモリ１１は、ＣＰＵ７により実行される各種プログラム及びＣＰＵ１１により参照及び更新される管理用又は制御用の各種テーブルが格納される。そのうち、特に本発明に従うアイドルシークの制御のためのプログラム及びテーブルとして、ＲＡＩＤ制御プログラム１３、コマンド発行制御プログラム１５と、時間監視プログラム１７と、ドライブ管理テーブル１９とがある。ＲＡＩＤ制御プログラム１３、コマンド発行制御プログラム１５、時間監視プログラム１７の機能と動作については後に詳細に説明する。
【００３０】
複数のドライブ２３、２３、・・・の各々は、時間を計測し、計測した時間に基づいて、所定の時間的スケジュールに従って、データアクセスがなされていない限り、自主的にアイドルシークを開始するようになっている。より具体的には、各ドライブ２３は、そのドライブに対する前回のアイドルシーク終了時間からの経過時間を自主的に計測しており、その経過時間が所定の閾値時間以上になると、自主的にアイドルシークの開始を試み、その時点でデータアクセスがなされていなければ、アイドルシークを開始する。一方、アイドルシークの開始を試みた時点でデータアクセスがなされていれば、各ドライブ２３は、短いインターバル後のアイドルシークの開始を再度試み、その時点でデータアクセスが行われていなければ、アイドルシークを開始する。ところで、アイドルシークにはシークのやり方が異なる複数の種類があり、それぞれの種類のアイドルシークはそれぞれ固有の時間的スケジュールに従って、上記のように行われるようになっている。それら複数種類のアイドルシークのそれぞれに関して、後に詳述する本発明の原理に従う制御が並行的に行われ得る。
【００３１】
各ドライブ２３は、通常、それぞれが自主的に行っている上述したアイドルシークの時間的スケジュールの進捗状況（例えば、アイドルシーク終了時からの経過時間など）とアイドルシークを実際に実行しているか否かというステータスを、外部装置へ通知するためのインタフェースをもたない。従って、CPU１１は、後に説明するように、各ドライブ２３のアイドルシークの時間的スケジュールの進捗状況（例えば、アイドルシーク終了時からの経過時間など）とアイドルシークを実際に実行しているか否かというステータスとを、外部から推測して（換言すれば、各ドライブ２３が行っているアイドルシークのスケジューリングのための時間計測をシミュレートして）、その推測つまりシミュレートの結果に基づいて、各ドライブ２３を制御するようになっている。
【００３２】
また、複数のドライブ２３、２３、・・・は、所定数のドライブ毎にＲＡＩＤの原理に従がうパリティグループを構成する。図２は、一例として３Ｄ＋１Ｐ形式のパリティグループにおけるデータの格納方法を示す。図２Ａに示すように、４つのディスクドライブ毎に３Ｄ＋１Ｐ形式のパリティグループＰＧが構成される。図２Ｂに示すように、同じパリティグループに属する４つのドライブ２３、２３、・・・の記憶領域は、４つのドライブ２３、２３、・・・の全てにまたがる「データストライプ」と呼ばれる多数の小領域に区分される。一つのデータストライプは、４つのドライブ２３、２３、・・・にそれぞれ含まれる４つの小領域（以下、「データブロック」という）から構成される。１つのデータストライプを構成する４つのデータブロックのうち、３つのデータブロックにはホスト装置５によるアクセス対象である対象データが格納され、もう１つのデータブロックには、その対象データから作られたパリティデータが格納される。例えば、図２Ｂ中の一番上に示されたデータストライプでは、Ｂ１、Ｂ２、Ｂ３が対象データであり、Ｐ（１〜３）がＢ１、Ｂ２、Ｂ３から作成されたパリティデータである。この３つの対象データと１つのパリティデータとは、いずれのデータも他の３つのデータから複製することができるという関係をもつ。従って、同じパリティグループにおいては、４つのドライブ２３、２３、・・・内の各ドライブ２３のデータは、他の３つのドライブ２３、２３、・・・のデータから複製することができる。ところで、上述した４つのドライブから構成される形式のパリティグループは単なる例示にすぎず、別の個数のドライブから構成される他の形式のパリティグループも採用し得る。いずれの形式であっても、同一パリティグループ内では、いずれのドライブデータも他の全てのドライブのデータから複製できることが、パリティグループがもつ利点の一つである。この利点は、以下に説明するように、本発明の原理に従うアイドルシークの制御に利用される。
【００３３】
図３に、ドライブ管理テーブル１９の構成例を示す。ドライブ管理テーブル１９には、このディスクアレイ装置１が有する全てのドライブ２３，２３、…のそれぞれについて、そのドライブが属するパリティグループを識別するための識別情報、例えばパリティグループ番号と、そのドライブを識別するための識別情報、例えばドライブ番号と、ステータス情報がONからOFFに前回切り替わった時刻からの経過時間と、ステータス情報が記憶されている。ここで、ステータス情報は、ONとOFFのいずれかの値をとる。ステータス情報のONは、対応するドライブ２３でアイドルシークが実行中であるとCPU１１がみなしている(推測している）こと、または、対応するドライブ２３がアイドルシークを実行することをCPU１１が許可していることを意味する。逆に、ステータス情報のOFFは、対応するドライブ２３でアイドルシークが実行されていないとCPU１１がみなしている（推測している）こと、または、対応するドライブ２３がアイドルシークを実行することをCPU１１が禁止していることを意味する。ドライブ管理テーブル１９は、主に、後述する時間監視プログラム１７によって更新され、参照される。後述するように、時間監視プログラム１７によって、経過時間が計測され、その経過時間に基づくタイミングでステータス情報をONからOFF及びその逆へ切り替える操作が行われ、そして、ＲＡＩＤ制御プログラム１３及びコマンド発行制御プログラム１５によって、ドライブ２３、２３、・・・のステータス情報に基づいて、ドライブ２３へのデータアクセスが制御される。これにより、ドライブ２３、２３、・・・が自主的に制御しているアイドルシークを開始するスケジュールが適切に調整される。
【００３４】
以下、ＲＡＩＤ制御プログラム１３、コマンド発行制御プログラム１５及び、時間監視プログラム１７を実行することでＣＰＵ１１が行なう制御動作について詳細に説明する。
【００３５】
図４は、ＲＡＩＤ制御プログラム１３、コマンド発行制御プログラム１５及び時間監視プログラム１７の相互関係を示す。
【００３６】
ＲＡＩＤ制御プログラム１３は、ホスト装置５からデータアクセス（データリード及びデータライト）を要求するホストコマンド３１を受け、これを解釈し、どのディスクのどの記憶領域のデータをリード又はライトするかという内部コマンド３３をコマンド発行制御プログラム１５に送る。コマンド発行制御プログラム１５は、内部コマンド３３に応じて、ドライブ２３にデータをリード又はライトするためのドライブコマンド３５を送る。アクセス対象のドライブ２３は、ドライブコマンド３５に応じた動作を行ない、その結果としてドライブコマンド３５に対するドライブ応答３７をコマンド発行プログラム１５に返す。特に、ドライブコマンド３５がデータリードを要求した場合、それに対するドライブ応答３７にはリードされたデータ（リードデータ）が含まれる。
【００３７】
コマンド発行制御プログラム１５は、内部コマンド３３に対する内部応答３９をＲＡＩＤ制御プログラム１３に返す。特に、内部コマンド３３がデータリードを要求した場合、それに対する内部応答３９には、上記リードデータが含まれる。この場合、図示省略されているが、リードデータは、コマンド発行制御プログラム１５によって、一旦キャッシュメモリ９に書き込まれ、そして、ＲＡＩＤ制御プログラム１３によってキャッシュメモリ９が読み出されることになる。ＲＡＩＤ制御プログラム１３は、ホストコマンド３１に対するホスト応答４１をホスト装置５へ返す。特に、ホストコマンド３１がデータリードを要求した場合、これに対するホスト応答４１には、上記リードされたデータが含まれる。
【００３８】
以上は、ＲＡＩＤ制御プログラム１３とコマンド発行制御プログラム１５の基本的動作である。この基本的動作に加えてドライブ２３、２３、２３、・・・のアイドルシークを制御するために以下のような動作が行なわれる。
【００３９】
時間監視プログラム１７は、常時全てのドライブ２３、２３、２３、・・・のそれぞれのステータス情報をONからOFFに前回切り替えた時刻からの経過時間を計測し、その経過時間４３をドライブ管理テーブル１９に記録している。この経過時間計測は、例えばそれぞれのドライブ２３、２３、・・・が電源を投入されて動作を開始する時点と同期して開始され、それにより、それぞれのドライブ２３、２３、・・・の内部で計測される前回のアイドルシーク終了時からの経過時間と実質的に一致した経過時間を計測することができるようになっている。
【００４０】
ＲＡＩＤ制御プログラム１３は、ホスト装置５からデータアクセス要求３１を受けたとき、それがデータの「リード」の要求である場合、そのリード対象のデータ（以下、対象データという）を持つドライブ（以下、対象ドライブという）２３のステータスをチェックするためのステータスチェック指令４５を時間監視プログラム１７に送る。時間監視プログラム１７はステータスチェック指令４５に応答して、ドライブ管理テーブル１９から対象ドライブ２３のステータス情報４９を読み、読んだステータス情報４７をコマンド発行制御プログラム１５に渡す。コマンド発行制御プログラム１５は、ＲＡＩＤ制御プログラム１３から内部コマンド（この場合は、対象ドライブ２３に対するデータリード要求）３３を受けると共に、時間監視プログラム１７から対象ドライブ２３のステータス情報４７を受ける。
【００４１】
そして、コマンド発行制御プログラム１５は、対象ドライブ２３のステータス情報がOFFならば（要するに、対象ドライブ２３がアイドルシーク実行中でなければ）、その対象ドライブ２３内から対象データをリードし、それを上述したように内部応答３９として、キャッシュメモリ９を通じてＲＡＩＤ制御プログラム１３へ送る。一方、対象のドライブ２３のステータスがONであるならば（要するに、対象ドライブ２３がアイドルシーク実行中であれば）、コマンド発行制御プログラム１５は、対象ドライブ２３と同じパリティグループ内の他の３つのドライブ２３、２３、・・・内の対象データのデータブロックと同じデータストライプに属する３つのデータブロックから３つのデータをリードし、それら３つのデータから対象データを複製し、そして、複製された対象データを内部応答３９として、キャッシュメモリ９を通じてＲＡＩＤ制御プログラム１３へ送る。ＲＡＩＤ制御プログラム１３は、コマンド発行制御プログラム１５からキャッシュメモリ９を通じて受けた対象データを、ホスト応答４１として、ホスト装置５へ送る。従って、ホスト装置５は、対象ドライブ２３がアイドルシーク実行中であっても、アイドルシーク終了まで待つことなく、対象データを得ることができる。
【００４２】
また、時間監視プログラム１７は、ドライブ管理テーブル１９上の全てのドライブ２３、２３、・・・の前述した経過時間５１を監視することにより、ドライブ２３、２３、・・・内で自主的に制御されている時間的スケジュールに従うアイドルシークの開始予定時が近づいた推定されるドライブを、実際のアイドルシーク開始時より若干時間だけ早期に検出する。この検出方法をより具体的に説明すると次のとおりである。すなわち、既に説明したように、各ドライブ２３内の時間的スケジュールによれば、前回のアイドルシーク終了時から所定の閾値時間（以下、基準閾値時間という）以上の時間が経過すると、その時にデータアクセスが行われていない限り、アイドルシークが開始される。そこで、時間監視プログラム１７は、ドライブ管理テーブル１９上の各ドライブ２３の経過時間が、各ドライブ２３の上記基準閾値時間より所定時間だけ短く設定された第２の閾値時間（以下、事前閾値時間という）以上になったかどうかをチェックし、そうなったドライブ２３を、アイドルシークの開始予定時が近づいたドライブとして検出するのである。
【００４３】
そのようなドライブが検出された場合、時間監視プログラム１７は、その検出されたドライブと同じパリティグループ内の他のドライブについて、ドライブ管理テーブル１９上のステータス情報５２を参照して、それがONであるか（要するに、他のドライブがアイドルシーク実行中か）否かをチェックする。その結果、同一パリティグループ内の他のドライブにステータスがONであるドライブが無い（つまり、他のいずれのドライブも、アイドルシーク実行中でない）場合、時間監視プログラム１７は、検出されたドライブのステータス情報をOFFからONに変更する（つまり、アイドルシークが実際に開始されるより前に、アイドルシーク実行中とみなす）（５３）。その結果、上述したコマンド発行制御プログラム１５によるデータアクセス制御によって、アイドルシーク実行中とみなされたその検出されたドライブへのデータアクセスは回避されるので、その検出されたドライブが自主的にアイドルシークを開始することが保証される。なお、時間監視プログラム１７は、検出されたドライブのステータス情報をOFFからONに変更した後、その検出されたドライブがアイドルシークを実際に開始してそれが終了したと推定される時刻になると（例えば、計測している経過時間が、上述した基準閾値時間に所定のアイドルシーク所要時間を加えた値に達したとき）、検出されたドライブのステータス情報を再びOFFに戻す（５３）。
【００４４】
一方、検出されたドライブと同一パリティグループ内の他のいずれかのドライブのステータス情報がONである（要するに、他のいずれのドライブがアイドルシーク実行中である）場合は、時間監視プログラム１７は、検出されたドライブの識別情報つまりドライブ番号５５をコマンド発行制御プログラム１５に送る。コマンド発行制御プログラム１５は、ドライブ番号５５により特定されたドライブ（検出されたドライブ）に所定のコマンド（例えばダミーのアクセスを行なわせるためのダミーアクセスコマンド）５７を送って、その検出されたドライブが自主的にアイドルシークを開始することを阻止する。その結果同一パリティグループ内で２以上のドライブが重複してアイドルシークを実行すること(以下、多重アイドルシークという）が生じないようになる。
【００４５】
以上の制御により、１つのパリティグループ内では最大１つのドライブ２３のみがアイドルシークを行なえるようになる。そして、ある一つのドライブ２３のステータス情報がON（アイドルシーク実行中）である間は、上述したように同一パリティグループの他のドライブ２３、２３、…からデータを作成して処理を中断することなくリード処理を完了することにより、ドライブ２３がアイドルシーク中であることに起因する処理の遅延を防止することができる。
【００４６】
また、同一パリティグループ内にステータス情報がONである他のドライブがない場合に、アイドルシーク開始予定時が近づいたドライブ２３のステータス情報がONに変更され、前述したようにステータス情報がONであるドライブ２３に対するデータリード要求が来た場合には、同一パリティグループ内の他のドライブ２３、２３、・・・から対象データが複製され、当該ドライブ２３（アイドルシーク開始予定時が近づいているドライブ）へのデータアクセスは阻止されるため、当該ドライブ２３は、データアクセスに邪魔されずに、スケジュール通りにアイドルシークを開始することが可能になる。結果として、全てのドライブ２３、２３、・・・がほぼ満遍なく且つある程度定期的に近い間隔でアイドルシークを行なうことができる。
【００４７】
次に、上述した制御をフローチャートを参照して説明する。
【００４８】
ます、図５を用いてホスト装置５からのデータリード要求を受信した場合の処理の流れについて説明する。
【００４９】
データリード要求の処理において、対象データがキャッシュメモリ９の中に記憶されている場合、キャッシュメモリ９から対象データを取得してホストに送信することができるので、ドライブ２３へのデータアクセスを行なう必要はない。図５に示す処理は、キャッシュメモリ９内に対象データが存在せず、よってドライブ２３にアクセスする必要がある場合における処理である。
【００５０】
ＲＡＩＤ制御プログラム１３は、ホスト装置５からデータアクセス要求３１を受信する（Ｓ１）と、当該データアクセス要求３１を解析し、アクセスするドライブ（以下、対象ドライブという）を特定する（Ｓ２）。ＲＡＩＤ制御プログラム１３は、時間監視プログラム１７に対象ドライブのステータス情報のチェックを指令する。時間監視プログラム１７は、ドライブ管理テーブル１９の対象ドライブのステータス情報を読み（Ｓ３）、そのステータスをコマンド発行制御プログラム１５に通知する。コマンド発行制御プログラム１５は、ＲＡＩＤ制御プログラム１３から図３に示した内部コマンド（この場合は、データリード要求）３３を受けると共に、時間監視プログラム１７から対象ドライブのステータス情報を受け、ステータス情報がONかOFFかチェックする（Ｓ４）。コマンド発行制御プログラム１５は、対象ドライブのステータス情報がONであるならば、同一パリティグループ内の他のドライブから対象データと同一データストライプに属するデータを読み、それらのデータに基づいて対象データを複製し、それをＲＡＩＤ制御プログラム１３に返す（Ｓ５）。対象ドライブのステータス情報がOFFであるならば、コマンド発行制御プログラム１５は、対象ドライブから対象データを読み込み、それをＲＡＩＤ制御プログラム１５に返す（Ｓ６）。対象データを受けたら、ＲＡＩＤ制御プログラム１３は対象データをホスト装置５に送る（Ｓ７）。
【００５１】
ところで、ホスト装置５からデータライト要求を受けた場合には、ライト対象のデータを一旦、キャッシュメモリ９に書き込み、その時点でホスト装置５へのライト完了の応答を返し、その後に、都合のよい時期を選んでにて、ライト対象のデータをキャッシュメモリ９からドライブ２３、２３、・・・へ書き込むことができる。そのため、アイドルシーク中にドライブへデータが書き込めなくても格別問題がないため、図５に示したような、アイドルシークの制御を行なわなくてよい。
【００５２】
次に、図６を用いて多重アイドルシークを阻止する制御の流れを説明する。
【００５３】
時間監視プログラム１７は、各ドライブ２３が実行予定時刻（前回のアイドルシーク終了時から上述した基準閾値時間が経過した時）経過後にアイドルシーク開始を繰り返し試すインターバルよりも短いインターバルで、図６に示す処理を周期的に繰り返し実行する。要するに、図６に示す処理は実質的に常時繰り返し実行される。
【００５４】
図６の処理を開始すると、時間監視プログラム１７は、ドライブ２３、２３、２３、・・・のステータス情報がONからOFFに切り替わった時刻からの経過時間を参照し、その経過時間が前述した事前閾値時間以上なったかどうかをチェックすることで、アイドルシークの開始予定時間が近づいたドライブがあるかどうかチェックする（Ｓ２１）。そのようなドライブが検出された場合、時間監視プログラム１７は、検出されたドライブと同一のパリティグループの中にステータス情報がONであるドライブ２３があるかどうかを、ドライブ管理テーブル１９を参照してチェックする（Ｓ２２）。その結果、同一パリティグループ内にステータス情報がONであるドライブが存在する場合、コマンド発行制御プログラム１５が、検出されたドライブ２３に対してダミーアクセスを行なう（Ｓ２３）。ダミーアクセスを行なうことにより、同一パリティグループ内の多重アイドルシークが防止される。一方、ステップＳ２２の結果、同一パリティグループ内にステータス情報がONであるドライブが全く無い場合、検出されたドライブ２３のステータス情報をOFFからONに変更する（Ｓ２４）。図６には示されてないが、時間監視プログラム１７は、検出されたドライブ２３のステータス情報をOFFからONに変更した時点から、検出されたドライブ２３にてアイドルシークが開始されるまでの差分時間と、アイドルシーク実行に要する時間とを足した時間（又はそれ以上の時間）だけの時間が経過すると、そのステータス情報をONからOFFに戻す。
【００５５】
上述したアイドルシークの制御は、パリティグループごとに並行して行われる。
【００５６】
図６の制御は、上述したように短いインターバルで周期的に繰り返し実行される。従って、ステップＳ２３の処理（ダミーアクセス）によりアイドルシークの開始が待たされたドライブについては、所定のインターバル後に図６の制御が再度実行されたとき、同一パリティグループ内でステータス情報がONであるドライブが存在しなければ、そのステータス情報がONに変更され、結果として、アイドルシークの開始が許可される。上述した事前閾値時間に比較して、アイドルシークの実行所要時間は十分短いので、アイドルシーク開始を待たされる時間は短くてすみ、よって、確実にパリティグループ内のドライブの全てに或る程度の時間間隔でアイドルシークを行わせることができる。
【００５７】
なお、同一パリティグループ内で２以上のドライブの経過時間が事前閾値時間を越えた場合には、例えばドライブ番号などにより優先順位に従うなどの方法で、どのドライブから先にアイドルシークの開始を許可するかを制御することができる。
【００５８】
以上、本発明の実施形態を説明したが、これは本発明の説明のための例示であって、この実施形態のみに本発明の範囲を限定する趣旨ではない。従って、本発明は、その要旨を逸脱することなく、上述した実施形態とは異なる様々な態様で実施することが可能である。
【００５９】
例えば、上述した実施形態では、ドライブ２３，２３、…の内部の自主的なアイドルシークのスケジュールの進捗やアイドルシークのステータスをCPU１１が知ることができず、CPU１１はそうした情報を推測している。しかし、ドライブ２３，２３、…がそうした内部の情報、例えば、アイドルシークを実行しているか否かのステータス情報や前回のアイドルシーク終了時から計測した経過時間など、を外部装置に通知するインタフェースを有していれば、CPU１１は、そのインタフェースを通じてドライブ２３，２３、…からそれらの情報を取得してドライブ管理テーブル１９に記述することにより、上述した制御を一層正確に行うことが可能である。また、ドライブ２３，２３、…が、上記インタフェースを通じてCPU１１から命令を受けて、内部で自主的に制御している時間的スケジュールに拘らず強制的に、アイドルシークを開始する又は開始しないようにする機能を備えるようすることもできる。
【図面の簡単な説明】
【００６０】
【図１】本発明の一実施形態にかかるディスクアレイ装置の概略構成を示すブロック図。
【図２】パリティグループを説明するブロック図。
【図３】ドライブ管理テーブルの構成例を示す図。
【図４】ＲＡＩＤ制御プログラム、コマンド発行制御プログラム及び時間監視プログラムの処理の相関を説明するブロック図
【図５】ディスクからデータをリードするための処理のフローチャート。
【図６】多重アイドルシークを阻止するための処理のフローチャート。
【符号の説明】
【００６１】
１：ディスクアレイ装置
３：ホストＩ／Ｆ
５：ホスト装置
７：CPU
９：キャッシュメモリ
１１：データ制御メモリ
１３：ＲＡＩＤ制御プログラム
１５：コマンド発行制御プログラム
１７：時間監視プログラム
１９：ドライブ管理テーブル
２１：ドライブＩ／Ｆ
２３：ドライブ
３１：データアクセス要求のホストコマンド
３３：データアクセス要求の内部コマンド
３５：データアクセス要求のドライブコマンド
３７：データアクセス要求に対するドライブ応答
３９：データアクセス要求に対する内部応答
４１：データアクセス要求に対するホスト応答
４３：経過時間
４５：ステータスチェック指令
４７：対象ドライブのステータス
４９：対象ドライブのステータス
５１：経過時間
５２：他のドライブのステータス情報
５３：ステータス情報の切り替え
５５：ドライブ番号
５７：ダミーアクセスコマンド
【図１】
2005157622.tif 000003
【図２】
2005157622.tif 000004
【図３】
2005157622.tif 000005
【図４】
2005157622.tif 000006
【図５】
2005157622.tif 000007
【図６】
2005157622.tif 000008