(57)【特許請求の範囲】
【請求項１】
ディスク記憶媒体と、
上記ディスク記憶媒体をアクセスしてデータをRead/Writeするためのディスク制御装置と、
該ディスク装置をネットワークに接続するためのインタフェースと、
上記ディスク記録媒体上に定義されたパーティション毎のファイル編成を示す第１のパラメータ、上記パーティションと対応するデータ管理属性を示す第２のパラメータ、上記パーティションと対応して実行すべきデータ処理を示す第３のパラメータのうちの少なくとも１つのパラメータを管理する管理テーブルと、
該管理テーブルで管理されるパラメータの修正を認証するか否かの許可条件をその修正の種類と対応させて記憶する認証テーブルと、
上記インタフェースを介して受信されたオブジェクト識別子を含む制御コマンドを上記管理テーブルで管理されるパラメータの現在値に従って上記ディスク記憶媒体の物理アドレスを含む制御コマンドに変換して、上記ディスク制御装置に与えるオブジェクト管理手段と、
上記インタフェースを介して上記パーティションの識別子と対応して、上記第１のパラメータ、上記第２のパラメータ及び上記第３のパラメータののうちの少なくとも１つを含み、上記管理テーブルで管理されるパラメータの修正を要求する修正要求メッセージを受信すると、該修正要求メッセージが認証される修正要求メッセージであるか否かを上記認証テーブルに基づいて判定する判定手段と、
該判定手段で認証される修正要求メッセージでないと判定すると、修正要求を拒否したことを示す第１のメッセージを回答する第１のメッセージ回答手段と、
上記判定手段で認証される修正要求メッセージであると判定すると、修正要求を受け入れたことを示す第２のメッセージを回答する第２のメッセージ回答手段と、
該第２のメッセージ回答手段で上記第２のメッセージを回答すると、上記修正要求メッセージに含まれるパラメータに従って、上記管理テーブルが管理する第１のパラメータ、第２のパラメータ及び第３のパラメータのうちの少なくとも１つを修正するオブジェクト管理修正手段とを備えることを特徴とするディスク記憶装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ディスク記憶装置に関し、更に詳しくは、修正可能なデータ管理機能を有するディスク記憶装置に関する。
【０００２】
【従来の技術】
従来、磁気ディスク記憶装置は、ハ−ドウェア構成上の制約のため、例えば、一定のブロックサイズでデ−タを管理するといった簡単な機能しか提供していなかった。
【０００３】
ＡＮＳＩ（American National Standard Institute）で開発され、磁気ディスク記憶装置と計算機との間のインタフェ−スとして広く使用されているＳＣＳＩ（Small Computer System Interface）では、デ−タの入出力は、ファイルやテ−ブルといった論理的に一塊のデ−タ構造単位ではなく、物理的に決まる所定サイズのブロック（セクタ）単位で行われる。ＳＣＳＩは、比較的低位のインタフェ−スしか提供していないため、例えば、ファイルやテ−ブルといった論理的なデータブロックでデータ転送する高位のインタフェ−スを実現するためには、磁気ディスク記憶装置が直接接続されているホスト計算機（またはディスクサーバ）上で実行されるファイルシステムまたはデ−タベ−ス管理システムの助けを必要とした。また、従来の磁気ディスク記憶装置は、通信ネットワ−クに直接接続するための機構を持っていなかったため、磁気ディスク記憶装置に直接接続されたホスト計算機以外の計算機上で動作するアプリケ−ションプログラムが、遠隔の磁気ディスク記憶装置にデータを入出力するためには、上記磁気ディスクのホスト計算機の介在を必要とした。
【０００４】
近年、ハ−ドウェア技術の進歩と低価格化を背景として、通信ネットワ−クと接続するためのインタフェース機構を備え、遠隔の計算機からホスト計算機を介することなく直接的に磁気ディスクにデ−タを入出力できる磁気ディスク記憶装置：ＮＡＳＤ(Network-Attached Secure Disk）がカ−ネギ−メロン大学のＧ．Ｇｉｂｓｏｎにより提案された（Ｔｈｅ  ８ｔｈ  ＡＳＰＬＯＳ  Ｃｏｎｆｅｒｅｎｃｅ予稿集、１９９８年）。ＮＡＳＤは、ネットワ−ク接続機構を備えているだけではなく、例えば、ファイルのような、論理的に一塊のデ−タ構造をアクセス単位にできるように、記憶データを管理している。
【０００５】
ここで、近い将来広く普及すると予測されているデ−タマイニングや意志決定支援システムといったＯＬＡＰ（Online Analytical Processing）の処理を考えてみる。ＯＬＡＰにおいては、例えば、市場動向を予測するために、大量のビジネスデ−タの中から或る条件を満たすデ−タの検索処理が頻繁に実行される。従来のデータ検索システムでは、磁気ディスクから検索対象となる全てのビジネスデ−タを順次に読み出し、各データが検索条件を満たすか否かを計算機側で判定することによって、目的データを検索しているため、検索条件を満たさない大半のデ−タが、結果的に無駄に、計算機に転送されていた。この場合、検索条件を磁気ディスク記憶装置に渡し、検索条件を満たすデ−タのみを計算機側に転送できれば、計算機と磁気ディスク記憶装置との間でのデ−タ転送量と計算機の負担を大きく削減できる。
【０００６】
ＯＬＡＰや画像処理の支援機能を磁気ディスク記憶装置にもたせることにより、データ分析や画像処理の高速化を見込めることがカ−ネギ−メロン大学（Ｔｈｅ  ２４ｔｈ  ＶＬＤＢ  Ｃｏｎｆｅｒｅｎｃｅ予稿集、１９９８年）や、カリフォルニア大学サンタバ−バラ校（Ｔｈｅ  ８ｔｈ  ＡＳＰＬＯＳ  Ｃｏｎｆｅｒｅｎｃｅ、１９９８年）で行われた評価実験により示されている。
【０００７】
前述のＮＡＳＤは、ハ−ドウェアの技術的進歩や低価格化により、論理的なデ−タ単位でデ−タ処理を実行するハ−ドウェアの磁気ディスク記憶装置への搭載がコスト的に可能となったことを背景として提案された。ハ−ドウェアの技術が更に進歩して価格が一層低下すれば、より高機能のハ−ドウェアを磁気ディスク記憶装置に搭載することが可能となる。
【０００８】
しかしながら、ＮＡＳＤが備える機能は固定的であり、ユ−ザの都合に応じて、例えば、ディレクトリやフォルダのような論理的なデータ構造（以下、オブジェクトと言う）をアクセス単位として記憶データを管理するための機能（以下、オブジェクト管理機能という）を自由に追加したり、該機能の一部修正したりすることができない。また、磁気ディスク記憶装置では、デ−タキャッシング機能を使用することによって性能を大きく向上できるが、ＮＡＳＤでは、ユーザが、上記デ−タキャッシング機能のようなデ−タ管理方式の属性を変更したり、ＯＬＡＰ支援機能のような拡張機能を追加したりすることができない。
【０００９】
【発明が解決しようとする課題】
本発明の目的は、修正可能なオブジェクト管理機能を有するディスク記憶装置を提供することにある。
【００１０】
本発明の他の目的は、ファイル編成や、オブジェクト管理の属性、拡張機能をユ−ザが設定、修正可能なディスク記憶装置を提供することにある。
【００１１】
【課題を解決するための手段】
上記目的を達成するために、本発明のディスク記憶装置は、ディスク記憶媒体と、上記ディスク記憶媒体をアクセスしてデータをRead/Writeするためのディスク制御装置と、該ディスク装置をネットワークに接続するためのインタフェースと、上記ディスク記録媒体上に定義されたパーティション毎のファイル編成を示す第１のパラメータ、上記パーティションと対応するデータ管理属性を示す第２のパラメータ、上記パーティションと対応して実行すべきデータ処理を示す第３のパラメータのうちの少なくとも１つのパラメータを管理する管理テーブルと、該管理テーブルで管理されるパラメータの修正を認証するか否かの許可条件をその修正の種類と対応させて記憶する認証テーブルと、上記インタフェースを介して受信されたオブジェクト識別子を含む制御コマンドを上記管理テーブルで管理されるパラメータの現在値に従って上記ディスク記憶媒体の物理アドレスを含む制御コマンドに変換して、上記ディスク制御装置に与えるオブジェクト管理手段と、上記インタフェースを介して上記パーティションの識別子と対応して、上記第１のパラメータ、上記第２のパラメータ及び上記第３のパラメータののうちの少なくとも１つを含み、上記管理テーブルで管理されるパラメータの修正を要求する修正要求メッセージを受信すると、該修正要求メッセージが認証される修正要求メッセージであるか否かを上記認証テーブルに基づいて判定する判定手段と、該判定手段で認証される修正要求メッセージでないと判定すると、修正要求を拒否したことを示す第１のメッセージを回答する第１のメッセージ回答手段と、上記判定手段で認証される修正要求メッセージであると判定すると、修正要求を受け入れたことを示す第２のメッセージを回答する第２のメッセージ回答手段と、該第２のメッセージ回答手段で上記第２のメッセージを回答すると、上記修正要求メッセージに含まれるパラメータに従って、上記管理テーブルが管理する第１のパラメータ、第２のパラメータ及び第３のパラメータのうちの少なくとも１つを修正するオブジェクト管理修正手段からなる。
【００１４】
【発明の実施の形態】
図１は、本発明によるディスク記憶装置を含む計算機ネットワーク構成の１実施例を示す。
【００１５】
計算機ネットワークは、それぞれファイル、テ−ブル、レコ−ドといった論理的なデータ構造の単位である複数のオブジェクトが格納されている磁気ディスク記憶装置１００（１００Ａ、１００Ｂ、１００Ｃ）と、オブジェクト管理修正（ Object management modification）の要求元（requester）１３０となるサーバ１３０Ａや端末１３０Ｂなどの計算機と、これらの装置を接続するネットワ−ク１１０からなる。上記ネットワーク１００は、例えば、ゲートウエイ１４０を介して、他の計算機ネットワークや通信ネットワークに接続されている。
【００１６】
ここで、オブジェクト管理修正要求元１３０は、典型的にはサーバ、クライアント端末、ホスト計算機などの計算機、または、これらの計算機上で実行されるアプリケーションプログラムであるが、アプリケーションプログラムを記憶している磁気ディスクのような記憶装置も、特殊なケースとして、オブジェクト管理修正要求元１３０になり得る。
【００１７】
図２は、磁気ディスク記憶装置１００の構成の１実施例を示す。
【００１８】
本発明が適用される磁気ディスク記憶装置１００は、磁気ディスク１０１と、上記磁気ディスク１０１をアクセスしてデータを読み書きするディスクコントローラ１０２の他に、プロセッサ１０３と、上記プロセッサによって実行される  後述するオブジェクト管理プログラム３５０やオブジェクト管理修正プログラム３２０等のプログラムを格納するためのメモリ２００と、読み書き（Read/Write）データをバッファリングするためのバッファメモリ領域や各種のテーブルが形成されるデータメモリ１０４と、ネットワーク１１０と接続するためのネットワークインタフェース１０５と、内部バス１０６とからなる。
【００１９】
プロセッサ１０３は、オブジェクト管理プログラム３５０を実行することによって、ユーザからネットワーク１１０およびネットワークインタフェース１０５を介して与えられた高位のファイル制御命令を、ディスクコントローラ１０２が応答可能な、例えば、ＳＣＳＩで定義された低位の制御命令に変換する。また、上記プロセッサ１０３は、ユーザからネットワーク１１０およびネットワークインタフェース１０５を介して与えられたオブジェクト管理修正要求に応答して、オブジェクト管理修正プログラム３２０を実行することによって、上記オブジェクト管理プログラム３５０の機能を修正する。
【００２０】
ここでは、ディスクコントローラ１０２とは別のプロセッサ１０３によって、オブジェクト管理プログラム３５０とオブジェクト管理修正プログラム３２０とを実行する構成を示したが、これらのプログラムをディスクコントローラ１０２に内蔵されたプロセッサによって実行するように構成してもよい。
【００２１】
図３は、オブジェクト管理修正要求元１３０と磁気ディスク１００が備えるソフトウエアの構成を示す。
【００２２】
オブジェクト管理修正要求元１３０は、磁気ディスク記憶装置１００にオブジェクト管理修正のための要求メッセージ４００を発行して、磁気ディスク記憶装置から回答メッセージ４１０を受け取るオブジェクト管理修正要求プログラム４２０と、上記回答メッセージ４１０に応じて更新される管理テーブル４３０とを備える。  磁気ディスク１０１にデータをRead/Writeするためのコマンド４４０は、通常の計算機が備える  上記要求プログラムとは別のアプリケーションプログラムによって発行される。
【００２３】
磁気ディスク記憶装置１００のプログラムメモリ２００は、オブジェクト管理プログラム３５０と、ネットワーク１１０を介して受信された要求メッセージ３００（要求メッセージ４００と同じ）に応じて、上記オブジェクト管理プログラム３５０の機能を修正し、修正結果を示す回答メッセージ３１０を出力するためのオブジェクト管理修正プログラム３２０と、管理テーブル３３０と、オブジェクト管理プログラム３５０によって利用される各種の部品プログラム３４０およびオブジェクト管理テーブル３５５と、オブジェクト管理修正プログラム３２０によって参照される認証テーブル３７０とを含む。３６０は、Ｒ／Ｗデータを一時的に蓄積するためにデータメモリ１０４で形成されるバッファメモリを示す。
【００２４】
上記オブジェクト管理修正プログラム３２０やオブジェクト管理プログラム３５０は、磁気ディスク１０１に格納しておき、磁気ディスク記憶装置１００の電源を入れた時、磁気ディスク１０１から自動的にプログラムメモリ２００に読み出された後、実行される。
【００２５】
オブジェクト管理修正要求元１３０は、磁気ディスク記憶装置１００に対して、オブジェクト編成（ファイル編成）、デ−タ管理属性、あるいはオブジェクト管理機能の拡張に関するパラメータの変更（新規設定を含む）を要求するための要求メッセージ４００を送る。
【００２６】
ここで、データ管理属性とは、例えば、ディスクに読み書きするデータを一次的に格納するためのバッファのサイズや、バッファサイズを固定、可変のどちらにするか、といった事項を示す。また、オブジェクト管理機能の拡張とは、例えば、ディスクから読み出された画像データを要求元に送信する前にエッジ検出するための機能、画像データのノイズ除去機能、ＯＬＡＰにおける選択機能等、通常のデータＲ／Ｗ機能以外の特殊な機能の追加を意味している。
【００２７】
図４は、要求メッセージ４００のフォーマットを示す。
【００２８】
要求メッセージ４００は、要求の発行元（オブジェクト管理修正要求元）を特定するための要求元ＩＤ４０１と、要求番号４０２と、修正の種類４０３と、要求内容を示すパラメ−タフィールド４０４とからなる。
【００２９】
上記要求元ＩＤ４０１は、例えば、要求元アプリケーションプログラムが動作する計算機のＩＰアドレスと、上記アプリケーションプログラムが使用するポートの番号との組み合わせからなる。また、上記パラメ−タフィールド４０４は、磁気ディクス１０１上の記憶エリアに定義されたパーティションのＩＤを示すフィールド４０４Ａと、オブジェクト編成を示すフィールド４０４Ｂと、オブジェクト管理属性を示すフィールド４０４Ｃと、オブジェクト管理機能の拡張を示すフィールド４０４Ｄとからなる。
【００３０】
図５は、オブジェクト管理修正プログラム３２０の処理結果を通知するための回答メッセージ４１０のフォーマットを示す。回答メッセージ３１０のフォーマットもこれと同一である。  回答メッセージ４１０は、要求元ＩＤ４１１と、要求番号４１２と、処理結果４１３とを含む。
【００３１】
図６は、オブジェクト管理プログラム３５０の動作を規定する管理テーブル３３０の構成を示す。管理テーブル３３０はハ−ドウェア仕様テーブル３３０Ａとソフトウェア仕様テーブル３３０Ｂとからなり、その内容は、オブジェクト管理修正プログラム３２０によって修正される。
【００３２】
ハ−ドウェア仕様テーブル３３０Ａは、例えば、プロセッサ１０３の種類を示すフィールド３３１と、磁気ディスク記憶装置１００に付随するメモリ２００の容量を示すフィールド３３２と、磁気ディスク媒体１０１のパ−ティション構成を示す３３３からなり、オブジェクト管理を修正を選択する際に有用な参考情報を示す。
【００３３】
ソフトウェア仕様テーブル３３０Ｂは、オブジェクト編成に関するパラメ−タテーブル３３４と、オブジェクト管理属性に関するパラメ−タテーブル３３５と、オブジェクト管理拡張機能に関するパラメ−タテーブル３３６からなる。
【００３４】
図７は、パ−ティション構成フィールド３３３の詳細を示す。
【００３５】
パ−ティション構成は、パーティションＩＤ ３３３Ａと対応して、駆動装置ＩＤ：３３３Ｂと、記憶領域３３３Ｃを定義している。
【００３６】
図８は、オブジェクト編成パラメ−タテーブル３３４の詳細を示す。
【００３７】
オブジェクト編成パラメ−タテーブル３３４では、選択可能なパラメータの値３３４Ａが予め限られており、パ−ティションＩＤ：３３４Ｂと対応して現在のパラメータ値３３４Ｃを示す。  選択可能なパラメータ値３３４としては、例えば、ツリ−方式、分散ツリ−方式、インデックス方式、分散インデックス方式、不使用、ユ−ザ指定等を示すパラメータ番号が用意されている。
【００３８】
図９は、オブジェクト管理属性パラメ−タテーブル３３５の詳細を示す。
【００３９】
オブジェクト管理属性パラメ−タテーブル３３５は、パーティションＩＤ毎の複数のサブテーブル３３５−１、３３５−２、…からなり、各サブテーブルは、オブジェクト管理属性に関する選択項目３３５Ｂと対応して、パラメータ番号３３５Ａと、選択可能なパラメータ値３３５Ｃと、現在のパラメータ値３３５Ｄを示す。
【００４０】
図１０は、オブジェクト管理拡張機能のパラメ−タテーブル３３６の詳細を示す。  拡張機能パラメ−タテーブル３３６は、パーティションＩＤ毎の複数のサブテーブル３３６−１、３３６−２、…からなり、各サブテーブルは、拡張機能に関する選択項目３３６Ｂと対応して、パラメータ番号３３６Ａと、選択可能なパラメータ値３３６Ｃと、現在のパラメータ値３３６Ｄを示す。ここに示した例では、選択項目として、部品プログラムの指定タイミング（Ｐ２１）と、部品プログラム（Ｐ２２）と、部品プログラムの実行タイミング（Ｐ２３）等が用意してある。
【００４１】
メモリ２００には、図３に示すように、パラメータＰ２２として選択可能な部品プログラム３４０が用意されている。  選択可能な部品プログラムとしてパラメ−タテーブル３３６が示す部品プログラムの中に、ユーザの希望するものがない場合には、ユーザは、必要な部品プログラムをメモリ２００に追加するか、あるいはその部品プログラムの獲得方法を磁気ディスク記憶装置に示すことによって、オブジェクト管理プログラム３５０に所望の機能を追加できる。
【００４２】
オブジェクト管理修正要求元装置のユーザは、上述した選択可能なパラメータ値の中から、適切なパラメータ値を選択することによって、管理テーブル３３０のパラメータをユーザのアプリケーションプログラムに適合させる。オブジェクト管理プログラム３５０は、管理テーブル３３０における各パラメータの現在値に従って、パーティション毎に、オブジェクト編成、属性、実行すべき要素プログラム３４０を選択的に変えながら、データのRead／Writeと部品プログラムによるデータ処理とを実行する。これによって、磁気ディスク記憶装置１００で、ユーザの要求に合致したデータ管理とデータ処理が可能となる。
【００４３】
例えば、データの読み出し動作においては、磁気ディスク１０１から読み出されたデ−タは、バッファメモリ３６０に一時的に格納される。読出しデ−タに何れかの部品プログラムによる特殊なデータ処理の実行が指定されていた場合、データを磁気ディスク１０１からバッファメモリ３６０に読み出す過程、あるいは、バッファメモリ３６０に読み出した後に、上記特殊データ処理が実行される。そして、特殊データ処理を施されたデータが、オブジェクト管理修正プログラム３２０によって、要求元に転送される。
【００４４】
一方、データの書き込み動作においては、要求元から受け取った書込みデ−タは、オブジェクト管理修正プログラム３２０によって、バッファメモリ３６０に一時的に格納される。書き込みデータに何れかの部品プログラムによる特殊なデータ処理の実行が指定されていた場合、オブジェクト管理プログラム３５０は、データがバッファメモリ３６０に格納されている間に、あるいは、バッファメモリ３６０から磁気ディスク１０１に転送する過程で、書き込みデータに上記特殊データ処理を実行する。
【００４５】
図１１は、オブジェクト管理プログラム３５０の機能修正プロセスにおけるオブジェクト管理修正要求プログラム（以下、要求プログラムと言う）４２０とオブジェクト管理修正プログラム（以下、修正プログラムと言う）３２０の主要動作のタイムチャートを示す。
【００４６】
要求プログラム４２０が起動された時、管理テーブル４３０に、パラメータ現在値４３０などのデータが既に設定されていれば、オブジェクト管理の修正要求ステップ４２２を実行できる。もし、管理テーブル４３０にオブジェクト管理修正に必要なデータが未設定の場合は、要求プログラム４２０は、オブジェクト管理修正権限の認証要求５００を修正プログラムに送信する（ステップ４２１）。上記認証要求５００は、例えば、要求者（ユーザまたは要求元装置）の識別情報と、要求者が希望する修正の種類とを含む。
【００４７】
修正プログラム４２０は、上記認証要求５００を受信すると、認証ルーチンを実行する（ステップ３２１）。オブジェクト管理修正権限の認証では、認証テーブル３７０が参照される。上記認証テーブル３７０は、修正の種類３７０Ａと対応して、許可条件３７０Ｂを定義している。認証ルーチン３２１は、要求者が許可条件３７０Ｂを満たすか否かによって、オブジェクト管理修正の拒否、または許可を示す回答メッセージ５１０を要求プログラム４２０に送信する（ステップ３２２）。 オブジェクト管理修正を許可する回答メッセージには、管理テーブル３３０の一部または全ての内容が回答データとして含まれる。
【００４８】
要求プログラム４２０は、オブジェクト管理修正を許可する回答メッセージを受信した時、回答データを管理テーブル４３０に設定する。要求元が、管理テーブル４３０を参照して、オブジェクト管理を修正するためのパラメータを指定すると、オブジェクト管理修正要求メッセージ４００が生成され、修正プログラム３２０に送信される（ステップ４２２）。
【００４９】
修正プログラム３２０は、上記要求メッセージ４００に応答して、オブジェクト管理修正ルーチンを実行し（ステップ３２３）、管理テーブル３３０の更新結果を示す回答メッセージ３１０を要求プログラム４２０に送信する（ステップ３２４）。要求プログラム４２０は、上記回答メッセージ３１０の処理結果フィールド４１３が示す管理テーブル３３０の更新結果に応じて、管理テーブル４３０を更新し（ステップ４２３）、このプログラムを終了する。
【００５０】
図１２は、要求プログラム４２０の詳細フローチャートを示す。
【００５１】
要求プログラム４２０では、管理テーブル４３０に有効データを含むか否かがチェックされ（ステップ６００）、管理テーブル４３０が有効データを含む場合は、ステップ６１０が実行される。もし、管理テーブル４３０が有効データを含んでいない場合は、修正権限の認証要求メッセージ５００を生成し、修正プログラム３２０に送信（ステップ６０１）した後、回答メッセージ５１０を待つ（ステップ６０２）。受信した回答メッセージ５１０の内容を判定し（ステップ６０３）、回答メッセージが、要求が拒否されたことを示していた場合は、ディスプレイにエラーメッセージを表示して（ステップ６２３）、このルーチンを終了する。要求が受け入れられた場合は、回答データを管理テーブル４３０にセットし（ステップ６０４）、管理テーブルの内容をディスプレイする（ステップ６１０）。
【００５２】
ユーザ入力を判定し（ステップ６１２）、ユーザが修正不要を指示した場合は、このルーチンを終了する。もし、ユーザが修正要を指示した場合は、修正要求メッセージ４００を生成するためのインタフェース画面をディスプレイし、修正要求データを受ける（ステップ６１３）。データ設定が終了した時、修正要求メッセージ４００を修正プログラム３２０に送信し（ステップ６１４）、回答メッセージ３１０を待つ（ステップ６２０）。回答メッセージ３１０の内容を判定し（ステップ６２１）、要求が受け入れられた場合は、回答メッセージに従って管理テーブル４３０を更新し（ステップ６２２）、このルーチンを終了する。要求が受け入れられなかった場合は、エラーメッセージを表示する（ステップ６２３）。
【００５３】
図１３は、修正プログラム３２０の詳細フローチャートを示す。
【００５４】
修正プログラム３２０は、受信メッセージが認証要求メッセージ５００であれば（ステップ７００）、図１４で説明する認証ルーチン７１０を実行する。
【００５５】
受信メッセージが、認証要求メッセージ５００でもオブジェクト管理の修正要求メッセージ４００でもなければ（ステップ７２０）、拒絶メッセージを返送して（ステップ７２３）、このルーチンを終了する。受信メッセージがオブジェクト管理の修正要求メッセージ４００の場合、要求された修正が許容できるものか否かを判定し（ステップ７２１）、もし、許容できなければ、拒絶メッセージを返送する（ステップ７２３）。要求された修正が許容できる場合は、図１５で説明するオブジェクト管理修正ルーチン８００を実行する（ステップ７２４）。
【００５６】
図１４は、認証ルーチン７１０の詳細フローチャートを示す。
【００５７】
認証ルーチン７１０では、認証要求メッセージ５００が示す修正種類に基いて認証テーブル３７０を参照し、認証要求メッセージ５００が示す要求者識別情報が許可条件３７０Ｂを満足するか否かを判定する（ステップ７１１）。要求者が許可条件を満たす場合は、管理テーブル３３０の内容を含む、要求を受け入れたことを示す回答メッセージを返送し（ステップ７１２）、そうでなければ、要求を拒否しことを示す回答メッセージを返送する（ステップ７１３）。
【００５８】
図１５は、オブジェクト管理修正ルーチン８００の詳細フローチャートを示す。
【００５９】
オブジェクト管理修正ルーチン８００では、要求メッセージ４００と同一内容を含む要求メッセージ３００のパラメータフィールド４０４から、要求元で指定したパラメータを順次に読みとる（ステップ８０１）。指定されたパラメータの値がをチェックし（ステップ８０２）、許可できないものであれば、エラーメッセージを返送する（ステップ８０８）。指定パラメータの値が許可できた場合、ユーザの個人的な部品プログラムが指定されているか否かを判定する（ステップ８０３）。もし、個人的な部品プログラムが指定されていた場合、上記部品プログラムを取得する（ステップ８０４）。オブジェクト管理プログラム３５０が利用できるように個人的部品プログラムをメモリ２００に用意できなかった場合は（ステップ８０５）、エラーメッセージを返送する（ステップ８０８）。
【００６０】
個人的部品プログラムの指定がなかった場合、またはメモリ２００に用意できた場合、上記指定のパラメータに基いて管理テーブル３３０を更新する（ステップ８０６）。管理テーブルの更新に失敗した場合（ステップ８０７）は、エラーメッセージを返送する（ステップ８０８）。管理テーブル３３０を更新した後、要求メッセージに処理すべき次のパラメータ残っていれば（ステップ８０９）、ステップ８０１に戻って、上述した動作を繰り返す。処理すべきパラメータがなくなった場合は、正常終了メッセージを送信して（ステップ８１０）、このルーチンを終了する。上記正常終了メッセージは、今回の修正処理で更新された管理テーブルデータを含む。
【００６１】
図１６は、オブジェクト管理プログラム３５０で実行されるファイル制御コマンドの１例として、オブジェクトＩ／Ｏコマンド４４０のフォーマットを示す。
【００６２】
オブジェクトＩ／Ｏコマンド４４０は、コマンドの種類を示すオペレーションコード４４１と、要求ＩＤ  ４４２と、パラメータフィールド４４３とからなる。パラメータフィールド４４３には、Ｒ／ＷアクセスすべきオブジェクトのＩＤ：４４３Ａと、オブジェクトの先頭アドレスからのオフセット：４４３Ｂと、データサイズ：４４３Ｃを含む。ＷＲＩＴＥコマンドは、パラメータフィールド４４３の後に、書き込むべきデータを含むデータフィールドが続く。
【００６３】
図１７は、オブジェクト管理プログラム３５０の詳細フローチャートを示す。
【００６４】
オブジェクト管理プログラム３５０は、受信したオブジェクトＩ／Ｏコマンド４４０のオブジェクトＩＤ：４４３Ａから、パーティションＩＤを抽出する（ステップ９０１）。オブジェクトＩＤ：４４３Ａは、例えば、スラント（/）で区切られた階層構造のネーム列からなっており、図１６に示すオブジェクトＩＤ“/HOME/OBJ1”の場合、先頭のネーム“/HOME”がパーティションＩＤを示している。  上記抽出されたパーティションＩＤに基いて、管理テーブル３３０の一部である図８に示したオブジェクト編成テーブル３３４を参照することによって、上記パーティションＩＤが示すパーティションにおけるオブジェクト編成を識別する（ステップ９０２）。図８に示した例では、“/HOME”のパーティションのオブジェクト編成（ファイル編成）は、ツリー方式となっていることが分かる。
【００６５】
次に、オブジェクトＩ／Ｏコマンド４４０のコマンドフィールド４４１に設定されたオペレーションコードを判定する。
【００６６】
Ｉ／Ｏコマンド４４０が“READ”コマンド（ステップ９０３：ＹＥＳ）の場合、オブジェクトＩ／Ｏコマンド４４０のパラメータフィールド４４３で指定されたパラメータに従って、ディスク制御装置１０２を介して、磁気ディスク１０１からデータを読み出す（ステップ９０４）。このとき、オブジェクトＩＤとディスク上の物理アドレスとの対応関係を定義しているオブジェクト管理テーブル３５５が参照される。これによって、オブジェクトＩ／Ｏコマンド４４０のオブジェクトＩＤ：４４３Ａが、ディスク１０１上の物理アドレスに変換され、ディスク制御装置１０２が応答可能な“READ”コマンドが得られる。尚、上記オブジェクト管理テーブル３５５において、オブジェクトＩＤとディスク上の物理アドレスとの対応関係は、各オブジェクトのファイル編成の形式によって異なっている。
【００６７】
上記ステップ９０４では、図９に示す上記パーティションＩＤと対応するオブジェクト管理属性に関するパラメータテーブル３３５−１も参照され、指定されたオブジェクト管理属性でオブジェクトの読み出し動作が実行される。
【００６８】
次に、図１０に示す上記パーティションＩＤと対応するオブジェクト管理拡張機能に関するパラメータテーブル３３６が参照され、もし、拡張機能に関するパラメータテーブル３３６で、拡張機能（部品プログラム）が指定されていた場合（ステップ９０５）、バッファメモリ３６０に読み出されたデータについて、上記拡張機能（部品プログラム）によるデータ処理が実行され（ステップ９０６）、データ処理された読み出しデータが、回答メッセージによって要求元装置に送信される（ステップ９３０）。
【００６９】
Ｉ／Ｏコマンド４４０が“WRITE”コマンド（ステップ９１０：ＹＥＳ）の場合、上述したオブジェクト管理拡張機能に関するパラメータテーブル３３６を参照し、もし、拡張機能（部品プログラム）が指定されていた（ステップ９１１：ＹＥＳ）場合、バッファメモリ３６０に蓄積されている書き込みデータについて、上記拡張機能（部品プログラム）によるデータ処理を実行し（ステップ９１２）、データ処理されたオブジェクトデータをディスク制御装置１０２を介して磁気ディスク１０１に書き込む（ステップ９１３）。この時、“READ”コマンドの実行時と同様、オブジェクト管理テーブル３５５と、オブジェクト管理属性に関するパラメータテーブル３３５−１が参照され、オブジェクトＩＤと対応した物理アドレスに基いて、指定されたオブジェクト管理属性で、データの書き込み動作が実行される。
【００７０】
ファイル制御コマンドが、例えば、ファイルの“OPEN”、“CLOSE”、“DELETE”、“CREATE”などのように、“READ”、“WRITE”以外の場合（ステップ９１０：ＮＯ）は、それぞれのコマンドに対応した動作が実行される（ステップ９２０）。
【００７１】
図３において、磁気ディスク媒体１０１からバッファメモリ３６０に読み出したデータをそのまま要求元に転送する時、従来の磁気ディスク記憶装置では、バッファメモリ３６０に読み出されたデータブロックをネットワーク上で転送されるデータブロックに変換するために、バッファメモリ３６０から第２のバッファ領域にデータをコピーする付加的なデータ処理が必要となる。
【００７２】
このようなデータ転送において、本発明のディスク記憶装置によれば、オブジェクト管理属性３３５として、データ転送先アドレスやデータサイズ等の転送情報を予め指定しておくことによって、上述した余分なコピー動作を行うことなく、読み出しデータを簡単に要求元に転送することが可能となる。
【００７３】
オブジェクト管理修正要求プログラム４２０は、要求元装置１３０上に、手動でインストールできる。但し、例えば、ＷＥＢブラウザのようなネットワークアクセスプログラムを介して、磁気ディスク記憶装置１００から要求元装置１３０に、上記オブジェクト管理修正要求プログラム４２０をダウンロードしてもよい。
【００７４】
オブジェクト管理修正要求プログラム４２０が動作する装置１３０は、オブジェクト管理プログラム３２０が動作する磁気ディスク記憶装置１００であってもよい。つまり、オブジェクト管理プログラム３２０とオブジェクト管理修正要求プログラム４２０を同じ磁気ディスク記憶装置１００上で動作させることもできる。この場合、遠隔の端末装置から入力したユーザデータを、例えば、ＷＥＢブラウザのようなネットワークアクセスプログラムを介して、磁気ディスク記憶装置１００上で動作するオブジェクト管理修正要求プログラム４２０に供給する。この場合は、要求元ＩＤには、ＩＰアドレスとポート番号の組み合わせに代えて、予め決められた値を適用する。
【００７５】
以上の実施例では、磁気ディスク記憶装置について説明したが、本発明は、光磁気ディスク、光ディスク、ＤＶＤといった磁気ディスク以外の他の記憶メディアを用いたディスク記憶装置にも適用できる。
【図面の簡単な説明】
【図１】本発明のディスク記憶装置を含む計算機ネットワークの１実施例を示す図。
【図２】本発明のディスク記憶装置のハ−ドウェア構成の１実施例を示すブロック図。
【図３】本発明のディスク記憶装置１００と、端末装置１３０とが備えるソフトウェアの構成を示す図。
【図４】端末装置からディスク記憶装置に発行される変更要求（modification request）メッセージ４００のフォーマットを示す図。
【図５】ディスク記憶装置から端末装置に送信される返送(reply)メッセージ４１０のフォーマットを示す図。
【図６】ディスク記憶装置が備える管理テーブル３３０のフォーマットを示す図。
【図７】上記管理テーブル３３０のパーティション構成(partition configuration)フィールド３３３の詳細を示す図。
【図８】上記管理テーブル３３０のオブジェクト編成(object organization)のパラメータフィールド３３４の詳細を示す図。
【図９】上記管理テーブル３３０のオブジェクト管理属性(object management attribute)のパラメータフィールド３３５の詳細を示す図。
【図１０】上記管理テーブル３３０のオブジェクト管理の拡張機能(extended function of object management)のパラメータフィールド３３６の詳細を示す図。
【図１１】端末装置で実行される要求プログラム４２０と磁気ディスク記憶装置で実行される変更プログラム３２０と間の通信手順を示す図。
【図１２】端末装置で実行される要求プログラム４２０を示すフローチャート。
【図１３】ディスク記憶装置で実行される変更プログラム３２０を示すフローチャート。
【図１４】上記変更プログラム３２０における認証ステップ７１０の詳細を示すフローチャート。
【図１５】上記変更プログラム３２０におけるオブジェクト管理変更ステップ８００の詳細を示すフローチャート。
【図１６】端末装置からディスク記憶装置に送信される制御コマンド４４０のフォーマットを示す図。
【図１７】上記制御コマンドに応答して磁気ディスク記憶装置で実行されるオブジェクト管理プログラム３５０を示すフローチャート。
【図１】
0004026698.tif 000002
【図２】
0004026698.tif 000003
【図３】
0004026698.tif 000004
【図４】
0004026698.tif 000005
【図５】
0004026698.tif 000006
【図６】
0004026698.tif 000007
【図７】
0004026698.tif 000008
【図８】
0004026698.tif 000009
【図９】
0004026698.tif 000010
【図１０】
0004026698.tif 000011
【図１１】
0004026698.tif 000012
【図１２】
0004026698.tif 000013
【図１３】
0004026698.tif 000014
【図１４】
0004026698.tif 000015
【図１５】
0004026698.tif 000016
【図１６】
0004026698.tif 000017
【図１７】
0004026698.tif 000018