JP2005293603A6 - 透過的エミュレーティング・インターフェースを有するハード・ディスク・ドライブのライブラリ - Google Patents
透過的エミュレーティング・インターフェースを有するハード・ディスク・ドライブのライブラリ Download PDFInfo
- Publication number
- JP2005293603A6 JP2005293603A6 JP2005121685A JP2005121685A JP2005293603A6 JP 2005293603 A6 JP2005293603 A6 JP 2005293603A6 JP 2005121685 A JP2005121685 A JP 2005121685A JP 2005121685 A JP2005121685 A JP 2005121685A JP 2005293603 A6 JP2005293603 A6 JP 2005293603A6
- Authority
- JP
- Japan
- Prior art keywords
- library
- hard disk
- disk drive
- command
- controller
- 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
Links
- 238000003860 storage Methods 0.000 claims abstract description 69
- 230000015654 memory Effects 0.000 claims description 87
- 238000000034 method Methods 0.000 claims description 52
- 238000004891 communication Methods 0.000 claims description 27
- 239000000835 fiber Substances 0.000 claims description 20
- 238000004590 computer program Methods 0.000 claims description 15
- 230000008569 process Effects 0.000 description 22
- 239000007787 solid Substances 0.000 description 21
- 230000008878 coupling Effects 0.000 description 10
- 238000010168 coupling process Methods 0.000 description 10
- 238000005859 coupling reaction Methods 0.000 description 10
- 230000007246 mechanism Effects 0.000 description 8
- 230000003287 optical effect Effects 0.000 description 6
- 238000013519 translation Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000000295 complement effect Effects 0.000 description 3
- 238000009826 distribution Methods 0.000 description 3
- 239000012636 effector Substances 0.000 description 3
- 238000003780 insertion Methods 0.000 description 3
- 230000037431 insertion Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 239000003607 modifier Substances 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000010561 standard procedure Methods 0.000 description 1
Images
Abstract
【課題】 透過的エミュレーティング・インターフェースを有するハード・ディスク・ドライブのライブラリを提供すること。
【解決手段】 ハード・ディスク・ドライブは、ライブラリ中の関連する格納位置にシェルビングされる。ライブラリ・制御装置は、要求側ホスト・コンピュータにとって周知の、要求されたハード・ディスク・ドライブの論理アドレスを、ライブラリ内の物理アドレスまたは位置に変換する。ピッカは、ライブラリのバックプレーンの一部とすることができる宛先コンセントに、要求されたディスク・ドライブを装着することが好ましく、制御装置は、ハード・ディスク・ドライブにアクセスする。ライブラリ動作は、ホスト・コンピュータに対して透過的であり、ライブラリは、選択したタイプの記憶装置をエミュレートする。
【選択図】 図1
【解決手段】 ハード・ディスク・ドライブは、ライブラリ中の関連する格納位置にシェルビングされる。ライブラリ・制御装置は、要求側ホスト・コンピュータにとって周知の、要求されたハード・ディスク・ドライブの論理アドレスを、ライブラリ内の物理アドレスまたは位置に変換する。ピッカは、ライブラリのバックプレーンの一部とすることができる宛先コンセントに、要求されたディスク・ドライブを装着することが好ましく、制御装置は、ハード・ディスク・ドライブにアクセスする。ライブラリ動作は、ホスト・コンピュータに対して透過的であり、ライブラリは、選択したタイプの記憶装置をエミュレートする。
【選択図】 図1
Description
本発明は、メインフレームまたは他のホスト・コンピュータ用の大容量記憶装置として使用するためなどの、ハード・ディスク・ドライブのライブラリに関する。より詳細には、本発明は、他の形態の大容量記憶装置をエミュレートするためのインターフェースを有するハード・ディスク・ドライブのライブラリであって、それによってライブラリ中の複数のハード・ディスク・ドライブの動作および制御が、ホスト・コンピュータに対して透過的となるハード・ディスク・ドライブのライブラリに関する。
大規模コンピューティング装置は、非常に大量のデータを比較的低コストで記憶するための方策の一部として、しばしば光記憶媒体またはテープ記憶媒体を利用する。この方策は、性能および信頼性をさらに向上するための冗長構成も提供することができる。光記憶媒体またはテープ記憶媒体は、一般に、当技術分野でライブラリとして知られる複数の棚を有する空間中に格納される。光ディスクまたはテープカセットなどの個々の記憶装置は、ライブラリ中の専用シェルフ上に格納され、または専用ビン(bin)中に格納される。このようなライブラリが当初提供されたとき、人間の操作者は、特定のシェルフまたはビンから記憶装置を取り出し、ホスト・コンピュータに電気的に結合するドライブ機構中に記憶装置を取り付け、ホスト・コンピュータが選択した記憶装置に読み書きできるようにするようにと、ホスト・コンピュータから示されていた。
ライブラリの改良によって、人間の操作者はロボット式ピック機構に置き換えられた。このピック機構、すなわち「ピッカ」は、メモリ記憶媒体をつかみ、その媒体をライブラリのスペース内で移動し、その媒体を、その元の位置と宛先の位置との間で搬送するように適合されている。このような光ディスク媒体用のピッカは、例えば米国特許第5377121号に記載されている。
従来のライブラリの使用においては、ライブラリにいくつか問題がある。具体的には、光媒体は読取りおよび書込みが比較的遅く、テープ媒体はランダム・アクセスが比較的遅いことである。さらに、ライブラリ資源にアクセスするホスト・コンピュータに対してライブラリの内部動作を透過的にするようなライブラリとの通信を提供する必要がある。このことにより、ホスト・コンピュータが通常用いる、他のある形態の大容量記憶装置をライブラリがエミュレートできる能力がさらに必要となる可能性がある。
したがって、ライブラリ中の記憶媒体を読み書きするために必要な時間の低減を実現し、データを要求する1つまたは複数のホスト・コンピュータに対する透過的動作を実現し、また、選択した記憶装置の特性のエミュレートを実現する、透過的エミュレーティング・インターフェースを有するハード・ディスク・ドライブのライブラリが求められている。
本発明により、複数のハード・ディスク・ドライブのうちの1つまたは複数を、1つまたは複数のホスト・コンピュータにライブラリを使用して結合するための、透過的エミュレーティング・インターフェースを有するハード・ディスク・ドライブのライブラリが開示される。ハード・ディスク・ドライブは、ライブラリ中の関連する格納位置にシェルビングされる。ライブラリ制御装置は、要求側ホスト・コンピュータにとって既知の、要求されたハード・ディスク・ドライブの論理アドレスを、ライブラリ内の物理アドレスまたは位置に変換する。ピッカは、ライブラリのバックプレーンの一部とすることができる宛先コンセントに、要求されたディスク・ドライブを装着することが好ましく、制御装置は、ハード・ディスク・ドライブにアクセスする。ライブラリ動作は、ホスト・コンピュータに対して透過的であり、ライブラリは選択されたタイプの記憶装置をエミュレートする。
したがって、本発明の主な目的は、新規な、改良型の記憶媒体の自動ライブラリを提供することである。
本発明の別の目的は、ライブラリ中の記憶媒体を読み書きするために必要な時間の低減を実現する、ハード・ディスク・ドライブのライブラリを提供することである。
本発明のさらに別の目的は、データを要求する1つまたは複数のホスト・コンピュータに対して透過的動作を実現する、透過的エミュレーティング・インターフェースを有するハード・ディスク・ドライブのライブラリを提供することである。
本発明のさらに別の目的は、選択した記憶装置の特性のエミュレートを実現する、透過的エミュレーティング・インターフェースを有するハード・ディスク・ドライブのライブラリを提供することである。
本発明の上記の目的、特徴、および利点は、本発明の以下の詳細な説明を図面と共に考慮するときにより容易に理解されよう。
図1を参照すると、本発明による、ハード・ディスク・ドライブ11のライブラリ10の一部が示されている。このライブラリは、同数またはそれ未満の数のハード・ディスク・ドライブ・ユニットをシェルビングし、収容し、または格納するための、いくつかの格納位置(以下「ビン(bin)」と呼ぶ)12を含む。ハード・ディスク・ドライブ11は、その中に取り付けられた磁気ハード・ディスク媒体を有し、それによってハード・ディスク・ドライブは、完全に作動するコンピュータ・メモリ要素となる。ハード・ディスク・ドライブは、ハード・ディスク媒体上のデータを読み取り、またはハード・ディスク媒体にデータを書き込むために、電力と、ホスト・コンピュータへの入出力(以下「I/O」と呼ぶ)接続だけを必要とする。
ライブラリは、ライブラリ資源に指示し、1つまたは複数のホスト・コンピュータ13と通信するライブラリ制御装置18を含む。ライブラリ制御装置は、以下でより完全に説明するようなプログラム・コードを実行するためのコンピュータを含む。このコンピュータは汎用コンピュータでよい。ライブラリは、制御装置のコマンド下にあるロボット式ピッカ16をさらに含む。ピッカ16は、並進機構21によってライブラリのボリューム内で並進する。並進機構21は、一般に、3つのデカルト軸のそれぞれに沿って独立にピッカを並進させるために親ねじ22の配置を利用する。x−z平面中の並進により、ピッカが、ライブラリ中の選択したどのストレージ・ビン12にも達し、その宛先コンセントに達することが可能となる。y方向の並進により、ディスク・ドライブ・ユニットをストレージ・ビンから引き抜き、またはストレージ・ビン中にディスク・ドライブ・ユニットをシェルビングするために、ピッカがストレージ・ビン12に出入りすることが可能となる。
図2を少し参照すると、ピッカ16はグリッピング要素24を含み、グリッピング要素24は、好ましい実施形態では、ディスク・ドライブ中の相補的機構と係合するように適切に適合された端部エフェクタ28aおよび28bをそれぞれ有する2つのアーム26aおよび26bを備える。アーム26は、ソレノイド30の動作によって相互に近づき、または遠ざかるように動くように適合することができる。あるいは、ピッカおよびグリッピング要素は、当業者に容易に明らかとなる方式で、より汎用のプログラマブル・ロボット式装置、または他の専用機器で実装することもできる。
図1に戻ると、制御装置により、ハード・ディスク・ドライブと、1つまたは複数のホスト・コンピュータ13の間で宛先コンセント17を介して通信が確立されるが、宛先コンセント17は、一般に必ずしもライブラリのバックプレーンの一部ではない。
宛先コンセント17は、ディスク・ドライブのそれぞれの相補的電力入力コネクタと対合するように適合された、1つまたは複数の電力出力コネクタ32と、ディスク・ドライブ上の相補的I/Oコネクタと対合するように適合された、1つまたは複数のI/Oコネクタ34とを含む。ハード・ディスク・ドライブは、ライブラリの方法体系と一致して、これらのコネクタの使用中に繰返し取外し可能である。ライブラリの方法体系は、限定はしないが、ピッカ16を使用して、選択したディスク・ドライブおよび宛先コンセントを電気的に結合し、または分離し、ホスト・コンピュータ13の必要を処理することを含む。
本願の主題である、本発明の基本的な実施形態では、ピッカは、ライブラリ中のその現在位置から、選択したディスク・ドライブ・ユニットに対応するストレージ・ビンに並進し、ディスク・ドライブをつかみ、ストレージ・ビンからディスク・ドライブを引き抜き、宛先コンセントに並進し、ディスク・ドライブと宛先コンセントを電気的に相互接続することによってこのことを行う。
ライブラリ10中にシェルビングされたディスク・ドライブは、ホスト・コンピュータにとって既知の論理アドレスと、ライブラリ中のディスク・ドライブの現在の物理位置を識別する制御装置にとって既知の物理アドレスとを有する。ホスト・コンピュータがディスク・ドライブの物理アドレスを知る必要がなく、ライブラリを専用サーバとして見ることができることは、ライブラリの方策の利点であり、要求した論理アドレスを有するディスク・ドライブの位置を突き止め、それを得て、装着するために必要なコマンドおよびライブラリ内の動きが、ホスト・コンピュータに対して透過的となる。
各ハード・ディスク・ドライブは、一般に固有の論理アドレスを有するが、本発明の原理から逸脱することなく、他の論理アドレス指定方式を利用することもできる。例えば、ディスク・ドライブは、ライブラリを区分するために論理ブロック・アドレスとして当技術分野で周知のアドレスを使用して、またはFCP SCSI(ファイバ・チャネル小型コンピュータ・システム・インターフェース)の論理装置アドレス指定機能を使用して、1つのアドレスによってホスト・コンピュータで識別することができる。
ライブラリ動作は、ハード・ディスク・ドライブ(または他の取外し可能メモリ装置)の、ライブラリへの従来の物理的挿入を想定する。一般に人間の操作者によってハード・ディスク・ドライブがそれを介してピッカに渡されるライブラリ中への物理的開口として、メール・スロット23(図7)が設けられる。
次に図3を参照すると、本発明による、透過的エミュレーティング・インターフェースを含むライブラリ10についてのI/Oソート・プロセス300が示されている。I/Oソート・プロセスは、「初期プログラム・ロード」ステップ302で開始し、ステップ302では、以下で説明するステップを実施するためにライブラリ制御装置18をブートする。ステップ302に関するプログラム・コードは、一般にEPROM(消去可能プログラマブル読取り専用メモリ)、高密度フロッピー(R)・ディスク・ドライブ、CD−ROMディスク・ドライブなどの中に記憶される。
I/Oソート・プロセス300のステップ304では、制御装置が、ライブラリ中のディスク・ドライブの論理アドレスに対応する、同じドライブの物理アドレスのマップまたは索引である「構成テーブル」を構築する。ドライブは、その論理アドレスによってホスト・コンピュータに認識される。
ステップ304の一部として、ピッカ16は、メール・スロットを通じて受け取ったディスク・ドライブ11を識別し、シェルビングするように、ライブラリ制御装置によって指令を受ける。ディスク・ドライブは、ラベル上に、またはラベルに取り付けられたEPROM中に符号化することができるような、ピッカでスキャンされ、または読み取られる、外部アクセス可能な識別マークを含むことが好ましい。あるいは、制御装置は、ディスク・ドライブの電源を投入し、ディスク自体の上に符号化された識別情報を読み取るようにピッカに指令することもできる。いずれにしても、本発明により、制御装置は、ディスク・ドライブの論理アドレスを突き止め、ドライブをシェルビングした結果として構成テーブルを生成する。容易に理解することができるように、複数のホストがライブラリに接続されている場合には、複数の構成テーブルが存在する可能性がある。
構成テーブルが構築されると、制御装置18は、ホスト要求を、指定された論理アドレスから実際の物理アドレスに変換し、宛先コンセント17の適切なコネクタにディスク・ドライブを位置付け、装着するようにピッカに指令することが可能となる。ディスク・ドライブは、当初それが格納されていたストレージ・ビン、すなわち当初それを取り出したストレージ・ビンとは異なるストレージ・ビン12に再シェルビングされる可能性があり、かつディスク・ドライブは、現在シェルビングされておらず、既に宛先コンセントに装着されているか、または現在ピッカが所有している可能性があるので、ステップ306では、構成テーブルを制御装置によって経時的に更新する。
I/Oソート・プロセス300は、ステップ308に進み、そこで、ライブラリは、ホスト・コンピュータに、ライブラリが何の装置をエミュレートしているかを知らせる。例えば、ライブラリは、ライブラリが指定の容量のSCSIディスク・ドライブであることをホストに知らせることができる。指定の容量はどんなサイズでもよい。ライブラリがエミュレートする、装置または選択した形態の大容量記憶装置は、ホスト・コンピュータと通信するために、ライブラリ制御装置がエミュレートするハンドシェーク・プロトコルを確立し、それによってライブラリがその装置、または選択した形態の大容量記憶装置であるかのようにホスト・コンピュータがライブラリ制御装置と通信する。
ステップ309では、制御装置18は、ホスト・コンピュータのうちの1つからのコマンドを待機する。コマンドは、一般に論理アドレスを伴うことになる。したがって、ステップ310では、ライブラリ制御装置は、ステップ306で更新された構成テーブルを調べることにより、ホストによって指定された論理アドレスを、対応するライブラリ中の物理アドレスにマッピングする。ステップ312では、制御装置は、コマンドがI/Oコマンドであるかどうかを判定する。コマンドがI/Oコマンドではない場合、エミュレートする装置がそのコマンドに応答するのと同様にライブラリがコマンドに応答するように、ライブラリを適合させる。コマンドがI/Oコマンドである場合、制御装置は、書込みコマンドに応答するための書込みプロセス400、または読取りコマンドに応答するための読取りプロセス500に分岐する。
図4を参照すると、本発明による透過的エミュレーティング・インターフェースを有するライブラリ10についての好ましい書込みプロセス400が示されている。このプロセスは書込みコマンド402の受信で開始する。ステップ404では、ライブラリ制御装置はホスト・コンピュータに応答して、ライブラリ制御装置がデータを受け取るように作動可能であること、およびI/Oソート・プロセス300のステップ310で先に識別した、データを書き込むべき物理アドレスを知らせる。ステップ406で、制御装置がデータを受け取ったとき、好ましくは、制御装置は、固体キャッシュ・メモリ38(図7)にデータを即時に転送する。固体キャッシュ・メモリ38は、ライブラリ中のハード・ディスク・ドライブよりもずっと高速にアクセスすることができ、それによって、データがキャッシュからハード・ディスク・ドライブに移動する前に、ホスト・コンピュータをライブラリから切断することができる。このキャッシュは、ライブラリへの電力が失われた場合にキャッシュがデータを保持するようにバッテリ・バックアップすることができ、またはNVRAM(不揮発性ランダム・アクセス・メモリ)とすることができる。いずれにしても、ステップ408では、制御装置は、データを受け取ったことをホストに知らせる。
ステップ410では、制御装置は、要求されたハード・ディスク・ドライブが既に装着されているかどうかを判定する。装着されていない場合、制御装置は、ハード・ディスク・ドライブを宛先コンセントに装着するための空きスロット62(図1)があるかどうかを判定する。空きスロットがある場合、要求されたハード・ディスク・ドライブは、その空きスロット中に装着される。空きスロットがない場合、好ましくは、最も以前に装着されたハード・ディスク・ドライブ、または最も使用されていないハード・ディスク・ドライブを、宛先コンセント17から取り外すべきものとして選択して、要求されたハード・ディスク・ドライブを装着するためにこの空きスロットを供給する。
好ましい書込みプロセス400の任意選択ステップ412では、データを、RAID(新磁気ディスク制御機構)または他の形態の分散記憶装置にわたって分散させるために分解する。分散記憶装置を使用すべき場合、前述のステップ410は、それに応じて修正される。次に、ステップ414では、ピッカがハード・ディスク・ドライブを装着したかどうかを制御装置が判定する。ドライブのすべてを宛先コンセント17に装着した後、制御装置は、物理アドレスを更新し、ディスク・ドライブが装着されている宛先コンセント中のスロットを示すために、別のマッピングを実行する(ステップ416)。
ステップ418では、ハード・ディスク・ドライブが装着された状態で、制御装置が、動作速度までハード・ディスク・ドライブを回転させ、データを書き込む。このプロセスは分岐して、I/Oソート・プロセス300のステップ310に戻る。
図5を参照すると、本発明による透過的エミュレーティング・インターフェースを有するライブラリ10についての好ましい読取りプロセス500が示されている。このプロセスは、読取りコマンド502の受信で開始する。ステップ504では、好ましくは、ライブラリがキャッシュ・メモリ38をチェックして、要求されたデータが容易に利用可能であるかどうかを判定する。制御装置は、一般に特定のホストまたは各ホストに対するホスト・データ要求の履歴に基づいて、特定のデータに関する必要を予測し、読取りコマンドより先にキャッシュ中にその特定のデータを配置することができる。データがキャッシュ中にある場合、制御装置は、I/Oソート・プロセス300のステップ310に戻る前に、単に、制御装置がデータを送る用意ができていることをホストに知らせ(ステップ506)、データを送り(ステップ508)、データを送ったという表示をホストに送る(ステップ510)。
一方、データがキャッシュから利用可能でない場合、制御装置(ステップ520)は、要求されたハード・ディスク・ドライブが既に設置されているかどうかを判定する。設置されていない場合、制御装置は、ハード・ディスク・ドライブを宛先コンセントに装着するための空きスロット62(図1)があるかどうかを判定する。空きスロットがある場合、要求されたハード・ディスク・ドライブがその空きスロット中に装着される。空きスロットがない場合、好ましくは、最も以前に装着されたハード・ディスク・ドライブ、または最も使用されていないハード・ディスク・ドライブを、宛先コンセント17から取り外すべきものとして選択して、要求されたハード・ディスク・ドライブを装着するためにこの空きスロットを供給する。
次に、ステップ522では、ピッカがハード・ディスク・ドライブを装着したかどうかを制御装置は判定する。ドライブのすべてを宛先コンセント17に装着した後、制御装置は、物理アドレスを更新し、ディスク・ドライブが装着されている宛先コンセント中のスロットを示すために、別のマッピングを実行する(ステップ524)。
ステップ526では、ハード・ディスク・ドライブが装着された状態で、制御装置が、動作速度までハード・ディスク・ドライブを回転させ、データを読み取る。前述のような分散記憶装置からデータを読み取る場合、好ましくは、データをキャッシュ38に集め(ステップ530)、前述のステップ520は、それに応じて修正される。次いで制御装置は、I/Oソート・プロセス300のステップ310に戻る前に、データをホストに送り(ステップ532)、データを送ったという表示をホストに送る(ステップ534)。
制御装置18は、通信インターフェース19を使用してホスト・コンピュータ13と通信する。通信インターフェース19は、ワイヤまたは光ファイバで実装することができ、あるいは無線とすることができる。好ましくは、インターフェース19は、ANSI X3.230-1994、X3.297-1997、およびX3.303-1998によって規定されるファイバ・チャネル・アービトレーテッド・ループとして知られるプロトコルを利用する。このファイバ・チャネル・ループは、データの伝送をフレームとして実施する下位層プロトコルとして実装される。これは、特殊なハードウェアを必要とせずに、例えばFCP SCSIまたはFICON(ファイバ接続)など、フレーム中のデータを解釈するためのどんな所望の上位層プロトコルもサポートすることができる。例えば、ライブラリ制御装置は、1組のサーバ、1組のSCSIハード・ディスク、FICON記憶サブシステム、またはこれらの組み合わせとして動作することができる。
本発明の顕著な特徴として、所与のエミュレートする装置についての複数のコマンドと、SCSIおよびファイバ・チャネル・アービトレーション・ループなどのいくつかの代替通信プロトコルとを制御装置が関連付けることを可能にするコマンド変換テーブルが、制御装置19で使用するために与えられる。制御装置は、プロトコルを識別することによって、コマンドを識別することができる。
次に、制御装置によって選択されたときにライブラリ中のそれぞれのメモリ要素を制御し、ホストに対して透過的にコマンドを実行するために特に適合された、関連するマイクロコードと、様々なコマンドとを関連付けるために別のテーブルが与えられる。制御装置は、ライブラリ資源を選択し、適切なマイクロコードが識別され、ライブラリ中のホスト・コマンドを実施するようにそのマイクロコードが実行される。
例えば、ライブラリがSCSIインターフェース19上のハード・ドライブ装置をエミュレートしており、ホストが16進数の2A(すなわち「2Ah」)を有するデータ・パケットを送った場合、制御装置18は、そのコマンドを書込みコマンドとして解釈し、そのコマンドをライブラリ中で内部的に使用するためのフォーマットに再フォーマットし、1つまたは複数のハード・ディスク・ドライブなどの、任意の選択したライブラリ資源にそのデータを書き込む。「28h」を受け取った場合、制御装置は、そのコマンドを読取りコマンドとして解釈し、選択したライブラリ資源から所望のデータを読み取り、そのデータをSCSIデータ・パケットとしてフォーマットして、ホストにそのデータを送る。「03h」を受け取った場合、制御装置は、そのコマンドを「センス」コマンドとして解釈する。これは、非I/Oコマンドの例である。制御装置は、それ自体の内部コマンドおよび制御プロトコルを用いてそのコマンドを実施し、エミュレートするフォーマットでホストに応答する。
同様に、ライブラリがファイバ・チャネル・アービトレーテッド・ループ上のハード・ディスク・ドライブをエミュレートしており、「M」が修飾ビットを表すとして、ホストが「MMMMMM01」を添付したデータ・パケットを送った場合、制御装置18は、そのコマンドを書込みコマンドとして解釈し、「MMMMMM10」を受け取った場合、制御装置はそのコマンドを読取りコマンドとして解釈し、「MMMM0100」を受け取った場合、制御装置はそのコマンドをセンス・コマンドとして解釈する。やはり、制御装置は、エミュレートするフォーマットでホストに応答する。
ライブラリは、あるホストに対して1つの装置、別のホストに対して1つの装置をエミュレートすることもでき、さらには、それぞれのホストがインターフェース19によって異なるプロトコルを介してライブラリに取り付けられていることを条件として、あるホストに対してあるプロトコル、別のホストに対して別のプロトコルをエミュレートすることもできる。制御装置の動作マイクロコードの変更を必要とせずに、制御装置がマルチリンガルとなることが本発明の顕著な特徴である。したがって、ライブラリは、要求時に様々な異なるホストと、様々な異なる方式で通信することができる。
図6を参照すると、透過的エミュレーティング・インターフェースを有するライブラリ10は、より大きな記憶域ネットワーク100の一部とすることができる。1つまたは複数のライブラリ10は、通信インターフェース19を介して、互いにデータを共用することができ、メインフレーム・コンピュータ102とデータを共用することができ、パーソナル・コンピュータ104およびサーバ106などの他のホスト・コンピュータとデータを共用することができ、スタンドアロン・ディスク・ドライブ108などのスタンドアロン・メモリ装置とデータを共用することができる。一般に、少なくとも1キロメートルなど、ライブラリが比較的遠くに離れている場合、各ライブラリは、それ自体のファイバ・チャネル・アービトレーテッド・ループを介してローカルに通信することになり、そのループは、ファブリックとして当技術分野で知られる、より大きな中間ネットワークにそれぞれ切り換え可能に接続される。
図7を参照すると、ライブラリ10は、追加の要素または装置を含むことができる。例えば、ライブラリ中のハード・ディスク・ドライブの一部または大部分を、前述のように繰り返し取外し可能なハード・ディスク・ドライブとすることができ、一方、連続的なI/Oワークロードを予想して、バックプレーンに取り付けたままにされる他の専用ハード・ディスク・ドライブ72をライブラリ中に設けることができる。したがって、専用ドライブをバックプレーンに接続するために使用するコネクタは、取外しおよび挿入の繰り返しのために特に適合させる必要はない。
ライブラリは、固体メモリ33を含むことができ、固体メモリ33は、取外し可能固体メモリ74および専用固体メモリ36を含むことができる。取外し可能固体メモリについては、取外し可能ハード・ディスク・ドライブと同様に、ピッカがつかみ、移動させることのできる固体メモリ・カードまたは他の便利な物理形態の固体メモリが提供される。あるいは、固体メモリをつかみ、移動させるように特に適合された追加のピッカを、ライブラリ中に提供することができる。固体メモリは、取外し可能ハード・ドライブの場合と同様に、適切なコネクタを介して宛先コンセントから繰り返し取外し可能であるように提供されることが好ましい。
専用ハード・ドライブと同様に、専用固体メモリは、バックプレーンに永続的に接続される。すなわち、より連続的なI/Oワークロードを予想して、ハード・ディスク・ドライブの取外しおよび挿入の繰返しを容易にするためのコネクタを使用せずに接続される。
取外し可能メモリおよび専用固体メモリの一方または両方は、キャッシュ38と、1つまたは複数の仮想ハード・ディスク・ドライブ40の一方または両方として編成することができる。キャッシュ38の使用は、好ましい読取りプロセスおよび書込みプロセスに関連して先に述べた。容易に理解できるように、仮想ハード・ディスク・ドライブを実装するために、制御装置は、ハード・ディスク・ドライブ読取りコマンドおよび書込みコマンドを、固体メモリを読み書きするために必要な類似のコマンドに変換するように適合される。
固体メモリ33は、拡張リモート・コピー(「XRC」)ソフトウェアや、ピアツーピア・リモートコピー(「PPRC」)ソフトウェアなどを使用することによって、「ソフトコピー・パススルー」として知られるものを容易にするために利用することもできる。ソフトコピー・パススルーは、例えば、あるライブラリ中に常駐する、選択したデータを、上記で議論した記憶域ネットワーク100中などの別のライブラリ中に複製するために使用することができる。
透過的エミュレーティング・インターフェースを有するハード・ディスク・ドライブの特定のライブラリを、好ましいものとして図示し、説明したが、本発明の原理から逸脱することなく、既に説明した構成および方法に加えて、他の構成および方法も使用できることを理解されたい。これらのうちの一部は、本願を引用し、本願の教示を参照により組み込む他の特許出願の主題である。例えば、ピッカ16はストレージ・ビンに移動することができ、ハード・ディスク・ドライブを宛先コンセント17に搬送するためにストレージ・ビン中のハード・ディスク・ドライブを取り出すのではなく、宛先コンセント17との相互接続を搬送し、かつストレージ・ビンでハード・ディスク・ドライブの電源を投入し、動作するように適合させることによって、ピッカは単にハード・ディスク・ドライブと接触することができる。
本発明によるプロセスおよび方法は、コンピュータ可読記憶媒体を製造するための標準的な技法を用いることによって、メモリまたは伝送装置中の実行可能コンピュータ命令のプログラムを有形に実施するコンピュータ・ソフトウェア、ファームウェア、およびハードウェアなどの製品として実装できることをさらに理解されたい。このようなメモリ装置の例は、ハード・ディスク・ドライブ、フロッピー(R)・ディスケット、光ディスク、および磁気テープと、ROM(読取り専用メモリ)、PROM(プログラマブル読取り専用メモリ)、およびEPROMなどの半導体メモリとであり、このような伝送装置の例は、インターネットと、電子掲示板およびメッセージ/ノート交換と、電話/モデム、ケーブル、およびセルラー・ネットワークを含むネットワークと、無線およびサテライト通信システムと、他の固定または移動システムおよび通信リンクである。コンピュータ・サイエンスの分野の技術者は、本明細書で述べたように汎用コンピュータと共に、またはより特殊なハードウェアと共に、あるいはその組み合わせと共に、本発明によるプロセスまたは方法を容易に実装することができよう。
上記の明細書で使用した用語および表現は、上記の明細書中で、限定的な用語としてではなく、説明のための用語として使用しており、このような用語および表現の使用は、図示し、説明した機能の均等物またはその部分を排除するものではない。本発明の範囲は、頭記の特許請求の範囲によってのみ定義され、限定されることを理解されたい。
まとめとして、本発明の構成に関して以下の事項を開示する。
(1)1つまたは複数のホスト・コンピュータによって使用するための複数のコンピュータ・メモリ要素の自動ライブラリであって、要求側ホスト・コンピュータが、選択したメモリ要素を識別する論理アドレスを与えることによって、前記ライブラリ中の前記選択したメモリ要素にアクセスを要求することができるように、前記選択したメモリ要素についての前記論理アドレスに対応する前記ライブラリ中の物理アドレスを識別する制御装置と、
それぞれ前記メモリ要素のうちの対応する1つを受け取る、複数のストレージ・ビンと、
前記選択したメモリ要素を、前記要求側ホスト・コンピュータに結合する宛先コンセントと、
前記制御装置のコマンドによって動作可能であり、前記選択したメモリ要素を前記宛先コンセントに電気的に結合し、かつ前記宛先コンセントから電気的に分離するためのロボット式ピッカと、
前記複数のメモリ要素のうちの少なくとも一部を構成する、複数の繰り返し取外し可能なハード・ディスク・ドライブとを備えるライブラリ。
(2)前記宛先コンセントが、前記ライブラリのバックプレーンの一部である上記(1)に記載のライブラリ。
(3)前記選択したメモリ要素がハード・ディスク・ドライブであり、かつ前記物理アドレスが、選択した前記ハード・ディスク・ドライブに対応する前記ストレージ・ビンのうちの1つを識別する場合に、前記ピッカが、前記選択したハード・ディスク・ドライブを、前記識別したストレージ・ビンから前記宛先コンセントに移動させる上記(1)に記載のライブラリ。
(4)前記制御装置が、ファイバ・チャネル通信プロトコルに従って、前記宛先コンセントと、前記1つまたは複数のホスト・コンピュータとの間の伝送を実現する上記(1)に記載のライブラリ。
(5)前記メモリ要素の一部として使用するための、1つまたは複数の繰り返し取外し可能な固体メモリ・ユニットをさらに備える上記(1)に記載のライブラリ。
(6)前記制御装置によってキャッシュとして使用される固体メモリをさらに備える上記(1)に記載のライブラリ。
(7)前記バックプレーンに永続的に接続される、少なくとも1つのハード・ディスク・ドライブをさらに備える上記(2)に記載のライブラリ。
(8)1つまたは複数のホスト・コンピュータによって使用するための、ハード・ディスク・ドライブを備えるメモリ要素のライブラリにおいて、要求側ホスト・コンピュータに前記ライブラリ中の選択されたメモリ要素へのアクセスを与える方法であって、
前記要求側ホスト・コンピュータから前記選択したハード・ディスク・ドライブを識別する論理アドレスを受信し、前記選択したハード・ディスク・ドライブについての前記論理アドレスに対応する、前記ライブラリ中の物理アドレスによって、前記選択したハード・ディスク・ドライブを識別するステップと、
前記識別したハード・ディスク・ドライブをロボット式ピッカによって前記要求側ホスト・コンピュータへの結合を与える宛先コンセントに電気的に結するステップとを有する方法。
(9)前記ライブラリは、それぞれ前記ハード・ディスク・ドライブのうちの対応する1つを受け取るように適合された、複数のストレージ・ビンを有し、前記物理アドレスが、前記選択したハード・ディスク・ドライブが前記物理アドレスに対応する前記ストレージ・ビン中にあるかどうかを識別する上記(8)に記載の方法。
(10)前記選択したハード・ディスク・ドライブが前記ストレージ・ビンのうちの前記対応する1つに配置されている場合に、前記ストレージ・ビンまで並進し、前記ハード・ディスク・ドライブと接触するように前記ピッカに命令するステップをさらに含む上記(9)に記載の方法。
(11)上記(9のステップの後に、前記選択したハード・ディスク・ドライブを前記ストレージ・ビンから取り出すように前記ピッカに命令するステップをさらに含む上記(10)に記載の方法。
(12)上記(10)のステップの後に、前記選択したハード・ディスク・ドライブを前記宛先コンセントに電気的に結合する前記ステップより前に、前記ストレージ・ビンから前記宛先コンセントまで並進するように前記ピッカに命令するステップをさらに含む上記(11)に記載の方法。
(13)ファイバ・チャネル通信プロトコルに従って、前記宛先コンセントと、前記1つまたは複数のホスト・コンピュータとの間でデータを伝送するステップをさらに含む上記(8)に記載の方法。
(14)前記ライブラリは固体メモリを有し、前記要求側ホスト・コンピュータから書込みデータ・コマンドを受け取るステップと、前記ハード・ディスク・ドライブを前記宛先コンセントに電気的に結合する前記ステップの前に、書き込むべき前記データを一時的に格納するために前記固体メモリを利用するステップとをさらに含む上記(8)に記載の方法。
(15)前記メモリ要素が固体メモリをさらに備え、前記固体メモリを仮想ハード・ディスク・ドライブとして利用するステップをさらに含む上記(8)に記載の方法。
(16)前記ピッカによって、前記固体メモリを前記宛先コンセントに取外し可能に結合するステップをさらに含む上記(15)に記載の方法。
(17)1つまたは複数のホスト・コンピュータによって使用するための、複数のメモリ要素のライブラリであって、前記メモリ要素が、ハード・ディスク・ドライブと、繰り返し取外し可能な固体メモリとを備えるライブラリにおいて、要求側ホスト・コンピュータに、前記ライブラリ中の前記メモリ要素のうちの1つへのアクセスを与える方法であって、
前記要求側ホスト・コンピュータから前記選択したハード・ディスク・ドライブを識別する論理アドレスを受信し、前記要求したハード・ディスク・ドライブについての前記論理アドレスに対応する、固体メモリについての物理アドレスによって、前記固体メモリを識別するステップと、
前記識別した固体メモリをロボット式ピッカによって前記要求側ホスト・コンピュータへの結合を与える宛先コンセントに電気的に結合するステップとを含む方法。
(18)前記ライブラリは、それぞれ前記メモリ要素のうちの対応する1つを受け取るように適合された、複数のストレージ・ビンを有し、前記物理アドレスが、前記選択した固体メモリが前記物理アドレスに対応する前記ストレージ・ビン中にあるかどうかを識別し、前記ストレージ・ビン中にない場合に、前記ピッカが前記選択した固体メモリを所有しているかどうかを識別し、前記ピッカが所有していない場合に、前記選択した固体メモリが前記宛先コンセントに既に電気的に結合しているかどうかを識別する上記(17)に記載の方法。
(19)ハード・ディスク・ドライブのライブラリ中のディスク・ドライブにアクセスするための方法であって、
(a)前記ライブラリが大容量記憶装置の所定の選択した形態であることをホスト・コンピュータに対して表すステップであって、大容量記憶装置の前記選択した形態が、前記ホスト・コンピュータとのハンドシェーク・プロトコルを定義するステップと、
(b)前記ホスト・コンピュータからコマンドを受け取り、前記コマンドが関係するハード・ディスク・ドライブについての論理アドレスを受け取るステップと、
(c)前記論理アドレスを前記ライブラリ内の物理アドレスに関連付ける所定の索引を調べるステップと、
(d)前記論理アドレスを前記物理アドレスに変換するステップと、
(e)前記物理アドレスに対応する前記ハード・ディスク・ドライブの位置を突き止めるステップとを含み、
(f)前記ハード・ディスク・ドライブがストレージ・ビン中にある場合に、前記ストレージ・ビンから前記ハード・ディスク・ドライブを取り出すステップと、前記ハード・ディスク・ドライブを前記ホスト・コンピュータに結合するために、前記ハード・ディスク・ドライブを宛先コンセントまで並進させるステップと、前記ハード・ディスク・ドライブと前記宛先コンセントとを電気的に相互接続するステップと、前記コマンドを実行するステップとを含み、
(g)前記ハンドシェーク・プロトコルに従って前記ホスト・コンピュータとハンドシェークすることによって前記コマンドを実施するステップを含み、それによってステップ(c)〜(f)が前記ホスト・コンピュータに対して透過的となる方法。
(20)前記コマンドがデータを書き込むべき場合に、ステップ(f)の前に、前記データをキャッシュ・メモリに書き込むステップをさらに含む上記(19)に記載の方法。
(21)前記コマンドがデータを読み取るべき場合に、ステップ(f)の前に、前記データを求めて前記キャッシュ・メモリを調べるステップをさらに含む上記(19)に記載の方法。
(22)前記コマンドがデータを書き込むべき場合に、少なくとも2つのハード・ディスク・ドライブにわたって分散させるために前記データを分解するステップをさらに含む上記(19)に記載の方法。
(23)前記少なくとも2つのハード・ディスク・ドライブがRAIDとして動作する上記(22)に記載の方法。
(24)前記コマンドがデータを読み取るべき場合に、少なくとも2つのハード・ディスク・ドライブから前記データを集めることをさらに含む上記(19)に記載の方法。
(25)前記少なくとも2つのハード・ディスク・ドライブがRAIDとして動作する上記(24)に記載の方法。
(26)ライブラリ制御装置を含むハード・ディスク・ドライブのライブラリ内で使用するためのコンピュータ・プログラムであって、
(a)前記ライブラリが大容量記憶装置の所定の選択した形態であることをホスト・コンピュータに対して表すステップであって、大容量記憶装置の前記選択した形態が、前記ホスト・コンピュータとのハンドシェーク・プロトコルを定義するステップと、
(b)前記ホスト・コンピュータからI/Oコマンドを受け取り、前記コマンドが関係するハード・ディスク・ドライブについての論理アドレスを受け取るステップと、
(c)前記論理アドレスを前記ライブラリ内の物理アドレスに関連付ける、所定の索引を調べるステップと、
(d)前記論理アドレスを前記物理アドレスに変換するステップと、
(e)前記物理アドレスに対応する前記ハード・ディスク・ドライブの位置を突き止めるステップとを含み、
(f)前記ハード・ディスク・ドライブがストレージ・ビン中にある場合に、前記ストレージ・ビンから前記ハード・ディスク・ドライブを取り出すステップと、前記ハード・ディスク・ドライブを前記ホスト・コンピュータに結合するために、前記ハード・ディスク・ドライブを宛先コンセントまで並進させるステップと、前記ハード・ディスク・ドライブと前記宛先コンセントとを電気的に相互接続するステップと、前記コマンドを実行するステップとを含み、
(g)前記ハンドシェーク・プロトコルに従って前記ホスト・コンピュータとハンドシェークすることによって前記コマンドを実施するステップを含むステップを前記制御装置に実行させるコンピュータ・プログラム。
(27)前記コマンドがデータを書き込むべき場合に、前記コンピュータ命令のプログラムが、さらに、ステップ(f)の前に、前記ライブラリ制御装置に、前記データをキャッシュ・メモリに書き込ませることができる上記(26)に記載のコンピュータ・プログラム。
(28)前記コマンドがデータを読み取るべき場合に、前記コンピュータ命令のプログラムが、さらに、ステップ(f)の前に、前記ライブラリ制御装置に、前記データを求めて前記キャッシュ・メモリを調べさせることができる上記(26)に記載のコンピュータ・プログラム。
(29)前記コマンドがデータを書き込むべき場合に、前記コンピュータ命令のプログラムが、さらに、前記ライブラリ制御装置に、少なくとも2つのハード・ディスク・ドライブにわたって分散させるために前記データを分解させることができる上記(26)に記載のコンピュータ・プログラム。
(30)前記コンピュータ命令のプログラムが、前記ライブラリ制御装置に、前記少なくとも2つのハード・ディスク・ドライブをRAIDとして動作させることができる上記(29)に記載のコンピュータ・プログラム。
(31)前記コマンドがデータを読み取るべき場合に、前記コンピュータ命令のプログラムが、前記ライブラリ制御装置に、少なくとも2つのハード・ディスク・ドライブから前記データを集めさせることができる上記(26)に記載のコンピュータ・プログラム。
(32)前記コンピュータ命令のプログラムが、前記ライブラリ制御装置に、前記少なくとも2つのハード・ディスク・ドライブをRAIDとして動作させることができる上記(26)に記載のコンピュータ・プログラム。
(33)1つまたは複数のホスト・コンピュータと、ライブラリ制御装置によって制御される1つまたは複数のタイプのメモリ要素のライブラリとの間で通信するための方法であって、
所定のタイプのメモリ要素に指令するための複数のコマンドと、複数のプロトコルとの第1関連を形成するステップと、
前記複数のコマンドと、前記ライブラリ中のそれぞれのメモリ要素を制御するように適合された複数のコードとの第2関連を形成するステップと、
前記装置に指令するために、前記プロトコルのうちの1つに従ってホスト・コンピュータからコマンドを受け取るステップと、
前記プロトコルを識別するステップと、
前記第1関連を調べることによって前記コマンドを識別するステップと、
前記コマンドを実施するために、前記制御装置によって前記ライブラリ中の前記メモリ要素のうちの1つまたは複数を選択するステップと、
前記選択したメモリ要素についての前記第2関連を調べることによって、前記関連するコードを識別するステップと、
前記選択したメモリ要素を用いて前記ライブラリ中で前記コマンドを実施するために、前記識別したコードを実行するステップとを含む方法。
(34)前記識別したコードを実行するための前記ステップが、前記ライブラリ中のハード・ディスク・ドライブからデータを読み取るステップと、識別した前記プロトコルに従って前記データをフォーマットするステップと、その後前記データを前記ホスト・コンピュータに送るステップとをさらに含む上記(33)に記載の方法。
(35)前記識別したコードを実行する前記ステップが、前記ライブラリ中のハード・ディスク・ドライブに書き込むステップをさらに含む上記(33)に記載の方法。
(36)1つまたは複数のホスト・コンピュータと、ライブラリ制御装置によって制御される1つまたは複数のタイプのメモリ要素のライブラリとの間で通信する際に使用するためのコンピュータ・プログラムであって、
所定のタイプのメモリ要素に指令するための複数のコマンドと、複数のプロトコルとの第1関連を形成するステップと、
前記複数のコマンドと、前記ライブラリ中のそれぞれのメモリ要素を制御するように特に適合された複数のコードとの第2関連を形成するステップと、
前記装置に指令するために、前記プロトコルのうちの1つに従ってホスト・コンピュータからコマンドを受け取るステップと、
前記プロトコルを識別するステップと、
前記第1関連を調べることによって前記コマンドを識別するステップと、
前記コマンドを実施するために、前記制御装置によって前記ライブラリ中の前記メモリ要素のうちの1つまたは複数を選択するステップと、
前記選択したメモリ要素について前記第2関連を調べることによって、関連する前記コードを識別するステップと、
前記選択したメモリ要素を用いて前記ライブラリ中で前記コマンドを実施するために、前記識別したコードを実行するステップとを含むステップを前記制御装置に実行させるコンピュータ・プログラム。
(37)前記コンピュータ命令のプログラムが、少なくとも、前記ライブラリ中のハード・ディスク・ドライブからデータを読み取るステップと、前記識別した前記プロトコルに従って前記データをフォーマットするステップと、その後前記データを前記ホスト・コンピュータに送るステップとによって、前記ライブラリ制御装置に、前記識別したコードを実行させることができる上記(36)に記載のコンピュータ・プログラム。
(38)前記コンピュータ命令のプログラムが、少なくとも前記ライブラリ中のハード・ディスク・ドライブに書き込むステップによって、前記ライブラリ制御装置に、前記識別したコードを実行させることができる上記(36)に記載のコンピュータ・プログラム。
(39)1つまたは複数のホスト・コンピュータによって使用するための、ハード・ディスク・ドライブを備えるメモリ要素の第1ライブラリであって、要求側ホスト・コンピュータが、選択したハード・ディスク・ドライブを識別する論理アドレスを与えることによって、前記ライブラリ中の選択したハード・ディスク・ドライブにアクセスを要求することができ、前記第1ライブラリを制御し、前記1つまたは複数のホスト・コンピュータと通信するための第1制御装置を含む第1ライブラリと、
前記1つまたは複数のホスト・コンピュータによって使用するためのハード・ディスク・ドライブを備えるメモリ要素の第2ライブラリであって、要求側ホスト・コンピュータが、選択したハード・ディスク・ドライブを識別する論理アドレスを与えることによって、前記ライブラリ中の選択したハード・ディスク・ドライブにアクセスを要求することができ、前記第2ライブラリを制御し、前記1つまたは複数のホスト・コンピュータと通信するための第2制御装置を含み、前記第1ライブラリから少なくとも1キロメートル離れている第2ライブラリと、
前記第1制御装置と、前記1つまたは複数のホスト・コンピュータのうちの少なくとも一部との間の第1ファイバ・チャネル・アービトレーテッド・ループ通信リンク、ならびに前記第2制御装置と前記1つまたは複数のホスト・コンピュータのうちの少なくとも他の一部との間の第2ファイバ・チャネル・アービトレーテッド・ループ通信リンクであって、それぞれ、前記第1制御装置と前記第2制御装置との間の第3通信リンクに切り換え可能に接続される、第1ファイバ・チャネル・アービトレーテッド・ループ通信リンクおよび第2ファイバ・チャネル・アービトレーテッド・ループ通信リンクとを備える記憶域ネットワーク・システム。
(40)前記ホスト・コンピュータが、メインフレーム・コンピュータ、パーソナル・コンピュータ、サーバ、およびスタンドアロン・メモリ装置から選択された、少なくとも2つの異なるタイプの装置を備える上記(39)に記載の記憶域ネットワーク。
(41)エリア・ネットワーク記憶装置のための方法であって、
1つまたは複数のホスト・コンピュータによって使用するためのハード・ディスク・ドライブを備えるメモリ要素の第1ライブラリを提供するステップであって、要求側ホスト・コンピュータが、前記選択したハード・ディスク・ドライブを識別する論理アドレスを与えることによって、前記ライブラリ中の選択したどのハード・ディスク・ドライブにもアクセスを要求することができ、前記第1ライブラリが、前記第1ライブラリを制御し、前記1つまたは複数のホスト・コンピュータと通信するための第1制御装置を含むステップと、
1つまたは複数のホスト・コンピュータによって使用するためのハード・ディスク・ドライブを備えるメモリ要素の第2ライブラリを提供するステップであって、要求側ホスト・コンピュータが、前記選択したハード・ディスク・ドライブを識別する論理アドレスを与えることによって、前記ライブラリ中の選択したどのハード・ディスク・ドライブにもアクセスを要求することができ、前記第2ライブラリが、前記第2ライブラリを制御し、前記1つまたは複数のホスト・コンピュータと通信するための第2制御装置を含み、前記第1ライブラリと前記第2ライブラリとが、少なくとも1キロメートルだけ分離しているステップと、
前記第1制御装置と、前記1つまたは複数のホスト・コンピュータのうちの少なくとも一部との間の第1通信リンクを提供するステップと、
前記1つまたは複数のホスト・コンピュータのうちの少なくとも他の一部の間の第2通信リンクを提供するステップと、
前記第1制御装置と、前記第2制御装置との間の第3通信リンクを提供するステップと、
ファイバ・チャネル・アービトレーテッド・ループ・プロトコルに従って前記第1通信リンクを動作するステップと、
ファイバ・チャネル・アービトレーテッド・ループ・プロトコルに従って前記第2通信リンクを動作するステップとを含む方法。
(42)ファイバ・チャネル・アービトレーテッド・ループ・プロトコルではないプロトコルに従う前記第3通信リンクを動作するステップをさらに含む上記(41)に記載の方法。
それぞれ前記メモリ要素のうちの対応する1つを受け取る、複数のストレージ・ビンと、
前記選択したメモリ要素を、前記要求側ホスト・コンピュータに結合する宛先コンセントと、
前記制御装置のコマンドによって動作可能であり、前記選択したメモリ要素を前記宛先コンセントに電気的に結合し、かつ前記宛先コンセントから電気的に分離するためのロボット式ピッカと、
前記複数のメモリ要素のうちの少なくとも一部を構成する、複数の繰り返し取外し可能なハード・ディスク・ドライブとを備えるライブラリ。
(2)前記宛先コンセントが、前記ライブラリのバックプレーンの一部である上記(1)に記載のライブラリ。
(3)前記選択したメモリ要素がハード・ディスク・ドライブであり、かつ前記物理アドレスが、選択した前記ハード・ディスク・ドライブに対応する前記ストレージ・ビンのうちの1つを識別する場合に、前記ピッカが、前記選択したハード・ディスク・ドライブを、前記識別したストレージ・ビンから前記宛先コンセントに移動させる上記(1)に記載のライブラリ。
(4)前記制御装置が、ファイバ・チャネル通信プロトコルに従って、前記宛先コンセントと、前記1つまたは複数のホスト・コンピュータとの間の伝送を実現する上記(1)に記載のライブラリ。
(5)前記メモリ要素の一部として使用するための、1つまたは複数の繰り返し取外し可能な固体メモリ・ユニットをさらに備える上記(1)に記載のライブラリ。
(6)前記制御装置によってキャッシュとして使用される固体メモリをさらに備える上記(1)に記載のライブラリ。
(7)前記バックプレーンに永続的に接続される、少なくとも1つのハード・ディスク・ドライブをさらに備える上記(2)に記載のライブラリ。
(8)1つまたは複数のホスト・コンピュータによって使用するための、ハード・ディスク・ドライブを備えるメモリ要素のライブラリにおいて、要求側ホスト・コンピュータに前記ライブラリ中の選択されたメモリ要素へのアクセスを与える方法であって、
前記要求側ホスト・コンピュータから前記選択したハード・ディスク・ドライブを識別する論理アドレスを受信し、前記選択したハード・ディスク・ドライブについての前記論理アドレスに対応する、前記ライブラリ中の物理アドレスによって、前記選択したハード・ディスク・ドライブを識別するステップと、
前記識別したハード・ディスク・ドライブをロボット式ピッカによって前記要求側ホスト・コンピュータへの結合を与える宛先コンセントに電気的に結するステップとを有する方法。
(9)前記ライブラリは、それぞれ前記ハード・ディスク・ドライブのうちの対応する1つを受け取るように適合された、複数のストレージ・ビンを有し、前記物理アドレスが、前記選択したハード・ディスク・ドライブが前記物理アドレスに対応する前記ストレージ・ビン中にあるかどうかを識別する上記(8)に記載の方法。
(10)前記選択したハード・ディスク・ドライブが前記ストレージ・ビンのうちの前記対応する1つに配置されている場合に、前記ストレージ・ビンまで並進し、前記ハード・ディスク・ドライブと接触するように前記ピッカに命令するステップをさらに含む上記(9)に記載の方法。
(11)上記(9のステップの後に、前記選択したハード・ディスク・ドライブを前記ストレージ・ビンから取り出すように前記ピッカに命令するステップをさらに含む上記(10)に記載の方法。
(12)上記(10)のステップの後に、前記選択したハード・ディスク・ドライブを前記宛先コンセントに電気的に結合する前記ステップより前に、前記ストレージ・ビンから前記宛先コンセントまで並進するように前記ピッカに命令するステップをさらに含む上記(11)に記載の方法。
(13)ファイバ・チャネル通信プロトコルに従って、前記宛先コンセントと、前記1つまたは複数のホスト・コンピュータとの間でデータを伝送するステップをさらに含む上記(8)に記載の方法。
(14)前記ライブラリは固体メモリを有し、前記要求側ホスト・コンピュータから書込みデータ・コマンドを受け取るステップと、前記ハード・ディスク・ドライブを前記宛先コンセントに電気的に結合する前記ステップの前に、書き込むべき前記データを一時的に格納するために前記固体メモリを利用するステップとをさらに含む上記(8)に記載の方法。
(15)前記メモリ要素が固体メモリをさらに備え、前記固体メモリを仮想ハード・ディスク・ドライブとして利用するステップをさらに含む上記(8)に記載の方法。
(16)前記ピッカによって、前記固体メモリを前記宛先コンセントに取外し可能に結合するステップをさらに含む上記(15)に記載の方法。
(17)1つまたは複数のホスト・コンピュータによって使用するための、複数のメモリ要素のライブラリであって、前記メモリ要素が、ハード・ディスク・ドライブと、繰り返し取外し可能な固体メモリとを備えるライブラリにおいて、要求側ホスト・コンピュータに、前記ライブラリ中の前記メモリ要素のうちの1つへのアクセスを与える方法であって、
前記要求側ホスト・コンピュータから前記選択したハード・ディスク・ドライブを識別する論理アドレスを受信し、前記要求したハード・ディスク・ドライブについての前記論理アドレスに対応する、固体メモリについての物理アドレスによって、前記固体メモリを識別するステップと、
前記識別した固体メモリをロボット式ピッカによって前記要求側ホスト・コンピュータへの結合を与える宛先コンセントに電気的に結合するステップとを含む方法。
(18)前記ライブラリは、それぞれ前記メモリ要素のうちの対応する1つを受け取るように適合された、複数のストレージ・ビンを有し、前記物理アドレスが、前記選択した固体メモリが前記物理アドレスに対応する前記ストレージ・ビン中にあるかどうかを識別し、前記ストレージ・ビン中にない場合に、前記ピッカが前記選択した固体メモリを所有しているかどうかを識別し、前記ピッカが所有していない場合に、前記選択した固体メモリが前記宛先コンセントに既に電気的に結合しているかどうかを識別する上記(17)に記載の方法。
(19)ハード・ディスク・ドライブのライブラリ中のディスク・ドライブにアクセスするための方法であって、
(a)前記ライブラリが大容量記憶装置の所定の選択した形態であることをホスト・コンピュータに対して表すステップであって、大容量記憶装置の前記選択した形態が、前記ホスト・コンピュータとのハンドシェーク・プロトコルを定義するステップと、
(b)前記ホスト・コンピュータからコマンドを受け取り、前記コマンドが関係するハード・ディスク・ドライブについての論理アドレスを受け取るステップと、
(c)前記論理アドレスを前記ライブラリ内の物理アドレスに関連付ける所定の索引を調べるステップと、
(d)前記論理アドレスを前記物理アドレスに変換するステップと、
(e)前記物理アドレスに対応する前記ハード・ディスク・ドライブの位置を突き止めるステップとを含み、
(f)前記ハード・ディスク・ドライブがストレージ・ビン中にある場合に、前記ストレージ・ビンから前記ハード・ディスク・ドライブを取り出すステップと、前記ハード・ディスク・ドライブを前記ホスト・コンピュータに結合するために、前記ハード・ディスク・ドライブを宛先コンセントまで並進させるステップと、前記ハード・ディスク・ドライブと前記宛先コンセントとを電気的に相互接続するステップと、前記コマンドを実行するステップとを含み、
(g)前記ハンドシェーク・プロトコルに従って前記ホスト・コンピュータとハンドシェークすることによって前記コマンドを実施するステップを含み、それによってステップ(c)〜(f)が前記ホスト・コンピュータに対して透過的となる方法。
(20)前記コマンドがデータを書き込むべき場合に、ステップ(f)の前に、前記データをキャッシュ・メモリに書き込むステップをさらに含む上記(19)に記載の方法。
(21)前記コマンドがデータを読み取るべき場合に、ステップ(f)の前に、前記データを求めて前記キャッシュ・メモリを調べるステップをさらに含む上記(19)に記載の方法。
(22)前記コマンドがデータを書き込むべき場合に、少なくとも2つのハード・ディスク・ドライブにわたって分散させるために前記データを分解するステップをさらに含む上記(19)に記載の方法。
(23)前記少なくとも2つのハード・ディスク・ドライブがRAIDとして動作する上記(22)に記載の方法。
(24)前記コマンドがデータを読み取るべき場合に、少なくとも2つのハード・ディスク・ドライブから前記データを集めることをさらに含む上記(19)に記載の方法。
(25)前記少なくとも2つのハード・ディスク・ドライブがRAIDとして動作する上記(24)に記載の方法。
(26)ライブラリ制御装置を含むハード・ディスク・ドライブのライブラリ内で使用するためのコンピュータ・プログラムであって、
(a)前記ライブラリが大容量記憶装置の所定の選択した形態であることをホスト・コンピュータに対して表すステップであって、大容量記憶装置の前記選択した形態が、前記ホスト・コンピュータとのハンドシェーク・プロトコルを定義するステップと、
(b)前記ホスト・コンピュータからI/Oコマンドを受け取り、前記コマンドが関係するハード・ディスク・ドライブについての論理アドレスを受け取るステップと、
(c)前記論理アドレスを前記ライブラリ内の物理アドレスに関連付ける、所定の索引を調べるステップと、
(d)前記論理アドレスを前記物理アドレスに変換するステップと、
(e)前記物理アドレスに対応する前記ハード・ディスク・ドライブの位置を突き止めるステップとを含み、
(f)前記ハード・ディスク・ドライブがストレージ・ビン中にある場合に、前記ストレージ・ビンから前記ハード・ディスク・ドライブを取り出すステップと、前記ハード・ディスク・ドライブを前記ホスト・コンピュータに結合するために、前記ハード・ディスク・ドライブを宛先コンセントまで並進させるステップと、前記ハード・ディスク・ドライブと前記宛先コンセントとを電気的に相互接続するステップと、前記コマンドを実行するステップとを含み、
(g)前記ハンドシェーク・プロトコルに従って前記ホスト・コンピュータとハンドシェークすることによって前記コマンドを実施するステップを含むステップを前記制御装置に実行させるコンピュータ・プログラム。
(27)前記コマンドがデータを書き込むべき場合に、前記コンピュータ命令のプログラムが、さらに、ステップ(f)の前に、前記ライブラリ制御装置に、前記データをキャッシュ・メモリに書き込ませることができる上記(26)に記載のコンピュータ・プログラム。
(28)前記コマンドがデータを読み取るべき場合に、前記コンピュータ命令のプログラムが、さらに、ステップ(f)の前に、前記ライブラリ制御装置に、前記データを求めて前記キャッシュ・メモリを調べさせることができる上記(26)に記載のコンピュータ・プログラム。
(29)前記コマンドがデータを書き込むべき場合に、前記コンピュータ命令のプログラムが、さらに、前記ライブラリ制御装置に、少なくとも2つのハード・ディスク・ドライブにわたって分散させるために前記データを分解させることができる上記(26)に記載のコンピュータ・プログラム。
(30)前記コンピュータ命令のプログラムが、前記ライブラリ制御装置に、前記少なくとも2つのハード・ディスク・ドライブをRAIDとして動作させることができる上記(29)に記載のコンピュータ・プログラム。
(31)前記コマンドがデータを読み取るべき場合に、前記コンピュータ命令のプログラムが、前記ライブラリ制御装置に、少なくとも2つのハード・ディスク・ドライブから前記データを集めさせることができる上記(26)に記載のコンピュータ・プログラム。
(32)前記コンピュータ命令のプログラムが、前記ライブラリ制御装置に、前記少なくとも2つのハード・ディスク・ドライブをRAIDとして動作させることができる上記(26)に記載のコンピュータ・プログラム。
(33)1つまたは複数のホスト・コンピュータと、ライブラリ制御装置によって制御される1つまたは複数のタイプのメモリ要素のライブラリとの間で通信するための方法であって、
所定のタイプのメモリ要素に指令するための複数のコマンドと、複数のプロトコルとの第1関連を形成するステップと、
前記複数のコマンドと、前記ライブラリ中のそれぞれのメモリ要素を制御するように適合された複数のコードとの第2関連を形成するステップと、
前記装置に指令するために、前記プロトコルのうちの1つに従ってホスト・コンピュータからコマンドを受け取るステップと、
前記プロトコルを識別するステップと、
前記第1関連を調べることによって前記コマンドを識別するステップと、
前記コマンドを実施するために、前記制御装置によって前記ライブラリ中の前記メモリ要素のうちの1つまたは複数を選択するステップと、
前記選択したメモリ要素についての前記第2関連を調べることによって、前記関連するコードを識別するステップと、
前記選択したメモリ要素を用いて前記ライブラリ中で前記コマンドを実施するために、前記識別したコードを実行するステップとを含む方法。
(34)前記識別したコードを実行するための前記ステップが、前記ライブラリ中のハード・ディスク・ドライブからデータを読み取るステップと、識別した前記プロトコルに従って前記データをフォーマットするステップと、その後前記データを前記ホスト・コンピュータに送るステップとをさらに含む上記(33)に記載の方法。
(35)前記識別したコードを実行する前記ステップが、前記ライブラリ中のハード・ディスク・ドライブに書き込むステップをさらに含む上記(33)に記載の方法。
(36)1つまたは複数のホスト・コンピュータと、ライブラリ制御装置によって制御される1つまたは複数のタイプのメモリ要素のライブラリとの間で通信する際に使用するためのコンピュータ・プログラムであって、
所定のタイプのメモリ要素に指令するための複数のコマンドと、複数のプロトコルとの第1関連を形成するステップと、
前記複数のコマンドと、前記ライブラリ中のそれぞれのメモリ要素を制御するように特に適合された複数のコードとの第2関連を形成するステップと、
前記装置に指令するために、前記プロトコルのうちの1つに従ってホスト・コンピュータからコマンドを受け取るステップと、
前記プロトコルを識別するステップと、
前記第1関連を調べることによって前記コマンドを識別するステップと、
前記コマンドを実施するために、前記制御装置によって前記ライブラリ中の前記メモリ要素のうちの1つまたは複数を選択するステップと、
前記選択したメモリ要素について前記第2関連を調べることによって、関連する前記コードを識別するステップと、
前記選択したメモリ要素を用いて前記ライブラリ中で前記コマンドを実施するために、前記識別したコードを実行するステップとを含むステップを前記制御装置に実行させるコンピュータ・プログラム。
(37)前記コンピュータ命令のプログラムが、少なくとも、前記ライブラリ中のハード・ディスク・ドライブからデータを読み取るステップと、前記識別した前記プロトコルに従って前記データをフォーマットするステップと、その後前記データを前記ホスト・コンピュータに送るステップとによって、前記ライブラリ制御装置に、前記識別したコードを実行させることができる上記(36)に記載のコンピュータ・プログラム。
(38)前記コンピュータ命令のプログラムが、少なくとも前記ライブラリ中のハード・ディスク・ドライブに書き込むステップによって、前記ライブラリ制御装置に、前記識別したコードを実行させることができる上記(36)に記載のコンピュータ・プログラム。
(39)1つまたは複数のホスト・コンピュータによって使用するための、ハード・ディスク・ドライブを備えるメモリ要素の第1ライブラリであって、要求側ホスト・コンピュータが、選択したハード・ディスク・ドライブを識別する論理アドレスを与えることによって、前記ライブラリ中の選択したハード・ディスク・ドライブにアクセスを要求することができ、前記第1ライブラリを制御し、前記1つまたは複数のホスト・コンピュータと通信するための第1制御装置を含む第1ライブラリと、
前記1つまたは複数のホスト・コンピュータによって使用するためのハード・ディスク・ドライブを備えるメモリ要素の第2ライブラリであって、要求側ホスト・コンピュータが、選択したハード・ディスク・ドライブを識別する論理アドレスを与えることによって、前記ライブラリ中の選択したハード・ディスク・ドライブにアクセスを要求することができ、前記第2ライブラリを制御し、前記1つまたは複数のホスト・コンピュータと通信するための第2制御装置を含み、前記第1ライブラリから少なくとも1キロメートル離れている第2ライブラリと、
前記第1制御装置と、前記1つまたは複数のホスト・コンピュータのうちの少なくとも一部との間の第1ファイバ・チャネル・アービトレーテッド・ループ通信リンク、ならびに前記第2制御装置と前記1つまたは複数のホスト・コンピュータのうちの少なくとも他の一部との間の第2ファイバ・チャネル・アービトレーテッド・ループ通信リンクであって、それぞれ、前記第1制御装置と前記第2制御装置との間の第3通信リンクに切り換え可能に接続される、第1ファイバ・チャネル・アービトレーテッド・ループ通信リンクおよび第2ファイバ・チャネル・アービトレーテッド・ループ通信リンクとを備える記憶域ネットワーク・システム。
(40)前記ホスト・コンピュータが、メインフレーム・コンピュータ、パーソナル・コンピュータ、サーバ、およびスタンドアロン・メモリ装置から選択された、少なくとも2つの異なるタイプの装置を備える上記(39)に記載の記憶域ネットワーク。
(41)エリア・ネットワーク記憶装置のための方法であって、
1つまたは複数のホスト・コンピュータによって使用するためのハード・ディスク・ドライブを備えるメモリ要素の第1ライブラリを提供するステップであって、要求側ホスト・コンピュータが、前記選択したハード・ディスク・ドライブを識別する論理アドレスを与えることによって、前記ライブラリ中の選択したどのハード・ディスク・ドライブにもアクセスを要求することができ、前記第1ライブラリが、前記第1ライブラリを制御し、前記1つまたは複数のホスト・コンピュータと通信するための第1制御装置を含むステップと、
1つまたは複数のホスト・コンピュータによって使用するためのハード・ディスク・ドライブを備えるメモリ要素の第2ライブラリを提供するステップであって、要求側ホスト・コンピュータが、前記選択したハード・ディスク・ドライブを識別する論理アドレスを与えることによって、前記ライブラリ中の選択したどのハード・ディスク・ドライブにもアクセスを要求することができ、前記第2ライブラリが、前記第2ライブラリを制御し、前記1つまたは複数のホスト・コンピュータと通信するための第2制御装置を含み、前記第1ライブラリと前記第2ライブラリとが、少なくとも1キロメートルだけ分離しているステップと、
前記第1制御装置と、前記1つまたは複数のホスト・コンピュータのうちの少なくとも一部との間の第1通信リンクを提供するステップと、
前記1つまたは複数のホスト・コンピュータのうちの少なくとも他の一部の間の第2通信リンクを提供するステップと、
前記第1制御装置と、前記第2制御装置との間の第3通信リンクを提供するステップと、
ファイバ・チャネル・アービトレーテッド・ループ・プロトコルに従って前記第1通信リンクを動作するステップと、
ファイバ・チャネル・アービトレーテッド・ループ・プロトコルに従って前記第2通信リンクを動作するステップとを含む方法。
(42)ファイバ・チャネル・アービトレーテッド・ループ・プロトコルではないプロトコルに従う前記第3通信リンクを動作するステップをさらに含む上記(41)に記載の方法。
10 ライブラリ
11 ハード・ディスク・ドライブ
12 格納位置(ビン)
13 ホスト・コンピュータ
16 ピッカ
17 宛先コンセント
18 ライブラリ制御装置
19 通信インターフェース
21 並進機構
22 親ねじ
23 メール・スロット
24 グリッピング要素
26a アーム
26b アーム
28a 端部エフェクタ
28b 端部エフェクタ
30 ソレノイド
32 電力出力コネクタ(空きスロット)
32 専用ハード・ディスク・ドライブ
33 固体メモリ
34 I/Oコネクタ
34 取外し可能固体メモリ
36 専用固体メモリ
38 キャッシュ
40 仮想ハード・ディスク・ドライブ
100 記憶域ネットワーク
102 メインフレーム・コンピュータ
104 パーソナル・コンピュータ
106 サーバ
108 スタンドアロン・ディスク・ドライブ
11 ハード・ディスク・ドライブ
12 格納位置(ビン)
13 ホスト・コンピュータ
16 ピッカ
17 宛先コンセント
18 ライブラリ制御装置
19 通信インターフェース
21 並進機構
22 親ねじ
23 メール・スロット
24 グリッピング要素
26a アーム
26b アーム
28a 端部エフェクタ
28b 端部エフェクタ
30 ソレノイド
32 電力出力コネクタ(空きスロット)
32 専用ハード・ディスク・ドライブ
33 固体メモリ
34 I/Oコネクタ
34 取外し可能固体メモリ
36 専用固体メモリ
38 キャッシュ
40 仮想ハード・ディスク・ドライブ
100 記憶域ネットワーク
102 メインフレーム・コンピュータ
104 パーソナル・コンピュータ
106 サーバ
108 スタンドアロン・ディスク・ドライブ
Claims (8)
- 1つまたは複数のホスト・コンピュータと、ライブラリ制御装置によって制御される1つまたは複数のタイプのメモリ要素のライブラリとの間で通信するための方法であって、
所定のタイプのメモリ要素に指令するための複数のコマンドと、複数のプロトコルとの第1関連を形成するステップと、
前記複数のコマンドと、前記ライブラリ中のそれぞれのメモリ要素を制御するように適合された複数のコードとの第2関連を形成するステップと、
前記装置に指令するために、前記プロトコルのうちの1つに従ってホスト・コンピュータからコマンドを受け取るステップと、
前記プロトコルを識別するステップと、
前記第1関連を調べることによって前記コマンドを識別するステップと、
前記コマンドを実施するために、前記制御装置によって前記ライブラリ中の前記メモリ要素のうちの1つまたは複数を選択するステップと、
前記選択したメモリ要素についての前記第2関連を調べることによって、前記関連するコードを識別するステップと、
前記選択したメモリ要素を用いて前記ライブラリ中で前記コマンドを実施するために、前記識別したコードを実行するステップとを含む方法。 - 前記識別したコードを実行するための前記ステップが、前記ライブラリ中のハード・ディスク・ドライブからデータを読み取るステップと、識別した前記プロトコルに従って前記データをフォーマットするステップと、その後前記データを前記ホスト・コンピュータに送るステップとをさらに含む請求項1に記載の方法。
- 前記識別したコードを実行する前記ステップが、前記ライブラリ中のハード・ディスク・ドライブに書き込むステップをさらに含む請求項1に記載の方法。
- 1つまたは複数のホスト・コンピュータと、ライブラリ制御装置によって制御される1つまたは複数のタイプのメモリ要素のライブラリとの間で通信する際に使用するためのコンピュータ・プログラムであって、
所定のタイプのメモリ要素に指令するための複数のコマンドと、複数のプロトコルとの第1関連を形成するステップと、
前記複数のコマンドと、前記ライブラリ中のそれぞれのメモリ要素を制御するように特に適合された複数のコードとの第2関連を形成するステップと、
前記装置に指令するために、前記プロトコルのうちの1つに従ってホスト・コンピュータからコマンドを受け取るステップと、
前記プロトコルを識別するステップと、
前記第1関連を調べることによって前記コマンドを識別するステップと、
前記コマンドを実施するために、前記制御装置によって前記ライブラリ中の前記メモリ要素のうちの1つまたは複数を選択するステップと、
前記選択したメモリ要素について前記第2関連を調べることによって、関連する前記コードを識別するステップと、
前記選択したメモリ要素を用いて前記ライブラリ中で前記コマンドを実施するために、前記識別したコードを実行するステップとを含むステップを前記制御装置に実行させるコンピュータ・プログラム。 - 前記コンピュータ命令のプログラムが、少なくとも、前記ライブラリ中のハード・ディスク・ドライブからデータを読み取るステップと、前記識別した前記プロトコルに従って前記データをフォーマットするステップと、その後前記データを前記ホスト・コンピュータに送るステップとによって、前記ライブラリ制御装置に、前記識別したコードを実行させることができる請求項4に記載のコンピュータ・プログラム。
- 前記コンピュータ命令のプログラムが、少なくとも前記ライブラリ中のハード・ディスク・ドライブに書き込むステップによって、前記ライブラリ制御装置に、前記識別したコードを実行させることができる請求項4に記載のコンピュータ・プログラム。
- 1つまたは複数のホスト・コンピュータによって使用するための、ハード・ディスク・ドライブを備えるメモリ要素の第1ライブラリであって、要求側ホスト・コンピュータが、選択したハード・ディスク・ドライブを識別する論理アドレスを与えることによって、前記ライブラリ中の選択したハード・ディスク・ドライブにアクセスを要求することができ、前記第1ライブラリを制御し、前記1つまたは複数のホスト・コンピュータと通信するための第1制御装置を含む第1ライブラリと、
前記1つまたは複数のホスト・コンピュータによって使用するためのハード・ディスク・ドライブを備えるメモリ要素の第2ライブラリであって、要求側ホスト・コンピュータが、選択したハード・ディスク・ドライブを識別する論理アドレスを与えることによって、前記ライブラリ中の選択したハード・ディスク・ドライブにアクセスを要求することができ、前記第2ライブラリを制御し、前記1つまたは複数のホスト・コンピュータと通信するための第2制御装置を含み、前記第1ライブラリから少なくとも1キロメートル離れている第2ライブラリと、
前記第1制御装置と、前記1つまたは複数のホスト・コンピュータのうちの少なくとも一部との間の第1ファイバ・チャネル・アービトレーテッド・ループ通信リンク、ならびに前記第2制御装置と前記1つまたは複数のホスト・コンピュータのうちの少なくとも他の一部との間の第2ファイバ・チャネル・アービトレーテッド・ループ通信リンクであって、それぞれ、前記第1制御装置と前記第2制御装置との間の第3通信リンクに切り換え可能に接続される、第1ファイバ・チャネル・アービトレーテッド・ループ通信リンクおよび第2ファイバ・チャネル・アービトレーテッド・ループ通信リンクとを備える記憶域ネットワーク・システム。 - 前記ホスト・コンピュータが、メインフレーム・コンピュータ、パーソナル・コンピュータ、サーバ、およびスタンドアロン・メモリ装置から選択された、少なくとも2つの異なるタイプの装置を備える請求項7に記載の記憶域ネットワーク。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2005121685A JP2005293603A (ja) | 2005-04-19 | 2005-04-19 | 透過的エミュレーティング・インターフェースを有するハード・ディスク・ドライブのライブラリ |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2005121685A JP2005293603A (ja) | 2005-04-19 | 2005-04-19 | 透過的エミュレーティング・インターフェースを有するハード・ディスク・ドライブのライブラリ |
Related Parent Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2002119717A Division JP3683867B2 (ja) | 2001-04-26 | 2002-04-22 | 透過的エミュレーティング・インターフェースを有するハード・ディスク・ドライブのライブラリ |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2005293603A JP2005293603A (ja) | 2005-10-20 |
| JP2005293603A6 true JP2005293603A6 (ja) | 2006-04-27 |
Family
ID=35326388
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2005121685A Pending JP2005293603A (ja) | 2005-04-19 | 2005-04-19 | 透過的エミュレーティング・インターフェースを有するハード・ディスク・ドライブのライブラリ |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2005293603A (ja) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN108791575B (zh) * | 2018-08-22 | 2023-08-04 | 大连民族大学 | 一种食物搬运车 |
-
2005
- 2005-04-19 JP JP2005121685A patent/JP2005293603A/ja active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3683867B2 (ja) | 透過的エミュレーティング・インターフェースを有するハード・ディスク・ドライブのライブラリ | |
| JP4410557B2 (ja) | コンピュータ・システム内のテープ装置にアクセスするための方法およびシステム | |
| JP4252301B2 (ja) | 記憶システム及びそのデータバックアップ方法 | |
| US6052341A (en) | Device element allocation manager and method for a multi-library system for multiple host connections | |
| US7272687B2 (en) | Cache redundancy for LSI raid controllers | |
| EP2035933B1 (en) | Generating storage system commands | |
| CN101958918B (zh) | 具有文件夹分享功能的虚拟媒体及方法 | |
| JP4386694B2 (ja) | 記憶システム及び記憶制御装置 | |
| US8341199B2 (en) | Storage system, a method of file data back up and a method of copying of file data | |
| CN100417922C (zh) | 存储系统 | |
| US8296468B2 (en) | Storage controller and controlling method therefor | |
| JP2006518517A5 (ja) | ||
| JP2005250938A (ja) | 記憶制御システム及び方法 | |
| RU2005103588A (ru) | Многопротокольное устройство хранения данных, реализующее интегрированную поддержку файловых и блочных протоколов доступа | |
| US20050071546A1 (en) | Systems and methods for improving flexibility in scaling of a storage system | |
| JP2003316607A (ja) | ストレージシステムの運用管理方式 | |
| US20080235404A1 (en) | Storage apparatus and data transfer method thereof | |
| JP2006185000A (ja) | ストレージ装置 | |
| JP2004527817A (ja) | ネットワークに直接に取付可能なディスクシステム | |
| US6941260B2 (en) | Method and apparatus for emulating a fiber channel port | |
| JP2005293603A6 (ja) | 透過的エミュレーティング・インターフェースを有するハード・ディスク・ドライブのライブラリ | |
| JP2005293603A (ja) | 透過的エミュレーティング・インターフェースを有するハード・ディスク・ドライブのライブラリ | |
| US20060059279A1 (en) | Storage device and method for controlling storage device packet size | |
| EP1748616A1 (en) | Network-attached storage device having a connection to a local device | |
| JP2003296154A (ja) | ボリューム統合管理方法および統合管理システム |