(57)【特許請求の範囲】
【請求項１】
データ記憶装置であって、
第１の記憶特性を有する第１の領域と第２の記憶特性を有する第２の領域とを含む記憶媒体を備え、前記第１の記憶特性と前記第２の記憶特性とが異なるように、前記第１の領域と第２の領域とはフォーマットされており、前記第１の領域は、前記第２の領域と切り替え可能であり、
複数のデータオブジェクトとを備え、各前記データオブジェクトは、固有のラベルにより識別され、各前記データオブジェクトは、メタデータとユーザデータとを含み、前記メタデータは属性を有しており、
前記データ記憶装置の外部から受信したデータを前記記憶媒体に格納するように構成されたコントローラを備え、前記コントローラは、前記データオブジェクトの当該属性に基づいて、前記第１の領域または前記第２の領域の一つに前記データオブジェクトを格納するように構成されている、データ記憶装置。
【請求項２】
各前記記憶特性は、インチ当たりトラック数、トラック密度、インチ当たりビット数、および、面密度のいずれかを含む、請求項１に記載のデータ記憶装置。
【請求項３】
各前記データオブジェクトをどこに格納するかの決定を行う記憶場所アルゴリズムを格納するように構成されたメモリをさらに備え、
前記コントローラは、前記記憶場所アルゴリズムに基づいて、前記決定を行なうように構成されている、請求項１に記載のデータ記憶装置。
【請求項４】
前記属性は、前記データオブジェクトのサイズ、または、前記データオブジェクトの使用履歴を含む、請求項１に記載のデータ記憶装置。
【請求項５】
前記使用履歴は、前記データへの最も最近のアクセス時刻、前記データへの最も最近の修正時刻、前記データの読出回数、および、前記データの書き込み回数の少なくとも一つを含む、請求項４に記載のデータ記憶装置。
【請求項６】
前記属性は、前記メモリに格納されている、請求項３に記載のデータ記憶装置。
【請求項７】
さらに、フォーマット化されない第３の領域を前記記憶媒体に含み、
前記第１の領域または前記第２の領域のいずれか一つの記憶容量が満杯になると、前記第３の領域における記憶特性が、前記ずれかの領域における記憶特性と同じになるように、前記コントローラは、前記第３の領域をフォーマットするように構成されている、請求項１に記載のデータ記憶装置。
【請求項８】
前記第３の領域は、前記第１の領域と前記第２の領域との間に存在する、請求項７に記載のデータ記憶装置。
【請求項９】
前記記憶媒体は、円形であり、
前記記憶媒体の中心に対して、前記第１の領域は前記第２の領域の外側にある、請求項１から８のいずれか１項に記載のデータ記憶装置。
【請求項１０】
前記コントローラは、複数の前記属性について予め定められた基準に基づいて前記データオブジェクトが格納される領域を決定するように構成されている、請求項１から８のいずれか１項に記載のデータ記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一般的にデータ記憶装置の分野に関し、特に、データ記憶装置内へのデータの格納を最適化する装置および方法に関する。
【背景技術】
【０００２】
さまざまなタイプのデータ記憶装置が一般的に知られている。１つの一般的タイプのデータ記憶装置はディスクドライブである。ディスクドライブの最も基本的な部分は回転される情報記憶ディスク、トランスデューサをディスク上のさまざまな場所へ移動させるアクチュエータ、およびディスクに対してデータを読み書きするのに使用される電気回路である。データを表す情報が記憶ディスクの表面上に格納される。ディスクドライブシステムは記憶ディスク上のトラックの上に格納された情報を読み書きする。リード／ライトヘッドの形のトランスデューサは、記憶ディスクの表面上の指示されたトラックの１つの上に正確に位置決めされると、記憶ディスク上に情報を読み書きする。トランスデューサは目標トラックへ動かされるとも言われる。記憶ディスクがスピンしてリード／ライトヘッドが目標トラック上に正確に位置決めされると、リード／ライトヘッドはデータを表す情報を記憶ディスク上に書き込むことによりトラック上にデータを格納することができる。同様に、記憶ディスク上のデータを読み出すことはリード／ライトヘッドを目標トラック上に位置決めして記憶ディスク上の格納された資料を読み出すことにより遂行される。異なるトラックに対して読み書きするために、リード／ライトヘッドは選択された目標トラックまでトラックを半径方向に横切して動かされる。
【０００３】
ディスクドライブに関連する１つの不変の目標はディスクドライブ上に格納することができるデータの量を増加させることである。もちろん、ディスクドライブ上のデータ量を増加させるために変動または調節することができる多くの特性がある。一例はディスクの表面上に配置されるインチ当りトラック数（「ＴＰＩ」）を増すことである。言い換えると、トラック密度が増加される。しかしながら、ＴＰＩすなわちトラック密度の増加はディスクドライブにより生じることがある他の問題に対してバランスさせなければならない。たとえば、同じ物理的面積内により多くのデータを詰め込めるようになるＴＰＩすなわちトラック密度の増加により、現在書き込まれているデータに隣接するトラックを破壊することがあるオフトラック・ライト（ミス・ライト）の機会を増すことがある。オフトラック・ライトの発生によりディスクドライブの全体信頼度が低下する。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
したがって、装置の全体信頼度を維持しながら所望の容量を有するデータ記憶装置が必要とされている。既知のデータ記憶装置の不利な点、限界および欠点を克服するデータ記憶装置も必要とされている。
【課題を解決するための手段】
【０００５】
本明細書および図面を検討すればより完全に理解できるように、本発明は確認されたニーズおよびその他のニーズを満たすものである。
【０００６】
本発明の一側面は第１のトラック密度を有する第１の領域と第２のトラック密度を有する第２の領域を含む記憶媒体を具備する装置を提供することである。本装置は、さらに、複数のデータオブジェクトを含み、各オブジェクトは第１の領域または第２の領域のいずれかに格納されるオブジェクトを決定する属性を有する。
【０００７】
本発明のもう１つの側面は複数のトラック密度領域を有する記憶媒体および記憶媒体と連絡するオブジェクトベース記憶インターフェイスを含む装置を提供することである。インターフェイスはデータオブジェクトをトラック密度領域の１つに格納されるように導く。
【０００８】
本発明のさらなる側面は第１の特性を有する第１の領域および第２の特性を有する第２の領域を含む記憶媒体を具備する装置を提供することである。本装置は、さらに、複数のデータオブジェクトを含み、各オブジェクトは第１の領域または第２の領域のいずれかに格納されるオブジェクトを決定する属性を有する。たとえば、第１および／または第２の特性は、限定はしないが、インチ当りトラック数（ＴＰＩ）、トラック密度、インチ当りビット（ＢＰＩ）および／または面密度を含むことができる。
【図面の簡単な説明】
【０００９】
【図１】本発明に従って構成されたディスクドライブの機械的部分の絵画表現である。
【図２】本発明に従って構成されたディスクドライブを含むシステムのブロック図である。
【図３】オブジェクトベース記憶システムのブロック図である。
【図４】ディスクドライブ・コントローラ内のファームウエア部分のブロック図である。
【図５】ディスクドライブ・コントローラ内のファームウエア部分のブロック図である。
【図６】本発明に従った記憶媒体の実施例である。
【図７】本発明に従った記憶媒体の追加実施例である。
【図８】本発明に従ったデータオブジェクトに対する記憶場所を明白に決定することを示すフロー図である。
【図９】本発明で使用するデータ構造を示すテーブルである。
【図１０】本発明に従ったデータオブジェクトに対する記憶場所の暗黙の決定を示す論理テーブルである。
【図１１】本発明に従ったデータオブジェクトに対する記憶場所を暗黙的に決定することを示すフロー図である。
【発明を実施するための形態】
【００１０】
本発明のこれらおよび他の側面は下記の明細書からより明白となる。図面について、図１は本発明に従って構成することができるディスクドライブ１０の一部の絵画表現である。ディスクドライブはそのさまざまなコンポーネントを含むようなサイズおよび構成とされたハウジング１２（本図では上部は除去され下部が見える）を含んでいる。ディスクドライブは、ここでは磁気ディスクである、ハウジング内の少なくとも１つのデータ記憶媒体１６を回転させるスピンドルモータ１４を含んでいる。少なくとも１本のアーム１８がハウジング１２内に収納されており、各アーム１８は記録および／または読取ヘッドすなわちスライダ２２付第１端２０、およびベアリング２６によりシャフト上にピボット搭載された第２端２４を有する。ボイスコイルモータ２８とすることができるアクチュエータモータがアームの第２端２４に配置され、アーム１８をピボットさせてヘッド２２をディスク１６の所望のセクタ上に位置決めする。データは記憶媒体上の複数の同心トラック２７内に格納される。ディスクドライブ・コントローラ２９等のディスクドライブ用コマンドおよびコントロール・エレクトロニクスがハウジング１２内に配置されている。
【００１１】
本発明は一般的にディスク１６の多数のデータ領域間を区別することができ、かつその領域をフォーマット化してユーザデータの特定サブセットのアクセスパターンに最も適合するようにできるディスクドライブ１０に関連している。これはディスクドライブ１０の全体信頼度および容量がバランスされ、かつ格納されるデータの性質を調整することを有利に考慮している。これはデータのタイプ間を区別する能力およびディスク１６の領域を異なる特性を有するように個別にフォーマット化する能力を提供する本発明により遂行される。たとえば、クリティカルすなわち重要なデータは低ＴＰＩ領域内に排他的に格納することができ、非クリティカルすなわち一時的データは高ＴＰＩ領域内に排他的に格納することができる。
【００１２】
本発明は、さらに、記憶装置、たとえば、ディスクドライブ・レベルで開発されているオブジェクトベース記憶装置（ＯＳＤ）技術を利用することに関連している。特に、本発明はディスクドライブ１０への要求が個別にアドレス指定されたセクタではなくデバイス管理オブジェクトへアドレス指定されるＯＳＤインターフェイスを利用してユーザデータタイプ間を区別することに関連している。個別セクタが使用される時は、記録を維持したり各セクタに対する予測を使用することは実行できそうにない。ＯＳＤに関連付けられたオブジェクトを使用する時は、このような情報はコンパクトに維持することができ、後述するように、このような判断は、たとえば、各オブジェクトに関連付けられた明白なおよび間接的な属性を使用して有効に行うことができる。
【００１３】
ここで使用されるオブジェクトは一意的レベルにより識別されかつそのデータがバイト粒度により任意にアクセス可能なユーザデータ、システム属性およびユーザ定義属性の独立した一意的収集である。ファイルとは異なり、オブジェクトが属性をデータに結びつける点を除けば、それはファイルに類似している。各オブジェクトはメタデータとユーザデータを含む。ＯＳＤファームウエア・レイヤは記憶媒体上のファイルシステム・メタデータおよびユーザデータのレイアウトに責任がある。メタデータブロックはアイデンティティ、属性およびユーザデータブロックの場所を格納し、かつユーザオブジェクトをユーザデータフラグメントに関連付けるのに使用される。
【００１４】
本発明の実施例の、ディスクドライブ・コントローラ３２を含むオブジェクトベース記憶システム３０の機能的ブロック図が図２に示されている。ホストコンピュータ３４がディスクドライブ・コントローラ・プロセッサ３６のトップレベル制御を行い、次に、それはダイナミック・ランダムアクセスメモリ（ＤＲＡＭ）３８および非揮発性フラッシュメモリ４０内に格納されたプログラミングおよび情報に従ってディスクドライブ３０の動作を制御する。
【００１５】
ディスクドライブにより格納されるデータはホストコンピュータ３４からインターフェイス回路４２へ転送され、それはデータを一時的にバッファリングするデータバッファおよびデータ転送動作中にリード／ライトチャネル４４およびプリアンプ／ドライバ回路４６の動作を指令するシーケンサを含んでいる。スピンドルモータ５２によりディスク５０の回転を制御するスピンドル回路４８が設けられている。
【００１６】
ヘッド５６、プリアンプ／ドライバ回路４６、サーボ回路５４およびアクチュエータアームの位置を制御するコイル５８により確立されるサーボループの一部としての１つ以上のディスク５０に関して１つ以上の記録ヘッド５６の位置を制御するサーボ回路５４が設けられている。サーボ回路５４は主要な２つのタイプのサーボ動作、シークおよびトラック追跡、を実施するようにプログラムされるデジタル信号プロセッサ（ＤＳＰ）を含んでいる。
【００１７】
図３は本発明の実施例に従ったＯＳＤ技術を内蔵するディスクドライブ６２を含むオブジェクトベース記憶システム６０のブロック図である。非常に多くのアプリケーション６６を実行することができるホストコンピュータ６４はシステムコール・インターフェイス６８およびファイルシステム・ユーザコンポーネント７０を含んでいる。ホストはオブジェクトインターフェイス７２を介してＯＳＤディスクドライブ６２へ情報を送信する。ＯＳＤディスクドライブ６２は、たとえば、ディスクドライブ・コントローラ７３、ファイルシステム記憶コンポーネント７４、ブロック入出力マネージャ７６、および１つ以上の記憶媒体７８を含んでいる。
【００１８】
図４は本発明の実施例に従ったＯＳＤおよびインターフェイス・ファームウエア・レイヤ・コミュニケーションのブロック図である。ＯＳＤファームウエア・レイヤはドライブへのブロック要求を行うファームウエア・アプリケーション・プログラム・インターフェイス（ＡＰＩ）８０を使用する。メタデータおよびユーザデータ・オブジェクトに対してフリーブロックリスト８２が維持される。ＯＳＤスペース管理８４はＷＲＩＴＥ，ＷＲＩＴＥ  ＡＰＰＥＮＤ，またはＣＲＥＡＴＥコマンドを満たす新しいユーザデータ・ブロックが必要である時に、ＯＳＤファームウエア・レイヤに候補開始ブロック場所を提供する。物理的ディスクレイアウト・マネージャ８６がコマンドを受信してトラックフォーマット、ゾーン、欠陥、およびトラック位置８８を制御する。
【００１９】
図５はドライブファームウエアの詳細ブロック図である。ＯＳＤファームウエア・レイヤ９０はコマンド・パーシング９２、ケイパビリティ・チェックおよび許可／セキュリティ９４、メタデータ・フェッチング９６、スペース管理（ＯＳＤファイルシステム）９８、コマンド実行１００、およびエラー管理１０２に対するファームウエアを含んでいる。
アプリケーション・インターフェイス１０４はデータ転送１０６、ディスクオンリー転送１０８、ホストオンリー操作１１０、およびキャッシュおよびジオメトリ要求１１２を実行するファームウエアを含んでいる。ファームウエアはトラックフォーマット、ゾーン、欠陥、およびトラック位置１１６を決定し、その情報を物理的ディスクレイアウト・マネージャ１１８に提供する。
【００２０】
ＯＳＤファームウエア・レイヤはＯＳＤコマンドを解析し実行するファームウエアを含んでいる。実行される各ＯＳＤコマンドは、典型的に、多数のステップへ分けられ、それらはパース、メタデータフェッチ、オブジェクトデータ場所計算、標準ファームウエアブロックコマンド構造、およびＯＳＤ  ＡＰＩを介してなされる転送要求である。ＡＰＩは４つの一般的機能、データ転送、ディスクオンリー転送、ホストオンリー転送、およびキャッシュおよびジオメトリ要求を実行するように構成される。データ転送はディスクまたはホストインターフェイスと相互にデータを転送するのに使用される。ディスクオンリー転送はホストインターフェイスとの相互の転送を伴わないディスク・リードおよびライトを表す。ホストオンリー転送はホストインターフェイスと相互に転送するのに使用される。キャッシュおよびジオメトリ要求は進行中ＯＳＤコマンド用バッファメモリを確保し、定められたゾーン内のトラック当りセクタ数、特定ゾーンのＴＰＩ、または他の信頼度特性等の記憶装置の物理的ジオメトリに関連する特定のサービスを要求するのに使用される。ジオメトリ要求は本明細書内で検討される操作を実行するのに使用される。
【００２１】
図６は本発明の実施例に従った、ディスク１２０等の、記憶媒体を示す。特に、本発明はオブジェクトの形で格納されるデータのタイプ間を区別する能力、およびディスク１２０の領域に異なる特性を持たせる能力を提供する。たとえば、ディスク１２０は規定された第１のトラック密度すなわちＴＰＩを有する「ハイ」領域１２２、および規定された第２のトラック密度すなわちＴＰＩを有する「ロー」領域１２４を有することができる。ロー領域１２４に格納できるオブジェクトよりも多数のオブジェクトをハイ領域１２２に格納することができる。オフトラック・ライトすなわちミスライトの機会はハイ領域１２２よりもロー領域１２４の方がありそうもないため、よりクリティカルすなわち重要なオブジェクトをロー領域１２４に格納することができ、よりクリティカルでないすなわち一時的データをハイ領域１２２に格納することができる。
【００２２】
ハイ領域１２２はロー領域１２４と切り替えることができ、ディスク１２０の外径上とすることができる。また、必要に応じて、複数の「ハイ」領域および／または複数の「ロー」領域をディスク１２０上に設けることができる。さらに、たとえば、「ハイ」、「中間」、および「ロー」等のトラック密度すなわちＴＰＩが変動する領域を、本発明に従って、ディスク１２０上に設けることもできる。
【００２３】
本発明は任意タイプの記憶システムに利用できることが理解される。本発明はさまざまなタイプの記録ヘッド、記憶媒体、またはデータの格納、読取および／または書込みを行う任意他の記録方式に使用することができる。
【００２４】
また本発明に従って、たとえば、記憶密度ケイパビリティの異なる領域を有するヒートアシステッド磁気記録媒体や強誘電性記憶媒体等の他のタイプの記憶媒体も使用できることが理解される。さらに、たとえば、インチ当りビット（ＢＰＩ）や面密度等のＴＰＩすなわちトラック密度以外の媒体の特性を本発明で使用して記憶媒体上に異なる記憶領域を画定できることも理解される。
【００２５】
図７はハイ領域１３２、ロー領域１３４およびＵＮＡＬＬＯＣＡＴＥＤ領域１３６を有する、ディスク１３０等の、記憶媒体の追加実施例を示し、ＵＮＡＬＬＯＣＡＴＥＤ領域１３６は規定されたトラック密度すなわちＴＰＩを有するようにフォーマット化されていない。ＵＮＡＬＬＯＣＡＴＥＤ領域１３６はハイ領域１３２またはロー領域１３４のいずれかが満杯になるとフォーマット化することができる。たとえば、ハイ領域１３２がそのトラック密度すなわちＴＰＩに基づいてその領域内に格納することができる最大数のオブジェクトを含む場合には、ＵＮＡＬＬＯＣＡＴＥＤ領域１３６の全部または一部はハイ領域１３２と同じトラック密度すなわちＴＰＩを有するようにフォーマット化することができる。ディスク１３０は、必要に応じて、ハイ、ローおよびＵＮＡＬＬＯＣＡＴＥＤ領域のさまざまな構成を有するように提供できることが理解される。
【００２６】
前記したように、本発明はデータのタイプ間を区別しかつ、図６に示すように、ハイトラック密度／ＴＰＩ領域またはロートラック密度／ＴＰＩ領域等の、記憶媒体上の特定の領域すなわち場所内にデータを格納する能力を提供する。本発明に従って、ＯＳＤ技術はディスクの特定領域内にデータを格納するタスクを遂行するための簡便なツールを提供する。たとえば、本発明の一実施例では、データオブジェクトに対する適切な記憶特性の決定は、ディスク１２０等の、記憶媒体の特定領域内に格納する特定のデータオブジェクトをユーザが明白にマークできるようにする規定された属性を提供することである。属性はオブジェクトが、たとえば、ハイ領域１２２内に格納する「ハイ」として指示される、またはロー領域１２４内に格納する「ロー」として指示されるのを許すように生成することができる。あるいは、属性はディスク１２０のどの領域に特定のオブジェクトが格納されるかを多くの異なる方法で明白に指示するように定義することができる。たとえば、ハイまたはロー指示を有する属性ではなく、属性は、たとえば、「１」または「０」等の整数により定義することができ、整数１はハイ領域１２２に対応し整数０はロー領域１２４に対応する。
【００２７】
図８はオブジェクトがどこに格納されるかをユーザが明白に指示できるようにする属性を有するようにどのようにオブジェクトが生成されるかを開始ブロック１３６から停止ブロック１４８にかけて詳細に説明する。特に、ブロック１３８に示すように、ＯＳＤ技術を内蔵する関連記憶装置を使用するユーザはＳｅｔ＿ＯｂｊｅｃｔＸ＿Ａｔｔｒｉｂｕｔｅｓを呼び出す。これは、ディスクドライブ・コントローラ３２等の、ディスクドライブ・コントローラにより処理される、たとえば、許可情報およびオブジェクト識別等の基本的情報を提供するユーザにより遂行される。次に、ブロック１４０に示すように、ディスクドライブ・コントローラ３２はユーザにより提供された情報を有する指定されたオブジェクトの特定の属性を生成する。前記したように、オブジェクトは「ハイ」または「ロー」としてまたは前記した任意他の類似した方法で指示することができる。次に、ブロック１４２に示すように、ディスクドライブ・コントローラ３２はブロック１４０で選択された指示を含む新しいオブジェクトを生成する。このようにして、ディスクドライブ・コントローラ３２はオブジェクトに関連するブロックの数を割り当て、かつオブジェクト生成の時間を示しオブジェクトを提供されるまたはオブジェクトに関連付けられる他の属性も設定するようにオブジェクト属性を修正することにより新しいオブジェクトを生成する。次に、ブロック１４４に示すように、ディスクドライブ・コントローラは新しいオブジェクトの状態および識別（ＩＤ）を戻す。次に、ブロック１４６に示すように、状態およびＯｂｊｅｃｔＸ属性を戻すことができる。次に、ユーザは特定のオブジェクトをどこに格納されるかを明白にマークすることができる。
【００２８】
本発明のもう１つの実施例では、データオブジェクトに対する適切な記憶特性の決定は、オブジェクトの使用歴に関連するオブジェクトの明白な属性に基づく暗黙の選択を介してなされる。属性は、たとえば、オブジェクトサイズ、最も最近のアクセス時刻または最も最近の修正時刻を含むことができる。オブジェクトの使用歴は、たとえば、オブジェクトが書き込まれている回数、オブジェクトが読み出されている回数、またはオブジェクトが付加されている回数を含むことができる。記憶場所に対する暗黙の選択を実行するために、ディスクドライブ・コントローラ３２はディスク１２０のどの特定領域にオブジェクトを格納すべきかに関する論理的原理（図１０に示すようなもの）を適用するオブジェクト格納場所アルゴリズムを使用して判断するためデータ構造（図９に示すようなもの）を使用する。
【００２９】
図９は、オブジェクトの属性およびオブジェクトの使用歴等の、オブジェクトに関する情報を累積し格納するデータ構造１５０の例を説明するものである。説明の目的で、データ構造１５０はオブジェクト・コラム１５２、属性「オブジェクト・サイズ」用単一属性コラム１５４、および使用歴「オブジェクト読出回数」用単一コラム１５６を含んでいる。オブジェクト・コラム１５２はオブジェクト１、オブジェクト２、オブジェクト３．．．オブジェクトＮ等の多くのオブジェクトおよび所要または所望数の付加属性コラムおよび使用歴コラムを含むことができる。
【００３０】
図１０は図９の属性コラム１５４に記載されたデータセットおよび使用歴コラム１５６に記載された使用歴データを利用して、たとえば、オブジェクト１、オブジェクト２、オブジェクト３．．．オブジェクトＮ等の特定オブジェクトをディスク１２０上のどこに格納すべきかに関する判断を明白に行う論理テーブル１５８を示す。特に、ブロック１６０に示すように、論理テーブル１５８は「小」のオブジェクトサイズ属性を有しかつ「１０よりも小さいオブジェクト読出回数」の使用歴を有する特定オブジェクトはディスク１２０の「ロー」領域内に格納されるように規定する。ブロック１６２に示すように、「小」のオブジェクトサイズを有しかつ１０回以上読み出されているもう１つのオブジェクトに対して、その特定オブジェクトもディスク１２０の「ロー」領域内に格納される。論理テーブル１５８にさらに示すように、１０回は読み出されていない「大」のオブジェクトサイズ属性に対しては、ブロック１６４に示すように、オブジェクトはディスク１２０の「ハイ」領域内に格納される。最後に、ブロック１６６に示すように、論理テーブル１５８は１０回以上読み出されている「大」のオブジェクトサイズ属性はディスク１２０の「ロー」領域内に格納されることを示す。ブロック１６０，１６２，１６４および１６６に示す記憶場所に対する特定の指示は、所望により、ディスクドライブ・コントローラ３２により適用されるオブジェクト記憶場所アルゴリズム内に確立され、必要に応じてまたは所望により開発者やユーザが確立および／または修正することができる。
【００３１】
図９および１０を参照しかつデータ構造１５０を論理テーブル１５８に適用することにより、オブジェクト１はブロック１６２に示すように「ロー」領域内に格納され、オブジェクト２はブロック１６０に示すように「ロー」領域内に格納され、オブジェクト３はブロック１６６に示すように「ロー」領域内に格納され、オブジェクトＮはブロック１６４に示すように「ハイ」領域内に格納される。論理テーブル１５８はここで検討された本発明を２つ以上の属性を有し２タイプ以上の使用歴を有するオブジェクトに応用するのに必要な任意サイズに拡張できることが理解される。
【００３２】
図１１は、たとえば、図９および１０で記述されたような本発明の暗黙な選択側面をユーザがどのようにインプリメントするを例示するフロー図（開始ブロック２３６で始り停止ブロック２４８で終わる）を説明する。特に、ＯＳＤ技術を内蔵する関連する記憶装置を使用するユーザは、ブロック２３８に示すように、割当判断を開始することから始める。ブロック２４０に示すように、これには領域割当てをルックアップまたは決定するようにされた論理（たとえば、図９および１０に例示されているようなもの）を適用するシステムが続く。前記したように、オブジェクトは「ハイ」または「ロー」としてまたは、所望により、任意の他の類似方法で割当てることができる。次に、ブロック２４２に示すように、ディスクドライブ・コントローラ３２は新しいオブジェクトを生成し、それはブロック２４０で選択された割当てを含んでいる。このようにして、ディスクドライブ・コントローラ３２はオブジェクトに関連するブロックの数を割当て、オブジェクト属性を修正してオブジェクト生成の時刻を示しかつオブジェクトを提供できるまたはオブジェクトと関連付けることができる他の属性も設定することにより新しいオブジェクトを生成する。次に、ブロック２４４に示すように、ディスクドライブ・コントローラ３２は生成されたばかりの新しいオブジェクトの状態および識別（ＩＤ）を戻す。次に、ブロック２４６に示すように、状態およびＯｂｊｅｃｔＸ属性を戻すことができる。
【００３３】
本発明を限定するためではなく本発明を例示する目的で特定の実施例について説明してきたが、当業者ならば添付特許請求の範囲に記述されている本発明から逸脱することなく本発明の原理および範囲内で詳細、材料、および部品の配置等のさまざまなバリエーションを行えることが理解される。
【符号の説明】
【００３４】
１０，６２  ディスクドライブ
１２  ハウジング
１４，５２  スピンドルモータ
１６，７８  データ記憶媒体
１８  アーム
２０  第１端
２２，５６  記録および／または読取ヘッド
２４  第２端
２６  ベアリング
２７  トラック
２８  ボイスコイルモータ
２９，３２，７３  ディスクドライブ・コントローラ
３０  プロセッサ
３４，６４  ホストコンピュータ
３６  ディスクドライブ・コントローラ・プロセッサ
３８  ＤＲＡＭ
４０  非揮発性フラッシュメモリ
４２  インターフェイス・ユニット
４４  リード／ライトチャネル
４６  プリアンプ／ドライバ回路
４８  スピンドル回路
５０  ディスク
５４  サーボ回路
５８  コイル
６０  オブジェクト・ベース記憶システム
６６  アプリケーション
６８  システムコール・インターフェイス
７０  ファイルシステム・ユーザコンポーネント
７２  オブジェクト・インターフェイス
７４  ファイルシステム記憶コンポーネント
７６  ブロック入出力マネージャ
８０  ファームウエア・アプリケーションプログラム・インターフェイス
８２  フリーブロック・リスト
８４  ＯＳＤスペースマネージャ
８６，１１８  物理的ディスクレイアウト・マネージャ
８８  トラック位置
９０  ＯＳＤファームウエア・レイヤ
９２  コマンド・パーシング
９４  ケイパビリティ・チェックおよび許可／セキュリティ
９６  メタデータ・フェッチング
９８  スペース管理
１００  コマンド実行
１０２  エラー管理
１０４  アプリケーション・インターフェイス
１０６  データ転送
１０８  ディスクオンリー転送
１１０  ホストオンリー転送
１１２  キャッシュおよびジオメトリ要求
１１６  トラックフォーマット、ゾーン、およびトラック位置
【図１】
0005392788.tif 000002
【図２】
0005392788.tif 000003
【図３】
0005392788.tif 000004
【図４】
0005392788.tif 000005
【図５】
0005392788.tif 000006
【図６】
0005392788.tif 000007
【図７】
0005392788.tif 000008
【図８】
0005392788.tif 000009
【図９】
0005392788.tif 000010
【図１０】
0005392788.tif 000011
【図１１】
0005392788.tif 000012