(57)【要約】  ソリッドステートドライブ（「ＳＳＤ」）装置にストアされ、削除イベントに関連付けられたデータに対応するデータを識別し、ＳＳＤにストアされ、削除されるデータに無効の印を付けるための技術であって、ＳＳＤが、無効なデータに対する不必要な動作を回避し得る。無効なデータの情報を通信し、無効の印を付けるＳＳＤのデータを認識するのに十分な無効なデータの情報を与えるリムーブオンデリートコマンドを提供するように作動可能なインターフェースが含まれている。【選択図】  図１
2010525453.tif 000002
【特許請求の範囲】
【請求項１】
ソリッドステートドライブ（「ＳＳＤ」）にストアされたデータに無効の印を付けるシステムであって、
第１のインターフェースを介しファイルシステムに接続されたＳＳＤドライバーであって、前記第１のインターフェースが、無効なデータの情報を前記ファイルシステムから前記ＳＳＤドライバーに通信するように動作可能なコマンドインターフェースを含むものと、前記無効なデータの情報が、前記ファイルシステムによって削除される情報に対応する、前記ＳＳＤにストアされたデータを識別するものと、
前記ＳＳＤドライバーを前記ＳＳＤに接続して、前記ＳＳＤが、前記ファイルシステムによって削除される前記情報に対応する、前記ＳＳＤにストアされた前記データに無効の印を付けさせるように作動可能な、第２インターフェースと、を含むシステム。
【請求項２】
前記コマンドインターフェースが、新規の入出力制御（「ＩＯＣＴＬ」）コマンドとして実装されることを特徴とする請求項１記載のシステム。
【請求項３】
前記コマンドインターフェースが、入出力制御（「ＩＯＣＴＬ」）コマンドに対する拡張として実装されることを特徴とする請求項１記載のシステム。
【請求項４】
前記無効なデータの情報が、ロジカルブロックアドレッシング（「ＬＢＡ」）及び長さを含むことを特徴とする請求項１記載のシステム。
【請求項５】
前記ＳＳＤ上にストアされたデータに前記無効の印を付けることが、無効なデータに対する不必要な動作を、前記ＳＳＤが回避可能にすることを特徴とする請求項１記載のシステム。
【請求項６】
無効なデータに対する不必要な動作を前記ＳＳＤが回避可能にすることが更に、前記ＳＳＤドライバー動作を含むことを特徴とする請求項５記載のシステム。
【請求項７】
前記第２のインターフェースが、アドバンストテクノロジーアタッチメント（「ＡＴＡ」）インターフェースであることを特徴とする請求項１記載のシステム。
【請求項８】
前記第２のインターフェースが、スモールコンピューターシステムインターフェース（「ＳＣＳＩ」）であることを特徴とする請求項１記載のシステム。
【請求項９】
前記ファイルシステムによって削除される前記情報が、ファイル又はその一部であることを特徴とする請求項１記載のシステム。
【請求項１０】
前記ファイルシステムによって削除されていない情報に対応する、前記ＳＳＤにストアされた有効なデータが、前記ＳＳＤにおいて無効なデータの印が付けられないことを特徴とする請求項１のシステム。
【請求項１１】
ソリッドステートドライブ（「ＳＳＤ」）にストアされたデータに無効の印を付ける方法であって、
削除される情報を示すイベントを受信するステップと、
前記削除される情報に対応する、前記ＳＳＤにストアされたデータを識別するステップと、
前記識別されたデータに無効の印を付けるように前記ＳＳＤに命令するステップと、を含む方法。
【請求項１２】
前記イベントが、ファイルシステムから受信されることを特徴とする請求項１１記載の方法。
【請求項１３】
前記イベントが、入出力制御（「ＩＯＣＴＬ」）コマンドを介して受信されることを特徴とする請求項１１記載の方法。
【請求項１４】
前記命令ステップが、アドバンストテクノロジーアタッチメント（「ＡＴＡ」）インターフェースを介して実行されることを特徴とする請求項１１記載の方法。
【請求項１５】
前記命令ステップが、スモールコンピューターシステムインターフェース（「ＳＣＳＩ」）を介して実行されることを特徴とする請求項１１記載の方法。
【請求項１６】
前記無効の印が付けられている識別されたデータが、無効なデータに対する不必要な動作を、前記ＳＳＤが回避可能にすることを特徴とする請求項１１記載の方法。
【請求項１７】
前記削除される情報が、ファイルであることを特徴とする請求項１１記載の方法。
【請求項１８】
前記識別が、ロジカルブロックアドレッシング（「ＬＢＡ」）及び長さを含むことを特徴とする請求項１１記載の方法。
【請求項１９】
ソリッドステートドライブ（「ＳＳＤ」）にストアされたデータに無効の印を付ける方法を具現する計算機可読命令を含む計算機可読媒体であって、前記方法が、
削除される情報を示すイベントを受信するステップと、
削除される前記情報に対応する前記ＳＳＤにストアされた前記データを識別するステップと、
前記識別されたデータに無効の印を付けるように前記ＳＳＤに命令するステップと、を含む計算機可読媒体。
【請求項２０】
前記削除されている情報が、ファイルであることを特徴とする請求項１９記載の計算機可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、記憶装置に関し、具体的にはソリッドステートドライブタイプの記憶装置の最適化に関する。
【背景技術】
【０００２】
ソリッドステートドライブ（「ＳＳＤ」）が、起動可能な大容量記憶装置としての使用に対し経済的になっている。ＳＳＤは、一般的に、否定積（「ＮＡＮＤ」）タイプの装置を含む不揮発性フラッシュメモリー装置などのフラッシュメモリー装置を含むように製造される。したがってＳＳＤの書き込み動作は、ディスク上の同一の物理位置にある（削除されている）無効なデータを（新しい）有効なデータで上書き可能な標準的なハードディスクドライブ（「ＨＤＤ」）と異なる検討事項を有する。ＳＳＤの書き込み動作は、通常、新しいデータを同一のメモリーブロックの既存のデータと共に新しいメモリーブロックへマージするページ指向マージ動作を含む。既存のデータが無効な場合、そのようなマージ動作は、ＳＳＤの性能に不必要に影響を与え得る。更に、信頼性のためにＳＳＤは、通常、メモリーセルの寿命の劣化を低減するために「摩耗平滑化」動作を実行する。そのような動作は、通常、データをあるブロック又はページから別のブロック又はページへ移動する。あるページ上のデータが、無効な場合、そのページに対する摩耗平滑化動作は、ＳＳＤ性能に不必要に影響を与え、ＳＳＤの信頼性を潜在的に低下させ得る。更に、標準的なファイルシステムは、通常、どのデータが削除されている（無効）と見なされ、どれがそのように考えられないかを示している状態情報を維持する。しかしながら、このデータは、通常、データすべてに対応する方法によって、ＨＤＤ又はＳＳＤのような対応する記憶装置に移動され、データは、例えば１つ以上の論理ブロックアドレスとして装置上に物理的にストアされる。したがって記憶装置は、ファイルシステムと対照的に、一般に、どのデータが有効であって、どのデータが無効であるかを承知しておらず、それ故、通常、そのようなデータに対する不必要な動作を回避するための無効なデータを認識できない。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
本発明の目的は、ソリッドステートドライブが、無効なデータに対する不必要な動作を回避し得るための技術を提供することである。
【課題を解決するための手段】
【０００４】
以下に、基本的な了解事項を読者に提供するために、簡易化した開示されている概要を示す。この概要は、開示の広範囲に及ぶ概要でなく、本発明の主要／重要なエレメントを特定することも本発明の範囲を図で表わすこともしない。唯一の目的は、後に提示される更に詳細な記載に対する前置きとして、本明細書において簡易形式で開示されているいくつかの概念を提示することである。
【０００５】
本例は、ＳＳＤが、無効なデータに対する不必要な動作を回避し得るように、削除イベントに関連付けられたデータに対応する、ソリッドステートドライブ（「ＳＳＤ」）装置にストアされたデータを識別し、ＳＳＤにストアされた削除されているデータに無効の印を付けるための技術を提供する。無効なデータの情報を通信し、無効の印が付けられている対応するＳＳＤのデータを識別するのに十分な、無効なデータの情報を提供するリムーブオンデリートコマンドを提供するように作動可能なインターフェースが含まれている。
【０００６】
結果として伴う特徴の多くが、添付の図面に関して考慮された以下の詳細説明を参照することによって、更に理解されるにつれてもっと容易に十分に理解されよう。
【０００７】
本記載が、添付図面に関して考慮された以下の詳細な説明から更に理解されよう。
【０００８】
同一の参照番号を、添付図面中の同様の部品を指定するために使用する。
【図面の簡単な説明】
【０００９】
【図１】従来のオペレーティングシステム及びソリッドステートドライブインターフェース並びに新規のオペレーティングシステム及びソリッドステートドライブインターフェースを示すブロック図である。
【図２】リムーブオンデリートの方法例を示すブロック図である。
【図３】本明細書に記載された技術が実装され得る計算環境の例を示すブロック図である。
【発明を実施するための形態】
【００１０】
添付図面に関して以下に提供されている詳細説明は、本例の説明として意図されており、本例が構成又は利用され得る唯一の形式を表すように意図されていない。本記載は、例を構成し、作動するための機能例及び／又はステップシーケンスのうち少なくともいくつかを詳細に説明する。しかしながら、同一又は同等の機能及びシーケンスが、異なる例によって達成され得る。
【００１１】
本例は、計算環境において実装されるように、本明細書に記載され例示されているが、記載した環境は、制限ではなく例として提供されている。当業者が十分に理解するように、本例は、様々な異なるタイプの計算環境におけるアプリケーションに適している。
【００１２】
図１は、従来のオペレーティングシステム（１１０ａ）及びソリッドステートドライブ（１３０）とのインターフェース（１２０ａ）並びに新規のオペレーティングシステム（（１１０ｂ））及びソリッドステートドライブ（「ＳＳＤ」）（１３０）とのインターフェース（１２０ｂ）を示すブロック図である。従来のオペレーティングシステム（１１０ａ）は、従来のインターフェース（１１３ａ）を介し従来のＳＳＤドライバー（１１４ａ）の例に接続された従来のファイルシステム（１１２ａ）の例を含む。インターフェース（１１３ａ）の一例は、入力／出力コントロール（「ＩＯＣＴＬ」）インターフェースである。ファイルシステム（１１２ａ）は、通常、ファイル（複数）、フォルダー（複数）、プロパティ（複数）などのようなデータの抽象化（アブストラクション：abstraction）を管理する。データは、任意のタイプのデジタル情報、実行可能命令などであり得る。これらの抽象化は、通常、物理データのアクセスへ変換され、記憶装置は、ＳＳＤ（１３０）にデータをストアしアクセスするためのインターフェース（１２０ａ）を介し、ＳＳＤ（１３０）と相互に作用するＳＳＤドライバー（１１４ａ）によって構成される。インターフェース（１２０ａ）の例は、アドバンストテクノロジーアタッチメント（「ＡＴＡ」）インターフェース及びスモールコンピューターシステムインターフェース（「ＳＣＳＩ」）などを含む。
【００１３】
ＳＳＤ（１３０）の例は、従来のＨＤＤ、フロッピー（登録商標）ディスク、コンパクトディスクなどを用いた磁気又は光記憶媒体と対照的な記憶媒体として、ソリッドステート記憶装置などを使用して製造されたソリッドステート記憶装置である。これらのソリッドステート記憶装置は、フラッシュメモリー又は別の任意のタイプ又はソリッドステートメモリー、ランダムアクセスメモリー（「ＲＡＭ」）などの組み合わせであり得る。そのようなＳＳＤ装置は、図３に関して記載したような起動装置であり得、プライマリー記憶装置又は大容量記憶装置であると考えられ得る。そのようなＳＳＤ装置は、複数のメモリータイプ又はクラスを含むＳＳＤ装置であり得る複合ＳＳＤ装置であって、クラスそれぞれが、異なる性能特性又はアクセス速度を有する。ＳＳＤ装置による機能性又は動作の本明細書における記載は、一般に、ＳＳＤ装置及び／又はドライバーの例（１１４ａ）及び（１１４ｂ）のような対応するＳＳＤドライバーを参照している。
【００１４】
別の例において、ＳＳＤ（１３０）は、無効として見なされ得るデータを含み得る従来のＨＤＤ、光ドライブ、ストレージエリアネットワーク（「ＳＡＮ」）、テープ記憶装置及び／又は図３に関して記載した大容量記憶装置を含む別の任意形式の記憶装置であり得る。本発明は、そのような任意の記憶装置、システム、機構などに適用され得る。
【００１５】
無効なデータが、通常、ＳＳＤ上でどのように表されるか、以下に説明している例を考えられたい。人間又はシステムなどのユーザーは、削除される必要があるファイルなどのデータのいくつかを、適切な任意のインターフェースを介して示し得る。ファイルシステムは、通常、消去されているファイルへの参照をディレクトリなどから削除することによって、そのファイルが削除されたことを示している永続データ構造を変更する。更に、ファイルシステムは、ＳＳＤ上のファイルを表しているデータに無効の印を付け得る。一例において、これは、通常、ファイルの長さの後にあるロジカルブロックアドレッシング（「ＬＢＡ」）を介しファイルの開始を示すファイルの位置情報をＳＳＤに送信することを含む。削除されているデータを記載しているＬＢＡ又はデータの位置情報は、通常、ＳＳＤ装置へのインターフェースを介しコマンドによって送信される。コマンド及び関連したデータの位置情報を受信すると、ＳＳＤ及び／又はそのドライバーは、削除されているファイルに対応する、ＳＳＤにストアされたデータに無効の印を付け得る。従来の計算システムにおいて、ファイルシステムは、削除されているファイルを承知して得るが、ＳＳＤは、承知し得ない。通常、ＳＳＤは、有効なデータと無効なデータの間の区別をせずに、それに書き込まれ、それから読み込まれることを承知しているに過ぎない。ＳＳＤ及び関連したそれらのドライバーの中には、それらにストアされたデータが、無効であることを承知することから恩恵を得る動作を実行し得るものもある。例えば、標準的なＳＳＤの書き込み動作は、ディスク上の同一の物理位置に無効な（削除されている）データを有効な（新しい）データで上書きし得る標準的なハードディスクドライブ（「ＨＤＤ」）が有する検討事項と異なる検討事項を有する。一般的なＨＤＤと異なり、ＳＳＤの書き込み動作は、通常、新しいデータをメモリーブロック上の既存のデータと共に新しいメモリーブロックへマージすることが意図されたページ指向マージ動作を含む。既存のデータが無効な場合、そのようなマージ動作は、ＳＳＤの性能に不必要に影響を与え得る。更に、信頼性のために、ＳＳＤは、通常、メモリーセルの寿命の劣化を低減するために「摩耗平滑化」の動作を実行する。そのような動作は、通常、データをあるメモリーブロックから別のブロックなどに移動する。ページ及び／又はブロックデータが、無効な場合、そのページ／ブロックに対する摩耗平滑化動作は、ＳＳＤの性能に不必要に影響を与え、ＳＳＤの信頼性を潜在的に低下させ得る。
【００１６】
本明細書において使用されている無効なデータは、ファイルシステム、ドライバー、アプリケーションなどの更に高度なシステムによって削除されたか又は使用されていないデータなどであり得る、ＳＳＤの記憶場所などの記憶場所にストアされているデータであり得る。例えば、ファイルが削除されたとき、そのファイルに関連したデータは、無効なものと見なされ得る。そのような削除されているか又は無効なデータは、通常、削除も消去もされておらず、単純に無効なものとして分類され得ることに留意されたい。一例において、そのような無効なデータは、記憶装置にストアされ留まっている。別の例において、無効なデータは、「ガベージコレクション」され得るか又はそうでなければ、削除され上書きなどされ得る。無効として分類されないデータは、通常、有効なものと見なされる。一般に、ファイルシステムなどは、ＳＳＤと対照的に有効又は無効としてのデータ分類を承知している。
【００１７】
新規のオペレーティングシステムの例（１１０ｂ）は、従来のインターフェース（１１３ｂ）及び新規のインターフェース（１４０）を介し新規のＳＳＤドライバーの例（１１４ｂ）に接続された新規のファイルシステムの例（１１２ｂ）を含む。一般に、エレメント（１１０ｂ）、（１１２ｂ）及び（１１４ｂ）の機能性は、従来、対応しているそれらと同様に付番された「１ｘｘａ」に相当しているが、新規の機能性が、本発明のために追加される。ファイルシステムの例（１１２ｂ）は、代替として、アプリケーション又はファイルシステムの機能性を具現するものと同じであり得る。
【００１８】
ファイルシステム（１１２ｂ）は、無効なデータの情報をＳＳＤドライバー（１１４ｂ）と通信するために、新規のインターフェース（１４０）を利用する。そのような無効なデータの情報は、ファイルの位置及びサイズ情報を含み得る。インターフェース（１４０）は、ＳＳＤ（１３０）にストアされたどのデータが無効であるか、その無効なデータの情報を介しＳＳＤドライバー（１１４ｂ）にファイルシステム（１１２ｂ）が正確に指示可能にする。一例において、インターフェース（１４０）は、新規のＩＯＣＴＬコマンドである。別の例において、インターフェース（１４０）は、既存のＩＯＣＴＬコマンドの拡張である。インターフェース（１４０）は、無効なデータの情報を通信するのに十分な、ファイルシステムとＳＳＤドライバーを接続するために適切な任意の形式及び／又は構造に従い得る。更に、インターフェース（１４０）は、また、ＳＳＤ（１３０）にストアされた有効なデータが無効の印を付けられないように、ＳＳＤ（１３０）に書き込まれている有効なデータが有効であることを、ＳＳＤドライバー（１１４ｂ）にファイルシステム（１１２ｂ）が指示することも可能にする。
【００１９】
インターフェース（１２０ｂ）は、一例において、無効なデータの情報を通信するための更なる機能性を有するＡＴＡインターフェースに従う。別の例において、インターフェース（１２０ｂ）は、無効なデータの情報を通信するための更なる機能性を有するＳＣＳＩインターフェースに従う。インターフェース（１２０ｂ）は、無効なデータの情報を通信するのに十分な、ＳＳＤドライバーとＳＳＤ装置を接続するために適する任意の形式及び／又は構造に従い得る。
【００２０】
無効なデータの情報が与えられると、ＳＳＤドライバー（１１４ｂ）は、通常、無効なデータの情報に従って適切なデータ、ブロック、ページなどに、無効の印を付けるために、インターフェース（１２０ｂ）を介しＳＳＤ（１３０）と相互に作用する。したがって、書き込みマージ動作、摩耗平滑化動作などが、無効なデータに対する不必要な動作をせずに、実行され得る。更に、無効なデータを含んでいるものとしての印を付けられる最適化動作が、ＳＳＤブロック、ページなどにおいて実行され得る。
【００２１】
図２は、リムーブオンデリートの方法例（２００）を示すブロック図である。そのような方法は他には「リムーブオンデリート」として知られていて、削除されたＳＳＤのデータに、無効の印を付けるために使用され得る。無効か又は削除されたデータは、かくして、有効なデータとしてはＳＳＤ装置による考慮から除外される。これにより、ＳＳＤ装置は、そのようなデータを保持又は維持するためのいかなる動作も実行しないことになる。
【００２２】
ブロック（２１０）は、ＳＳＤ装置にストアされたデータに影響を与える削除イベントを示す。そのような削除イベントの一例が、ファイルシステムによって実行されるファイルの削除動作であって、削除されるファイルは、現在、ＳＳＤ装置にストアされている。別の例においては、任意のシステム又は機構が、ＳＳＤ装置にストアされたデータに影響を与える削除動作を実行し得る。通常、ＳＳＤ装置に対応するＳＳＤドライバーが、削除イベントを受信及び／又は検出する。方法（２００）は、通常、ブロック（２２０）に続く。
【００２３】
ブロック（２２０）は、ＳＳＤ装置にストアされたどのデータが、削除されるデータに対応するか識別することを示す。一例において、これは、削除されるファイルデータをＳＳＤにストアされた対応するデータにマッピングすることを含む。そのようなマッピングは、ＳＳＤにストアされたどのデータが無効の印が付けられているか識別する、無効データの情報をもたらす。そのようなマッピングは、削除動作を実行するシステムによって実行され得る。無効データの情報は、削除されるファイルに対応し、無効の印が付けられる、ＳＳＤにストアされた正確なデータを識別する。そのようなデータは、ページ、ブロックなどとしてＳＳＤにストアされ得る。ＳＳＤにストアされた削除動作に対応する無効データが、一旦識別されると、方法（２００）は、通常、ブロック（２３０）に続く。
【００２４】
ブロック（２３０）は、リムーブオンデリートコマンドを示す。このコマンドは、通常、無効なデータの情報を含んでいて、示されたデータに無効の印を付けるように、ＳＳＤ装置及び／又はそのドライバーに命令する。一例において、そのようなコマンドは、ファイルシステムなどの削除動作を実行するシステムによって発行される。リムーブオンデリートコマンドが、一旦発行されると、方法（２００）は、通常、ブロック（２４０）に続く。
【００２５】
ブロック（２４０）は、削除されるデータに無効の印を付けることを示す。そのような印は、ＳＳＤ装置に対し無効データを識別するのに十分な任意の形式を取り得る。そのような印を付けることは、ＳＳＤがそのデータをどのように構造化するかに従って、ページ及び／又はブロックなどに無効の印を付けることを含み得る。あるいはまた、そのような印を付けることは、無効な様々なデータを無効データテーブルなどへ移動することを含み得る。削除されるデータが、一旦無効の印を付けられると、ＳＳＤ装置は、無効データを保持、維持するなどといったいかなる動作も実行しない。データが、ファイルシステムなどの更に高度なシステムによって削除されていると見なされることと、対応するデータが、ＳＳＤが対応するデータを無効として認識し得るような方法によって、今、ＳＳＤ上で無効の印を付けられることに留意されたい。例えば、ファイルシステムが、ファイル「ｆｏｏ．ｂａｒ」を削除している場合、ファイルｆｏｏ．ｂａｒを含むＳＳＤにストアされたデータすべてが、無効の印を付けられる。用語である情報は、データも参照し得る。削除されるデータが、一旦、無効の印を付けられると、方法（２００）が、通常、完了する。
【００２６】
図３は、本明細書に記載された技術が実施され得る計算環境の例（３００）を示すブロック図である。適切な計算環境が、多くの汎用又は専用のシステムを用いて実装され得る。よく知られているシステムの例は、携帯電話、携帯情報端末（「ＰＤＡ」）、パーソナルコンピューター（「ＰＣ」）、携帯用又はラップトップ装置、マイクロプロセッサーベースシステム、マルチプロセッサーシステム、サーバー、ワークステーション、家電装置、セットトップボックスなどを含むが、これらを限定しない。
【００２７】
計算環境（３００）は、通常、周辺装置（３０２）、（３０３）、（３０４）などのような様々なコンポーネントに接続された計算装置形式の汎用計算システム（３０１）を含む。システム（３００）は、１つ以上の入力／出力（「Ｉ／Ｏ」）インターフェース（３１２）を介し音声認識、タッチパッド、ボタン、キーボード及び／又はマウス又はトラックボールのようなポインティングデバイスを含む入力装置（３０３）などの他の様々なコンポーネントに接続し得る。計算装置（３０１）のコンポーネントは、（中央処理装置（「ＣＰＵ」）、グラフィックス処理装置（「ＧＰＵ」）、マイクロプロセッサー（「μＰ」）などを含む）１つ以上のプロセッサー（３０７）、システムメモリー（３０９）及び通常、様々なコンポーネントに接続しているシステムバス（３０８）を含み得る。プロセッサー（３０７）は、通常、計算装置（３０１）の動作を制御し、ネットワーク接続（３１４）などのような様々な通信接続を介し（図示されていない）他の電子及び／又は計算装置、システム又は環境と通信するための様々な計算機実行可能命令を処理又は実行する。システムバス（３０８）は、メモリーバス又はメモリーコントローラー、周辺バス、シリアルバス、アクセラレイティッドグラフィックスポート、プロセッサー又は様々な任意のバスアーキテクチャを使用するローカルバスなどを含むいくつかのタイプの任意数のバスアーキテクチャを表す。
【００２８】
システムメモリー（３０９）は、ランダムアクセスメモリー（「ＲＡＭ」）などの揮発性メモリー及び／又は読み出し専用メモリー（「ＲＯＭ」）又はフラッシュメモリー（「ＦＬＡＳＨ」）などの不揮発性メモリー形式の計算機可読媒体を含み得る。基本入力／出力システム（「ＢＩＯＳ」）は、不揮発性メモリーなどにストアされ得る。システムメモリー（３０９）は、通常、１つ以上のプロセッサー（３０７）によって直接にアクセス可能か及び／又は現在、その上で操作されるデータ、計算機実行可能命令及び／又は計算機実行可能命令を含むプログラムモジュールをストアする。
【００２９】
大容量記憶装置（３０４）及び（３１０）が、システムバス及び／又はストレージバスなどの接続を介し、計算装置（３０１）に接続され得るか又は計算装置（３０１）に組み込まれ得る。そのような大容量記憶装置（３０４）及び（３１０）は、不揮発性ＲＡＭ、取り外し可能な不揮発性磁気ディスク（例えば「フロッピー（登録商標）ディスク」）（３０５）から読み出されるか及び／又はそれに書き込まれる磁気ディスクドライブ及び／又はＣＤ−ＲＯＭ、ＤＶＤ  ＲＯＭ（３０６）などの不揮発性光ディスクから読み出されるか及び／又はそれに書き込まれる光ディスクドライブを含み得る。あるいはまた、ハードディスク（３１０）などの大容量記憶装置は、取り外し不可能記憶媒体を含み得る。他の大容量記憶装置は、メモリーカード、メモリースティック、テープ記憶装置などを含み得る。
【００３０】
多くの計算機プログラム、ファイル、データ構造などが、オペレーティングシステム、アプリケーションプログラム、データファイル、ディレクトリ構造、計算機実行可能命令などを制限ではなく例として含む大容量記憶装置（３１０）、他の記憶装置（３０４）、（３０５）、（３０６）及び（通常、有効スペースによって制限されている）システムメモリー（３０９）にストアされ得る。
【００３１】
表示装置（３０２）などの出力コンポーネント又は装置は、通常、ディスプレイアダプター（３１１）などのインターフェースを介し計算装置（３０１）に接続され得る。出力装置（３０２）は、液晶ディスプレイ（「ＬＣＤ」）であり得る。他の出力装置の例は、プリンター、音響出力、音声出力、ブラウン管（「ＣＲＴ」）ディスプレイ、触覚装置又は他の感覚出力機構などを含み得る。出力装置は、計算装置（３０１）が、人間オペレーター又は他のマシン、システム、計算環境などと相互に作用可能にする。ユーザーは、タッチパッド、ボタン、キーボード、マウス、ジョイスティック、ゲームパッド、データポートなどのような異なる様々なＩ／Ｏ装置（３０３）を介し計算環境（３００）とインターフェースし得る。これら及び他のＩ／Ｏ装置は、システムバス（３０８）と接続され得るＩ／Ｏインターフェース（３１２）を介しプロセッサー（３０７）に接続され得るか及び／又はパラレルポート、ゲームポート、ユニバーサルシリアルバス（「ＵＳＢ」）、ファイヤーワイヤー、赤外線（「ＩＲ」）ポートなどのような他のインターフェース及びバス構造によって接続され得る。
【００３２】
計算装置（３０１）は、１つ以上の通信セルラーネットワーク、無線ネットワーク、ローカルエリアネットワーク（「ＬＡＮ」）、広域ネットワーク（「ＷＡＮ」）、ストレージエリアネットワーク（「ＳＡＮ」）、インターネット、無線通信リンク、光リンクなどを介し、１つ以上のリモート計算装置と通信接続を介しネットワーク接続された環境において作動し得る。計算装置（３０１）は、ネットワークアダプター（３１３）などを介するか又はあるいはモデム、デジタル加入者回線（「ＤＳＬ」）リンク、総合デジタル通信網（「ＩＳＤＮ」）リンク、インターネットリンク、無線リンクなどを介しネットワークに接続され得る。
【００３３】
ネットワーク接続などの通信接続（３１４）は、通常、ネットワークなどの通信媒体への接続を提供する。通信媒体は、通常、計算機可読及び計算機実行可能命令、データ構造、ファイル、プログラムモジュール及び搬送波又は他の搬送機構などの変調データ信号を使用する他のデータを提供する。用語「変調データ信号」は、通常、信号内の情報を符号化するような方法で設定又は変更されたその１つ以上の特性セットを有する信号を意味する。制限ではなく例として、通信媒体は、有線ネットワーク又はダイレクト有線接続などの有線媒体及び音響、無線通信周波数、赤外線又は他の無線通信機構などの無線媒体を含み得る。
【００３４】
バッテリー又は電力供給装置などの電源（３９０）は、通常、計算環境（３００）の一部又はすべてに電力を提供する。モバイル装置又は携帯装置などの計算環境（３００）の場合、電源（３９０）は、バッテリーであり得る。あるいはまた、計算環境（３００）がデスクトップコンピューター又はサーバーなどの場合、電源（３９０）は、壁コンセントなどを介し交流（「ＡＣ」）電源に接続するように設計された電力供給装置であり得る。
【００３５】
モバイル装置の中には、図３に関し記載したコンポーネント中の多くを含み得ないものもある。例えば、電子バッジは、単純な処理装置（３０７）などを伴う電線コイルから成り得、コイルは、カードリーダー装置などに近接したとき、電源（３９０）として動作するように構成される。そのようなコイルは、また、処理装置（３０７）などに接続されるアンテナとして機能するように構成され得、コイルアンテナは、電子バッジとカードリーダー装置の間の通信の形式を提供し得る。そのような通信は、ネットワーク接続を含み得ないが、代替として遠隔測定法、ポイントツーポイント、ＲＦ、ＩＲ、音響又は他の手段を介する汎用又は専用の通信であり得る。電子カードは、図３に関して記載したディスプレイ（３０２）、Ｉ／Ｏ装置（３０３）又は他のコンポーネントの多くを含み得ない。図３に関して制限ではなく例として記載したコンポーネントの多くを含み得ない他のモバイル装置は、電子ブレスレット、電子タグ、埋め込み型の装置などを含む。
【００３６】
当業者は、計算機可読及び計算機実行可能命令及びデータを提供するために利用される記憶装置が、ネットワーク上に分散され得ることに気づくだろう。例えば、リモートコンピューター又は記憶装置は、ソフトウェアアプリケーション及びデータの形式で計算機可読及び計算機実行可能命令をストアし得る。ローカルコンピューターは、ネットワークを介しリモートコンピューター又は記憶装置にアクセスしてソフトウェアアプリケーション又はデータの一部若しくはすべてをダウンロードし得、任意の計算機実行可能命令を実行し得る。あるいはまた、ローカルコンピューターは、必要に応じてソフトウェア又はデータの部品をダウンロードし得るか又はローカルコンピューターにある命令のいくつか及びリモートコンピューター及び／又は装置にある命令のいくつかを実行することによって、ソフトウェアを分散して処理し得る。
【００３７】
当業者は、従来の技法を利用することによって、計算機実行可能なソフトウェアの命令のすべて又は一部が、デジタル信号処理プロセッサー（「ＤＳＰ」）、プログラマブルロジックアレイ（「ＰＬＡ」）、離散回路などのような専用電子回路によって実行され得ることにも気づくだろう。用語「電子装置」は、任意のソフトウェア、ファームウェアなどを含む計算装置又は家電装置又はソフトウェア、ファームウェアなどを含まない電子装置又は回路を含み得る。
【００３８】
用語「ファームウェア」は、通常、ＲＯＭなどのような電子装置に維持される実行可能命令、コード、データ、アプリケーション、ソフトウェア、プログラム又は同等なものを参照している。用語「ソフトウェア」は、一般に、任意形式の計算機可読媒体の中又はその上に維持される実行可能命令、コード、データ、ドライバー、アプリケーション、プログラム又は同等なものを参照している。用語「計算機可読媒体」は、通常、システムメモリー、記憶装置及びそれらに関連した媒体などを参照している。
【００３９】
本発明の原理及び差し控えている例が適用され得る可能な実施形態の多くを考慮し、本明細書に記載された例が、単に例示的であることを意味していて、本発明の範囲を限定するものとして取らえるべきでないことを認められよう。したがって、本明細書に記載されたような発明は、以下の請求項及びその任意の同等物の範囲内に収まり得るような実施形態すべてを想定している。
【符号の説明】
【００４０】
１１０ａ  従来のオペレーティングシステム
１１０ｂ  新規のオペレーティングシステム
１１２ａ  従来のファイルシステム
１１２ｂ  新規のファイルシステム
１１３ａ  従来のインターフェース
１１３ｂ  新規のインターフェース
１１４ａ  従来のＳＳＤドライバー
１１４ｂ  新規のＳＳＤドライバー
１２０ａ  従来のソリッドステートドライブインターフェース
１２０ｂ  新規のソリッドステートドライブインターフェース
１３０    ソリッドステートドライブ
１４０    新規のインターフェース
３００    計算環境
３０１    計算装置
３０２    周辺装置
３０３    入力／出力装置
３０４    記憶装置
３０５    記憶装置
３０６    記憶装置
３０７    処理ユニット
３０８    システムバス
３０９    システムメモリー
３１０    大容量記憶装置
３１１    ディスプレイアダプター
３１２    入出力インターフェース
３１３    ネットワークアダプター
３１４    通信接続
３９０    電源
【図１】
2010525453.tif 000003
【図２】
2010525453.tif 000004
【図３】
2010525453.tif 000005
【国際調査報告】
2010525453.tif 000006
2010525453.tif 000007