【手続補正書】
【提出日】令和1年6月5日(2019.6.5)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
少なくとも１つのプロセッサに連結されたストレージデバイスを含む文書管理システムで更新されたファイルへのアクセスを提供する方法であって、
フラッシュ変換階層（ＦＴＬ：ｆｌａｓｈ  ｔｒａｎｓｌａｔｉｏｎ  ｌａｙｅｒ）マップは、ファイルシステムによって維持される論理的ページナンバー（ＬＰＮ：ｌｏｇｉｃａｌ  ｐａｇｅ  ｎｕｍｂｅｒ）と前記ストレージデバイスによって維持される物理的ページナンバー（ＰＰＮ：ｐｈｙｓｉｃａｌ  ｐａｇｅ  ｎｕｍｂｅｒ）との間のＦＴＬによって維持され、
前記方法は、
第１ファイルへのアクセスが維持される間、前記第１ファイルの変更されたコンテンツ及び前記変更されたコンテンツがコピーされる第２ファイルの生成を含む更新（アップデート）を受信するアプリケーションに応答して送信される第１コマンドを、前記プロセッサから前記ストレージデバイスによって受信する段階であって、前記第１コマンドのパラメータは、前記第１ファイルに対応するＬＰＮの第１リスト及び前記第２ファイルに対応するＬＰＮの第２リストを含み、前記ＬＰＮの第１リストは、前記ストレージデバイスにおける前記第１ファイルの格納位置を示すＰＰＮの第１リストにマッピングされ、前記ＬＰＮの第２リストは、前記ストレージデバイスにおける前記第２ファイルの格納位置を示すＰＰＮの第２リストにマッピングされる前記受信する段階と、
前記ＬＰＮの第１リストが前記ＰＰＮの第２リストに順にマッピングされるように前記ＬＰＮの第１リストをアトミックに（ａｔｏｍｉｃａｌｌｙ）再マッピングする段階であって、前記ＬＰＮの第１リストの各ＬＰＮに対し、前記ＬＰＮの第１リストのＬＰＮと前記ＰＰＮの第２リストの対応するＰＰＮとの間の前記ＦＴＬマップにマッピングが生成される前記再マッピングする段階と、
前記ＰＰＮの第１リストへの前記ＬＰＮの第１リストのマッピングを非同期的に（ａｓｙｎｃｈｒｏｎｏｕｓｌｙ）除去（ｔｒｉｍｍｉｎｇ）する段階であって、前記ＬＰＮの第１リストのすべてのＬＰＮに対し、前記ＬＰＮの第１リストのＬＰＮと前記ＰＰＮの第１リストの対応するＰＰＮとの間の前記ＦＴＬマップでマッピングが解除（ｒｅｍｏｖｅ）される前記除去する段階と、
前記ＰＰＮの第２リストへの前記ＬＰＮの第２リストのマッピングをアンマッピング（ｕｎｍａｐｐｉｎｇ）する段階であって、前記ＬＰＮの第２リストのすべてのＬＰＮに対し、前記ＬＰＮの第２リストのＬＰＮと前記ＰＰＮの第２リストの対応するＰＰＮとの間のマッピングが、前記ＦＴＬマップで解除される前記アンマッピングする段階と、を含むことを特徴とする方法。
【請求項２】
前記第１コマンドは、ＳＷＡＴ（ｓｗａｐ  ａｎｄ  ｔｒｉｍ）コマンドを含み、ＡＰＩ（ａｐｐｌｉｃａｔｉｏｎ  ｐｒｏｇｒａｍｍｉｎｇ  ｉｎｔｅｒｆａｃｅ）に発行されることを特徴とする請求項１に記載の方法。
【請求項３】
前記ＳＷＡＴコマンドは、アプリケーション又はオペレーティングシステムによる呼び出しに応答して、ストレージデバイスドライバＡＰＩから前記ストレージデバイスに発行されることを特徴とする請求項２に記載の方法。
【請求項４】
前記ＬＰＮの第１リスト及び前記ＬＰＮの第２リストに含まれるＬＰＮは、前記ＬＰＮの第１リスト及び前記ＬＰＮの第２リストによって決められた順序に沿ってアトミックに再マッピングされることを特徴とする請求項２に記載の方法。
【請求項５】
ガベージコレクションによってページが回収（ｒｅｃｌａｉｍ）されるまで、非同期的に除去（ｔｒｉｍ）される前記ページにアクセスする同時的プロセス（ｃｏｎｃｕｒｒｅｎｔ  ｐｒｏｃｅｓｓｅｓ）を可能にする弱いマッピングを提供する段階、をさらに含むことを特徴とする請求項４に記載の方法。
【請求項６】
ガーベッジコレクション、書き込みコマンド、又はトリムコマンドにより前記弱いマッピングを解除（ｒｅｍｏｖｉｎｇ）する段階、をさらに含むことを特徴とする請求項５に記載の方法。
【請求項７】
システムであって、
フラッシュ変換階層（ＦＴＬ：ｆｌａｓｈ  ｔｒａｎｓｌａｔｉｏｎ  ｌａｙｅｒ）マップは、ファイルシステムによって維持される論理的ページナンバー（ＬＰＮ：ｌｏｇｉｋａｌ  ｐａｇｅ  ｎｕｍｂｅｒ）とストレージデバイスによって維持される物理的ページナンバー（ＰＰＮ：ｐｈｙｓｉｃａｌ  ｐａｇｅ  ｎｕｍｂｅｒ）との間のＦＴＬによって維持され、
前記システムは、
プロセッサ及びメモリを含むコンピュータと、
前記プロセッサと前記メモリの外部に位置する前記ストレージデバイスと、を備え、
前記ストレージデバイスは、
第１ファイルへのアクセスが維持される間、前記第１ファイルの変更されたコンテンツ及び前記変更されたコンテンツがコピーされる第２ファイルの生成を含む更新（アップデート）を受信するアプリケーションに応答して送信される第１コマンドを、前記プロセッサから受信するように構成され、
前記第１コマンドのパラメータは、前記第１ファイルに対応するＬＰＮの第１リスト及び前記第２ファイルに対応するＬＰＮの第２リストを含み、
前記ＬＰＮの第１リストは、前記ストレージデバイスにおける前記第１ファイルの格納位置を示すＰＰＮの第１リストにマッピングされ、前記ＬＰＮの第２リストは、前記ストレージデバイスにおける前記第２ファイルの格納位置を示すＰＰＮの第２リストにマッピングされ、
前記ストレージデバイスは、
前記ＬＰＮの第１リストが前記ＰＰＮの第２リストに順にマッピングされるように前記ＬＰＮの第１リストをアトミックに（ａｔｏｍｉｃａｌｌｙ）再マッピングするように構成され、
前記ＬＰＮの第１リストのＬＰＮと前記ＰＰＮの第２リストの対応するＰＰＮとの間の前記ＦＴＬマップに、前記ＬＰＮの第１リストの各ＬＰＮに対するマッピングが生成され、
前記ストレージデバイスは、
前記ＰＰＮの第１リストへの前記ＬＰＮの第１リストのマッピングを非同期的に（ａｓｙｎｃｈｒｏｎｏｕｓｌｙ）除去（ｔｒｉｍｍｉｎｇ）するように構成され、
前記ＬＰＮの第１リストのＬＰＮと前記ＰＰＮの第１リストの対応するＰＰＮとの間の前記ＦＴＬマップで、前記ＬＰＮの第１リストのすべてのＬＰＮに対するマッピングが解除（ｒｅｍｏｖｅ）され、
前記ストレージデバイスは、
前記第２リストのＰＰＮへの前記ＬＰＮの第２リストの前記マッピングをアンマッピング（ｕｎｍａｐｐｉｎｇ）するように構成され、
前記ＬＰＮの第２リストのＬＰＮと前記ＰＰＮの第２リストの対応するＰＰＮとの間の前記ＦＴＬマップで、前記ＬＰＮの第２リストのすべてのＬＰＮに対するマッピングが解除されることを特徴とするシステム。
【請求項８】
前記第１コマンドは、ＳＷＡＴ（ｓｗａｐ  ａｎｄ  ｔｒｉｍ）コマンドを含み、ＡＰＩ（ａｐｐｌｉｃａｔｉｏｎ  ｐｒｏｇｒａｍｍｉｎｇ  ｉｎｔｅｒｆａｃｅ）を介して発行されることを特徴とする請求項７に記載のシステム。
【請求項９】
前記ＬＰＮの第１リスト及び前記ＬＰＮの第２リストに含まれるＬＰＮは、前記ＬＰＮの第１リスト及び前記ＬＰＮの第２リストによって決められた順序に沿ってアトミックに再マッピングされることを特徴とする請求項８に記載のシステム。
【請求項１０】
前記ＳＷＡＴコマンドは、アプリケーション又はオペレーティングシステムによる呼び出しに応答して、ストレージデバイスドライバＡＰＩから前記ストレージデバイスに発行されることを特徴とする請求項８に記載のシステム。
【請求項１１】
ガベージコレクションによってページが回収（ｒｅｃｌａｉｍ）されるまで、非同期的に除去（ｔｒｉｍ）される前記ページにアクセスする同時的プロセス（ｃｏｎｃｕｒｒｅｎｔ  ｐｒｏｃｅｓｓｅｓ）を可能にする弱いマッピングが提供されることを特徴とする請求項７に記載のシステム。
【請求項１２】
前記弱いマッピングは、ガベージコレクション、書き込みコマンド、又はトリムコマンドによって解除（ｒｅｍｏｖｅ）されることを特徴とする請求項１１に記載のシステム。
【請求項１３】
少なくとも１つのプロセッサに連結されたストレージデバイスを含む文書管理システムで更新されたファイルへのアクセスを提供するプログラムのコマンドを含む、コンピュータ読み取り可能な非一時的記録媒体に格納された実行可能なソフトウェア製品であって、
フラッシュ変換階層（ＦＴＬ：ｆｌａｓｈ  ｔｒａｎｓｌａｔｉｏｎ  ｌａｙｅｒ）マップは、ファイルシステムによって維持される論理的ページナンバー（ＬＰＮ：ｌｏｇｉｋａｌ  ｐａｇｅ  ｎｕｍｂｅｒ）と前記ストレージデバイスによって維持される物理的ページナンバー（ＰＰＮ：ｐｈｙｓｉｃａｌ  ｐａｇｅ  ｎｕｍｂｅｒ）との間のＦＴＬによって維持され、
前記プログラムのコマンドは、
第１ファイルへのアクセスが維持される間、前記第１ファイルの変更されたコンテンツ及び前記変更されたコンテンツがコピーされる第２ファイルの生成を含む更新（アップデート）を受信するアプリケーションに応答して送信される第１コマンドを、前記プロセッサから前記ストレージデバイスによって受信する段階であって、前記第１コマンドのパラメータは、前記第１ファイルに対応するＬＰＮの第１リスト及び前記第２ファイルに対応するＬＰＮの第２リストを含み、前記ＬＰＮの第１リストは、前記ストレージデバイスにおける前記第１ファイルの格納位置を示すＰＰＮの第１リストにマッピングされ、前記ＬＰＮの第２リストは、前記ストレージデバイスにおける前記第２ファイルの格納位置を示すＰＰＮの第２リストにマッピングされる前記受信する段階と、
前記ＬＰＮの第１リストが前記ＰＰＮの第２リストに順にマッピングされるように前記ＬＰＮの第１リストをアトミックに（ａｔｏｍｉｃａｌｌｙ）再マッピングする段階であって、前記ＬＰＮの第１リストの各ＬＰＮに対し、前記ＬＰＮの第１リストのＬＰＮと前記ＰＰＮの第２リストの対応するＰＰＮとの間の前記ＦＴＬマップにマッピングが生成される前記再マッピングする段階と、
前記ＰＰＮの第１リストへの前記ＬＰＮの第１リストのマッピングを非同期的に（ａｓｙｎｃｈｒｏｎｏｕｓｌｙ）除去（ｔｒｉｍｍｉｎｇ）する段階であって、前記ＬＰＮの第１リストのすべてのＬＰＮに対し、前記ＬＰＮの第１リストのＬＰＮと前記ＰＰＮの第１リストの対応するＰＰＮとの間の前記ＦＴＬマップでマッピングが解除（ｒｅｍｏｖｅ）される前記除去する段階と、
前記ＰＰＮの第２リストへの前記ＬＰＮの第２リストのマッピングをアンマッピング（ｕｎｍａｐｐｉｎｇ）する段階であって、前記ＬＰＮの第２リストのすべてのＬＰＮに対し、前記ＬＰＮの第２リストのＬＰＮと前記ＰＰＮの第２リストの対応するＰＰＮとの間のマッピングが、前記ＦＴＬマップで解除される前記アンマッピングする段階と、を含むことを特徴とするコンピュータ読み取り可能な非一時的記録媒体に格納された実行可能なコンピュータ・ソフトウェア製品。
【請求項１４】
少なくとも一つのプロセッサ含む外部コンピュータに連結されたストレージデバイスによって遂行される、更新されたファイルへのアクセスを提供する方法であって、
フラッシュ変換階層（ＦＴＬ：ｆｌａｓｈ  ｔｒａｎｓｌａｔｉｏｎ  ｌａｙｅｒ）マップは、ファイルシステムによって維持される論理的ページナンバー（ＬＰＮ：ｌｏｇｉｃａｌ  ｐａｇｅ  ｎｕｍｂｅｒ）と前記ストレージデバイスによって維持される物理的ページナンバー（ＰＰＮ：ｐｈｙｓｉｃａｌ  ｐａｇｅ  ｎｕｍｂｅｒ）との間のＦＴＬによって維持され、
前記方法は、
第１ファイルへのアクセスが維持される間、前記第１ファイルの変更されたコンテンツ及び前記変更されたコンテンツがコピーされる第２ファイルの生成を含む更新（アップデート）を受信するアプリケーションに応答して送信される第１コマンドを、前記プロセッサから前記ストレージデバイスによって受信する段階であって、前記第１コマンドのパラメータは、前記第１ファイルに対応するＬＰＮの第１リスト及び前記第２ファイルに対応するＬＰＮの第２リストを含み、前記ＬＰＮの第１リストは、前記ストレージデバイスにおける前記第１ファイルの格納位置を示すＰＰＮの第１リストにマッピングされ、前記ＬＰＮの第２リストは、前記ストレージデバイスにおける前記第２ファイルの格納位置を示すＰＰＮの第２リストにマッピングされる前記受信する段階と、
前記ＬＰＮの第１リストが前記ＰＰＮの第２リストに順にマッピングされるように前記ＬＰＮの第１リストをアトミックに（ａｔｏｍｉｃａｌｌｙ）再マッピングする段階であって、前記ＬＰＮの第１リストの各ＬＰＮに対し、前記ＬＰＮの第１リストのＬＰＮと前記ＰＰＮの第２リストの対応するＰＰＮとの間の前記ＦＴＬマップにマッピングが生成される前記再マッピングする段階と、
前記ＰＰＮの第１リストへの前記ＬＰＮの第１リストのマッピングを非同期的に（ａｓｙｎｃｈｒｏｎｏｕｓｌｙ）除去（ｔｒｉｍｍｉｎｇ）する段階であって、前記ＬＰＮの第１リストのすべてのＬＰＮに対し、前記ＬＰＮの第１リストのＬＰＮと前記ＰＰＮの第１リストの対応するＰＰＮとの間の前記ＦＴＬマップでマッピングが解除（ｒｅｍｏｖｅ）される前記除去する段階と、
前記ＰＰＮの第２リストへの前記ＬＰＮの第２リストのマッピングをアンマッピング（ｕｎｍａｐｐｉｎｇ）する段階であって、前記ＬＰＮの第２リストのすべてのＬＰＮに対し、前記ＬＰＮの第２リストのＬＰＮと前記ＰＰＮの第２リストの対応するＰＰＮとの間のマッピングが、前記ＦＴＬマップで解除される前記アンマッピングする段階と、を含むことを特徴とする方法。