【手続補正書】
【提出日】平成29年1月19日(2017.1.19)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
非キャッシュ記録媒体上にデータを格納するための方法であって、
ｉ．ＮバイトのＩ／Ｏストリームを受信することと、
ｉｉ．前記Ｎバイトを、Ｘバイトのフラグメント化ユニットにフラグメント化することと、
ｉｉｉ．暗号化ハッシュ関数をＸバイトの各フラグメント化ユニットに適用して、Ｘバイトの各フラグメント化ユニットに対して生成されたハッシュ関数値を形成することと、
ｉｖ．相関ファイルにアクセスすることであって、前記相関ファイルが、Ｙビットの格納されたハッシュ関数値を、複数の格納されたＸバイトのシーケンスの各々と関連付け、各フラグメント化ユニットに対して
（ａ）Ｘバイトのフラグメント化ユニットに対して前記生成されたハッシュ関数値が前記相関ファイル内にある場合は、非キャッシュ記録媒体上に格納するために、前記Ｙビットの格納されたハッシュ関数値を使用し、
（ｂ）前記Ｘバイトのフラグメント化ユニットに対して前記生成されたハッシュ関数値が相関ファイル内にない場合は、Ｙビットの生成されたハッシュ関数値を前記Ｘバイトのフラグメント化ユニットとともに前記相関ファイル内に格納し、前記非キャッシュ記録媒体上に格納するために、前記生成されたハッシュ関数値を使用することと、
を含む、方法。
【請求項２】
（ｉｉｉ）において、前記アルゴリズムが前記ＭＤ５メッセージダイジェストアルゴリズムである、請求項１に記載の方法。
【請求項３】
前記方法が、矛盾解決モジュールを適用することをさらに含み、前記矛盾解決モジュールが、Ｘバイトのフラグメント化ユニットに対して、前記相関ファイル内の格納されたハッシュ関数値と同じ、ハッシュ関数値が生成されるが、前記Ｘバイトのフラグメント化ユニットが、前記格納されたハッシュ関数値と関連付けられたＸバイトと異なると判断する場合、異なるＺビットを、前記格納されたハッシュ関数値および前記生成されたハッシュ関数値と関連付ける、請求項１に記載の方法。
【請求項４】
前記相関ファイル内で、矛盾が存在しない全てのハッシュ関数値に対して、Ｚビットが関連付けられており、前記Ｚビットが８乃至１６個のゼロである、請求項３に記載の方法。
【請求項５】
Ｎ＝４０９６およびＸ＝５１２である、請求項４に記載の方法。
【請求項６】
Ｙ＝１２８または２５６である、請求項５に記載の方法。
【請求項７】
複数のハッシュ関数値を前記非キャッシュ記録媒体上に格納することをさらに含む、請求項１に記載の方法。
【請求項８】
格納のための各ハッシュ関数値に対してビットマーカーを生成するために、格納のための各ハッシュ関数値をビットマーカーテーブルの使用を通して符号化することと、各ビットマーカーを前記非キャッシュ記録媒体上に格納することをさらに含む、請求項１に記載の方法。
【請求項９】
前記方法が、格納のための各ハッシュ関数値を頻度変換器の使用を通して符号化することをさらに含み、格納のための各ハッシュ関数値に対して、変換されたビット列が生成され、少なくとも２つの異なるＹビット列に対して、出力される変換されたビット列が、異なる長さを有する、請求項１に記載の方法。
【請求項１０】
異なるサイズの複数の変換されたビット列すべてに対して、Ａビット長の第１の変換されたビット列および、Ｂビット長の第２の変換されたビット列があり、Ａ＜Ｂで、かつ前記第１の変換されたビット列のＡビットの識別が、前記第２の変換されたビット列のＡビットの識別と同じでない、請求項９に記載の方法。
【請求項１１】
前記Ｉ／Ｏストリームがホストから受信されて、前記方法が、前記Ｉ／Ｏストリームの受信を前記ホストに対して確認することをさらに含む、請求項１に記載の方法。
【請求項１２】
前記ホストが、前記Ｉ／Ｏを第１の記憶アドレスに格納されているとして記録し、かつ前記変換されたビット列が、第２の記憶アドレスにおいて前記非キャッシュ記録媒体内に格納されており、前記第１の記憶アドレスが前記第２の記憶アドレスと同じでない、請求項１１に記載の方法。
【請求項１３】
前記第１の記憶アドレスが、第１のファイルサイズのファイルに対応し、かつ前記第２の記憶アドレスが、第２のファイルサイズのファイルに対応し、前記第１のファイルサイズが前記第２のファイルサイズの少なくとも４倍の大きさである、請求項１２に記載の方法。
【請求項１４】
前記方法が、前記第２の記憶アドレスをメディエータ上に格納することをさらに含み、前記メディエータが持続性記憶媒体である、請求項１２に記載の方法。
【請求項１５】
前記第２の記憶アドレスがビットフィールド内に格納される、請求項１４に記載の方法。
【請求項１６】
前記メディエータが、
ｉ．トラックの第１のセットであって、ファイルシステム情報、ブート可能性情報、およびパーティション情報を含む、トラックの第１のセットと、
ｉｉ．トラックの第２のセットであって、前記トラックの第１のセットのコピーを含む、トラックの第２のセットと、
ｉｉｉ．トラックの第３のセットであって、ファイルシステム情報、ブート可能性情報、およびパーティション情報以外のメタデータを含む、トラックの第３のセットと、
ｉｖ．トラックの第４のセットであって、前記ビットフィールドを含む、トラックの第４のセットと、
を含む、請求項１５に記載の方法。
【請求項１７】
非キャッシュ記録媒体上にデータを格納するための方法であって、
ｉ．ＮバイトのＩ／Ｏストリームを受信することと、
ｉｉ．前記Ｎバイトを、Ｘバイトのフラグメント化ユニットにフラグメント化することと、
ｉｉｉ．暗号化ハッシュ関数値をＸバイトの各フラグメント化ユニットと関連付けることであって、前記関連付けることが、相関ファイルにアクセスすることを含み、前記相関ファイルが、Ｙビットの格納されたハッシュ関数値を、複数の格納されたＸバイトのシーケンスの各々と関連付けて、
（ａ）Ｘバイトのフラグメント化ユニットのシーケンスが前記相関ファイル内にある場合は、非キャッシュ記録媒体上に格納するために、前記Ｙビットの格納されたハッシュ関数値を使用し、
（ｂ）Ｘバイトのフラグメント化ユニットのシーケンスが前記相関ファイル内にない場合は、Ｙビットの新しいハッシュ関数値を前記Ｘバイトのフラグメント化ユニットとともに前記相関ファイル内に格納し、前記非キャッシュ記録媒体上に格納するために、Ｙビットの新しいハッシュ関数値を使用することと、
を含む、方法。
【請求項１８】
非キャッシュ記録媒体上にデータを格納するための方法であって、
ｉ．ＮバイトのＩ／Ｏストリームを受信することと、
ｉｉ．暗号化ハッシュ関数値アルゴリズムをＮバイトの各ユニットに適用して、Ｎバイトの各ユニットに対して生成されたハッシュ関数値を形成することと、
ｉｉｉ．相関ファイルにアクセスすることであって、前記相関ファイルが、Ｙビットの格納されたハッシュ関数値を、複数の格納されたＮバイトのシーケンスの各々と関連付けて、
（ａ）Ｎバイトのユニットに対して前記生成されたハッシュ関数値が前記相関ファイル内にある場合は、非キャッシュ記録媒体上に格納するために、前記Ｙビットの格納されたハッシュ関数値を使用し、
（ｂ）Ｎバイトのユニットに対して前記生成されたハッシュ関数値が前記相関ファイル内にない場合は、Ｙビットの生成されたハッシュ関数値をＮバイトのユニットとともに前記相関ファイル内に格納し、前記非キャッシュ記録媒体上に格納するために、前記生成されたハッシュ関数値を使用することと、
を含む、方法。
【請求項１９】
記録媒体上にデータを格納するための方法であって、
ｉ．複数のデジタル２値信号を受信することであって、前記デジタル２値信号が複数のチャンクレットに編成されており、各チャンクレットがＮビット長で、Ｎが１より大きい整数であり、かつ前記チャンクレットが順序を有することと、
ｉｉ．各チャンクレットを均一なサイズのサブユニットに分割して、Ｘ個のマーカーのセットから、１つのマーカーを各サブユニットに割り当てて、複数のマーカーのセットを形成することであって、Ｘがサブユニット内のビットの異なる組合せの数以下であり、同一のサブユニットが同じマーカーを割り当てられて、少なくとも１つのマーカーがサブユニットのサイズよりも小さいことと、
ｉｉｉ．前記複数のマーカーのセットを、前記チャンクレットの順序に対応する順序で、持続性記録媒体上に格納することと、
を含む、方法。
【請求項２０】
前記割り当てが、ビットマーカーテーブルにアクセスすることを含み、前記ビットマーカーテーブル内で、各一意のマーカーが一意のビット列に対応するとして識別される、請求項１９に記載の方法。
【請求項２１】
各サブユニットが第１の端部および第２の端部を有し、前記マーカーを割り当てる前に、前記方法が、各チャンクレットの各サブユニット内の１つ以上のビットを分析して、前記第２の端部におけるビットが値０を有するかを判断することと、前記第２の端部におけるビットが値０を有する場合には、前記第２の端部におけるビットおよび値０を有して、前記第２の端部におけるビットとともに連続的なビット列を形成する全てのビットを除去し、それにより、前記第２の端部に０を有する任意のサブユニットに対する修正されたサブユニットを形成することをさらに含む、請求項２０に記載の方法。
【請求項２２】
コンピュータアルゴリズムが、
（ａ）各サブユニットを再検討して、前記第２の端部に０があるかどうかを判断し、そうである場合は０を除去して、前記サブユニットの第２の端部に隣接していた位置に、修正された第２の端部をもつ、修正されたサブユニットを形成し、
（ｂ）各修正されたサブユニットを再検討して、前記修正された第２の端部に０があるかどうかを判断し、そうである場合は前記０を除去して、さらに修正された第２の端部を形成し、
（ｃ）各修正されたサブユニットに対して、その第２の端部に１をもつ、短縮されたサブユニットが生成されるまで（ｂ）を繰り返す、請求項２１に記載の方法。
【請求項２３】
各サブユニットが第１の端部および第２の端部を有し、前記マーカーを割り当てる前に、前記方法が、各チャンクレットの各サブユニット内の１つ以上のビットを分析して、前記第２の端部におけるビットが値１を有するかを判断することと、前記第２の端部におけるビットが値１を有する場合には、前記第２の端部におけるビットおよび前記値１を有して、前記第２の端部におけるビットとともに連続的なビット列を形成する全てのビットを除去し、それにより、前記第２の端部に１を有する任意のサブユニットに対する修正されたサブユニットを形成することをさらに含む、請求項２０に記載の方法。
【請求項２４】
コンピュータアルゴリズムが、
（ａ）各サブユニットを再検討して、前記第２の端部に１があるかどうかを判断し、そうである場合は１を除去して、前記サブユニットの第２の端部に隣接していた位置に、修正された第２の端部をもつ、修正されたサブユニットを形成し、
（ｂ）各修正されたサブユニットを再検討して、前記修正された第２の端部に１があるかどうかを判断し、そうである場合は前記１を除去して、さらに修正された第２の端部を形成し、
（ｃ）各修正されたサブユニットに対して、その第２の端部に０をもつ、短縮されたサブユニットが生成されるまで（ｂ）を繰り返す、請求項２３に記載の方法。
【請求項２５】
前記マーカーが頻度変換器内に格納され、前記マーカーが複数の異なるサイズで、より小さいサイズのマーカーがより高い頻度のサブユニットと相互に関連付けられている、請求項２０に記載の方法。
【請求項２６】
複数の異なるマーカーが異なる数のビットから形成される、請求項１９に記載の方法。
【請求項２７】
記録媒体からデータを取得するための方法であって、
ｉ．記録媒体にアクセスすることであって、前記記録媒体が複数のマーカーをある順序で格納することと、
ｉｉ．前記複数のマーカーをチャンクレットのセットに翻訳することであって、各チャンクレットがＮビット長で、Ｎが１より大きい整数であり、前記チャンクレットが、前記複数のマーカーの順序に対応する順序を有し、前記翻訳がビットマーカーテーブルにアクセスすることにより達成され、前記ビットマーカーテーブル内で各一意のマーカーが一意のビット列に対応するとして識別されることと、
ｉｉｉ．前記チャンクレットのセットを含む出力を生成することと、
を含む、方法。
【請求項２８】
前記記録媒体上に格納された際の複数のマーカーが、Ｘ〜Ｙのサイズを有し、Ｙ＞Ｘであり、少なくとも１つのマーカーがサイズＸを有し、かつ少なくとも１つのマーカーがサイズＹを有する、請求項２７に記載の方法。
【請求項２９】
前記翻訳することが、
長さＺより小さいマーカーの全てを、０を前記マーカーの第１の端部に追加することにより、長さＺのマーカーにレンダリングすることであって、ＺがＹ以上であることと、
前記長さＺのマーカーをチャンクレットに翻訳することであって、前記チャンクレットが長さＺより大きいことと、
を含む、請求項２８に記載の方法。
【請求項３０】
前記長さＺのマーカーをチャンクレットに前記翻訳することが、前記長さＺのマーカーをサブユニットに翻訳することと、前記サブユニットをチャンクレットに結合することとを含む、請求項２９に記載の方法。
【請求項３１】
データを記録媒体上に格納するための方法であって、
ｉ．複数のデジタル２値信号を受信することであって、前記デジタル２値信号がチャンクレットに編成されており、各チャンクレットがＮビット長で、各チャンクレットが第１の端部および第２の端部を有し、Ｎが１より大きい整数であり、前記チャンクレットが順序を有することと、
ｉｉ．各チャンクレットを複数のサブユニットに分割することであって、各サブユニットがＡビット長であることと、
ｉｉｉ．各サブユニットを分析して、前記第２の端部におけるビットが値０を有するかを判断し、前記第２の端部におけるビットが値０を有する場合に、前記第２の端部におけるビットおよび値０を有して、前記第２の端部におけるビットとともに連続的なビット列を形成する全てのビットを除去し、それにより前記第２の端部に０を有する任意のチャンクレットに対して修正されたチャンクレットを形成することと、
ｉｖ．持続性記録媒体上に、前記順序で、各修正されたサブユニット、およびＡビット長であって、その第２の端部に１を有する、各サブユニットを格納することと、
を含む、方法。
【請求項３２】
データを記録媒体上に格納するための方法であって、
ｉ．複数のデジタル２値信号を受信することであって、前記デジタル２値信号がチャンクレットに編成されており、各チャンクレットがＮビット長で、各チャンクレットが第１の端部および第２の端部を有し、Ｎが１より大きい整数であり、前記チャンクレットが順序を有することと、
ｉｉ．各チャンクレットを複数のサブユニットに分割することであって、各サブユニットがＡビット長であることと、
ｉｉｉ．各サブユニットを分析して、前記第１の端部におけるビットが値０を有するかを判断し、前記第１の端部におけるビットが値０を有する場合に、前記第１の端部におけるビットおよび値０を有して、前記第１の端部におけるビットとともに連続的なビット列を形成する全てのビットを除去し、それにより前記第１の端部に０を有する任意のサブユニットに対して第１の修正されたサブユニットを形成することと、
ｉｖ．各サブユニットを分析して、前記第２の端部におけるビットが値０を有するかを判断し、前記第２の端部におけるビットが値０を有する場合に、前記第２の端部におけるビットおよび値０を有して、前記第２の端部におけるビットとともに連続的なビット列を形成する全てのビットを除去し、それにより前記第２の端部に０を有する任意のサブユニットに対して第２の修正されたサブユニットを形成することと、
ｖ．各サブユニットに対して、
（ａ）前記第１の修正されたサブユニットおよび前記第２の修正されたサブユニットのサイズが同じである場合、前記第１の修正されたサブユニットまたは前記第２の修正されたサブユニットを格納することと、
（ｂ）前記第１の修正されたサブユニットが前記第２の修正されたサブユニットよりも小さい場合、前記第１の修正されたサブユニットを格納することと、
（ｃ）前記第２の修正されたサブユニットが前記第１の修正されたサブユニットよりも小さい場合、前記第２の修正されたサブユニットを格納することと、
（ｄ）修正されたサブユニットがない場合、前記サブユニットを格納することと、
（ｅ）第１の修正されたサブユニットはないが、第２の修正されたサブユニットがある場合には、前記第２の修正されたサブユニットを格納することと、
（ｆ）第２の修正されたサブユニットはないが、第１の修正されたサブユニットがある場合には、前記第１の修正されたサブユニットを格納することであって、格納される各修正されたサブユニットが、１つ以上のビットが前記第１の端部または前記第２の端部から除去されたかを示す情報とともに格納されることと、
を含むことと、
を含む、方法。
【請求項３３】
記録媒体からデータを取得するための方法であって、
ｉ．記録媒体にアクセスすることであって、前記記録媒体が複数のデータユニットを複数の位置に格納し、各データユニットが複数のビットを含み、前記データユニットの最大サイズがＮビットであり、少なくとも１つのデータユニットがＮビットよりも少ないビットを含み、前記データユニットが順序を有することと、
ｉｉ．前記データユニットを取得し、１つ以上のビットを、Ｎビット長よりも少ない任意のデータユニットの端部に追加して、前記データユニットに対応するチャンクレットのセットを生成することであって、各チャンクレットが同じビット数を含むことと、
ｉｉｉ．前記チャンクレットのセットを含む出力を、前記データユニットの順序に対応する順序で生成することと、
を含む、方法。
【請求項３４】
（ｉｉ）において、値０のビットが追加される、請求項３３に記載の方法。
【請求項３５】
請求項２７および３４の一項に記載の方法を含む、文書を記憶装置から取得するための方法であって、前記出力をファイルタイプと関連付けることと、前記出力を、前記チャンクレットを前記ファイルタイプの文書に変換することが可能なオペレーティングシステムに伝送することとをさらに含む、方法。
【請求項３６】
電子データを格納するための方法であって、前記方法が、
ｉ．パラメータのセットを受信することであって、前記パラメータが、ファイルシステム情報、ブート可能性情報、およびパーティション情報のうちの１つ以上を含むことと、
ｉｉ．メタデータを受信することと、
ｉｉｉ．１つ以上のファイルを受信することであって、各ファイルがファイル名を有することと、
ｉｖ．前記パラメータおよびメタデータをメディエータ上に格納することと、
ｖ．前記ファイルの各々をある位置において非キャッシュ媒体上に格納することと、
ｖｉ．前記メディエータ上に、各ファイル名の、前記非キャッシュ媒体上の位置との相関関係を格納することと、
を含む、方法。
【請求項３７】
前記ファイルを前記非キャッシュ媒体上に格納する前に、前記ファイルを符号化することをさらに含む、請求項３６に記載の方法。
【請求項３８】
前記符号化が、変換されたファイルを作成するためにビットマーカーテーブルおよび頻度変換器のうちの１つを使用することを含み、前記変換されたファイルが、ファイルシステム情報、ブート可能性情報、およびパーティション情報のいずれも含まない、請求項３７に記載の方法。
【請求項３９】
前記パラメータが、複数の予約トラック内に格納されている、請求項３６に記載の方法。
【請求項４０】
前記複数の予約トラックが、予約トラックの第１のセットであり、前記方法が、前記パラメータを予約トラックの第２のセットにコピーすることをさらに含む、請求項３６に記載の方法。
【請求項４１】
前記予約トラックの第１のセット内のエラーを検査するために、前記予約トラックの第２のセットを使用することをさらに含む、請求項４０に記載の方法。
【請求項４２】
前記メタデータが、シンプロビジョニングのための命令に対応する、請求項４１に記載の方法。
【請求項４３】
前記ファイルが、前記ファイルを仮想アドレスに格納されているとして記録するホストから受信されて、前記仮想アドレスが、前記ファイルの位置と同じではない、請求項３６に記載の方法。
【請求項４４】
データをバックアップするための方法であって、前記方法が、請求項３６に記載の方法を含み、前記メディエータが第１のメディエータで、位置が第１の位置であり、前記方法が第２のメディエータを生成することをさらに含み、前記第２のメディエータが、時間Ｔ１における前記第１のメディエータのコピーであり、Ｔ１の後である、時間Ｔ２において：
ｉ．第１の位置に置かれている修正されたファイルを保存するための命令を受信することと、
ｉｉ．新しいファイルを第２の位置に格納することであって、前記新しいファイルが前記修正されたファイルに対応することと、
ｉｉｉ．前記ファイル名を前記第２の位置と相互に関連付けるように前記第１のメディエータを更新することであって、前記第２のメディエータ上で、前記ファイル名が前記第１の位置と相互に関連付けられていることと、
を行う、方法。
【請求項４５】
データをバックアップするための方法であって、前記方法が、
ｉ．第１のメディエータ上で、複数のファイル名を複数のデータファイルの位置と相互に関連付けることであって、前記データファイルの位置が第１の非キャッシュ媒体上の位置に対応し、前記第１のメディエータが、特定のファイル名を識別するユーザーが、前記特定のファイル名に対応するデータファイルを取得するのを可能にするように構成されていることと、
ｉｉ．前記複数のデータファイルを第２の非キャッシュ媒体にコピーすることと、
ｉｉｉ．第２のメディエータを生成することであって、前記第２のメディエータが時間Ｔ１における前記第１のメディエータのコピーであり、前記第２のメディエータ内で、前記第２の非キャッシュ媒体上の複数のデータファイルの位置が前記ファイル名と相互に関連付けられていることと、
ｉｖ．データファイルに対する修正を保存するための命令を受信することと、
ｖ．Ｔ１の後である、時間Ｔ２において、前記第１の非キャッシュ媒体内で、前記データファイルに対する修正を保存することと、
を含む、方法。
【請求項４６】
データ格納および取得システムであって、
ｉ．非キャッシュデータ記憶媒体と、
ｉｉ．メディエータであって、前記メディエータが非キャッシュデータ記憶媒体からリモートに保存されていて、前記メディエータが：
（ａ）トラックの第１のセットと、
（ｂ）トラックの第２のセットと、
（ｃ）トラックの第３のセットと、
（ｄ）トラックの第４のセットと、
を含む、メディエータと、
ｉｉｉ．マネージャであって、前記マネージャが：
（ａ）ファイルシステム情報、ブート可能性情報、およびパーティション情報のうちの１つ以上を含むデータを前記トラックの第１のセット内に格納することと、
（ｂ）メタデータを前記トラックの第３のセット内に格納することと、
（ｃ）１つ以上のファイルを前記非キャッシュ媒体上に格納することであって、前記１つ以上のファイルが前記非キャッシュ媒体上に、ファイルシステム情報、ブート可能性情報、およびパーティション情報のいずれもなしで保存されることと、
（ｄ）前記トラックの第４のセット内に、前記非キャッシュ媒体内の各ファイルの位置を格納することと、
（ｅ）前記非キャッシュ媒体内の各ファイルの位置の、ファイルに対するホスト名との相関関係を格納することと、
を行うように構成されている、マネージャと、
を含む、システム。
【請求項４７】
前記マネージャが、前記トラックの第１のセット内の情報を、前記トラックの第２のセットにコピーするようにさらに構成されている、請求項４６に記載のシステム。
【請求項４８】
前記非キャッシュ媒体内の各ファイルの位置が、前記ファイルが置かれていると前記ホストが信じる位置と同じでない、請求項４６に記載のシステム。
【請求項４９】
前記１つ以上のファイルが、変換されたファイルを形成するために変換され、前記変換されたファイルが、それらが変換された元のファイルよりも少ない空間を占める、請求項４６に記載のシステム。
【請求項５０】
前記メディエータが、第１のメディエータであり、前記システムが、第２のメディエータおよび前記第１のメディエータ内の情報を前記第２のメディエータにコピーするためのモジュールをさらに含む、請求項４６に記載のシステム。
【請求項５１】
前記第１のメディエータおよび前記第２のメディエータが、前記同じファイル名を、前記非キャッシュデータ記憶媒体内の異なる位置と相互に関連付ける、請求項５０に記載のシステム。
【請求項５２】
前記非キャッシュデータ記憶媒体が第１の非キャッシュデータ記憶媒体であり、前記システムが、第２の非キャッシュデータ記憶媒体をさらに含み、前記第１のメディエータがファイル名を前記第１の非キャッシュデータ記憶媒体内の位置と相互に関連付け、前記第２のメディエータが前記ファイル名を前記第２の非キャッシュデータ記憶媒体内の位置と関連付ける、請求項５０に記載のシステム。