(57)【要約】  本発明は、ファイルを書き込み読み出すことに関連したシステム、方法、及びデバイスを提供する。複数のアイドル状態のストレージ・ブロックを含むブロック領域を提供する。複数のアイドル状態のストレージ・ブロックの各アイドル状態のブロックは、複数のブロック識別子の１つのブロック識別子と関連する。加えて、複数のブロック識別子の各ブロック識別子は、ブロック・インデックスに記載される。各ブロック識別子は、複数のブロック識別子の固有のブロック識別子を格納して、固有のブロック識別子とブロック識別子をリンクさせるコンテンツを含むことで、複数のブロック識別子をリンクさせる。
2018515852.tif 000002
【特許請求の範囲】
【請求項１】
ファイルを格納する方法において、
前記ファイルを受信するステップと、
前記ファイルを格納するために必要な複数のアイドル状態のストレージ・ブロックを決定するステップであって、前記複数のアイドル状態のストレージ・ブロックの各アイドル状態のストレージ・ブロックは、ブロックＩＤ識別子ユニットに対応し、各ブロックＩＤ識別子ユニットは、つぎのアイドル状態のストレージ・ブロックのブロック識別子を格納し、それにより、前記複数のアイドル状態のストレージ・ブロック間のリンク関係を形成する、前記複数のアイドル状態のストレージ・ブロックを決定するステップと、
前記複数のアイドル状態のストレージ・ブロック間の前記リンク関係により前記複数のアイドル状態のストレージ・ブロックに前記ファイルを格納するステップと、
を備える、方法。
【請求項２】
インデックス・ノードに前記ファイルのディスクリプションを格納するステップ、をさらに備える、請求項１に記載の方法。
【請求項３】
各インデックス・ノードは、インデックス・ノード識別子と関連する、請求項２に記載の方法。
【請求項４】
現在利用可能なインデックス・ノード識別子を決定して、前記ファイルを受信した後に前記ファイルのディスクリプションを格納するステップ、をさらに備える、請求項１に記載の方法。
【請求項５】
各インデックス・ノード識別子は、連続したテーブルに記載される、請求項４に記載の方法。
【請求項６】
前記現在利用可能なインデックス・ノード識別子は、直前に占有されたインデックス・ノード識別子へ固定増分を加えることで決定される、請求項５に記載の方法。
【請求項７】
前記固定増分は、１である、請求項６に記載の方法。
【請求項８】
前記ファイルの格納を完了した後に前記現在利用可能なインデックス・ノード識別子を更新するステップ、をさらに備える、請求項４に記載の方法。
【請求項９】
前記ファイルを格納するために必要なアイドル状態のストレージ・ブロック数は、前記ファイル内のデータ量に基づき計算される、請求項１に記載の方法。
【請求項１０】
前記ファイル内の前記データ量は、前記ファイルの解像度に基づき決定される、請求項９に記載の方法。
【請求項１１】
前記現在利用可能なインデックス・ノード内に格納されたままで保持ブロック数を更新するステップ、をさらに備える、請求項４に記載の方法。
【請求項１２】
前記保持ブロック数は、前記ファイルを格納するために使用されたブロック数への参照を含む、請求項１１に記載の方法。
【請求項１３】
ブロックを格納するたびにブロック・インデックスのブロックＩＤ識別子ユニットのコンテンツを更新するステップ、をさらに備える、請求項１に記載の方法。
【請求項１４】
鍵情報領域に格納された場合に現在操作可能なブロック識別子は、ブロックを格納するときに更新される、請求項１３に記載の方法。
【請求項１５】
前記鍵情報領域は、情報セクタにある、請求項１４に記載の方法。
【請求項１６】
テーブルは、ディスク・システム構造を説明するために使用される、請求項１５に記載の方法。
【請求項１７】
前記鍵情報領域は、ファイル・システムのハードディスクにある、請求項１４に記載の方法。
【請求項１８】
前記鍵情報領域は、重要度の閾値を超えるディスク情報を格納する、請求項１７に記載の方法。
【請求項１９】
前記現在操作可能なブロック識別子は、前記ファイルからのすべてのデータを格納した後に更新される、請求項１４に記載の方法。
【請求項２０】
現在操作可能なブロック識別子は、最後に占有されたブロック識別子、及び前記ブロック・インデックスの前記占有されたブロック識別子によりリンクするブロック識別子に基づき決定される、請求項１３に記載の方法。
【請求項２１】
前記ファイルを受信する前にファイル・システムを初期化するステップ、をさらに備える、請求項１に記載の方法。
【請求項２２】
前記ファイル・システムを初期化するステップは、現在利用可能なインデックス・ノード識別子を決定して記録することを備える、請求項２１に記載の方法。
【請求項２３】
前記ファイル・システムを初期化するステップは、現在操作可能なブロック識別子を決定して記録することを備える、請求項２１に記載の方法。
【請求項２４】
ディスク・システム構造を説明するテーブルは、メモリからハードディスクへ書き込まれる、請求項１に記載の方法。
【請求項２５】
前記テーブルは、前記ハードディスクへ１秒ごとに書き込まれることが可能である、請求項２４に記載の方法。
【請求項２６】
更新されたコンテンツのみ、前記ハードディスクへ書き込まれる、請求項２４に記載の方法。
【請求項２７】
前記ファイルは、可動物体上に設置されるメディア・キャプチャ・デバイスを使用してキャプチャされる、請求項２４に記載の方法。
【請求項２８】
前記可動物体は、無人航空機（ＵＡＶ）である、請求項２７に記載の方法。
【請求項２９】
前記ファイルの前記キャプチャは、前記ＵＡＶが飛行している間に行われる、請求項２８に記載の方法。
【請求項３０】
前記ファイルは、メディア・ファイルである、請求項１に記載の方法。
【請求項３１】
前記ファイルは、画像ファイルである、請求項１に記載の方法。
【請求項３２】
前記ファイルは、ビデオ・ファイルである、請求項１に記載の方法。
【請求項３３】
ファイルを格納するためのプログラム・インストラクションを含む非一時的なコンピュータ可読媒体において、
前記ファイルを受信するプログラム・インストラクションと、
前記ファイルを格納するために必要な複数のアイドル状態のストレージ・ブロックを決定するためのプログラム・インストラクションであって、前記複数のアイドル状態のストレージ・ブロックの各アイドル状態のストレージ・ブロックは、ブロックＩＤ識別子ユニットに対応し、各ブロックＩＤ識別子ユニットは、つぎのアイドル状態のストレージ・ブロックのブロック識別子を格納し、それにより、前記複数のアイドル状態のストレージ・ブロック間のリンク関係を形成する前記複数のアイドル状態のストレージ・ブロックを決定するためのプログラム・インストラクションと、
前記複数のアイドル状態のストレージ・ブロック間の前記リンク関係により前記複数のアイドル状態のストレージ・ブロックに前記ファイルを格納するプログラム・インストラクションと、
を備える、
コンピュータ可読媒体。
【請求項３４】
インデックス・ノードに前記ファイルのディスクリプションを格納するプログラム・インストラクション、
をさらに備える、
請求項３３に記載のコンピュータ可読媒体。
【請求項３５】
各インデックス・ノードは、インデックス・ノード識別子と関連する、
請求項３４に記載のコンピュータ可読媒体。
【請求項３６】
現在利用可能なインデックス・ノード識別子を決定して前記ファイルを受信した後に前記ファイルのディスクリプションを格納するプログラム・インストラクション、
をさらに備える、
請求項３３に記載のコンピュータ可読媒体。
【請求項３７】
各インデックス・ノード識別子は、連続したテーブルに記載される、
請求項３６に記載のコンピュータ可読媒体。
【請求項３８】
前記現在利用可能なインデックス・ノード識別子は、固定増分を直前に占有されたインデックス・ノード識別子に加えることで決定される、
請求項３７に記載のコンピュータ可読媒体。
【請求項３９】
前記固定増分は、１である、
請求項３８に記載のコンピュータ可読媒体。
【請求項４０】
前記ファイルの格納を完了した後に前記現在利用可能なインデックス・ノード識別子を更新するプログラム・インストラクション、
をさらに備える、
請求項３６に記載のコンピュータ可読媒体。
【請求項４１】
前記ファイルを格納するために必要なアイドル状態のストレージ・ブロック数は、前記ファイル内のデータ量に基づき計算される、
請求項３３に記載のコンピュータ可読媒体。
【請求項４２】
前記ファイル内の前記データ量は、前記ファイルの解像度に基づき決定される、
請求項４１に記載のコンピュータ可読媒体。
【請求項４３】
前記現在利用可能なインデックス・ノード内に格納されたままで保持ブロック数を更新するプログラム・インストラクション、
をさらに備える、
請求項３６に記載のコンピュータ可読媒体。
【請求項４４】
前記保持ブロック数は、前記ファイルを格納するために使用されたブロック数への参照を含む、
請求項４３に記載のコンピュータ可読媒体。
【請求項４５】
ブロックを格納するたびに前記ブロック・インデックスのブロックＩＤ識別子ユニットのコンテンツを更新するプログラム・インストラクション、
をさらに備える、
請求項３３に記載のコンピュータ可読媒体。
【請求項４６】
鍵情報領域に格納された場合に現在操作可能なブロック識別子は、ブロックを格納するときに更新される、
請求項４５に記載のコンピュータ可読媒体。
【請求項４７】
前記鍵情報領域は、情報セクタにある、
請求項４６に記載のコンピュータ可読媒体。
【請求項４８】
前記鍵情報領域は、ファイル・システムのハードディスクにある、
請求項４６に記載のコンピュータ可読媒体。
【請求項４９】
前記鍵情報領域は、重要度の閾値を超えるディスク情報を格納する、
請求項４８に記載のコンピュータ可読媒体。
【請求項５０】
前記テーブルは、ディスク・システム構造を説明するために使用される、
請求項４７に記載のコンピュータ可読媒体。
【請求項５１】
前記現在操作可能なブロック識別子は、前記ファイルからのすべてのデータを格納した後に更新される、
請求項４６に記載のコンピュータ可読媒体。
【請求項５２】
現在操作可能なブロック識別子は、最後に占有されたブロック識別子、及び前記ブロック・インデックスに前記占有されたブロック識別子によりリンクするブロック識別子に基づき決定される、
請求項４５に記載のコンピュータ可読媒体。
【請求項５３】
前記ファイルを受信する前にファイル・システムを初期化するプログラム・インストラクション、
をさらに備える、
請求項３３に記載のコンピュータ可読媒体。
【請求項５４】
前記ファイル・システムを初期化することは、現在利用可能なインデックス・ノード識別子を決定して記録することを備える、
請求項５３に記載のコンピュータ可読媒体。
【請求項５５】
前記ファイル・システムを初期化することは、現在操作可能なブロック識別子を決定して記録すること、を備える、
請求項５３に記載のコンピュータ可読媒体。
【請求項５６】
ディスク・システム構造を説明するテーブルは、メモリからハードディスクへ書き込まれる、
請求項３３に記載のコンピュータ可読媒体。
【請求項５７】
前記テーブルは、１秒ごとに前記ハードディスクへ書き込まれることが可能である、
請求項５６に記載のコンピュータ可読媒体。
【請求項５８】
更新されたコンテンツのみ、前記ハードディスクへ書き込まれる、
請求項５６に記載のコンピュータ可読媒体。
【請求項５９】
前記ファイルは、可動物体上に設置されるメディア・キャプチャ・デバイスを使用してキャプチャされる、
請求項５６に記載のコンピュータ可読媒体。
【請求項６０】
前記可動物体は、無人航空機（ＵＡＶ）である、
請求項５９に記載のコンピュータ可読媒体。
【請求項６１】
前記ファイルの前記キャプチャは、前記ＵＡＶが飛行している間に行われる、
請求項６０に記載のコンピュータ可読媒体。
【請求項６２】
前記ファイルは、メディア・ファイルである、
請求項３３に記載のコンピュータ可読媒体。
【請求項６３】
前記ファイルは、画像ファイルである、
請求項３３に記載のコンピュータ可読媒体。
【請求項６４】
前記ファイルは、ビデオ・ファイルである、
請求項３３に記載のコンピュータ可読媒体。
【請求項６５】
ファイルを格納するシステムにおいて、
ファイルをキャプチャするメディア・キャプチャ・デバイスと、
前記ファイルを格納するために必要な複数のアイドル状態のストレージ・ブロックを決定し、前記複数のアイドル状態のストレージ・ブロックの各アイドル状態のストレージ・ブロックがブロックＩＤ識別子ユニットに対応し、各ブロックＩＤ識別子ユニットがつぎのアイドル状態のストレージ・ブロックのブロック識別子を格納し、それにより、前記複数のアイドル状態のストレージ・ブロック間のリンク関係を形成し、前記複数のアイドル状態のストレージ・ブロック間の前記リンク関係により前記複数のアイドル状態のストレージ・ブロックに前記ファイルを格納する、ように個別に、または集合的に構成された１つ以上のプロセッサと、
を備える、
システム。
【請求項６６】
前記１つ以上のプロセッサは、
インデックス・ノードに前記ファイルのディスクリプションを格納する、
請求項６５に記載のシステム。
【請求項６７】
各インデックス・ノードは、インデックス・ノード識別子と関連する、
請求項６６に記載のシステム。
【請求項６８】
前記１つ以上のプロセッサは、
前記ファイルを受信した後に現在利用可能なインデックス・ノード識別子を決定する、
請求項６５に記載のシステム。
【請求項６９】
各インデックス・ノード識別子は、連続したテーブルに記載される、
請求項６８に記載のシステム。
【請求項７０】
前記現在利用可能なインデックス・ノード識別子は、直前に占有されたインデックス・ノード識別子へ固定増分を加えることで決定される、
請求項６９に記載のシステム。
【請求項７１】
前記固定増分は、１である、
請求項７０に記載のシステム。
【請求項７２】
前記１つ以上のプロセッサは、
前記ファイルの格納を完了した後に前記現在利用可能なインデックス・ノード識別子を更新する、
請求項６８に記載のシステム。
【請求項７３】
前記ファイルを格納するために必要なアイドル状態のストレージ・ブロック数は、前記ファイル内のデータ量に基づき計算される、
請求項６５に記載のシステム。
【請求項７４】
前記ファイル内の前記データ量は、前記ファイルの解像度に基づき決定される、
請求項７３に記載のシステム。
【請求項７５】
前記１つ以上のプロセッサは、
前記現在利用可能なインデックス・ノード内に格納されたままで保持ブロック数を更新する、
請求項６８に記載のシステム。
【請求項７６】
前記保持ブロック数は、前記ファイルを格納するために使用された前記ブロック数への参照を含む、
請求項７５に記載のシステム。
【請求項７７】
前記１つ以上のプロセッサは、
ブロックを格納するたびに前記ブロック・インデックスの値を更新する、
請求項６５に記載のシステム。
【請求項７８】
鍵情報領域に格納された場合に現在操作可能なブロック識別子は、ブロックを格納するときに更新される、
請求項７７に記載のシステム。
【請求項７９】
前記鍵情報領域は、情報セクタにある、
請求項７８に記載のシステム。
【請求項８０】
前記鍵情報領域は、ファイル・システムのハードディスク中にある、
請求項７８に記載のシステム。
【請求項８１】
前記鍵情報領域は、重要度の閾値を超えるディスク情報を格納する、
請求項８０に記載のシステム。
【請求項８２】
前記テーブルは、ディスク・システム構造を説明するために使用される、
請求項７９に記載のシステム。
【請求項８３】
前記現在操作可能なブロック識別子は、前記ファイルからのすべてのデータを格納した後に更新される、
請求項７８に記載のシステム。
【請求項８４】
現在操作可能なブロック識別子は、最後に占有されたブロック識別子、及び前記ブロック・インデックス中の前記占有されたブロック識別子によりリンクするブロック識別子に基づき決定される、
請求項７７に記載のシステム。
【請求項８５】
前記１つ以上のプロセッサは、
前記ファイルを受信する前にファイル・システムを初期化する、
請求項６５に記載のシステム。
【請求項８６】
前記ファイル・システムを初期化することは、現在利用可能なインデックス・ノード識別子を決定して記録すること、を備える、
請求項８５に記載のシステム。
【請求項８７】
前記ファイル・システムを初期化することは、現在操作可能なブロック識別子を決定して記録すること、を備える、
請求項８５に記載のシステム。
【請求項８８】
ディスク・システム構造を説明するテーブルは、メモリからハードディスクへ書き込まれる、
請求項６５に記載のシステム。
【請求項８９】
前記テーブルは、１秒ごとに前記ハードディスクに書き込まれることが可能である、
請求項８８に記載のシステム。
【請求項９０】
更新されたコンテンツのみ、前記ハードディスクに書き込まれる、
請求項８８に記載のシステム。
【請求項９１】
前記ファイルは、可動物体上に設置されるメディア・キャプチャ・デバイスを使用してキャプチャされる、
請求項８８に記載のシステム。
【請求項９２】
前記可動物体は、無人航空機（ＵＡＶ）である、
請求項９１に記載のシステム。
【請求項９３】
前記ファイルをキャプチャする前記ステップは、前記ＵＡＶが飛行している間に行われる、
請求項９２に記載のシステム。
【請求項９４】
前記ファイルは、メディア・ファイルである、
請求項６５に記載のシステム。
【請求項９５】
前記ファイルは、画像ファイルである、
請求項６５に記載のシステム。
【請求項９６】
前記ファイルは、ビデオ・ファイルである、
請求項６５に記載のシステム。
【請求項９７】
ファイルを読み出す方法において、
インデックス・ノードを読み出すステップであって、前記インデックス・ノードは、前記ファイルを格納する複数のストレージ・ブロックと関連した複数のブロック識別子を格納する、前記インデックス・ノードを読み出すステップと、
前記ファイルを格納する前記複数のストレージ・ブロックを読み出すステップと、
を備える、方法。
【請求項９８】
前記インデックス・ノードを読み出す前に読み出しコマンドを受信する、
ステップをさらに備える、請求項９７に記載の方法。
【請求項９９】
前記読み出しコマンドは、前記インデックス・ノードを読み出す前に分析される、請求項９８に記載の方法。
【請求項１００】
前記読み出しコマンドを分析することは、読み出されるコンテンツを決定することを備える、請求項９９に記載の方法。
【請求項１０１】
ディレクトリ・テーブルから前記インデックス・ノードを読み出す前にディレクトリ項目を読み出すステップ、
をさらに備える、請求項９７に記載の方法。
【請求項１０２】
前記ディレクトリ項目は、読み出される前記インデックス・ノードの前記コンテンツと関連する、請求項１０１に記載の方法。
【請求項１０３】
開始インデックス・ノード識別子は、前記ディレクトリ項目から決定される、請求項１０１に記載の方法。
【請求項１０４】
終了インデックス・ノード識別子は、前記ディレクトリ項目から決定される、請求項１０１に記載の方法。
【請求項１０５】
前記インデックス・ノードを読み出すステップは、終了インデックス・ノード識別子を識別した後に実行される、請求項１０４に記載の方法。
【請求項１０６】
前記インデックス・ノードを前記読み出すステップは、読み出しコマンドを分析し、対応するディレクトリにインデックスを作成し、対応するインデックス・ノードにインデックスを作成した後に実行される、請求項９７に記載の方法。
【請求項１０７】
前記ファイルを格納するために必要なストレージ・ブロック数は、前記ファイル内のデータ量に基づき計算される、請求項９７に記載の方法。
【請求項１０８】
前記ファイル内の前記データ量は、前記ファイルの解像度に基づき決定される、請求項１０７に記載の方法。
【請求項１０９】
前記インデックス・ノード及びストレージ・ブロックを含むディスク・システム構造を説明するテーブルは、メモリからハードディスクへ書き込まれる、請求項９７に記載の方法。
【請求項１１０】
前記テーブルは、１秒ごとに前記ハードディスクへ書き込まれることが可能である、請求項１０９に記載の方法。
【請求項１１１】
更新されたコンテンツのみ、前記ハードディスクへ書き込まれる、請求項１０９に記載の方法。
【請求項１１２】
前記ファイルは、メディア・ファイルである、請求項９７に記載の方法。
【請求項１１３】
前記ファイルは、画像ファイルである、請求項９７に記載の方法。
【請求項１１４】
前記ファイルは、ビデオ・ファイルである、請求項９７に記載の方法。
【請求項１１５】
ファイルを読み出すためのプログラム・インストラクションを含む非一時的なコンピュータ可読媒体において、
インデックス・ノードを読み出すためのプログラム・インストラクションであって、前記インデックス・ノードは、前記ファイルを格納する複数のストレージ・ブロックと関連した複数のブロック識別子を格納する前記インデックス・ノードを読み出すためのプログラム・インストラクションと、
前記ファイルを格納する前記複数のストレージ・ブロックを読み出すプログラム・インストラクションと、
を備える、
コンピュータ可読媒体。
【請求項１１６】
前記インデックス・ノードを読み出す前に読み出しコマンドを受信するプログラム・インストラクション、
をさらに備える、
請求項１１５に記載のコンピュータ可読媒体。
【請求項１１７】
前記読み出しコマンドは、前記インデックス・ノードを読み出す前に分析される、
請求項１１６に記載のコンピュータ可読媒体。
【請求項１１８】
前記読み出しコマンドを分析することは、読み出されるコンテンツを決定することを備える、
請求項１１７に記載のコンピュータ可読媒体。
【請求項１１９】
ディレクトリ・テーブルから前記インデックス・ノードを読み出す前にディレクトリ項目を読み出すプログラム・インストラクション、
をさらに備える、
請求項１１５に記載のコンピュータ可読媒体。
【請求項１２０】
前記ディレクトリ項目は、読み出される前記インデックス・ノードの前記コンテンツと関連する、
請求項１１９に記載のコンピュータ可読媒体。
【請求項１２１】
開始インデックス・ノード識別子は、前記ディレクトリ項目から決定される、
請求項１１９に記載のコンピュータ可読媒体。
【請求項１２２】
終了インデックス・ノード識別子は、前記ディレクトリ項目から決定される、
請求項１１９に記載のコンピュータ可読媒体。
【請求項１２３】
前記インデックス・ノードを読み出すことは、終了インデックス・ノード識別子を識別した後に実行される、
請求項１２２に記載のコンピュータ可読媒体。
【請求項１２４】
前記インデックス・ノードを前記読み出すことは、読み出しコマンドを分析し、対応するディレクトリにインデックスを作成し、対応するインデックス・ノードにインデックスを作成した後に実行される、
請求項１１５に記載のコンピュータ可読媒体。
【請求項１２５】
前記ファイルを格納するために必要なストレージ・ブロック数は、前記ファイル内のデータ量に基づき計算される、
請求項１１５に記載のコンピュータ可読媒体。
【請求項１２６】
前記ファイル内の前記データ量は、前記ファイルのサイズに基づき決定される、
請求項１１６に記載のコンピュータ可読媒体。
【請求項１２７】
前記インデックス・ノード及びストレージ・ブロックを含むディスク・システム構造を説明するテーブルは、メモリからハードディスクへ書き込まれる、
請求項１１５に記載のコンピュータ可読媒体。
【請求項１２８】
前記テーブルは、１秒ごとに前記ハードディスクへ書き込まれることが可能である、
請求項１１８に記載のコンピュータ可読媒体。
【請求項１２９】
更新されたコンテンツのみ、前記ハードディスクへ書き込まれる、
請求項１１８に記載のコンピュータ可読媒体。
【請求項１３０】
前記ファイルは、メディア・ファイルである、
請求項１１５に記載のコンピュータ可読媒体。
【請求項１３１】
前記ファイルは、画像ファイルである、
請求項１１５に記載のコンピュータ可読媒体。
【請求項１３２】
前記ファイルは、ビデオ・ファイルである、
請求項１１５に記載のコンピュータ可読媒体。
【請求項１３３】
ファイルを読み出すシステムにおいて、
ファイルをキャプチャするメディア・キャプチャ・デバイスと、
インデックス・ノードを読み出し、前記インデックス・ノードが前記ファイルを格納する複数のストレージ・ブロックと関連した複数のブロック識別子を格納し、前記ファイルを格納する前記複数のストレージ・ブロックを読み出す、ように個別に、または集合的に構成された、１つ以上のプロセッサと、
を備える、
システム。
【請求項１３４】
前記１つ以上のプロセッサは、
前記インデックス・ノードを読み出す前に読み出しコマンドを受信する、
請求項１３３に記載のシステム。
【請求項１３５】
前記読み出しコマンドは、前記インデックス・ノードを読み出す前に分析される、
請求項１３４に記載のシステム。
【請求項１３６】
前記読み出しコマンドを分析することは、読み出されるコンテンツを決定することを備える、
請求項１３３に記載のシステム。
【請求項１３７】
前記１つ以上のプロセッサは、
ディレクトリ・テーブルから前記インデックス・ノードを読み出す前にディレクトリ項目を読み出す、
請求項１３６に記載のシステム。
【請求項１３８】
前記ディレクトリ項目は、読み出される前記インデックス・ノードの前記コンテンツと関連する、
請求項１３７に記載のシステム。
【請求項１３９】
開始インデックス・ノード識別子は、前記ディレクトリ項目から決定される、
請求項１３７に記載のシステム。
【請求項１４０】
終了インデックス・ノード識別子は、前記ディレクトリ項目から決定される、
請求項１３７に記載のシステム。
【請求項１４１】
前記インデックス・ノードを読み出すことは、終了インデックス・ノード識別子を識別した後に実行される、
請求項１４０に記載のシステム。
【請求項１４２】
前記インデックス・ノードを前記読み出すことは、読み出しコマンドを分析し、対応するディレクトリにインデックスを作成し、対応するインデックス・ノードにインデックスを作成した後に実行される、
請求項１３３に記載のシステム。
【請求項１４３】
前記ファイルを格納するために必要なストレージ・ブロック数は、前記ファイル内のデータ量に基づき計算される、
請求項１３３に記載のシステム。
【請求項１４４】
前記ファイル内の前記データ量は、前記ファイルの解像度に基づき決定される、
請求項１４３に記載のシステム。
【請求項１４５】
前記インデックス・ノード及びストレージ・ブロック構造を含むディスク・システムを説明するテーブルは、メモリからハードディスクへ書き込まれる、
請求項１３３に記載のシステム。
【請求項１４６】
前記テーブルは、１秒ごとに前記ハードディスクへ書き込まれることが可能である、
請求項１４５に記載のシステム。
【請求項１４７】
更新されたコンテンツのみ、前記ハードディスクへ書き込まれる、
請求項１４５に記載のシステム。
【請求項１４８】
前記ファイルは、メディア・ファイルである、
請求項１３３に記載のシステム。
【請求項１４９】
前記ファイルは、画像ファイルである、
請求項１３３に記載のシステム。
【請求項１５０】
前記ファイルは、ビデオ・ファイルである、
請求項１３３に記載のシステム。
【請求項１５１】
ブロック領域のアイドル状態のストレージ・ブロックをリンクさせる方法において、
複数のアイドル状態のストレージ・ブロックを含むブロック領域を提供するステップであって、前記複数のアイドル状態のストレージ・ブロックの各アイドル状態のブロックは、複数のブロック識別子の１つのブロック識別子と関連する、前記複数のアイドル状態のストレージ・ブロックを含むブロック領域を提供するステップと、
ブロック・インデックスに前記複数のブロック識別子の各ブロック識別子を記載し、前記固有ブロック識別子と前記ブロック識別子をリンクさせる、前記複数のブロック識別子の固有ブロック識別子を格納する、対応するコンテンツと各ブロック識別子を関連付け、それにより、前記複数のブロック識別子をリンクさせるステップと、
を備える、方法。
【請求項１５２】
前記複数のブロック識別子の第一ブロック識別子は、現在操作可能なブロック識別子として記載される、請求項１５１に記載の方法。
【請求項１５３】
前記現在操作可能なブロック識別子は、現在アイドル状態のストレージ・ブロックを参照する、請求項１５２に記載の方法。
【請求項１５４】
現在のブロック識別子として記載されるブロック識別子は、別のブロック識別子の前記コンテンツに格納されない、請求項１５２に記載の方法。
【請求項１５５】
前記第一ブロック識別子から第二ブロック識別子へ前記現在操作可能なブロック識別子を更新するステップをさらに備え、前記第二ブロック識別子は、前記ブロック・インデックスに記載される、請求項１５２に記載の方法。
【請求項１５６】
ブロック領域でアイドル状態のストレージ・ブロックをリンクさせるためのプログラム・インストラクションを含む非一時的なコンピュータ可読媒体において、
複数のアイドル状態のストレージ・ブロックを含むブロック領域を提供するためのプログラム・インストラクションであって、前記複数のアイドル状態のストレージ・ブロックの各アイドル状態のストレージ・ブロックは、複数のブロック識別子の１つのブロック識別子と関連する、複数のアイドル状態のストレージ・ブロックを含むブロック領域を提供するためのプログラム・インストラクションと、
ブロック・インデックスに前記複数のブロック識別子の各ブロック識別子を記載し、前記複数のブロック識別子の固有のブロック識別子を格納して、前記ブロック識別子を前記固有のブロック識別子とリンクさせる対応するコンテンツと各ブロック識別子を関連付け、それにより、前記複数のブロック識別子をリンクさせるためのプログラム・インストラクションと、
を備える、
コンピュータ可読媒体。
【請求項１５７】
前記複数のブロック識別子の第一ブロック識別子は、現在操作可能なブロック識別子として記載される、
請求項１５６に記載のコンピュータ可読媒体。
【請求項１５８】
前記現在操作可能なブロック識別子は、現在アイドル状態のストレージ・ブロックを参照する、
請求項１５７に記載のコンピュータ可読媒体。
【請求項１５９】
現在操作可能なブロック識別子として記載されるブロック識別子は、別のブロック識別子の前記コンテンツに格納されない、
請求項１５７に記載のコンピュータ可読媒体。
【請求項１６０】
前記第一ブロック識別子から第二ブロック識別子へ前記現在操作可能なブロック識別子を更新するプログラム・インストラクションであって、前記第二ブロック識別子は、前記ブロック・インデックスに記載される、前記ブロック識別子を更新するプログラム・インストラクション、
をさらに備える、
請求項１５７に記載のコンピュータ可読媒体。
【請求項１６１】
ブロック領域でアイドル状態のストレージ・ブロックをリンクさせるシステムにおいて、
メモリ・ストレージ領域を有するメディア・キャプチャ・デバイスと、
複数のアイドル状態のストレージ・ブロックを含むブロック領域を提供し、前記複数のアイドル状態のブロックの各アイドル状態のストレージ・ブロックは、複数のブロック識別子の１つのブロック識別子と関連し、
ブロック・インデックスに前記複数のブロック識別子の各ブロック識別子を記載し、前記複数のブロック識別子の固有のブロック識別子を格納して、前記固有のブロック識別子と前記ブロック識別子をリンクさせる対応するコンテンツと各ブロック識別子を関連付け、それにより、前記複数のブロック識別子をリンクさせる、ように個別に、または集合的に構成された、１つ以上のプロセッサと、
を備える、
システム。
【請求項１６２】
前記複数のブロック識別子の第一ブロック識別子は、現在操作可能なブロック識別子として記載される、
請求項１６１に記載のシステム。
【請求項１６３】
前記現在のブロック識別子は、現在アイドル状態のストレージ・ブロックを参照する、
請求項１６２に記載のシステム。
【請求項１６４】
現在のブロック識別子として記載されるブロック識別子は、別のブロック識別子の前記コンテンツに格納されない、
請求項１６２に記載のシステム。
【請求項１６５】
前記１つ以上のプロセッサは、
前記第一ブロック識別子から第二ブロック識別子へ前記現在操作可能なブロック識別子を更新し、前記第二ブロック識別子が前記ブロック・インデックスに記載される、
請求項１６２に記載のシステム。
【請求項１６６】
画像ストレージ・システムで利用可能なストレージを増加させる方法において、
第二アイドル状態のストレージ・ブロックを参照する第二ブロック識別子として現在操作可能なブロック識別子を識別するステップと、
第一ブロック識別子と関連する占有されたストレージ・ブロックがアイドル状態になっていることを判定するステップと、
前記第二ブロック識別子から前記第一ブロック識別子へ前記現在操作可能なブロック識別子を更新するステップと、
ブロック・インデックスに前記第一ブロック識別子を記載し、前記第二ブロック識別子を格納する第一コンテンツと前記第一ブロック識別子を関連付けるステップであって、前記第二アイドル状態のストレージ・ブロックの位置は、前記第一アイドル状態のストレージ・ブロックの位置とは無関係である前記関連付けるステップと、
を備える、方法。
【請求項１６７】
第三ブロック識別子と関連する第二アイドル状態のストレージ・ブロックがアイドル状態になっていることを判定し、前記第一ブロック識別子から前記第三ブロック識別子へ前記現在操作可能なブロック識別子を更新する、
ステップをさらに備える、請求項１６６に記載の方法。
【請求項１６８】
前記占有されたストレージ・ブロックがアイドル状態になっていることを判定するステップは、ストレージ・ファイルからの前記占有されたストレージ・ブロックへの参照が削除されている表示を受信することを備える、請求項１６６に記載の方法。
【請求項１６９】
前記占有されたストレージ・ブロックがアイドル状態になっていることを判定するステップは、前記ストレージ・ブロック内に格納されたコンテンツが削除されている表示を受信することを備える、請求項１６６に記載の方法。
【請求項１７０】
画像ストレージ・システムで利用可能なストレージを増加させるためのプログラム・インストラクションを含む非一時的なコンピュータ可読媒体において、
第二アイドル状態のストレージ・ブロックを参照する第二ブロック識別子として現在操作可能なブロック識別子を識別するプログラム・インストラクションと、
第一ブロック識別子と関連する占有されたストレージ・ブロックがアイドル状態になっていることを判定するプログラム・インストラクションと、
前記第二ブロック識別子から前記第一ブロック識別子へ前記現在操作可能なブロック識別子を更新するプログラム・インストラクションと、
ブロック・インデックスに前記第一ブロック識別子を記載し、前記第二ブロック識別子を格納する第一コンテンツと前記第一ブロック識別子を関連付け、前記第二アイドル状態のストレージ・ブロックの位置は、前記第一アイドル状態のストレージ・ブロックの位置とは無関係であるプログラム・インストラクションと、
を備える、コンピュータ可読媒体。
【請求項１７１】
第三ブロック識別子と関連する第二アイドル状態のストレージ・ブロックがアイドル状態になっていることを判定し、前記第一ブロック識別子から前記第三ブロック識別子へ前記現在操作可能なブロック識別子を更新するプログラム・インストラクション、
をさらに備える、
請求項１７０に記載のコンピュータ可読媒体。
【請求項１７２】
前記占有されたストレージ・ブロックがアイドル状態になっていることを判定することは、ストレージ・ファイルからの前記占有されたストレージ・ブロックへの参照が削除されている表示を受信することを備える、
請求項１７０に記載のコンピュータ可読媒体。
【請求項１７３】
前記占有されたストレージ・ブロックがアイドル状態になっていることを判定することは、前記ストレージ・ブロック内に格納されたコンテンツが削除されている表示を受信することを備える、
請求項１７０に記載のコンピュータ可読媒体。
【請求項１７４】
画像ストレージ・システムで利用可能なストレージを増加させるシステムにおいて、
メモリ・ストレージ領域を含むメディア・キャプチャ・デバイスと、
第二アイドル状態のストレージ・ブロックを参照する第二ブロック識別子として現在操作可能なブロック識別子を識別し、
第一ブロック識別子と関連する占有されたストレージ・ブロックがアイドル状態になっていることを判定し、
前記第二ブロック識別子から前記第一ブロック識別子へ前記現在操作可能なブロック識別子を更新し、
ブロック・インデックスに前記第一ブロック識別子を記載し、前記第二ブロック識別子を格納する第一コンテンツと前記第一ブロック識別子を関連付け、前記第二アイドル状態のストレージ・ブロックの位置は、前記第一アイドル状態のストレージ・ブロックの位置とは無関係である、
ように個別に、または集合的に構成された、１つ以上のプロセッサと、
を備える、システム。
【請求項１７５】
また前記１つ以上のプロセッサは、
第三ブロック識別子と関連する第二アイドル状態のストレージ・ブロックがアイドル状態になっていることを判定し、前記第一ブロック識別子から前記第三ブロック識別子へ前記現在操作可能なブロック識別子を更新する、
ように構成される、
請求項１７４に記載のシステム。
【請求項１７６】
前記占有されたストレージ・ブロックがアイドル状態になっていることを判定することは、ストレージ・ファイルからの前記占有されたストレージ・ブロックへの参照が削除されている表示を受信することを備える、
請求項１７４に記載のシステム。
【請求項１７７】
前記占有されたストレージ・ブロックがアイドル状態になっていることを判定することは、前記ストレージ・ブロック内に格納されたコンテンツが削除されている表示を受信することを備える、
請求項１７４に記載のシステム。
【発明の詳細な説明】
【背景技術】
【０００１】
従来のファイル・システムは、短時間で正確かつ効率的に大量のデータをキャプチャすることが不可能である。特に、メモリ・アーキテクチャのストレージ能力が、ファイル取り込み速度をコンテンツ取得速度に一致させる能力を欠如するとき、ファイルと関連した大量のデータのキャプチャは、エラーをもたらす可能性がある。この欠如は、画像キャプチャ・デバイスが最大限にそれらの記録機能を利用することを妨げる可能性がある。たとえば、十分なストレージ構造の欠如は、無人航空機（ＵＡＶ）のような航空機と関連した画像キャプチャ・デバイスが、それらが記録することができる情報量を最大化しないようにする可能性がある。
【発明の概要】
【０００２】
ストレージ・システムのリンクした構造を使用し、ファイルを効率的に格納して読み出すシステム及び方法を提供する。ファイルからのデータとして格納する大容量ファイルが複数の切断されたストレージ領域内に格納されるとき、従来のファイル・システムは、大量のオーバーヘッドを必要とする可能性がある。しかしながら、本発明によるストレージ構成方法及びシステムを使用すると、データの格納速度をファイル・サイズとは無関係にすることにより、ファイルのアップロード速度を正規化し得る。
【０００３】
加えて、ファイルは、高速読み取りを提供する方式で格納され得る。特に、ファイルは、読み出し要求を受信したときに、ファイルの位置（複数を含む）を検索するプロセスを省くように格納され得る。対照的に、一般に従来のファイル・システムは、ファイルの読み取り前に、格納されたファイルの位置を検索する処理ステップを必要とする。しかしながら、本発明によるストレージ構成方法及びシステムを使用すると、同様に、データの読み取りをファイル・サイズとは無関係に行うことにより、ファイルの読み出し速度を正規化し得る。
【０００４】
本発明の態様は、ファイルを格納する方法を有し得る。この方法は、ファイルを受信するステップを備え得る。また方法は、ファイルを格納するために必要な複数のアイドル状態のストレージ・ブロックを決定するステップを備え得る。複数のアイドル状態のストレージ・ブロックの各アイドル状態のストレージ・ブロックは、ブロックＩＤ識別子ユニットに対応する。加えて、各ブロックＩＤ識別子ユニットは、つぎのアイドル状態のストレージ・ブロックのブロック識別子を格納することで、複数のアイドル状態のストレージ・ブロック間のリンク関係を形成する。さらに、ファイルは、複数のアイドル状態のストレージ・ブロック間のリンク関係により、複数のアイドル状態のストレージ・ブロックに格納される。
【０００５】
さらに本発明の態様は、ファイルを読み出す方法を有し得る。この方法は、インデックス・ノードを読み出すステップを備え得る。このインデックス・ノードは、ファイルを格納する複数のストレージ・ブロックと関連した複数のブロック識別子を格納する。加えて、方法は、ファイルを格納する複数のストレージ・ブロックを読み出すステップを備え得る。
【０００６】
本発明の追加の態様は、ブロック領域でアイドル状態のストレージ・ブロックをリンクさせる方法を有し得る。この方法は、複数のアイドル状態のストレージ・ブロックを含むブロック領域を提供することを備え得る。複数のアイドル状態のストレージ・ブロックの各アイドル状態のブロックは、複数のブロック識別子の１つのブロック識別子と関連する。加えて、方法は、ブロック・インデックスで複数のブロック識別子の各ブロック識別子を記載し、各ブロック識別子を対応するコンテンツと関連付けることを備え得る。対応するコンテンツは、複数のブロック識別子の固有のブロック識別子を格納して、ブロック識別子を固有のブロック識別子とリンクさせることで、複数のブロック識別子をリンクさせる。
【０００７】
さらに本発明の態様は、画像ストレージ・システムで利用可能なストレージを増加させる方法を有し得る。この方法は、第二アイドル状態のストレージ・ブロックを参照する第二ブロック識別子として現在操作可能なブロック識別子を識別するステップを備え得る。また方法は、第一ブロック識別子と関連する占有されたストレージ・ブロックが、アイドル状態になっていることを判定するステップを備え得る。加えて、方法は、第二ブロック識別子から第一ブロック識別子へ現在操作可能なブロック識別子を更新するステップを備え得る。また方法は、ブロック・インデックスに第一ブロック識別子を記載して、第二ブロック識別子を格納する第一コンテンツと第一ブロック識別子を関連付けるステップを備え得る。第二アイドル状態のストレージ・ブロックの第二位置は、第一アイドル状態のストレージ・ブロックの位置とは無関係である。
【０００８】
本発明の様々な態様は、個別に、集合的に、または相互に組み合わせて認識され得ることを理解されたい。本明細書において説明する本発明の様々な態様は、以下に記載する任意の特定の用途、または任意の他のタイプの可動物体に適用し得る。航空機に関する本発明の任意の説明は、さらに、空中運動（例えば、飛行）の文脈において本明細書で説明するシステム、デバイス、および方法は、また、地上もしくは水上の運動、水中の運動、または宇宙での運動などの他のタイプの運動の文脈においても適用可能である。
【０００９】
本発明の他の目的及び特徴は、明細書、特許請求の範囲、及び添付の図面の検討により明らかになるであろう。
【００１０】
参照による組込み
本明細書において言及される全ての刊行物、特許、および特許出願は、個別の刊行物、特許、または特許出願のそれぞれが具体的にかつ個別に示され参照により組み込まれるのと同程度に、参照によって本明細書に組み込まれる。
【００１１】
本発明の新規の特徴は、添付する特許請求の範囲において、詳細に示される。本発明の特徴及び利点は、本発明の原理を利用する例示的な実施形態を示す以下の詳細な説明、および以下の付随する図面を参照することによって、より深く理解されるであろう。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施形態に従い、メモリ・アーキテクチャ・システムの例示的な構造を説明する図である。
【図２】本発明の実施形態に従い、メモリ・アーキテクチャ・システムの例示的なスーパーセクタ構造を説明する図である。
【図３】本発明の実施形態に従い、メモリ・アーキテクチャ・システムの例示的なディレクトリ・テーブル構造を説明する図である。
【図４】本発明の実施形態に従い、メモリ・アーキテクチャ・システムの例示的なディレクトリ項目構造を説明する図である。
【図５】本発明の実施形態に従い、メモリ・アーキテクチャ・システムの例示的なインデックス・ノード・テーブル構造を説明する図である。
【図６】本発明の実施形態に従い、インデックス・ノードの例示的なデータ構造を説明する図である。
【図７】本発明の実施形態に従い、ブロック・インデックスの例示的な構造を説明する図である。
【図８】本発明の実施形態に従い、メモリ・アーキテクチャ・システムのコンポーネント間の例示的な相互作用の概略図である。
【図９】本発明の実施形態に従い、ブロック・インデックス及びストレージ・ブロック領域間の関係を説明する図である。
【図１０】本発明の実施形態に従い、メモリ・アーキテクチャ・システムのファイル・ストレージのための例示的な概略図である。
【図１１】本発明の実施形態に従い、メモリ・アーキテクチャ・システムのファイル・ストレージのための別の例示的な概略図である。
【図１２】本発明の実施形態に従う方法を実現するためにプログラミングされる、あるいは構成されるコンピュータ制御システムのブロック図である。
【図１３】本発明の実施形態に従ってファイルを格納する方法のステップを示すフローチャートである。
【図１４】本発明の実施形態に従ってファイルを読み出す方法のステップを示すフローチャートである。
【図１５】本発明の実施形態に従い、画像ストレージ・システムで利用可能なストレージを増加させる方法のステップを示すフローチャートを説明する。
【発明を実施するための形態】
【００１３】
本発明は、データを効率的にキャプチャし、格納し、読み取ることに関連したシステム、方法、及びデバイスを提供する。特に、データの取得速度を遅らせないために、大量のデータをアップロードして格納するファイル構造を提供する。加えて、ファイル・データを格納する位置（複数を含む）を検索することに関連するオーバーヘッド・コストを有することなく、データを読み取るファイル構造を提供する。これらのシステム及び方法は、画像データのような、大量のデータを急速にアップロードし、格納し、読み取るために使用され得る。加えて、画像データは、無人航空機（ＵＡＶ）により取得され得る。特に、本発明は、ウルトラハイスピード・カメラのためのファイル・システム構成に関し得る。本明細書に示されるシステム及び方法は、ＵＡＶに設置されたこれらのような、デジタル・カメラまたは同様のデバイスに適用され得る。ＵＡＶは、ＵＡＶに接続されたメディア・キャプチャ・デバイスを使用して画像情報をキャプチャするように構成され得る。
【００１４】
本明細書に示されるストレージ構成方法及びシステムを使用すると、画像のアップロード速度は、ファイリング・システムの構造に基づき正規化され得る。そして、これは、定常画像キャプチャを可能にする、という利点を持ち得る。これは、大容量のファイルを読み出す、または書き込むときのような、ファイルを読み出す、または書き込むときに高い内部オーバーヘッドを有することがある他のシステムとは対照的である。特に、ビデオをキャプチャする従来のシステムは、ファイルの書き込み速度がファイルのサイズ、ファイル・システム・オーバーヘッド、及びメモリ・デバイスの実際の書き込みオーバーヘッドに依存した構成方法を利用した。この関係は、方程式、
速度＝（ファイル・サイズ）／（（ファイル・システム・オーバーヘッド）＋（実際の書き込みオーバーヘッド））
として表される。
【００１５】
上記の方程式に従い、ファイルを書き込むファイル・システムを構成する従来の方法を使用して、異なるサイズを有するファイルを書き込む速度は、ファイル・サイズが異なるので、同じファイル・システムによりファイルが書き込まれたとしても、潜在的に異なる。対照的に、本発明によるメモリ・アーキテクチャ・システムは、ファイルの書き込み速度が、そのファイル・サイズとは無関係である。特に、本発明の実施形態に示す、このメディア・キャプチャ・デバイス・ファイル・システムは、ファイル書き込み構造を使用して、各アイドル状態のブロックが等しくリンクして、等しくアクセス可能である。したがって、ファイルの書き込み速度とは無関係にファイル・サイズを効率的に用意することが可能である。本発明は、この方式でアイドル状態のストレージ・ブロックをリンクさせるファイル構造を提供する。この方式では、アイドル状態のストレージ・ブロック内のファイル・コンポーネントの格納速度は、ストレージ・ブロックの位置とは無関係である。さらに、また本発明の実施形態は、ファイルの読み出し要求を受信する場合に、ファイルの位置を検索するシステムを必要とせず、ファイルの位置を参照するディレクトリを格納するシステムを提供する。この方式による実施形態は、ファイルの読み出し及び書き込みのためのオーバーヘッドを減少させ得る。特に、提供された実施形態は、ディレクトリのアドレス指定用のオーバーヘッド、ファイル作成用のオーバーヘッド、及びアドレス検索用のオーバーヘッドを減少させ得る。したがって、本発明の実施形態のファイル・システム構成を使用すると、メモリ・デバイスの実際の読み出し書き込み速度は、特に、その他の方法で従来のファイル書き込みシステム上の負担になる大量のデータを取得するときに、最大化され得る。
【００１６】
本明細書に示すようなメモリ・アーキテクチャ・システムは、任意の種類のファイルを格納するために使用され得る。このファイルは、画像、ビデオ、ドキュメント、レポート、オーディオ・ファイル、または他の例を含み得る。さらに、ファイルは、大容量ファイルであってもよい。ファイル・サイズは、６Ｋ画像の３０Ｍであってもよい。ファイル・サイズは、８Ｋ画像の６０Ｍであってもよい。本明細書に記載する実施例に示されるように、格納されるファイルは、カメラのような、メディア・キャプチャ・デバイスから得られて良い。カメラに格納されたファイルは、通常の画像である。４Ｋ及び１０ビットを有する画像の実施例において、ＲＡＷ画像は、１０．５Ｍのメモリ帯域幅を必要とする可能性がある。フレーム・レートが１秒あたり６０フレームであり、画像が圧縮されない場合、つぎに合計６４０Ｍのデータが、画像取得期間中に毎秒ハードディスクに格納され得る。しかしながら、従来のシステムを使用する、メディア・キャプチャ・デバイスの伝送速度は、その利用率が３０％から４０％の間であり得る。この見落とされたリソースの活用のために、本明細書における実施形態は、ファイル・システムの内部オーバーヘッドを減少させ、メモリ・デバイスの帯域幅の利用を増加させることが可能なカメラ、または同様の効果を有するファイル・システム構成を開示する。
【００１７】
本明細書におけるシステム及び方法は、メモリ・アーキテクチャ構造のディスク・ストレージ構造、または「ファイル・システム」を開示する。特に、ファイル・システムの内部オーバーヘッドを減少させ、メモリ・デバイスの帯域幅の利用を増加させることが可能であるファイル・システム構成を提供する。このファイル構成は、ハイスピード画像キャプチャ・デバイスのような、画像キャプチャ・デバイスに適用されたときに、特に有利である。一般に高速で画像を取得することは、大量の帯域幅を取る。画像取得中にファイル・システムの内部オーバーヘッドを減少させることで、画像自体の取得に割り当てられる帯域幅の量は、増加し得る。これは、結果的に、画像取得の信頼性を高め得る。このようなものとして、本明細書で説明されたディスク・ストレージ構造の実施形態は、画像ファイル、メディア・ファイル、マルチメディア・ファイル、及びデータの迅速な取得と関連する他の形式のコンテンツの取得に適用され得る利点がある。
【００１８】
図１は、本発明による実施形態のファイル・システム構造を示す図である。特に、図１は、本発明の実施形態に従う、メモリ・アーキテクチャ・システムの例示的な構造１００を示している。図１には、スーパーセクタ１１０、ディレクトリ・テーブル１２０、インデックス・ノード・テーブル１３０、ブロック・インデックス１４０、及びブロック領域１５０が含まれている。
【００１９】
ファイル・システムと関連する情報は、スーパーセクタ１１０に記録され得る。スーパーセクタ１１０は、鍵情報領域である。ディスク情報及びシステムのブート処理の際に使用される情報は、スーパーセクタ１１０に記録され得る。特に、ディスク情報及びシステムのブート処理の際に使用される情報は、メモリ・アーキテクチャ・システム自体を実行することに関連する情報を有し得る。ストレージ・ブロック領域に格納された情報はシステム内に格納される画像または他のデータに関連し得る。ストレージ・ブロック領域内に格納された情報は、システム自体を実行する際に使用される情報と相互作用し得ない場合、ディスク情報及びシステムのブート処理の際に使用される情報に含まれ得ない。図２には、スーパーセクタ１１０の構造の実施例が示されている。さらに、ディレクトリに関連する情報は、ディレクトリ・テーブル１２０に記録され得る。特に、ディレクトリに関連する情報は、ディレクトリ項目情報を含み得る。図３には、ディレクトリ・テーブルの実施例が示され、図４には、ディレクトリ項目構造の実施例が示されている。
【００２０】
加えて、ファイル自体に関連する情報は、インデックス・ノード・テーブル１３０に記録され得る。図５には、インデックス・ノード・テーブルの実施例が示され、図６には、インデックス・ノードのデータ構造の実施例が示される。さらに、ストレージ・ブロックに関連する情報は、ブロック・インデックス１４０に記録され得る。図７には、ブロック・インデックスの例示的なデータ構造が示される。ストレージ・ブロックに関連してブロック・インデックスに格納される情報は、互いにリンクし得る。加えて、画像ファイルのような、ファイルのファイル・コンポーネントは、ブロック領域１５０に格納され得る。ここで、ブロック領域は、データ・ストレージ領域であり得る。
【００２１】
図２は、本発明の実施形態に従い、メモリ・アーキテクチャ構造の例示的なスーパーセクタ構造２００、または「ファイル・システム」を説明する図である。ファイル・システムと関連する情報は、鍵情報領域である、スーパーセクタに格納され得る。スーパーセクタ構造２００は、ディスク・サイズ２１０を有する。このディスク・サイズ２１０は、ディスク上でローカルに利用可能であるストレージ量、第三者データを格納するために利用可能であるストレージ量、複数のメモリ・デバイス間でファイル・システムによりアクセス可能であるストレージ量、または他の実施例を参照し得る。加えて、ディレクトリ・テーブル・サイズ２１５及びジョイン・ポイント・テーブル・サイズ２２０は、スーパーセクタ構造２００に含まれ得る。ジョイン・ポイント・テーブル２２０は、同じデータベース内の２つ以上のテーブルから共通フィールドを含むデータベース・テーブルを参照し得る。加えて、既存のディレクトリ数２２５及び最後に作成されたディレクトリの識別子２３０は、スーパーセクタ構造２００に含まれ得る。既存のディレクトリ数２２５及び最後に作成されたディレクトリ２３０は、新規のディレクトリの可用性を判定するために、及び、新規のディレクトリに割り当てる参照番号を決定するために、それぞれ使用され得る。またスーパーセクタ構造２００は、現在操作可能なインデックス・ノードの識別子２３５、アイドル状態のブロック数２４０、最終更新時刻２４５、ブロック・サイズ２５０、現在操作可能なブロック識別子２５５、またはターミネータ２６０の少なくとも一つを含み得る。現在操作可能なインデックス・ノードの識別子２３５は、画像ファイルと関連したデータを格納する位置を示すことが可能である。特に、インデックス・ノードは、ファイルのディスクリプションを格納するために使用され得る。現在操作可能なインデックス・ノード識別子２３５は、アイドル状態であるインデックス・ノード・テーブルで第一インデックス・ノードを指し得る。加えて、アイドル状態のブロック数２４０は、ディスク・サイズ２１０及びブロック・サイズ２５０に基づき決定される。さらに、現在操作可能なブロック識別子２５５は、ファイルのファイル・コンポーネントを格納する位置を示すことが可能である。特に、現在操作可能なブロック識別子２５５は、ブロック領域でアイドル状態のストレージ・ブロックに対応する第一ブロック識別子を指し得る。加えて、ターミネータは、ファイル・システムが存在するかどうかの予備的な検出のために使用され得る。
【００２２】
図３は、例示的なディレクトリ・テーブル３００を説明する図である。特に、ディレクトリ情報は、ルート・ディレクトリ・テーブル３００に記録され得る。実施例において、ファイル・システムは、２つのディレクトリ・テーブル、ルート・ディレクトリ３００及びシーケンス・ファイル・ディレクトリ３１０，３２０を含み得る。ディレクトリ・レベルは、シーケンス・ファイルを区別するために使用され得る。実施例において、ディレクトリは、フォト・アルバムのような、１セットのファイルを格納するために使用され得る。この実施例の下で、シーケンス・ファイル・ディレクトリ３１０は、ハワイ旅行に関連する写真を格納するために使用され得る。各写真、または画像ファイルは、インデックス・ノード・ファイルに格納された写真に関する情報を含み得る。そして、インデックス・ノード・ファイルの各々は、シーケンス・ファイル・ディレクトリ３１０により参照され得る。加えて、ルート・ディレクトリ３００により参照されたシーケンス・ファイル・ディレクトリ数は、予測可能であり得る。
【００２３】
さらに、ディレクトリ・テーブル１２０は、ディレクトリ項目を含み得る。各ディレクトリ項目は、特定のデータ構造を含み得る。したがって、図４は、ディレクトリ項目４００の例示的なデータ構造を説明する。特に、図４で説明されるようなディレクトリ項目４００は、ディレクトリ識別子４０５、ディレクトリ名４１０、ディレクトリ中のインデックス・ノード数４１５、開始インデックス・ノード番号４２０、終了インデックス・ノード番号４２５、チャンネル数４３０、データ・ストレージ形式４３５、作成時間４４０、または最終更新時間４４５の少なくとも一つを含む。旅行中に取られた写真のアルバムの実施例を使用すると、開始インデックス・ノード番号４２０は、アルバムの最初の写真と関連し、終了インデックス・ノード番号４２５は、アルバムの最後の写真と関連し得る。加えて、ディレクトリのインデックス・ノード数４１５は、アルバムの写真の総数と関連し得る。
【００２４】
図５は、本発明の実施形態に従い、メモリ・アーキテクチャ・システムの例示的なインデックス・ノード・テーブル５００の構造を示す図である。インデックス・ノード・テーブル５００は、２つのインデックス・ノード５１０，５２０を含む。各インデックス・ノードは、ファイルと関連し得る。さらに、各インデックス・ノードは、格納されたファイルのファイル・コンポーネントの位置（複数を含む）を格納するために使用され得る。加えて、図６は、本発明の実施形態に従い、インデックス・ノード６００の例示的なデータ構造を説明する図である。特に、図６は、データ・サイズ６０５を含む。データ・サイズ６０５は、４つの素子のアレイを含み得る。加えて、図６は、作成時間６１０、インデックス・ノード中のブロック数６１５、またはインデックス・ノード中のブロックのインデックス・アレイ６２０の少なくとも一つを含み得る。この方式で、読み出しファイルを受信してファイルを読み出すときに、ファイルに関連した情報を格納しているインデックス・ノードを識別し、インデックス・ノードに格納される情報に基づき、ファイルと関連するファイル・コンポーネントの位置を識別し得る。
【００２５】
図７は、ブロック・インデックス７４０を含む例示的な構造７００を示す図である。特に図７は、ブロック領域７５０内のブロックに対応するブロック・インデックス７４０を含む構造７００を説明する。データ構造７００は、メモリ・アーキテクチャ構造であってもよい、データ構造７００は、鍵情報領域７１０、データ・テーブル７２０、及びインデックス・ノード・テーブル７３０を含む。図７で示されるように、ブロック・インデックス７４０は、ブロックＩＤ識別子ユニット７４５のような、ブロックＩＤ識別子ユニットの大きなアレイとしてみなされ得る。アレイ・サイズ、またはブロック・インデックス７４０は、ブロック領域７５０中のストレージ・ブロック数７５５に等しくてもよい。特に、ブロック・インデックス７４０内の各ブロックＩＤ識別子ユニットは、ブロック領域７５０中のストレージ・ブロックに対応し得る。
【００２６】
加えて、ブロック・インデックス中の各ブロックＩＤ識別子ユニットは、その対応するストレージ・ブロックを占有するかどうか、及びブロックがアイドル状態である場合にどのストレージ・ブロックがこのブロックにリンクするつぎのアイドル状態のブロックであるか、少なくとも１種類の情報を記録し得る。特に、各ブロックＩＤ識別子ユニットは、（１）つぎのアイドル状態のストレージ・ブロックのためのブロック識別子、または（２）ブロックＩＤ識別子ユニットに対応するストレージ・ブロックを占有するインジケータを記録し得る。（１）の実施例は、図７に図示され、ブロックＩＤ識別子ユニット７４５はコンテンツ７４６を含む。特に、コンテンツ７４６は、つぎのブロック識別子を識別する数字の「１」である。加えて、ブロック・インデックス内の各ユニットは、ブロック・インデックス内で接続された構造を形成する、別のユニットにリンクする。このインクリメンタル・リンクした構造は、画像取得中にデータの迅速な格納を可能にし得る。加えて、ストレージのために以前に使用されたブロックがリンクした構造に再統合され得るような画像をもはや必要としないときに、リンクした構造は、再現可能であり得る。特に、以前に占有されたストレージ・ブロックがアイドル状態になるときに、新規のアイドル状態のストレージ・ブロックに対応するブロック識別子は、現在のアイドル状態のストレージ・ブロック識別子を置換し、そのコンテンツ内にそのブロック識別子への参照を置き得る。
【００２７】
実施例において、占有されるストレージ・ブロックに対応するブロックＩＤ識別子ユニットは、ストレージ・ブロックを占有するインジケータを提示し得る。実施例において、このインジケータは、ストレージ・ブロックを占有することを図示する、「０ｘＦＦＦＦＦＦＦＦＦ」のような表現であってもよい。インジケータは、「占有された」、または占有されたストレージ・ブロックと関連する別の語句のような、別の表現の形式であってもよい。ストレージ・ブロックがアイドル状態であるときでも、ブロックＩＤ識別子ユニットは、数値を提示し得る。特に、ブロックＩＤ識別子ユニットは、ブロックＩＤ識別子ユニットにリンクする別のブロック識別子に対応するブロック識別子を提示し得る。
【００２８】
ブロック・インデックス構造の実施例において、マッピング構造の２つのレベルを提供し得る。特に、マッピングの第一レベルは、ディレクトリ・テーブルからジョイン・ポイント・テーブルへのマッピングであってもよい。加えて、マッピングの第二レベルは、ジョイン・ポイント・テーブルからストレージ・ブロック・テーブルへのマッピングであってもよい。ストレージ・ブロック・テーブルは、コンセプト・テーブルであってもよい。さらに、ブロック・インデックス・ストレージ及びシーケンス・ストレージに関連した、さまざまな実施形態が、本明細書で説明された実施形態に提案され得る。特に、メモリ・デバイスのアイドル状態のブロックは、ブロック・インデックスを使用してリンクし得る。加えて、占有されたブロックと関連する情報は、記録され得る。
【００２９】
併せて、さらに以下で説明されるように、インクリメンタル・ストレージを可能にする構造は、格納されるオブジェクトが画像自体よりもハイスピード・カメラから記録された画像にアクセスするための潜在的なディレクトリであるように使用され得る。特に、格納されたオブジェクトは、以前に格納された画像を検索して読み出す方式のためのクイック・リファレンスであってもよい。ストレージのこの構造は、特に近接していなくてもよいストレージ・ブロック数の全体に、格納された画像ファイルを格納するときに、格納された画像ファイルを検索するために必要な時間及び帯域幅の量を大幅に減少させる。この方式で、本明細書で説明された実施形態は、ファイルを書き込むときにオーバーヘッドを最小化し、既に格納されているファイルを検索して読み出すために必要な労力を最小限に抑える構造を提供する。
【００３０】
ファイルを格納するためにアイドル状態のストレージ・ブロックを互いにリンクさせる実施例は、ファイルを受信する前に開始され得る。特に、複数のアイドル状態のストレージ・ブロックを含むブロック領域を提供し得る。複数のアイドル状態のストレージ・ブロックの各アイドル状態のストレージ・ブロックは、複数のブロック識別子の１つのブロック識別子に対応し得る。加えて、ブロック・インデックス中の複数のブロック識別子の各ブロック識別子は、ブロックＩＤ識別子ユニットとして記載され、対応するコンテンツを含み得る。対応するコンテンツは、ブロック識別子を固有のブロック識別子とリンクさせる複数のブロック識別子の固有のブロック識別子を格納し得る。この方式で、複数のブロック識別子は、リンクされ得る。
【００３１】
追加の実施例において、複数のブロック識別子の第一ブロック識別子は、現在操作可能なブロック識別子として記載され得る。加えて、現在操作可能なブロック識別子は、現在アイドル状態のストレージ・ブロックを参照し得る。さらなる実施例において、現在のブロック識別子として記載されるブロック識別子は、別のブロック識別子のコンテンツに格納されなくてもよい。
【００３２】
メモリ・アーキテクチャ・システムのコンポーネントは、相互作用の複数の形式を有し得る。図８は、本発明の実施形態に従い、メモリ・アーキテクチャ・システム８００のコンポーネント間の例示的な相互作用の概略図である。特に、図８において、メモリ・アーキテクチャ・システム８００は、スーパーセクタ・コンポーネント８０５、ディレクトリ・コンポーネント８１０、インデックス・ノード・コンポーネント８１５、ブロック・インデックス・コンポーネント８２０、及びブロック領域コンポーネント８２５を有する。
【００３３】
スーパーセクタ・コンポーネント８０５は、鍵情報領域であってもよい。このように、スーパーセクタ・コンポーネント８０５は、メモリ・アーキテクチャ・システム８００の他のコンポーネントに関連する情報を含み得る。特に、スーパーセクタ・コンポーネント８０５は、「インデックス・ノード識別子」として参照された、現在操作可能なインデックス・ノードの識別子、及び「ブロック識別子」として参照された、現在操作可能なブロックの識別子を含み得る。後者の関係は、図８に示される。図８には、スーパーセクタ・コンポーネント８０５からブロック・インデックス８２０へのコネクタ８３０が示されている。特に、コネクタ８３０は、ブロック・インデックス８２０からスーパーセクタ・コンポーネント８０５へ現在操作可能なブロック識別子を提供する。特に、スーパーセクタ・コンポーネント８０５に提供されるような現在操作可能なブロック識別子は、「ｔａｇ＿ｆｒｅｅ  １（０ｘ０Ｆ）」である。
【００３４】
また図８は、ブロック・インデックス８２０内での接続数を図示する。特に、図８に示されるように、現在操作可能なブロックは、「ｔａｇ＿ｆｒｅｅ  １（０ｘ０Ｆ）」である。ここで、「ｔａｇ＿ｆｒｅｅ  １（０ｘ０Ｆ）」は、ブロックＩＤ識別子ユニットであり、またブロック・インデックス８２０に提供されるようなブロックＩＤ識別子ユニットのリストは、ブロック・インデックスと言われ得る。ブロックＩＤ識別子ユニット間のリンク沿いに移動して、「ｔａｇ＿ｆｒｅｅ  １（０ｘ０Ｆ）」は、接続８３２を介してつぎの操作可能なブロック「ｔａｇ＿ｆｒｅｅ  ２（０ｘ０４）」へ接続される。その後、つぎの操作可能なブロック「ｔａｇ＿ｆｒｅｅ  ２（０ｘ０４）」は、さらにつぎに接続８３６を介してブロック・インデックス８２０のさらに下のスペースで操作可能なブロックに接続される、接続８３４を介してその後の操作可能なブロック「ｔａｇ＿ｆｒｅｅ  ３（０ｘ１１）」に接続される。それに応じて、図８のブロック・インデックス８２０は、ブロックＩＤ識別子ユニット間のリンケージを示す。
【００３５】
加えて、図８は、ディレクトリ・コンポーネント８１０及びインデックス・ノード・コンポーネント８１５間の接続を示す。特に、ディレクトリ・コンポーネント８１０のディレクトリ項目は、接続８４０を介して、インデックス・ノード項目、「Ｉｎｏｄｅ＿ｎ１」、「Ｉｎｏｄｅ＿ｍｎ」、及び「Ｉｎｏｄｅ＿ｎ２」を参照し得る。さらに、「Ｉｎｏｄｅ＿ｍｎ」は、ブロック領域８２５のブロックへさらに接続され得る。特に、「Ｉｎｏｄｅ＿ｍｎ」は、接続８５０を介してブロック領域８２５内の、ブロック、「Ｂｌｏｃｋ＿ｍ１」、「Ｂｌｏｃｋ＿ｍ２」、及び「Ｂｌｏｃｋ＿ｍ３」へ接続されえ得る。このように、ディレクトリ・コンポーネント８１０のディレクトリ項目を識別すると、関連したインデックス・ノード項目は、ブロック領域８２５でブロックに格納されるファイル・コンポーネントの位置に関連した、格納された情報をさらに含み得るインデックス・ノード・コンポーネント８１５で識別され得る。
【００３６】
また図８は、ブロック領域８２５及びインデックス・ノード８１５のブロック間の１つ以上の接続を削除することで、ブロック領域のスペースを解放する能力を説明する。特に、インデックス・ノード・コンポーネント８１５は、一般的に接続８５０を介してブロック領域８２５へ接続される。具体的に、インデックス・ノード・コンポーネント８１５は、それぞれ、接続８５２，８５４、及び８５６を介してブロック領域８２５内のブロック、「Ｂｌｏｃｋ＿ｍ１」、「Ｂｌｏｃｋ＿ｍ２」、及び「Ｂｌｏｃｋ＿ｍ３」へ接続される。接続８５２，８５４、及び８５６は、ブロック、「Ｂｌｏｃｋ＿ｍ１」、「Ｂｌｏｃｋ＿ｍ２」、及び「Ｂｌｏｃｋ＿ｍ３」を占有することを示す。しかしながら、接続の内の１つ以上が切断される場合に、その後それぞれのブロックは、再びアイドル状態とみなされ得る。
【００３７】
ある実施例において、アイドル状態のブロックは、ファイル・コンポーネントを現在格納していないブロックを含み得る。他の実施例において、アイドル状態のブロックは、ファイル読み取りリファレンスに接続されないブロックを含み得る。第二の実施例において、このブロックは、アイドル状態を保ち得るが、ブロックが格納する新規のファイル・コンポーネントを割り当てられるまで、以前の画像ファイルの１部を格納し続け得る。格納する新規のファイル・コンポーネントがあるときに、ブロックは、以前のファイル・コンポーネント上に書き込むことで、その新規のファイル・コンポーネントを格納し得る。この方式で、ブロック領域は、所望の画像ファイルともはや関連しないすべての画像ファイル・コンポーネントを削除するために処理能力を費やすことを防ぐことができ、着信するファイルにストレージを割り当てることに、処理リソースを代わりに集中させ得る。
【００３８】
さらに格納されるファイルを受信する前に、メモリ・アーキテクチャ構造の構造上のコンポーネントは、確立され得る。特に、ファイル・システムが起動しているときに、プロセッサは、メモリへ、ブロック領域を除き、メモリ・アーキテクチャ構造の各ファイル構造コンポーネントと関連した情報を読み出し得る。さらに、システムは、情報が利用可能であるファイル構造内の情報をポピュレートし得る。たとえば、システムは、他の情報の内の、スーパーセクタ構造２００の識別子２２５のような、最後に作成されたディレクトリの識別子、スーパーセクタ構造２００の識別子２３０のような、現在操作可能なインデックス・ノードの識別子、及びスーパーセクタ構造２００の識別子２５０のような、現在操作可能なブロックの識別子をポピュレートし得る。
【００３９】
加えて、ファイル・システムを初期化するときに、ファイル・システムと通信可能に接続される画像キャプチャ・デバイスは、キャプチャ・モードに入り得る。実施例において、ファイル・システムは、ファイル・システムが画像キャプチャ・デバイスに従事することに応答して開始されるように、画像キャプチャ・デバイス内に格納され得る。画像キャプチャ・デバイスがキャプチャ・モードを開始しているときに、新規のディレクトリは、ファイル・システムで作成され得る。特に、この新規のディレクトリは、固有のディレクトリ識別子を使用して生成され得る。加えて、ディレクトリ識別子は、スーパーセクタ構造２００の識別子２２５により提供されるような、最後に作成されたディレクトリの識別子に基づき、この識別子から漸増的に増加し得る。
【００４０】
格納される新規の画像を受信する場合に、新規の画像の特性の数は、ファイル・システムに格納されるファイルに画像を書き込む前に判定され得る。特に、判定は、ファイル・システム内のブロック領域のいくつのブロックが画像により占有されるかに関して行われ得る。画像を格納するために必要なブロック領域のブロック数は、画像のサイズに基づき計算され得る。たとえば、画像を格納するために必要なブロック領域のブロック数は、全体的な画像サイズを測り、個々のブロック・サイズで全体的な画像サイズを分割することで判定され得る。結果の数値は、画像を格納するために必要なストレージ・ブロック数の指標となる。さらに、結果の数値が非整数である場合に（たとえば、結果の数値が２．５である場合に）、その後画像を格納するために必要なストレージ・ブロック数は、結果の数値からの連続であるつぎの連続する整数である。ストレージ・ブロックのサイズで分割された全体的な画像サイズが数値２．５をもたらす実施例において、画像を格納するために必要なストレージ・ブロック数は、つぎの連続する整数、３である。
【００４１】
更新される占有されたブロック数に関する情報は、計算されたブロック数に基づきファイル構造にポピュレートされ得る。特に、画像を格納するために必要なストレージ・ブロック数が判定されると、「インデックス・ノードのブロック数」のコンテンツ６１５は、インデックス・ノード・データ構造６００で更新され得る。
【００４２】
加えて、画像データは、スーパーセクタ構造２００の「現在操作可能なブロック」の識別子２５０のコンテンツに基づきブロック領域の所定のブロックに格納され得る。複数のブロックが画像を格納するために必要な場合、最初のブロックは、「現在操作可能なブロック」の識別子２５０のコンテンツに基づきブロック領域の所定のブロックに格納され得る。その後に、「現在操作可能なブロック」は、ブロック・インデックス１４０内のコンテンツに基づき、つぎの現在操作可能なブロックに更新され得る。最初のブロックを格納した後に、「現在操作可能なブロック」の識別子２５０は更新され、ブロック・インデックス１４０内のリンクに基づきインデックスが作成されるように、つぎのブロックに示す。加えて、ブロックを格納するたびに、ブロック・インデックスの対応する位置の値は、現在操作可能なブロックの識別子を格納するバリアントに割り当てられ得る。つぎに、ブロック・インデックスの対応する位置は、ブロックを占有するインジケータを含む場合に書き込まれ得る。このプロセスは、格納される必要がある、任意の残りの画像ファイル・コンポーネントのために繰り返される。そして、ファイル・システム内に格納される各画像ファイル・コンポーネントは、スーパーセクタ構造２００の「現在操作可能なブロック」２５０として参照されるブロックへ格納される。
【００４３】
格納プロセス後に、スーパーセクタ構造２００の現在操作可能なインデックス・ノードの識別子２３０を更新し得る。インデックス・ノード・テーブル１３０が連続したテーブルである実施例において、現在操作可能なインデックス・ノードのＩＤ２３０は、漸増的に増加し得る。実施例において、現在操作可能なインデックス・ノードのＩＤは、それが更新されるときに単一の整数で増加し得る。
【００４４】
ファイルを格納するために使用される書き込みプロセスの実施例は、ファイルを受信するときに開始され得る。ファイルを受信すると、ファイルを格納するために必要な複数のアイドル状態のストレージ・ブロックを決定し得る。ファイルを格納するために必要なアイドル状態のストレージ・ブロック数は、ファイル内のデータ量に基づき計算され得る。特に、ファイル内のデータ量は、ファイル・サイズに基づき測定され得る。
【００４５】
加えて、現在操作可能なインデックス・ノード識別子は、ファイル受信後に決定され得る。実施例において、現在操作可能なインデックス・ノードは、最新の占有されたインデックス・ノード識別子へ連続した増分を加えることで決定され得る。実施例において、連続した増分は、単一の整数であってもよい。加えて、画像ファイルについての情報は、インデックス・ノード内に格納され得る。たとえば、現在操作可能なインデックス・ノード内に格納されるような保持ブロック数は、画像ファイルを格納するために使用されるブロック数を反映するために更新され得る。特に、保持ブロック数は、ファイルを格納するために使用されたブロック数への参照を含み得る。
【００４６】
複数のアイドル状態のストレージ・ブロックの各アイドル状態のストレージ・ブロックは、複数のブロック識別子の１つのブロック識別子に対応し得る。各ブロック識別子は、固有のブロック識別子とブロック識別子をリンクさせる複数のブロック識別子の固有のブロック識別子を格納するコンテンツを含むことで、複数のアイドル状態のストレージ・ブロック間のリンク関係を形成する。加えて、ファイルは、複数のアイドル状態のストレージ・ブロック間のリンク関係により複数のアイドル状態のストレージ・ブロックに格納され得る。
【００４７】
特に、ファイルを格納するときに、現在操作可能なブロック識別子は、参照され得る。ファイルの画像ファイル・コンポーネントは、現在アイドル状態のストレージ・ブロックであるような、現在操作可能なブロック識別子により識別されるストレージ・ブロックに格納され得る。現在操作可能なブロック識別子は、最後に占有されたブロック識別子、及びブロック・インデックスで占有されたブロック識別子がリンクするブロック識別子に基づき決定され得る。
【００４８】
ブロックを格納するたびに、ブロック・インデックスの値を更新し得る。加えて、スーパーセクタに格納されるような現在操作可能なブロック識別子は、ブロックを格納するときに更新され得る。特に、スーパーセクタは、ディスク・システム構造を説明するために使用される情報セクタのテーブルであってもよい。
【００４９】
ファイルの格納後、現在操作可能なブロック識別子は、ファイルからのすべてのデータを格納した後に更新される。加えて、現在操作可能なインデックス・ノード識別子は、つぎに利用可能なインデックス・ノード識別子を反映するために更新され得る。特に、つぎに利用可能なインデックス・ノード識別子は、前の現在操作可能なインデックス・ノード識別子へ連続した増分を加えることで決定され得る。
【００５０】
他の実施例において、書き込みプロセスは、ファイルを受信する前にファイル・システムを初期化することで開始し得る。特に、ファイル・システムを初期化することは、現在操作可能なインデックス・ノード識別子を決定して記録することを備え得る。加えて、ファイル・システムを初期化することは、現在操作可能なアイドル状態のブロックを決定して記録することを備え得る。さらに、ディスク・システム構造を説明するためのテーブルは、メモリからハードディスクへ書き込まれ得る。実施例において、このテーブルは、１秒ごとにハードディスクに書き込まれることが可能である。
【００５１】
さらなる実施例において、使用される画像キャプチャ・デバイスは、可動物体上に設置され得る。可動物体は、無人航空機であってもよい。加えて、ファイルをキャプチャするステップは、ＵＡＶが飛行している間に行われ得る。実施例において、このファイルは、メディア・ファイル、画像ファイル、またはビデオ・ファイルであってもよい。
【００５２】
本明細書で開示された実施形態の利点は、画像を格納するために最適化されたファイル構造に基づき利用され得る効率的な読み出しプロセスである。特に、現在のシステムを使用して読み取られるファイルは、画像ファイル・コンポーネントの位置を測定するためにオーバーヘッドを必要としない。代わりに、現在の実施形態は、格納された画像コンポーネントの各位置を提供するディレクトリを格納することを対象とする。この方式で、画像ファイルを読み取るときに、画像ファイル・コンポーネントの位置を検索するために必要なオーバーヘッドがない。これは、特に画像ファイルまたはマルチメディア・ファイルに関して、ファイルを読み取ることと関連したオーバーヘッドが非常に大きい可能性がある、以前に設計されたファイル構造システムよりも有利である。本発明の実施形態は、画像ファイルを読み出すときに画像ファイル・コンポーネントの位置を測定することと関連したオーバーヘッドがないため、画像ファイル・コンポーネントの位置を測定することと関連した読み出しプロセスの部分は、ファイル・サイズと無関係である。
【００５３】
ファイル・システムが起動しているときに、メモリ・アーキテクチャ構造の構造上のコンポーネントは、確立され得る。特に、ファイル・システムが起動しているときに、プロセッサは、メモリへ、ブロック領域を除き、メモリ・アーキテクチャ構造の各ファイル構造コンポーネントと関連した情報を読み出し得る。さらに、システムは、情報が利用可能であるファイル構造内の情報をポピュレートし得る。たとえば、システムは、他の情報の内の、スーパーセクタ構造２００の識別子２２５のような、最後に作成されたディレクトリの識別子、スーパーセクタ構造２００の識別子２３０のような、現在操作可能なインデックス・ノードの識別子、及びスーパーセクタ構造２００の識別子２５０のような、現在操作可能なブロックの識別子をポピュレートし得る。
【００５４】
システムを初期化すると、画像を読み出すコマンドは、ハードウェアにより発行され得る。加えて、コマンド文字列は、読み出される画像の位置を測定するためにソフトウェアにより分析され得る。しかし、本発明の実施形態において、画像ファイル・コンポーネントの位置は、ディレクトリを含み得る。このように、画像の位置のディレクトリがコマンド文字列に含まれるときに、ソフトウェアは、画像の位置を検索するためにさらに作業を行う必要がない。代わりに、ソフトウェアは、単純に、ディレクトリを開き画像の位置を探す必要がある。ソフトウェアは、ソフトウェアが画像と関連するディレクトリ項目を決定することを可能にするために画像と関連した番号にアクセスし得る。それに応じて、ソフトウェアは、ディレクトリ名によりディレクトリ・テーブルを探し得る。加えて、対応するディレクトリ項目を検索に基づき探し得る。さらに、画像を格納するための識別子は、ディレクトリ項目の開始インデックス・ノード番号及び終了インデックス・ノード番号によりインデックスを作成され得る。
【００５５】
この方式で、開始インデックス・ノード番号及び終了インデックス・ノード番号と関連したインデックス・ノードを分析することで画像の位置を探し得る。加えて、インデックス・ノードのブロック数及び各ブロックのインデックス識別子を読み出し得る。この情報に基づき、ブロック領域からの読み出しデータは、ブロック・インデックスにより読み出され得る。
【００５６】
ファイルにアクセスするために使用される読み出しプロセスの実施例は、読み出し要求を受信するときに開始され得る。読み出し要求を受信すると、読み出し要求と関連するインデックス・ノードを読み出し得る。このインデックス・ノードは、ファイルを格納する複数のストレージ・ブロックに対応する複数のブロック識別子を格納し得る。加えて、ファイルを格納する複数のストレージ・ブロックを読み出し得る。特に、インデックス・ノードに格納されるブロック識別子を使用して複数のストレージ・ブロックにアクセスし得る。
【００５７】
さらなる実施例において、複数のブロック識別子の第一ブロック識別子は、現在操作可能なブロック識別子として記載され得る。加えて、現在操作可能なブロック識別子は、第一ブロック識別子に対応する現在アイドル状態のストレージ・ブロックのような、現在アイドル状態のストレージ・ブロックを参照し得る。現在操作可能なブロック識別子として記載されるブロック識別子は、別のブロック識別子のコンテンツに格納されない可能性がある。特に、ブロック識別子は、ファイル・コンテンツを格納するためにつぎに利用可能であるブロック識別子を対象とするコンテンツを含み得る。ブロック識別子が現在操作可能なブロック識別子である場合には、現在操作可能なブロック識別子にマッチングするコンテンツを含むブロック識別子がない。加えて、現在操作可能なブロック識別子に対応するアイドル状態のストレージ・ブロックがファイル・コンポーネントを格納すると、ストレージ・ブロックは、もはやアイドル状態ではなく、現在操作可能なブロック識別子は、更新される。特に、現在操作可能なブロック識別子は、第一ブロック識別子から、ブロック・インデックスに記載される第二ブロック識別子へ更新される。
【００５８】
図９は、ストレージ・ブロック領域でアイドル状態のストレージ・ブロックをリンクさせるためのコンポーネント間の関係を示す図である。特に、図９は、本発明の実施形態に従い、ブロック・インデックス９００及びストレージ・ブロック領域９５０間の関係を示す。特に、図９は、ブロックＩＤ識別子ユニット９０５，９１０，９１５，９２０、及び９２５を含むブロック・インデックス９００を示す。各ブロックＩＤ識別子ユニット９０５，９１０，９１５，９２０、及び９２５は、それぞれ、ストレージ・ブロック領域９５０で、ストレージ・ブロック９５５，９６０，９６５，９７０，９７５に対応する。加えて、各ブロックＩＤ識別子ユニット９０５，９１０，９１５，９２０、及び９２５は、それぞれ、コンテンツ９０７，９１２，９１７，９２２、及び９２７を格納する。
【００５９】
ブロックＩＤ識別子ユニット９１５のような、ブロックＩＤ識別子ユニットが「占有された」とラベル付けされるコンテンツ９１７を含むときに、ブロックＩＤ識別子ユニット９１５に対応するストレージ・ブロック領域９５０内のストレージ・ブロックを占有する。図９に示されるように、ストレージ・ブロック９６５は、ブロックＩＤ識別子ユニット９１５に対応する。ブロックＩＤ識別子ユニット９１５のコンテンツ９１７は、「占有された」であるため、対応するストレージ・ブロック９６５は、同様に占有されているものとして網掛けされる。ストレージ・ブロックを占有すると、各占有されたストレージ・ブロックへの参照は、関連したファイルの位置情報を格納するインデックス・ノード内に格納される。たとえば、占有されたストレージ・ブロック、「ブロック１」及び「ブロック３」が同じファイルと関連したファイル・コンポーネントを格納した場合に、つぎにストレージ・ブロックの各々への参照は、共有されたインデックス・ノード、または「Ｉｎｏｄｅ」内に格納される。
【００６０】
インデックス・ノードがファイルのファイル・コンポーネントを格納するために使用されたストレージ・ブロックの位置への参照を格納するために、読み出し要求を受信してファイルを読み取るときに必要な検索がない可能性がある。むしろ、読み出し要求を特定のファイルのために受信するときに、関連したインデックス・ノードを決定し得、ファイル・コンポーネントを格納するストレージ・ブロックの位置を読み出す。この方式で、ファイルと関連した各位置への参照がファイルと関連した情報を格納するインデックス・ノード内に提供される場合に、ファイルの読み取り速度は、ファイル・サイズとは無関係である。
【００６１】
加えて、ブロック識別子９１０のような、ブロックＩＤ識別子ユニットが別のブロック識別子を参照するコンテンツを含むとき、ブロック識別子９１２に対応するストレージ・ブロック領域９５０内のストレージ・ブロックは、ブロックＩＤ識別子ユニット９１０に対応するストレージ・ブロックを占有すると、占有されるつぎのストレージ・ブロックである。図９に示されるように、「ブロックｉｄ２」として参照された、ブロックＩＤ識別子ユニット９１０に対応するストレージ・ブロックが占有されると、ファイル・コンポーネントにより占有される、つぎに続くストレージ・ブロックは、「ブロックｉｄ４」として参照された、ブロック識別子９１２である。この方式で、ブロック識別子は、リンクする。特に図９に示されるように、「ブロックｉｄ２」として参照されたブロックＩＤ識別子ユニット９１０は、「ブロックｉｄ４」として参照されたブロックＩＤ識別子ユニット９２０にリンクする。ここで、ブロックＩＤ識別子ユニット９２０は、「ブロックｉｄ５」として参照されたブロックＩＤ識別子ユニット９２５に次にリンクする。
【００６２】
図１０及び１１において、本明細書で説明された実施例にしたがってファイル構造を更新する実施例が示される。図１０は、本発明の実施形態に従い、ファイル・コンポーネントのストレージ前のファイル・システムの概略図である。特に、図１０は、ファイル・システム１０１０に格納され得るファイル・コンポーネント１００５を含むファイル１０００を示す。ファイル・コンポーネント１００５は、ストレージ・ブロック領域１０１５のストレージ・ブロック１０２０に格納され得る。ストレージ・ブロック領域１０１５の各ストレージ・ブロック１０２０は、ブロック・インデックス１０２５に記載されるブロック識別子１０３０に対応する。各ブロック識別子１０３０は、ストレージ・ブロック領域１０１５のストレージ・ブロック１０２０に対応する。この関連付けは、図１０で示され、「１」、「２」、「３」、及び「４」として参照されたブロックＩＤ識別子ユニット１０３０は、それぞれ、ストレージ・ブロック領域１０１５内で、「１」、「２」、「３」、及び「４」として参照されたストレージ・ブロック１０２０に対応する。
【００６３】
ファイル・コンポーネント１００５は、ブロック・インデックス１０２５を介してストレージ・ブロック１０２０をリンクさせるファイル構造によりストレージ・ブロック領域１０１５に格納され得る。特に、ストレージ・ブロック１０２０は、ブロック・インデックス１０２５に記載されたブロックＩＤ識別子ユニット１０３０により参照される。さらに各ブロックＩＤ識別子ユニット１０３０は、後続のファイル・コンポーネントを格納するために使用され得るリンクしたブロックを参照するコンテンツ１０３５を含む。加えて、ファイル構造１０１０は、スーパーセクタ１０４０で現在操作可能なブロック識別子１０４５を参照することでファイル・コンポーネントを格納するために使用され得るストレージ・ブロック領域１０１５内でストレージ・ブロック１０２０を識別する。図１０に示されるように、現在操作可能なブロック識別子１０４５は、「ブロック２」として参照される。このように、ファイル・コンポーネント１００５は、ストレージ・ブロック領域１０１５内に「２」として参照されるストレージ・ブロック１０２０に格納される。さらに、ファイル・コンポーネント１００５をストレージ・ブロック領域１０１５のブロック２に格納した後に、ブロック２に対応するブロックＩＤ識別子ユニット１０３０は、格納されているファイル１０００と関連する現在のインデックス・ノード１０５０に格納される。
【００６４】
ファイル・コンポーネント１００５がブロック２に格納されていると、つぎのファイル・コンポーネント１００５は、ストレージ・ブロック領域１０２０の後続のストレージ・ブロックに格納される。「つぎのブロック４」として参照された、後続のストレージ・ブロックのブロックＩＤ識別子ユニット１０３０は、図１０で示されるように、「２」として参照されたブロックＩＤ識別子ユニット１０３０のコンテンツ１０３５として識別可能である。つぎにこの後続のブロック識別子は、現在操作可能なブロック識別子１０４５を更新するために使用される。特に、図１１は、ファイル・コンポーネントがストレージ・ブロック領域１０１５の「ブロック２」として参照されたストレージ・ブロック１０２０に格納された後に更新されたファイル・システム１０００の概略図を示す。
【００６５】
図１１に示されるように、現在操作可能なブロック識別子１０４５は、更新されていて、「ブロック４」として参照される。また現在のインデックス・ノード１０５０は、ファイル１０００のファイル・コンポーネント１００５がストレージ・ブロック領域１０１５の「ブロック２」として参照されたストレージ・ブロック１０２０に格納される場合に、「ブロック２」への参照を含むように更新されている。加えて、ストレージ・ブロック領域１０２０のブロック２は、ブロック２が今更新されることを示すために、アスタリスク＊を付けられて更新されている。さらに、「２」に対応するブロックＩＤ識別子ユニット１０３０のコンテンツ１０３５は、ストレージ・ブロック領域１０１５のブロック２が今占有される場合に、「占有された」を参照するように更新される。それに応じて、ファイル１０００のつぎのファイル・コンポーネント１００５は、現在操作可能なブロック識別子１０４５により識別される場合に、ストレージ・ブロック領域１０１５の「ブロック４」として参照されたストレージ・ブロック１０２０に格納される。
【００６６】
ファイルが格納されていると、それは、今後のある時点で、ファイル構造から削除される可能性がある。特に、以前に取得されて格納されているデータの保存上で追加データの取得にユーザが優先順位を付けるときに、ファイルは削除される可能性がある。実施例において、ファイルは、ストレージ・ブロック領域から削除される可能性がある。他の実施例において、ファイルの部分は、ファイル読み取りリファレンスから切断される可能性があり、後続のデータは、ファイルの部分を上書きする可能性がある。これが起こると、本発明のシステム及び方法により、画像ストレージ・システムで利用可能なストレージを増加させる。
【００６７】
特に、画像ストレージ・システムで利用可能なストレージを増加させる方法の実施例を提供する。この方法は、第二アイドル状態のストレージ・ブロックを参照する第二ブロック識別子として現在のブロック識別子を識別することを備える。また方法は、第一ブロック識別子に対応する占有されたストレージ・ブロックがアイドル状態になっていると判定することを備える。加えて、方法は、第二ブロック識別子から第一ブロック識別子へ現在のブロック識別子を更新することを備える。また方法は、ブロック・インデックスに第一ブロック識別子を記載すること、及び第二ブロック識別子を格納する第一コンテンツと第一ブロック識別子を関連付けることを備える。第二アイドル状態のストレージ・ブロックの位置は、第一アイドル状態のストレージ・ブロックの位置とは無関係である。
【００６８】
追加の実施例において、方法は、第三ブロック識別子に対応する第二アイドル状態のストレージ・ブロックがアイドル状態になっていることを判定することを備え得る。また方法は、第一ブロック識別子から第三ブロック識別子へ現在操作可能なブロック識別子を更新することを備え得る。加えて、占有されたストレージ・ブロックがアイドル状態になっている判定は、ストレージ・ファイルから占有されたストレージ・ブロックへの参照が削除されている表示を受信することを備え得る。さらに、占有されたストレージ・ブロックがアイドル状態になっている判定は、ストレージ・ブロック内に格納されたコンテンツが削除されている表示を受信することを備え得る。
【００６９】
本開示は、本開示の方法を実装するようにプログラミングされるコンピュータ制御システムを提供する。図１２は、ビデオ・データを処理するように、プログラミングされる、またはその他の方法で構成されるコンピュータ・システム１２０１を示す。コンピュータ・システム１２０１は、たとえば、画像データをキャプチャし、ストレージ・データを書き込み、ストレージ・データを読み出すような、本開示の画像データを書き込み読み出すさまざまな態様を調節することが可能である。コンピュータ・システム１２０１は、画像キャプチャ・システムのプロセッサ、ユーザの電子機器、またはこの電子機器に関して遠隔に設置されるコンピュータ・システムであることが可能である。この電子機器は、携帯電子機器であることが可能である。
【００７０】
コンピュータ・システム１２０１は、並列処理のための、シングル・コアもしくはマルチ・コア・プロセッサ、または複数のプロセッサであることが可能である、中央処理装置（ＣＰＵ、また、本明細書で、「プロセッサ」及び「コンピュータ・プロセッサ」）１２０５を含む。またコンピュータ・システム１２０１は、メモリまたはメモリ位置１２１０（たとえば、ランダム・アクセス・メモリ、読み出し専用メモリ、フラッシュ・メモリ）、電子ストレージ・ユニット１２１５（たとえば、ハードディスク）、１つ以上の他のシステムと通信する通信インタフェース１２２０（たとえば、ネットワーク・アダプタ）、及びキャッシュ、他のメモリ、データ・ストレージ、または電子ディスプレイ・アダプタの少なくとも一つのような周辺機器１２２５を含む。メモリ１２１０、ストレージ・ユニット１２１５、インタフェース１２２０及び周辺機器１２２５は、マザーボードのような、通信バス（実線）を介してＣＰＵ１２０５と通信する。ストレージ・ユニット１２１５は、データを格納するためのデータ・ストレージ・ユニット（またはデータ・リポジトリ）であることが可能である。コンピュータ・システム１２０１は、通信インタフェース１２２０を用いてコンピュータ・ネットワーク（「ネットワーク」）１２３０に操作可能に結合されることが可能である。ネットワーク１２３０は、インターネット、インターネット、またはエクストラネットの少なくとも一方、またはインターネットと通信するイントラネット、またはエクストラネットの少なくとも一方であることが可能である。ある場合、ネットワーク１２３０は、電気通信、またはデータ・ネットワークの少なくとも一方である。ネットワーク１２３０は、クラウド・コンピューティングのような、分散コンピューティングを有効にすることが可能である、１つ以上のコンピュータ・サーバを含むことが可能である。ネットワーク１２３０は、コンピュータ・システム１２０１を用いる場合に、クライアントまたはサーバとして動作するためにコンピュータ・システム１２０１へ接続されたデバイスを有効にし得る、ピアツーピア・ネットワークを実装することが可能である。
【００７１】
ＣＰＵ１２０５は、プログラムまたはソフトウェアで実現することが可能である、機械可読インストラクションのシーケンスを実行することが可能である。このインストラクションは、メモリ１２１０のような、メモリ位置に格納され得る。インストラクションは、ＣＰＵ１２０５を対象とすることが可能である。ＣＰＵ１２０５は、本開示の方法を実行するために、後でプログラミングする、またはその他の方法で設定することが可能である、ＣＰＵ１２０５で実行された操作の実施例は、フェッチ、復号、実行、及びライトバックを含むことが可能である。
【００７２】
ＣＰＵ１２０５は、集積回路のような、回路の部分であることが可能である。システム１２０１の１つ以上の他のコンポーネントを、この回路に含めることが可能である。ある場合、回路は、特定用途向け集積回路（ＡＳＩＣ）である。
【００７３】
ストレージ・ユニット１２１５は、ドライバ、ライブラリ、及び保存されたプログラムのような、ファイルを格納することが可能である。ストレージ・ユニット１２１５は、ユーザ・データ、たとえば、ユーザ選好及びユーザ・プログラムを格納することが可能である。ある場合、コンピュータ・システム１２０１は、イントラネットまたはインターネットを介してコンピュータ・システム１２０１と通信するリモート・サーバ上に設置されるような、コンピュータ・システム１２０１の外部にある１つ以上の追加のデータ・ストレージ・ユニットを含むことが可能である。
【００７４】
コンピュータ・システム１２０１は、ネットワーク１２３０を介して１つ以上のリモート・コンピュータ・システムと通信することが可能である。たとえば、コンピュータ・システム１２０１は、ユーザのリモート・コンピュータ・システム（たとえば、ユーザ端末）と通信することが可能である。リモート・コンピュータ・システムの実施例は、パーソナル・コンピュータ（たとえば、ポータブルＰＣ）、スレートもしくはタブレットＰＣ（たとえば、Ａｐｐｌｅ（登録商標）  ｉＰａｄ（登録商標）、Ｓａｍｓｕｎｇ（登録商標）  Ｇａｌａｘｙ  Ｔａｂ）、電話、スマートフォン（たとえば、Ａｐｐｌｅ（登録商標）  ｉＰｈｏｎｅ（登録商標）、Ａｎｄｒｏｉｄ（登録商標）対応デバイス、ＢｌａｃｋＢｅｒｒｙ（登録商標））、またはパーソナル・デジタル・アシスタントを含む。ユーザは、ネットワーク１２３０を介してコンピュータ・システム１２０１にアクセスすることが可能である。
【００７５】
本明細書で説明されるような方法は、たとえば、メモリ１２１０または電子ストレージ・ユニット１２１５上のような、コンピュータ・システム１２０１の電子ストレージ位置上に格納された機械（たとえば、コンピュータ・プロセッサ）実行可能コードの方式で実装することが可能である。機械実行可能または機械可読コードは、ソフトウェア形式で供給できる。使用中に、コードはプロセッサ１２０５で実行できる。ある場合、コードは、ストレージ・ユニット１２１５から読み取ることができ、プロセッサ１２０５による迅速なアクセスのためにメモリ１２１０上に格納できる。ある状況において、電子ストレージ・ユニット１２１５は、排除することができ、機械実行可能インストラクションは、メモリ１２１０上に格納される。
【００７６】
コードは、コードを実行するように適合されたプロセッサを含む機械で使用するように、プリコンパイルされ設定することが可能である、または実行時にコンパイルすることが可能である。コードは、コードをプリコンパイル（ｐｒｅ−ｃｏｍｐｉｌｅｄ）された、またはアズコンパイル（ａｓ−ｃｏｍｐｉｌｅｄ）された方式で実行できるように選択されることが可能であるプログラミング言語で供給することが可能である。
【００７７】
コンピュータ・システム１２０１のような、本明細書で提供されたシステム及び方法の態様は、プログラミングの際に実現できる。技術のさまざまな態様は、機械可読媒体の一種に搬送される、またはこれで具現化される、機械（またはプロセッサ）実行可能コード、または関連データの少なくとも一つの形式で典型的には、「製品」または「製造物品」として考えられ得る。機械実行可能コードは、メモリ（たとえば、読み出し専用メモリ、ランダム・アクセス・メモリ、フラッシュ・メモリ）またはハードディスクのような、電子ストレージ・ユニット上に格納できる。「ストレージ」タイプのメディアは、ソフトウェア・プログラミングのためにいつでも非一時的なストレージを提供し得る、コンピュータ、プロセッサもしくは同様のものの有形メモリ、またはさまざまな半導体メモリ、テープ・ドライブ、ディスク・ドライブ等のようなそれらの関連モジュールのいずれか、またはすべてを含むことが可能である。ソフトウェアのすべてまたは部分は、インターネットまたは種々の他の電気通信網を介して時に通信され得る。このような通信は、たとえば、１つのコンピュータまたはプロセッサから別のものに、たとえば、管理サーバまたはホスト・コンピュータからアプリケーション・サーバのコンピュータ・プラットフォームにソフトウェアのロードを可能にし得る。このようにして、ソフトウェア要素を有し得る媒体の別の種類は、有線及び光固定電話網を介して、種々のエアリンク経由で、ローカル・デバイス間の物理的インタフェース間で使用されるような、光波、電波及び電磁波を含む。また、有線もしくは無線リンク、光リンク、または類似する波を搬送する物理的要素は、ソフトウェアを有する媒体としてみなされ得る。本明細書で使用されるように、非一時的な、有形の「記憶」媒体に制限されない限り、コンピュータまたは機械「可読媒体」のような用語は、実行のためにプロセッサへインストラクションを提供することに関わる任意の媒体を指す。
【００７８】
そのため、コンピュータ実行可能コードのような、機械可読媒体は、限定されないが、有形記憶媒体、搬送波媒体または物理的伝送媒体を含む、多くの形態をとり得る。不揮発性記憶媒体は、図面で示された、データベース等を実装するために使用され得るものとして、たとえば、任意のコンピュータ（複数を含む）または同様のもののストレージ・デバイスのいずれかのような、光または磁気ディスクを含む。揮発性記憶媒体は、このようなコンピュータ・プラットフォームのメイン・メモリのような、動的メモリを含む。有形伝送媒体は、コンピュータ・システム内にバスを含むワイヤを含む、銅線及び光ファイバの、同軸ケーブルを含む。搬送波伝送媒体は、無線周波数（ＲＦ）及び赤外線（ＩＲ）データ通信中に生成されるような、電気もしくは電磁信号、または音波もしくは光波の形態をとり得る。その結果、コンピュータ可読媒体の一般的な形態は、たとえば、フロッピ・ディスク、フレキシブル・ディスク、ハードディスク、磁気テープ、任意の他の磁気媒体、ＣＤ−ＲＯＭ、ＤＶＤもしくはＤＶＤ−ＲＯＭ、任意の他の光媒体、パンチ・カード紙テープ、穴のパターンを含む任意の他の物理的記憶媒体、ＲＡＭ、ＲＯＭ、ＰＲＯＭ及びＥＰＲＯＭ、フラッシュＥＥＰＲＯＭ、任意の他のメモリ・チップもしくはカートリッジ、データもしくはインストラクションを搬送する搬送波、このような搬送波を搬送するケーブルもしくはリンク、またはコンピュータがプログラミング・コードまたはデータの少なくとも一１方を読み出し得る任意の他の媒体を含む。コンピュータ可読媒体のこれらの形態の多くは、実行用のプロセッサへ１つ以上のインストラクションの１つ以上のシーケンスを搬送する際に含まれ得る。
【００７９】
コンピュータ・システム１２０１は、電子ディスプレイ１２３５を含む、またはこれと通信することが可能である。電子ディスプレイ１２３５は、ユーザ・インタフェース（ＵＩ）１２４０を含む。ユーザ・インタフェース１２４０は、たとえば、ビデオを再生するユーザ端末、またはユーザがユーザ・インタフェース１２４０でビデオを編集することを可能にする。ＵＩの実施例は、限定されないが、グラフィカル・ユーザ・インタフェース（ＧＵＩ）及びウェブ・ベースのユーザ・インタフェースを含む。
【００８０】
本開示の方法及びシステムは、１つ以上のアルゴリズムにより実装できる。アルゴリズムは、中央処理装置１２０５で実行する場合に、ソフトウェアにより実装できる。アルゴリズムは、たとえば、ストレージ・ブロック領域内のストレージ・ブロックに対応するブロック識別子間のリンク関係を形成することで、効率的なストレージ・ブロック領域を作成できる。
【００８１】
いくつか実施形態において、本明細書で説明された実施形態で使用される画像キャプチャ・デバイスは、カメラであってもよい。加えて、このカメラは、ＵＡＶで使用される、これに取り付けられる、またはこれの構成部品であり得る。カメラは、堅固にＵＡＶに接続され得る。あるいは、ＵＡＶに対してカメラが移動することを可能にし得る。ある場合に、ＵＡＶに関連して最大６度の自由度に関してカメラが移動することを可能にし得る。カメラは、ＵＡＶ上に直接搭載され得る、ＵＡＶ内に組み込まれ得る、またはＵＡＶ上に搭載された支持機構に接続され得る。ある実施形態において、支持機構は、ジンバルであってもよい。支持機構は、カメラが回転の１軸、２軸、３軸、４軸またはそれ以上の軸の周囲で回転することを可能にし得る。これは、カメラによりキャプチャされた視野を変更することを可能にし得る。ある実施形態において、カメラは、ＵＡＶの搭載物の要素であってもよい。
【００８２】
カメラは、ＵＡＶ環境の画像をキャプチャし得る。画像は、静止画像（たとえば、スナップショット）またはビデオ画像の少なくとも一方を含み得る。カメラは、ビデオまたはスナップショットの少なくとも一１方を連続してキャプチャし得る。あるいは、カメラは、経時的に一連の画像データまたはビデオ・データの少なくとも一方を生成するために指定された周波数でビデオまたはスナップショットの少なくとも一方をキャプチャし得る。ある実施形態において、ビデオは、環境オーディオの録音と同時にキャプチャされ得る。
【００８３】
ある実施形態において、キャプチャされたビデオまたは画像の少なくとも一方は、ＵＡＶオンボードのメモリに格納され得る。メモリは、画像キャプチャ・デバイスにオンボードであってもよい、または画像キャプチャ・デバイスから分離されてもよい。メモリは、１つ以上のメモリ・ユニット（たとえば、セキュア・デジタル（ＳＤ）・カード、またはランダム・アクセス・メモリ（ＲＡＭ）、または読み出し専用メモリ（ＲＯＭ）、またはフラッシュ・メモリのような、リムーバブル・メディアまたは外部ストレージ）を含み得る非一時的なコンピュータ可読媒体を含み得る。あるいは、キャプチャされたビデオまたは画像の少なくとも一方は、遠隔端末に伝送され得る。キャプチャされたビデオまたは画像の少なくとも一方の伝送は、限定されないが、無線周波数（ＲＦ）リンク、Ｗｉ−Ｆｉリンク、Ｂｌｕｅｔｏｏｔｈ（登録商標）リンク、２Ｇリンク、３Ｇリンク、またはＬＴＥリンクを含む、無線リンク経由で実現され得る。
【００８４】
カメラは、イメージ・センサ、及びレンズのような、１つ以上の光学素子を含み得る。１つ以上のレンズは、イメージ・センサへ光を向けるように構成され得る。イメージ・センサは、光画像を電子信号に変換するデバイスである。カメラのイメージ・センサは、電荷結合素子（ＣＣＤ）タイプ、相補型金属酸化膜半導体（ＣＭＯＳ）タイプ、Ｎ型金属酸化膜半導体（ＮＭＯＳ）タイプ、または裏面照射型ＣＭＯＳ（ＢＳＩ−ＣＭＯＳ）タイプであってもよい。任意選択で、イメージ・センサからの画像データは、画像キャプチャ・デバイスにオンボードまたはオフボードのメモリに格納してもよい。メモリは、ＵＡＶオンボードであってもよい。
【００８５】
光学系の焦点距離は、どのように強くシステムが光を収束する、または発散するかの計測である。光学レンズの焦点距離は、最初に平行光が焦点にもたらされる距離である。常用及びズームの２種類のレンズがある。常用レンズは、固定焦点距離を有することができ、焦点距離は、単焦点距離を含み得る。ズーム・レンズは、可変焦点距離を有し得、焦点距離は、複数の焦点距離を含み得る。ある実施形態において、カメラのレンズは、ズーム・レンズであってもよい。あるいは、カメラのレンズは、常用レンズであってもよい。
【００８６】
ある実施形態において、本発明の画像キャプチャ・デバイスに適切なズーム・レンズのための焦点距離範囲の下限値は、１ｍｍ、２ｍｍ、４ｍｍ、６ｍｍ、８ｍｍ、１０ｍｍ、１５ｍｍ、２０ｍｍ、２５ｍｍ、３０ｍｍ、３５ｍｍ、４０ｍｍ、４５ｍｍ、５０ｍｍ、５５ｍｍ、６０ｍｍ、６５ｍｍ、７０ｍｍ、７５ｍｍ、８０ｍｍ、８５ｍｍ、９０ｍｍ、９５ｍｍ、１００ｍｍ、１０５ｍｍ、１１０ｍｍ、１２０ｍｍ、１３０ｍｍ、１４０ｍｍ、１５０ｍｍ、１６０ｍｍ、１７０ｍｍ、１８０ｍｍ、１９０ｍｍ、２００ｍｍ、２２０ｍｍ、２４０ｍｍ、２６０ｍｍ、２８０ｍｍ、３００ｍｍ、３２０ｍｍ、３４０ｍｍ、３６０ｍｍ、３８０ｍｍ、４００ｍｍ、４５０ｍｍ、５００ｍｍ、５５０ｍｍ、６００ｍｍ、６５０ｍｍ、７００ｍｍ、７５０ｍｍ、８００ｍｍ、８５０ｍｍ、９００ｍｍ、９５０ｍｍ、１０００ｍｍ、もしくは１１５０ｍｍ以下でよい。任意選択で、本発明の画像キャプチャ・デバイスのための焦点距離範囲の下限値は、本明細書に記載された値のいずれか以下でよい。本発明の画像キャプチャ・デバイスに適切なズーム・レンズのための焦点距離範囲の下限値は、本明細書で記載された値の内の任意の２つ間の範囲内にある値を含み得る。
【００８７】
ある場合において、本発明の画像キャプチャ・デバイスに適切なズーム・レンズのための焦点距離範囲の上限値は、２ｍｍ、５ｍｍ、１０ｍｍ、１５ｍｍ、２０ｍｍ、２５ｍｍ、３０ｍｍ、３５ｍｍ、４０ｍｍ、４５ｍｍ、５０ｍｍ、５５ｍｍ、６０ｍｍ、６５ｍｍ、７０ｍｍ、７５ｍｍ、８０ｍｍ、８５ｍｍ、９０ｍｍ、９５ｍｍ、１００ｍｍ、１０５ｍｍ、１１０ｍｍ、１２０ｍｍ、１３０ｍｍ、１４０ｍｍ、１５０ｍｍ、１６０ｍｍ、１７０ｍｍ、１８０ｍｍ、１９０ｍｍ、２００ｍｍ、２２０ｍｍ、２４０ｍｍ、２６０ｍｍ、２８０ｍｍ、３００ｍｍ、３２０ｍｍ、３４０ｍｍ、３６０ｍｍ、３８０ｍｍ、４００ｍｍ、４５０ｍｍ、５００ｍｍ、５５０ｍｍ、６００ｍｍ、６５０ｍｍ、７００ｍｍ、７５０ｍｍ、８００ｍｍ、８５０ｍｍ、９００ｍｍ、９５０ｍｍ、１０００ｍｍ、１１５０ｍｍ、もしくは２０００ｍｍ以下でよい。任意選択で、本発明の画像キャプチャ・デバイスに適切なズーム・レンズのための焦点距離範囲の上限値は、本明細書に記載された値のいずれか以下でよい。本発明の画像キャプチャ・デバイスに適切なズーム・レンズのための焦点距離範囲の上限値は、本明細書に記載された値の内のいずれか２つ間の範囲内にある値を含み得る。
【００８８】
ある場合において、本発明の画像キャプチャ・デバイスに適切な常用レンズの焦点距離は、１ｍｍ、２ｍｍ、４ｍｍ、６ｍｍ、５ｍｍ、６ｍｍ、８ｍｍ、１０ｍｍ、１２ｍｍ、１４ｍｍ、１６ｍｍ、１８ｍｍ、２０ｍｍ、２２ｍｍ、２４ｍｍ、２６ｍｍ、２８ｍｍ、３０ｍｍ、３５ｍｍ、４０ｍｍ、４５ｍｍ、５０ｍｍ、５５ｍｍ、６０ｍｍ、６５ｍｍ、７０ｍｍ、７５ｍｍ、８０ｍｍ、８５ｍｍ、９０ｍｍ、９５ｍｍ、１００ｍｍ、１０５ｍｍ、１１０ｍｍ、１２０ｍｍ、１３０ｍｍ、１４０ｍｍ、１５０ｍｍ、１６０ｍｍ、１７０ｍｍ、１８０ｍｍ、１９０ｍｍ、２００ｍｍ、２２０ｍｍ、２４０ｍｍ、２６０ｍｍ、２８０ｍｍ、３００ｍｍ、３２０ｍｍ、３４０ｍｍ、３６０ｍｍ、３８０ｍｍ、４００ｍｍ、４５０ｍｍ、５００ｍｍ、５５０ｍｍ、６００ｍｍ、６５０ｍｍ、７００ｍｍ、７５０ｍｍ、８００ｍｍ、８５０ｍｍ、９００ｍｍ、９５０ｍｍ、１０００ｍｍ、１１５０ｍｍ、もしくは１２００ｍｍ以下でよい。任意選択で、本発明の画像キャプチャ・デバイスに適切な常用レンズの焦点距離は、本明細書に記載された値のいずれか以下でよい。本発明の画像キャプチャ・デバイスに適切な常用レンズの焦点距離は、本明細書に記載された値のいずれか２つの間の範囲内にある値を含み得る。
【００８９】
写真撮影において、視野（ＦＯＶ）は、空間内の特定の位置及び向きでカメラを通してみえる世界の部分であり、写真を取るときにＦＯＶの外側にあるオブジェクトは、写真に記録されない。それは、ほとんどの場合、画角として、ビュー・コーンの視野角として表現される。標準レンズについては、視野は、ＦＯＶ＝２ａｒｃｔａｎ（ｄ／２ｆ）として計算されることが可能であり、ｄはイメージ・センサ・サイズであり、ｆはレンズの焦点距離である。固定サイズを有するイメージ・センサについては、常用レンズは、固定ＦＯＶを有し得、ＦＯＶは、単一のＦＯＶ角度を含み得る。固定サイズを有するイメージ・センサについては、ズーム・レンズは可変のＦＯＶ角度範囲を有し得、ＦＯＶ角度範囲は、複数のＦＯＶ角度を含み得る。
【００９０】
ある場合において、本発明の画像キャプチャ・デバイスに適切な常用レンズのＦＯＶは、１７０°、１６９°、１６５°、１６０°、１５５°、１５０°、１４５°、１４０°、１３５°、１３０°、１２５°、１２０°、１１５°、１１０°、１０５°、１００°、９５°、９０°、８５°、８０°、７５°、７０°、６５°、６０°、５５°、５０°、４５°、４０°、３５°、３０°、２５°、２０°、１５°、１０°、５°、３°、２°、もしくは１°以下でよい。任意選択で、本発明の画像キャプチャ・デバイスに適切な常用レンズのＦＯＶは、本明細書に記載された値のいずれか以下でよい。本発明の画像キャプチャ・デバイスに適切な常用レンズのＦＯＶは、本明細書に記載された値のいずれか２つ間の範囲内にある値を有し得る。
【００９１】
ある場合において、本発明の画像キャプチャ・デバイスに適切なズーム・レンズのためのＦＯＶ角度範囲の下限値は、１７０°、１６９°、１６５°、１６０°、１５５°、１５０°、１４５°、１４０°、１３５°、１３０°、１２５°、１２０°、１１５°、１１０°、１０５°、１００°、９５°、９０°、８５°、８０°、７５°、７０°、６５°、６０°、５５°、５０°、４５°、４０°、３５°、３０°、２５°、２０°、１５°、１０°、５°、３°、２°、もしくは１°以下でよい。任意選択で、本発明の画像キャプチャ・デバイスに適切なズーム・レンズのためのＦＯＶ角度範囲の下限値は、本明細書に記載された値のいずれか以下でよい。本発明の画像キャプチャ・デバイスに適切なズーム・レンズのためのＦＯＶ角度範囲の下限値は、本明細書に記載された値の内のいずれか２つ間の範囲内にある値を有し得る。
【００９２】
ある場合において、本発明の画像キャプチャ・デバイスに適切なズーム・レンズのためのＦＯＶ角度範囲の上限値は、１７０°、１６９°、１６５°、１６０°、１５５°、１５０°、１４５°、１４０°、１３５°、１３０°、１２５°、１２０°、１１５°、１１０°、１０５°、１００°、９５°、９０°、８５°、８０°、７５°、７０°、６５°、６０°、５５°、５０°、４５°、４０°、３５°、３０°、２５°、２０°、１５°、１０°、５°、３°、２°、もしくは１°以下でよい。任意選択で、本発明の画像キャプチャ・デバイスに適切なズーム・レンズのためのＦＯＶ角度範囲の上限値は、本明細書に記載された値のいずれか以下でよい。本発明の画像キャプチャ・デバイスに適切なズーム・レンズのためのＦＯＶ角度範囲の上限値は、本明細書に記載された値のいずれか２つ間の範囲内にある値を有し得る。
【００９３】
画像キャプチャ・デバイスは、高解像度画像キャプチャ・デバイスであってもよい。ある実施形態において、画像キャプチャ・デバイスは、４Ｋ解像度を達成することが可能な４Ｋ画像キャプチャ・デバイスであってもよい。画像キャプチャ・デバイスは、約１０００ｐｉｘｅｌ、２０００ｐｉｘｅｌ、２５００ｐｉｘｅｌ、３０００ｐｉｘｅｌ、３５００ｐｉｘｅｌ、４０００ｐｉｘｅｌ、４５００ｐｉｘｅｌ、５０００ｐｉｘｅｌ、５５００ｐｉｘｅｌ、６０００ｐｉｘｅｌ、７０００ｐｉｘｅｌ、８０００ｐｉｘｅｌ、もしくは１００００ｐｉｘｅｌ以上の水平解像度を達成することが可能であり得る。ある場合において、画像キャプチャ・デバイスは、約４０００ｐｉｘｅｌ、６０００ｐｉｘｅｌ、８０００ｐｉｘｅｌ、１００００ｐｉｘｅｌ、１２０００ｐｉｘｅｌ、１５０００ｐｉｘｅｌ、２００００ｐｉｘｅｌ、もしくは３００s００ｐｉｘｅｌ以下の水平解像度を達成し得る。キャプチャされた画像のいずれかの水平解像度は、本明細書に記載された値のいずれかの間にあり得る。高解像度カメラは、それらがキャプチャされた解像度で画像をメモリ中に格納することが可能であり得る。あるいは、画像は、それらがキャプチャされたものよりもより低い解像度で格納され得る。画像は、本明細書に記載された解像度のいずれかのような、高解像度で格納され得る。
【００９４】
本発明に関わるシステム、装置、及び方法は、幅広い可動物体に適用できる。上述したように、ＵＡＶ等の航空機に関する説明を、任意の可動物体に適用し使用することが可能である。本明細書における航空機の任意の説明は、ＵＡＶに特に適用し得る。本発明における可動物体は、空気中で（例えば、固定翼機、回転翼航空機、または固定翼も回転翼も有さない航空機）、水中で（例えば、船舶または潜水艦）、地上で（例えば、車、トラック、バス、バン、オートバイ、自転車等の自動車、杖、釣竿等の可動構造またはフレーム、または列車）、地下で（例えば、地下鉄）、宇宙で（例えば、宇宙飛行機、衛星、または宇宙探査機）等の任意の適切な環境の中で、またはこれらの環境の任意の組合せの中で移動きる。可動物体は、本明細書の他の箇所に説明される輸送機等の輸送手段であり得る。
【００９５】
可動物体は６自由度（例えば、並進で３自由度と回転で３自由度）に関する環境内で自由に移動可能であり得る。一方、可動物体の移動は、所定の経路、軌道、または位置等によって、１つ以上の自由度に関して制約されることがある。移動は、エンジンまたはモータ等の任意の適切な作動機構によって実現できる。可動物体の作動機構は、電気エネルギー、磁気エネルギー、太陽エネルギー、風力エネルギー、重力エネルギー、化学エネルギー、核エネルギー、またはその任意の適切な組合せ等の任意の適切なエネルギー源によって電力を供給され得る。可動物体は、本明細書の他の箇所に説明されるように、推進システムを使用する自走式であり得る。また、推進システムは、電気エネルギー、磁気エネルギー、太陽エネルギー、風力エネルギー、重力エネルギー、化学エネルギー、核エネルギー、またはその任意の適切な組合せで操作し得る。また、可動物体は生物によって支持され得る。
【００９６】
場合によっては、可動物体は航空機であり得る。例えば、航空機は固定翼機（例えば、飛行機、グライダー）、回転翼航空機（例えば、ヘリコプター、回転翼機）、固定翼と回転翼の両方を有する航空機、またはどちらも有さない航空機（例えば、小型飛行船、熱気球）であり得る。航空機は、空気中を自己推進する等、自走式であり得る。自走式車両は、１つ以上のエンジン、モータ、車輪、車軸、磁石、回転翼、プロペラ、羽根、ノズル、またはその任意の適切な組合せを含んだ推進システム等の推進システムを利用できる。また、推進システムは、可動物体が表面から離陸する、表面に着陸する、その現在位置または向きの少なくとも一方を維持する（例えば、ホバーリングする）、向きまたは位置の少なくとも一方を変更可能に使用できる。
【００９７】
可動物体は、ユーザによって遠隔で制御され得る、あるいは可動物体中のまたは可動物体上の乗員によって局所的に制御され得る。可動物体は、個別の輸送機内の乗員を介して遠隔で制御され得る。ある実施形態において、可動物体はＵＡＶ等の無人可動物体である。ＵＡＶ等の無人可動物体には可動物体に搭乗する乗員がいないことがある。可動物体は、人間によってまたは自律制御システム（例えば、コンピュータ制御システム）、またはその任意の適切な組合せによって制御され得る。可動物体は、人工知能で構成されたロボット等の自律ロボットまたは半自律ロボットでよい。
【００９８】
可動物体は任意の適切なサイズまたは寸法の少なくとも一方を有し得る。ある実施形態において、可動物体は、輸送機内部にまたは輸送機上に人間の乗員を備えるためのサイズまたは寸法の少なくとも一方を有し得る。また、可動物体は、可動物体内部にまたは可動物体上に人間の乗員を備えることができるサイズまたは寸法の少なくとも一方より、小さいサイズまたは寸法の少なくとも一方であってよい。可動物体は、人間によって持ち上げられるまたは支持されるのに適したサイズまたは寸法の少なくとも一方であり得る。また、可動物体は、人間によって持ち上げられるか支持されるのに適したサイズまたは寸法の少なくとも一方よりも大きいことがある。ある実施例においては、可動物体は、約２ｃｍ以下、５ｃｍ以下、１０ｃｍ以下、５０ｃｍ以下、１ｍ以下、２ｍ以下、５ｍ以下、または１０ｍ以下の最大寸法（例えば、長さ、幅、高さ、直径、対角線）を有し得る。可動物体の最大寸法は、約２ｃｍ以上、５ｃｍ以上、１０ｃｍ以上、５０ｃｍ以上、１ｍ以上、２ｍ以上、５ｍ以上、または１０ｍ以上であり得る。例えば、可動物体の対向する回転翼の軸間距離は、約２ｃｍ以下、５ｃｍ以下、１０ｃｍ以下、５０ｃｍ以下、１ｍ以下、２ｍ以下、５ｍ以下、または１０ｍ以下であってよい。あるいは、対向する回転翼の軸間の距離は、約２ｃｍ以上、５ｃｍ以上、１０ｃｍ以上、５０ｃｍ以上、１ｍ以上、２ｍ以上、５ｍ以上、または１０ｍ以上であってよい。
【００９９】
ある実施形態において、可動物体は、１００ｃｍ×１００ｃｍ×１００ｃｍ未満、５０ｃｍ×５０ｃｍ×３０ｃｍ未満、または、５ｃｍ×５ｃｍ×３ｃｍ未満の体積を有し得る。可動物体の総体積は、約１ｃｍ３以下、２ｃｍ３以下、５ｃｍ３以下、１０ｃｍ３以下、２０ｃｍ３以下、３０ｃｍ３以下、４０ｃｍ３以下、５０ｃｍ３以下、６０ｃｍ３以下、７０ｃｍ３以下、８０ｃｍ３以下、９０ｃｍ３以下、１００ｃｍ３以下、１５０ｃｍ３以下、２００ｃｍ３以下、３００ｃｍ３以下、５００ｃｍ３以下、７５０ｃｍ３以下、１０００ｃｍ３以下、５０００ｃｍ３以下、１０，０００ｃｍ３以下、１００，０００ｃｍ３以下、１ｍ３以下、または、１０ｍ３以下であり得る。逆に、可動物体の総体積は、約１ｃｍ３以上、２ｃｍ３以上、５ｃｍ３以上、１０ｃｍ３以上、２０ｃｍ３以上、３０ｃｍ３以上、４０ｃｍ３以上、５０ｃｍ３以上、６０ｃｍ３以上、７０ｃｍ３以上、８０ｃｍ３以上、９０ｃｍ３以上、１００ｃｍ３以上、１５０ｃｍ３以上、２００ｃｍ３以上、３００ｃｍ３以上、５００ｃｍ３以上、７５０ｃｍ３以上、１０００ｃｍ３以上、５０００ｃｍ３以上、１０，０００ｃｍ３以上、１００，０００ｃｍ３以上、１ｍ３以上、または、１０ｍ３以上でもあり得る。
【０１００】
ある実施形態において、可動物体は、３２，０００ｃｍ２以下、２０，０００ｃｍ２以下、１０，０００ｃｍ２以下、１，０００ｃｍ２以下、５００ｃｍ２以下、１００ｃｍ２以下、５０ｃｍ２以下、１０ｃｍ２以下、または５ｃｍ２以下の専有面積（あるいは可動物体によって包囲される側面方向断面積）を有し得る。逆に、専有面積は約３２，０００ｃｍ２以上、２０，０００ｃｍ２以上、１０，０００ｃｍ２以上、１，０００ｃｍ２以上、５００ｃｍ２以上、１００ｃｍ２以上、５０ｃｍ２以上、１０ｃｍ２以上、または５ｃｍ２以上であり得る。
【０１０１】
ある実施形態において、可動物体の重量は１０００ｋｇ以下であり得る。可動物体の重量は、約１０００ｋｇ以下、７５０ｋｇ以下、５００ｋｇ以下、２００ｋｇ以下、１５０ｋｇ以下、１００ｋｇ以下、８０ｋｇ以下、７０ｋｇ以下、６０ｋｇ以下、５０ｋｇ以下、４５ｋｇ以下、４０ｋｇ以下、３５ｋｇ以下、３０ｋｇ以下、２５ｋｇ以下、２０ｋｇ以下、１５ｋｇ以下、１２ｋｇ以下、１０ｋｇ以下、９ｋｇ以下、８ｋｇ以下、７ｋｇ以下、６ｋｇ以下、５ｋｇ以下、４ｋｇ以下、３ｋｇ以下、２ｋｇ以下、１ｋｇ以下、０．５ｋｇ以下、０．１ｋｇ以下、０．０５ｋｇ以下、または０．０１ｋｇ以下であり得る。逆に、可動物体の重量は約１０００ｋｇ以上、７５０ｋｇ以上、５００ｋｇ以上、２００ｋｇ以上、１５０ｋｇ以上、１００ｋｇ以上、８０ｋｇ以上、７０ｋｇ以上、６０ｋｇ以上、５０ｋｇ以上、４５ｋｇ以上、４０ｋｇ以上、３５ｋｇ以上、３０ｋｇ以上、２５ｋｇ以上、２０ｋｇ以上、１５ｋｇ以上、１２ｋｇ以上、１０ｋｇ以上、９ｋｇ以上、８ｋｇ以上、７ｋｇ以上、６ｋｇ以上、５ｋｇ以上、４ｋｇ以上、３ｋｇ以上、２ｋｇ以上、１ｋｇ以上、０．５ｋｇ以上、０．１ｋｇ以上、０．０５ｋｇ以上、または０．０１ｋｇ以上であり得る。
【０１０２】
ある実施形態において、可動物体は可動物体が支持する積載物に比して小さいことがある。積載物は、以下にさらに詳細に説明するように、搭載物または支持機構の少なくとも一方を含んでよい。ある実施例においては、可動物体重量と積載物重量の割合は、約１:１を超えてよい、未満であってよい、または等しくてよい。また、他の実施例においては、可動物体重量と積載物重量の割合は約１:１を超えてよい、未満であってよい、または等しくてよい。また、支持機構重量と積載物重量の割合は、約１:１を超えてよい、未満であってよい、または等しくてよい。必要とされる場合には、可動物体重量と積載物重量の割合は、１：２、１：３、１：４、１：５、１：１０以下またはさらに小さいことがある。逆に、可動物体重量と積載物重量の割合は、２：１、３：１、４：１、５：１、１０：１以上またはさらに大きいことがある。
【０１０３】
ある実施形態において、可動物体の消費エネルギーが低いことがある。例えば、可動物体は約５Ｗ／時、４Ｗ／時、３Ｗ／時、２Ｗ／時、１Ｗ／時未満、または以下のエネルギーを使用し得る。また、他の実施例では、可動物体の支持機構の消費エネルギーが低いことがある。例えば、支持機構は約５Ｗ／時、４Ｗ／時、３Ｗ／時、２Ｗ／時、１Ｗ／時未満、または以下のエネルギーを使用し得る。また、可動物体の搭載物の消費エネルギーは、約５Ｗ／時、４Ｗ／時、３Ｗ／時、２Ｗ／時、１Ｗ／時未満、または以下等の低いエネルギーであり得る。
【０１０４】
図１３は、本発明の実施形態に従い、ファイルを格納する方法のフローチャート１３００を示す。ブロック１３１０で、ファイルを受信する。ステップ１３２０で、ファイルを格納するために必要な複数のアイドル状態のストレージ・ブロックを決定する。ステップ１３３０で、ファイルを複数のアイドル状態のストレージ・ブロックに格納する。特に、複数のアイドル状態のストレージ・ブロック間のリンク関係により複数のアイドル状態のストレージ・ブロックにファイルを格納する。さらに方法は、インデックス・ノード中にファイルのディスクリプションを格納するステップを備え得る。各インデックス・ノード識別子は、連続したテーブルに記載され得る。現在利用可能なインデックス・ノード識別子は、直前に占有されたインデックス・ノード識別子へ固定増分を加えることで判定され得る。固定増分は、１であってもよい。
【０１０５】
さらに方法は、ファイルの格納を完了後に現在利用可能なインデックス・ノード識別子を更新するステップを備え得る。さらに方法は、現在利用可能なインデックス・ノード内に格納されたままで保持ブロック数を更新するステップを備え得る。現在操作可能なブロック識別子は、鍵情報領域に格納され得る。鍵情報領域は、ブロックを格納するときに更新される。この鍵情報領域は、情報セクタにあってもよい。さらに方法は、ファイルを受信する前にファイル・システムを初期化するステップを備え得る。ファイル・システムを初期化するステップは、現在利用可能なインデックス・ノード識別子を判定して記録することを備え得る。加えて、または代わりに、ファイル・システムを初期化するステップは、現在操作可能なブロック識別子を判定して記録することを備え得る。
【０１０６】
図１４は、本発明の実施形態に従い、ファイルを記録する方法のフローチャート１４００を示す。ステップ１４１０で、インデックス・ノードを読み出す。ステップ１４２０で、ファイルを格納する複数のストレージ・ブロックを読み出す。さらにファイルを読み出す方法は、インデックス・ノードを読み出す前に読み出しコマンドを受信するステップを備え得る。方法は、インデックス・ノードを読み出す前に読み出しコマンドを受信するステップを備え得る。この読み出しコマンドは、インデックス・ノードを読み出す前に分析され得る。読み出しコマンドを分析することは、読み出されるコンテンツを判定することを備え得る。
【０１０７】
さらに方法は、ディレクトリ・テーブルからインデックス・ノードを読み出す前にディレクトリ項目を読み出すステップを備え得る。このディレクトリ項目は、読み出されるインデックス・ノードのコンテンツと関連し得る。開始インデックス・ノード識別子は、ディレクトリ項目から判定され得る。終了インデックス・ノード識別子は、ディレクトリ項目から判定され得る。加えて、インデックス・ノードを読み出すことは、終了インデックス・ノード識別子を識別した後に実行され得る。インデックス・ノードを読み出すステップは、読み出しコマンドを分析し、対応するディレクトリにインデックスを作成し、対応するインデックス・ノードにインデックスを作成した後に実行され得る。加えて、第二アイドル状態のストレージ・ブロックの位置は、第一アイドル状態のストレージ・ブロックの位置とは無関係であり得る。ファイルを格納するために必要なストレージ・ブロック数は、ファイル内のデータ量に基づき計算され得る。加えて、ファイル内のデータ量は、ファイルの解像度に基づき判定され得る。
【０１０８】
図１５は、本発明の実施形態に従い、画像ストレージ・システムの利用可能なストレージを増加させる方法のフローチャート１５００を示す。ステップ１５１０で、現在操作可能なブロック識別子を第二ブロック識別子として識別する。第二ブロック識別子は、第二アイドル状態のストレージ・ブロックを参照する。ステップ１５２０で、第一ブロック識別子と関連する占有されたストレージ・ブロックがアイドル状態になっていることを判定する。ステップ１５３０で、現在操作可能なブロック識別子を第二ブロック識別子から第一ブロック識別子に更新する。ステップ１５４０で、第一ブロック識別子をブロック・インデックスに記載する。第一ブロック識別子は、第二ブロック識別子を格納する第一コンテンツと関連する。
【０１０９】
さらに方法は、第三ブロック識別子と関連する第二アイドル状態のストレージ・ブロックがアイドル状態になっていることを判定するステップ、及び第一ブロック識別子から第三ブロック識別子に現在操作可能なブロック識別子を更新するステップを備え得る。占有されたストレージ・ブロックがアイドル状態になっていることを判定するステップは、ストレージ・ファイルから占有されたストレージ・ブロックへの参照が削除されている表示を受信することを備え得る。加えて、占有されたストレージ・ブロックがアイドル状態になっていることを判定するステップは、このストレージ・ブロック内に格納されたコンテンツが削除されている表示を受信することを備え得る。
【０１１０】
本発明の好ましい実施形態を、本明細書に図示し説明したが、このような実施形態は、例示のみを目的としていることは当業者には明らかであろう。本発明を逸脱することなく、多くの変形実施形態、変更、代替形態を当業者は着想するであろう。本発明を実施するにあたり、本明細書に記載した発明の実施形態の様々な代替形態を採用し得ることを理解されたい。以下の特許請求の範囲は本発明の範囲を定め、それにより特許請求の範囲の方法及び構造、並びにそれらの均等物を網羅することを目的としている。
【図１】
2018515852.tif 000003
【図２】
2018515852.tif 000004
【図３】
2018515852.tif 000005
【図４】
2018515852.tif 000006
【図５】
2018515852.tif 000007
【図６】
2018515852.tif 000008
【図７】
2018515852.tif 000009
【図８】
2018515852.tif 000010
【図９】
2018515852.tif 000011
【図１０】
2018515852.tif 000012
【図１１】
2018515852.tif 000013
【図１２】
2018515852.tif 000014
【図１３】
2018515852.tif 000015
【図１４】
2018515852.tif 000016
【図１５】
2018515852.tif 000017
【手続補正書】
【提出日】平成29年11月28日(2017.11.28)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ファイルを格納する方法において、
前記ファイルを受信するステップと、
前記ファイルを格納するために必要な複数のアイドル状態のストレージ・ブロックを決定するステップであって、前記複数のアイドル状態のストレージ・ブロックの各アイドル状態のストレージ・ブロックは、ブロックＩＤ識別子ユニットに対応し、各ブロックＩＤ識別子ユニットは、つぎのアイドル状態のストレージ・ブロックのブロック識別子を格納し、それにより、前記複数のアイドル状態のストレージ・ブロック間のリンク関係を形成する、前記複数のアイドル状態のストレージ・ブロックを決定するステップと、
前記複数のアイドル状態のストレージ・ブロック間の前記リンク関係により前記複数のアイドル状態のストレージ・ブロックに前記ファイルを格納するステップと、
を備える、方法。
【請求項２】
インデックス・ノード識別子と関連するインデックス・ノードに前記ファイルのディスクリプションを格納するステップをさらに備える、請求項１に記載の方法。
【請求項３】
利用可能なインデックス・ノード識別子を決定して、前記ファイルを受信した後に前記ファイルのディスクリプションを格納するステップ、をさらに備える、請求項２に記載の方法。
【請求項４】
前記インデックス・ノード識別子が連続したテーブルに記載されるとき、直前に占有されたインデックス・ノード識別子へ固定増分を加えることで前記利用可能なインデックス・ノード識別子を決定するステップをさらに備える、請求項３に記載の方法。
【請求項５】
前記ファイルの格納を完了した後に前記利用可能なインデックス・ノード識別子を更新するステップ、をさらに備える、請求項３又は請求項４に記載の方法。
【請求項６】
前記ファイルを格納するために必要なアイドル状態のストレージ・ブロック数は、前記ファイルのデータ量に基づき計算される、請求項１から請求項５の何れか1項に記載の方法。
【請求項７】
前記ファイルの前記データ量は、前記ファイルの解像度に基づき決定される、請求項６に記載の方法。
【請求項８】
前記利用可能なインデックス・ノード識別子と関連する前記インデックス・ノードで格納されたままで保持ブロック数を更新するステップ、をさらに備え、
前記保持ブロック数は前記ファイルを格納するために使用された参照を含む、請求項３から請求項５の何れか1項に記載の方法。
【請求項９】
前記複数のアイドル状態のストレージ・ブロックのブロックに前記ファイルの一部が格納されるたびにブロック・インデックスのブロックＩＤ識別子ユニットのコンテンツを更新するステップ、をさらに備える、請求項１から請求項８の何れか1項に記載の方法。
【請求項１０】
鍵情報領域に格納された場合に操作可能なブロック識別子は、前記ブロックを格納するときに更新される、請求項９に記載の方法。
【請求項１１】
前記鍵情報領域は、ファイル・システムのハードディスクにあり、重要度の閾値を超えるディスク情報を格納する、請求項１０に記載の方法。
【請求項１２】
前記操作可能なブロック識別子は、前記ファイルからのすべてのデータを格納した後に更新される、請求項１０又は請求項１１に記載の方法。
【請求項１３】
前記操作可能なブロック識別子は、最後に占有されたブロック識別子、及び前記ブロック・インデックスの前記占有されたブロック識別子によりリンクするブロック識別子に基づき決定される、請求項１０又は請求項１１に記載の方法。
【請求項１４】
前記ファイルを受信する前にファイル・システムを初期化するステップ、をさらに備える、請求項１から請求項１３の何れか1項に記載の方法。
【請求項１５】
前記ファイル・システムを初期化するステップは、利用可能なインデックス・ノード識別子を決定して記録することを備える、請求項１４に記載の方法。
【請求項１６】
前記ファイル・システムを初期化するステップは、操作可能なブロック識別子を決定して記録するステップを備える、請求項１４に記載の方法。
【請求項１７】
前記ファイルは、可動物体上に設置されるメディア・キャプチャ・デバイスを使用してキャプチャされる、請求項１から請求項１６の何れか1項に記載の方法。
【請求項１８】
前記可動物体は、無人航空機（ＵＡＶ）であり、前記ファイルの前記キャプチャは、前記ＵＡＶが飛行している間に行われる、請求項１７に記載の方法。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０１０６
【補正方法】変更
【補正の内容】
【０１０６】
図１４は、本発明の実施形態に従い、ファイルを記録する方法のフローチャート１４００を示す。ステップ１４１０で、インデックス・ノードを読み出す。ステップ１４２０で、ファイルを格納する複数のストレージ・ブロックを読み出す。さらにファイルを読み出す方法は、インデックス・ノードを読み出す前に読み出しコマンドを受信するステップを備え得る。方法は、インデックス・ノードを読み出す前に読み出しコマンドを受信するステップを備え得る。この読み出しコマンドは、インデックス・ノードを読み出す前に分析され得る。読み出しコマンドを分析することは、読み出されるコンテンツを判定することを備え得る。
［項目１］
ファイルを格納する方法において、
上記ファイルを受信するステップと、
上記ファイルを格納するために必要な複数のアイドル状態のストレージ・ブロックを決定するステップであって、上記複数のアイドル状態のストレージ・ブロックの各アイドル状態のストレージ・ブロックは、ブロックＩＤ識別子ユニットに対応し、各ブロックＩＤ識別子ユニットは、つぎのアイドル状態のストレージ・ブロックのブロック識別子を格納し、それにより、上記複数のアイドル状態のストレージ・ブロック間のリンク関係を形成する、上記複数のアイドル状態のストレージ・ブロックを決定するステップと、
上記複数のアイドル状態のストレージ・ブロック間の上記リンク関係により上記複数のアイドル状態のストレージ・ブロックに上記ファイルを格納するステップと、
を備える、方法。
［項目２］
インデックス・ノードに上記ファイルのディスクリプションを格納するステップ、をさらに備える、項目１に記載の方法。
［項目３］
各インデックス・ノードは、インデックス・ノード識別子と関連する、項目２に記載の方法。
［項目４］
現在利用可能なインデックス・ノード識別子を決定して、上記ファイルを受信した後に上記ファイルのディスクリプションを格納するステップ、をさらに備える、項目１に記載の方法。
［項目５］
各インデックス・ノード識別子は、連続したテーブルに記載される、項目４に記載の方法。
［項目６］
上記現在利用可能なインデックス・ノード識別子は、直前に占有されたインデックス・ノード識別子へ固定増分を加えることで決定される、項目５に記載の方法。
［項目７］
上記固定増分は、１である、項目６に記載の方法。
［項目８］
上記ファイルの格納を完了した後に上記現在利用可能なインデックス・ノード識別子を更新するステップ、をさらに備える、項目４に記載の方法。
［項目９］
上記ファイルを格納するために必要なアイドル状態のストレージ・ブロック数は、上記ファイル内のデータ量に基づき計算される、項目１に記載の方法。
［項目１０］
上記ファイル内の上記データ量は、上記ファイルの解像度に基づき決定される、項目９に記載の方法。
［項目１１］
上記現在利用可能なインデックス・ノード内に格納されたままで保持ブロック数を更新するステップ、をさらに備える、項目４に記載の方法。
［項目１２］
上記保持ブロック数は、上記ファイルを格納するために使用されたブロック数への参照を含む、項目１１に記載の方法。
［項目１３］
ブロックを格納するたびにブロック・インデックスのブロックＩＤ識別子ユニットのコンテンツを更新するステップ、をさらに備える、項目１に記載の方法。
［項目１４］
鍵情報領域に格納された場合に現在操作可能なブロック識別子は、ブロックを格納するときに更新される、項目１３に記載の方法。
［項目１５］
上記鍵情報領域は、情報セクタにある、項目１４に記載の方法。
［項目１６］
テーブルは、ディスク・システム構造を説明するために使用される、項目１５に記載の方法。
［項目１７］
上記鍵情報領域は、ファイル・システムのハードディスクにある、項目１４に記載の方法。
［項目１８］
上記鍵情報領域は、重要度の閾値を超えるディスク情報を格納する、項目１７に記載の方法。
［項目１９］
上記現在操作可能なブロック識別子は、上記ファイルからのすべてのデータを格納した後に更新される、項目１４に記載の方法。
［項目２０］
現在操作可能なブロック識別子は、最後に占有されたブロック識別子、及び上記ブロック・インデックスの上記占有されたブロック識別子によりリンクするブロック識別子に基づき決定される、項目１３に記載の方法。
［項目２１］
上記ファイルを受信する前にファイル・システムを初期化するステップ、をさらに備える、項目１に記載の方法。
［項目２２］
上記ファイル・システムを初期化するステップは、現在利用可能なインデックス・ノード識別子を決定して記録することを備える、項目２１に記載の方法。
［項目２３］
上記ファイル・システムを初期化するステップは、現在操作可能なブロック識別子を決定して記録することを備える、項目２１に記載の方法。
［項目２４］
ディスク・システム構造を説明するテーブルは、メモリからハードディスクへ書き込まれる、項目１に記載の方法。
［項目２５］
上記テーブルは、上記ハードディスクへ１秒ごとに書き込まれることが可能である、項目２４に記載の方法。
［項目２６］
更新されたコンテンツのみ、上記ハードディスクへ書き込まれる、項目２４に記載の方法。
［項目２７］
上記ファイルは、可動物体上に設置されるメディア・キャプチャ・デバイスを使用してキャプチャされる、項目２４に記載の方法。
［項目２８］
上記可動物体は、無人航空機（ＵＡＶ）である、項目２７に記載の方法。
［項目２９］
上記ファイルの上記キャプチャは、上記ＵＡＶが飛行している間に行われる、項目２８に記載の方法。
［項目３０］
上記ファイルは、メディア・ファイルである、項目１に記載の方法。
［項目３１］
上記ファイルは、画像ファイルである、項目１に記載の方法。
［項目３２］
上記ファイルは、ビデオ・ファイルである、項目１に記載の方法。
［項目３３］
ファイルを格納するためのプログラム・インストラクションを含む非一時的なコンピュータ可読媒体において、
上記ファイルを受信するプログラム・インストラクションと、
上記ファイルを格納するために必要な複数のアイドル状態のストレージ・ブロックを決定するためのプログラム・インストラクションであって、上記複数のアイドル状態のストレージ・ブロックの各アイドル状態のストレージ・ブロックは、ブロックＩＤ識別子ユニットに対応し、各ブロックＩＤ識別子ユニットは、つぎのアイドル状態のストレージ・ブロックのブロック識別子を格納し、それにより、上記複数のアイドル状態のストレージ・ブロック間のリンク関係を形成する上記複数のアイドル状態のストレージ・ブロックを決定するためのプログラム・インストラクションと、
上記複数のアイドル状態のストレージ・ブロック間の上記リンク関係により上記複数のアイドル状態のストレージ・ブロックに上記ファイルを格納するプログラム・インストラクションと、
を備える、
コンピュータ可読媒体。
［項目３４］
インデックス・ノードに上記ファイルのディスクリプションを格納するプログラム・インストラクション、
をさらに備える、
項目３３に記載のコンピュータ可読媒体。
［項目３５］
各インデックス・ノードは、インデックス・ノード識別子と関連する、
項目３４に記載のコンピュータ可読媒体。
［項目３６］
現在利用可能なインデックス・ノード識別子を決定して上記ファイルを受信した後に上記ファイルのディスクリプションを格納するプログラム・インストラクション、
をさらに備える、
項目３３に記載のコンピュータ可読媒体。
［項目３７］
各インデックス・ノード識別子は、連続したテーブルに記載される、
項目３６に記載のコンピュータ可読媒体。
［項目３８］
上記現在利用可能なインデックス・ノード識別子は、固定増分を直前に占有されたインデックス・ノード識別子に加えることで決定される、
項目３７に記載のコンピュータ可読媒体。
［項目３９］
上記固定増分は、１である、
項目３８に記載のコンピュータ可読媒体。
［項目４０］
上記ファイルの格納を完了した後に上記現在利用可能なインデックス・ノード識別子を更新するプログラム・インストラクション、
をさらに備える、
項目３６に記載のコンピュータ可読媒体。
［項目４１］
上記ファイルを格納するために必要なアイドル状態のストレージ・ブロック数は、上記ファイル内のデータ量に基づき計算される、
項目３３に記載のコンピュータ可読媒体。
［項目４２］
上記ファイル内の上記データ量は、上記ファイルの解像度に基づき決定される、
項目４１に記載のコンピュータ可読媒体。
［項目４３］
上記現在利用可能なインデックス・ノード内に格納されたままで保持ブロック数を更新するプログラム・インストラクション、
をさらに備える、
項目３６に記載のコンピュータ可読媒体。
［項目４４］
上記保持ブロック数は、上記ファイルを格納するために使用されたブロック数への参照を含む、
項目４３に記載のコンピュータ可読媒体。
［項目４５］
ブロックを格納するたびに上記ブロック・インデックスのブロックＩＤ識別子ユニットのコンテンツを更新するプログラム・インストラクション、
をさらに備える、
項目３３に記載のコンピュータ可読媒体。
［項目４６］
鍵情報領域に格納された場合に現在操作可能なブロック識別子は、ブロックを格納するときに更新される、
項目４５に記載のコンピュータ可読媒体。
［項目４７］
上記鍵情報領域は、情報セクタにある、
項目４６に記載のコンピュータ可読媒体。
［項目４８］
上記鍵情報領域は、ファイル・システムのハードディスクにある、
項目４６に記載のコンピュータ可読媒体。
［項目４９］
上記鍵情報領域は、重要度の閾値を超えるディスク情報を格納する、
項目４８に記載のコンピュータ可読媒体。
［項目５０］
上記テーブルは、ディスク・システム構造を説明するために使用される、
項目４７に記載のコンピュータ可読媒体。
［項目５１］
上記現在操作可能なブロック識別子は、上記ファイルからのすべてのデータを格納した後に更新される、
項目４６に記載のコンピュータ可読媒体。
［項目５２］
現在操作可能なブロック識別子は、最後に占有されたブロック識別子、及び上記ブロック・インデックスに上記占有されたブロック識別子によりリンクするブロック識別子に基づき決定される、
項目４５に記載のコンピュータ可読媒体。
［項目５３］
上記ファイルを受信する前にファイル・システムを初期化するプログラム・インストラクション、
をさらに備える、
項目３３に記載のコンピュータ可読媒体。
［項目５４］
上記ファイル・システムを初期化することは、現在利用可能なインデックス・ノード識別子を決定して記録することを備える、
項目５３に記載のコンピュータ可読媒体。
［項目５５］
上記ファイル・システムを初期化することは、現在操作可能なブロック識別子を決定して記録すること、を備える、
項目５３に記載のコンピュータ可読媒体。
［項目５６］
ディスク・システム構造を説明するテーブルは、メモリからハードディスクへ書き込まれる、
項目３３に記載のコンピュータ可読媒体。
［項目５７］
上記テーブルは、１秒ごとに上記ハードディスクへ書き込まれることが可能である、
項目５６に記載のコンピュータ可読媒体。
［項目５８］
更新されたコンテンツのみ、上記ハードディスクへ書き込まれる、
項目５６に記載のコンピュータ可読媒体。
［項目５９］
上記ファイルは、可動物体上に設置されるメディア・キャプチャ・デバイスを使用してキャプチャされる、
項目５６に記載のコンピュータ可読媒体。
［項目６０］
上記可動物体は、無人航空機（ＵＡＶ）である、
項目５９に記載のコンピュータ可読媒体。
［項目６１］
上記ファイルの上記キャプチャは、上記ＵＡＶが飛行している間に行われる、
項目６０に記載のコンピュータ可読媒体。
［項目６２］
上記ファイルは、メディア・ファイルである、
項目３３に記載のコンピュータ可読媒体。
［項目６３］
上記ファイルは、画像ファイルである、
項目３３に記載のコンピュータ可読媒体。
［項目６４］
上記ファイルは、ビデオ・ファイルである、
項目３３に記載のコンピュータ可読媒体。
［項目６５］
ファイルを格納するシステムにおいて、
ファイルをキャプチャするメディア・キャプチャ・デバイスと、
上記ファイルを格納するために必要な複数のアイドル状態のストレージ・ブロックを決定し、上記複数のアイドル状態のストレージ・ブロックの各アイドル状態のストレージ・ブロックがブロックＩＤ識別子ユニットに対応し、各ブロックＩＤ識別子ユニットがつぎのアイドル状態のストレージ・ブロックのブロック識別子を格納し、それにより、上記複数のアイドル状態のストレージ・ブロック間のリンク関係を形成し、上記複数のアイドル状態のストレージ・ブロック間の上記リンク関係により上記複数のアイドル状態のストレージ・ブロックに上記ファイルを格納する、ように個別に、または集合的に構成された１つ以上のプロセッサと、
を備える、
システム。
［項目６６］
上記１つ以上のプロセッサは、
インデックス・ノードに上記ファイルのディスクリプションを格納する、
項目６５に記載のシステム。
［項目６７］
各インデックス・ノードは、インデックス・ノード識別子と関連する、
項目６６に記載のシステム。
［項目６８］
上記１つ以上のプロセッサは、
上記ファイルを受信した後に現在利用可能なインデックス・ノード識別子を決定する、
項目６５に記載のシステム。
［項目６９］
各インデックス・ノード識別子は、連続したテーブルに記載される、
項目６８に記載のシステム。
［項目７０］
上記現在利用可能なインデックス・ノード識別子は、直前に占有されたインデックス・ノード識別子へ固定増分を加えることで決定される、
項目６９に記載のシステム。
［項目７１］
上記固定増分は、１である、
項目７０に記載のシステム。
［項目７２］
上記１つ以上のプロセッサは、
上記ファイルの格納を完了した後に上記現在利用可能なインデックス・ノード識別子を更新する、
項目６８に記載のシステム。
［項目７３］
上記ファイルを格納するために必要なアイドル状態のストレージ・ブロック数は、上記ファイル内のデータ量に基づき計算される、
項目６５に記載のシステム。
［項目７４］
上記ファイル内の上記データ量は、上記ファイルの解像度に基づき決定される、
項目７３に記載のシステム。
［項目７５］
上記１つ以上のプロセッサは、
上記現在利用可能なインデックス・ノード内に格納されたままで保持ブロック数を更新する、
項目６８に記載のシステム。
［項目７６］
上記保持ブロック数は、上記ファイルを格納するために使用された上記ブロック数への参照を含む、
項目７５に記載のシステム。
［項目７７］
上記１つ以上のプロセッサは、
ブロックを格納するたびに上記ブロック・インデックスの値を更新する、
項目６５に記載のシステム。
［項目７８］
鍵情報領域に格納された場合に現在操作可能なブロック識別子は、ブロックを格納するときに更新される、
項目７７に記載のシステム。
［項目７９］
上記鍵情報領域は、情報セクタにある、
項目７８に記載のシステム。
［項目８０］
上記鍵情報領域は、ファイル・システムのハードディスク中にある、
項目７８に記載のシステム。
［項目８１］
上記鍵情報領域は、重要度の閾値を超えるディスク情報を格納する、
項目８０に記載のシステム。
［項目８２］
上記テーブルは、ディスク・システム構造を説明するために使用される、
項目７９に記載のシステム。
［項目８３］
上記現在操作可能なブロック識別子は、上記ファイルからのすべてのデータを格納した後に更新される、
項目７８に記載のシステム。
［項目８４］
現在操作可能なブロック識別子は、最後に占有されたブロック識別子、及び上記ブロック・インデックス中の上記占有されたブロック識別子によりリンクするブロック識別子に基づき決定される、
項目７７に記載のシステム。
［項目８５］
上記１つ以上のプロセッサは、
上記ファイルを受信する前にファイル・システムを初期化する、
項目６５に記載のシステム。
［項目８６］
上記ファイル・システムを初期化することは、現在利用可能なインデックス・ノード識別子を決定して記録すること、を備える、
項目８５に記載のシステム。
［項目８７］
上記ファイル・システムを初期化することは、現在操作可能なブロック識別子を決定して記録すること、を備える、
項目８５に記載のシステム。
［項目８８］
ディスク・システム構造を説明するテーブルは、メモリからハードディスクへ書き込まれる、
項目６５に記載のシステム。
［項目８９］
上記テーブルは、１秒ごとに上記ハードディスクに書き込まれることが可能である、
項目８８に記載のシステム。
［項目９０］
更新されたコンテンツのみ、上記ハードディスクに書き込まれる、
項目８８に記載のシステム。
［項目９１］
上記ファイルは、可動物体上に設置されるメディア・キャプチャ・デバイスを使用してキャプチャされる、
項目８８に記載のシステム。
［項目９２］
上記可動物体は、無人航空機（ＵＡＶ）である、
項目９１に記載のシステム。
［項目９３］
上記ファイルをキャプチャする上記ステップは、上記ＵＡＶが飛行している間に行われる、
項目９２に記載のシステム。
［項目９４］
上記ファイルは、メディア・ファイルである、
項目６５に記載のシステム。
［項目９５］
上記ファイルは、画像ファイルである、
項目６５に記載のシステム。
［項目９６］
上記ファイルは、ビデオ・ファイルである、
項目６５に記載のシステム。
［項目９７］
ファイルを読み出す方法において、
インデックス・ノードを読み出すステップであって、上記インデックス・ノードは、上記ファイルを格納する複数のストレージ・ブロックと関連した複数のブロック識別子を格納する、上記インデックス・ノードを読み出すステップと、
上記ファイルを格納する上記複数のストレージ・ブロックを読み出すステップと、
を備える、方法。
［項目９８］
上記インデックス・ノードを読み出す前に読み出しコマンドを受信する、
ステップをさらに備える、項目９７に記載の方法。
［項目９９］
上記読み出しコマンドは、上記インデックス・ノードを読み出す前に分析される、項目９８に記載の方法。
［項目１００］
上記読み出しコマンドを分析することは、読み出されるコンテンツを決定することを備える、項目９９に記載の方法。
［項目１０１］
ディレクトリ・テーブルから上記インデックス・ノードを読み出す前にディレクトリ項目を読み出すステップ、
をさらに備える、項目９７に記載の方法。
［項目１０２］
上記ディレクトリ項目は、読み出される上記インデックス・ノードの上記コンテンツと関連する、項目１０１に記載の方法。
［項目１０３］
開始インデックス・ノード識別子は、上記ディレクトリ項目から決定される、項目１０１に記載の方法。
［項目１０４］
終了インデックス・ノード識別子は、上記ディレクトリ項目から決定される、項目１０１に記載の方法。
［項目１０５］
上記インデックス・ノードを読み出すステップは、終了インデックス・ノード識別子を識別した後に実行される、項目１０４に記載の方法。
［項目１０６］
上記インデックス・ノードを上記読み出すステップは、読み出しコマンドを分析し、対応するディレクトリにインデックスを作成し、対応するインデックス・ノードにインデックスを作成した後に実行される、項目９７に記載の方法。
［項目１０７］
上記ファイルを格納するために必要なストレージ・ブロック数は、上記ファイル内のデータ量に基づき計算される、項目９７に記載の方法。
［項目１０８］
上記ファイル内の上記データ量は、上記ファイルの解像度に基づき決定される、項目１０７に記載の方法。
［項目１０９］
上記インデックス・ノード及びストレージ・ブロックを含むディスク・システム構造を説明するテーブルは、メモリからハードディスクへ書き込まれる、項目９７に記載の方法。
［項目１１０］
上記テーブルは、１秒ごとに上記ハードディスクへ書き込まれることが可能である、項目１０９に記載の方法。
［項目１１１］
更新されたコンテンツのみ、上記ハードディスクへ書き込まれる、項目１０９に記載の方法。
［項目１１２］
上記ファイルは、メディア・ファイルである、項目９７に記載の方法。
［項目１１３］
上記ファイルは、画像ファイルである、項目９７に記載の方法。
［項目１１４］
上記ファイルは、ビデオ・ファイルである、項目９７に記載の方法。
［項目１１５］
ファイルを読み出すためのプログラム・インストラクションを含む非一時的なコンピュータ可読媒体において、
インデックス・ノードを読み出すためのプログラム・インストラクションであって、上記インデックス・ノードは、上記ファイルを格納する複数のストレージ・ブロックと関連した複数のブロック識別子を格納する上記インデックス・ノードを読み出すためのプログラム・インストラクションと、
上記ファイルを格納する上記複数のストレージ・ブロックを読み出すプログラム・インストラクションと、
を備える、
コンピュータ可読媒体。
［項目１１６］
上記インデックス・ノードを読み出す前に読み出しコマンドを受信するプログラム・インストラクション、
をさらに備える、
項目１１５に記載のコンピュータ可読媒体。
［項目１１７］
上記読み出しコマンドは、上記インデックス・ノードを読み出す前に分析される、
項目１１６に記載のコンピュータ可読媒体。
［項目１１８］
上記読み出しコマンドを分析することは、読み出されるコンテンツを決定することを備える、
項目１１７に記載のコンピュータ可読媒体。
［項目１１９］
ディレクトリ・テーブルから上記インデックス・ノードを読み出す前にディレクトリ項目を読み出すプログラム・インストラクション、
をさらに備える、
項目１１５に記載のコンピュータ可読媒体。
［項目１２０］
上記ディレクトリ項目は、読み出される上記インデックス・ノードの上記コンテンツと関連する、
項目１１９に記載のコンピュータ可読媒体。
［項目１２１］
開始インデックス・ノード識別子は、上記ディレクトリ項目から決定される、
項目１１９に記載のコンピュータ可読媒体。
［項目１２２］
終了インデックス・ノード識別子は、上記ディレクトリ項目から決定される、
項目１１９に記載のコンピュータ可読媒体。
［項目１２３］
上記インデックス・ノードを読み出すことは、終了インデックス・ノード識別子を識別した後に実行される、
項目１２２に記載のコンピュータ可読媒体。
［項目１２４］
上記インデックス・ノードを上記読み出すことは、読み出しコマンドを分析し、対応するディレクトリにインデックスを作成し、対応するインデックス・ノードにインデックスを作成した後に実行される、
項目１１５に記載のコンピュータ可読媒体。
［項目１２５］
上記ファイルを格納するために必要なストレージ・ブロック数は、上記ファイル内のデータ量に基づき計算される、
項目１１５に記載のコンピュータ可読媒体。
［項目１２６］
上記ファイル内の上記データ量は、上記ファイルのサイズに基づき決定される、
項目１１６に記載のコンピュータ可読媒体。
［項目１２７］
上記インデックス・ノード及びストレージ・ブロックを含むディスク・システム構造を説明するテーブルは、メモリからハードディスクへ書き込まれる、
項目１１５に記載のコンピュータ可読媒体。
［項目１２８］
上記テーブルは、１秒ごとに上記ハードディスクへ書き込まれることが可能である、
項目１１８に記載のコンピュータ可読媒体。
［項目１２９］
更新されたコンテンツのみ、上記ハードディスクへ書き込まれる、
項目１１８に記載のコンピュータ可読媒体。
［項目１３０］
上記ファイルは、メディア・ファイルである、
項目１１５に記載のコンピュータ可読媒体。
［項目１３１］
上記ファイルは、画像ファイルである、
項目１１５に記載のコンピュータ可読媒体。
［項目１３２］
上記ファイルは、ビデオ・ファイルである、
項目１１５に記載のコンピュータ可読媒体。
［項目１３３］
ファイルを読み出すシステムにおいて、
ファイルをキャプチャするメディア・キャプチャ・デバイスと、
インデックス・ノードを読み出し、上記インデックス・ノードが上記ファイルを格納する複数のストレージ・ブロックと関連した複数のブロック識別子を格納し、上記ファイルを格納する上記複数のストレージ・ブロックを読み出す、ように個別に、または集合的に構成された、１つ以上のプロセッサと、
を備える、
システム。
［項目１３４］
上記１つ以上のプロセッサは、
上記インデックス・ノードを読み出す前に読み出しコマンドを受信する、
項目１３３に記載のシステム。
［項目１３５］
上記読み出しコマンドは、上記インデックス・ノードを読み出す前に分析される、
項目１３４に記載のシステム。
［項目１３６］
上記読み出しコマンドを分析することは、読み出されるコンテンツを決定することを備える、
項目１３３に記載のシステム。
［項目１３７］
上記１つ以上のプロセッサは、
ディレクトリ・テーブルから上記インデックス・ノードを読み出す前にディレクトリ項目を読み出す、
項目１３６に記載のシステム。
［項目１３８］
上記ディレクトリ項目は、読み出される上記インデックス・ノードの上記コンテンツと関連する、
項目１３７に記載のシステム。
［項目１３９］
開始インデックス・ノード識別子は、上記ディレクトリ項目から決定される、
項目１３７に記載のシステム。
［項目１４０］
終了インデックス・ノード識別子は、上記ディレクトリ項目から決定される、
項目１３７に記載のシステム。
［項目１４１］
上記インデックス・ノードを読み出すことは、終了インデックス・ノード識別子を識別した後に実行される、
項目１４０に記載のシステム。
［項目１４２］
上記インデックス・ノードを上記読み出すことは、読み出しコマンドを分析し、対応するディレクトリにインデックスを作成し、対応するインデックス・ノードにインデックスを作成した後に実行される、
項目１３３に記載のシステム。
［項目１４３］
上記ファイルを格納するために必要なストレージ・ブロック数は、上記ファイル内のデータ量に基づき計算される、
項目１３３に記載のシステム。
［項目１４４］
上記ファイル内の上記データ量は、上記ファイルの解像度に基づき決定される、
項目１４３に記載のシステム。
［項目１４５］
上記インデックス・ノード及びストレージ・ブロック構造を含むディスク・システムを説明するテーブルは、メモリからハードディスクへ書き込まれる、
項目１３３に記載のシステム。
［項目１４６］
上記テーブルは、１秒ごとに上記ハードディスクへ書き込まれることが可能である、
項目１４５に記載のシステム。
［項目１４７］
更新されたコンテンツのみ、上記ハードディスクへ書き込まれる、
項目１４５に記載のシステム。
［項目１４８］
上記ファイルは、メディア・ファイルである、
項目１３３に記載のシステム。
［項目１４９］
上記ファイルは、画像ファイルである、
項目１３３に記載のシステム。
［項目１５０］
上記ファイルは、ビデオ・ファイルである、
項目１３３に記載のシステム。
［項目１５１］
ブロック領域のアイドル状態のストレージ・ブロックをリンクさせる方法において、
複数のアイドル状態のストレージ・ブロックを含むブロック領域を提供するステップであって、上記複数のアイドル状態のストレージ・ブロックの各アイドル状態のブロックは、複数のブロック識別子の１つのブロック識別子と関連する、上記複数のアイドル状態のストレージ・ブロックを含むブロック領域を提供するステップと、
ブロック・インデックスに上記複数のブロック識別子の各ブロック識別子を記載し、上記固有ブロック識別子と上記ブロック識別子をリンクさせる、上記複数のブロック識別子の固有ブロック識別子を格納する、対応するコンテンツと各ブロック識別子を関連付け、それにより、上記複数のブロック識別子をリンクさせるステップと、
を備える、方法。
［項目１５２］
上記複数のブロック識別子の第一ブロック識別子は、現在操作可能なブロック識別子として記載される、項目１５１に記載の方法。
［項目１５３］
上記現在操作可能なブロック識別子は、現在アイドル状態のストレージ・ブロックを参照する、項目１５２に記載の方法。
［項目１５４］
現在のブロック識別子として記載されるブロック識別子は、別のブロック識別子の上記コンテンツに格納されない、項目１５２に記載の方法。
［項目１５５］
上記第一ブロック識別子から第二ブロック識別子へ上記現在操作可能なブロック識別子を更新するステップをさらに備え、上記第二ブロック識別子は、上記ブロック・インデックスに記載される、項目１５２に記載の方法。
［項目１５６］
ブロック領域でアイドル状態のストレージ・ブロックをリンクさせるためのプログラム・インストラクションを含む非一時的なコンピュータ可読媒体において、
複数のアイドル状態のストレージ・ブロックを含むブロック領域を提供するためのプログラム・インストラクションであって、上記複数のアイドル状態のストレージ・ブロックの各アイドル状態のストレージ・ブロックは、複数のブロック識別子の１つのブロック識別子と関連する、複数のアイドル状態のストレージ・ブロックを含むブロック領域を提供するためのプログラム・インストラクションと、
ブロック・インデックスに上記複数のブロック識別子の各ブロック識別子を記載し、上記複数のブロック識別子の固有のブロック識別子を格納して、上記ブロック識別子を上記固有のブロック識別子とリンクさせる対応するコンテンツと各ブロック識別子を関連付け、それにより、上記複数のブロック識別子をリンクさせるためのプログラム・インストラクションと、
を備える、
コンピュータ可読媒体。
［項目１５７］
上記複数のブロック識別子の第一ブロック識別子は、現在操作可能なブロック識別子として記載される、
項目１５６に記載のコンピュータ可読媒体。
［項目１５８］
上記現在操作可能なブロック識別子は、現在アイドル状態のストレージ・ブロックを参照する、
項目１５７に記載のコンピュータ可読媒体。
［項目１５９］
現在操作可能なブロック識別子として記載されるブロック識別子は、別のブロック識別子の上記コンテンツに格納されない、
項目１５７に記載のコンピュータ可読媒体。
［項目１６０］
上記第一ブロック識別子から第二ブロック識別子へ上記現在操作可能なブロック識別子を更新するプログラム・インストラクションであって、上記第二ブロック識別子は、上記ブロック・インデックスに記載される、上記ブロック識別子を更新するプログラム・インストラクション、
をさらに備える、
項目１５７に記載のコンピュータ可読媒体。
［項目１６１］
ブロック領域でアイドル状態のストレージ・ブロックをリンクさせるシステムにおいて、
メモリ・ストレージ領域を有するメディア・キャプチャ・デバイスと、
複数のアイドル状態のストレージ・ブロックを含むブロック領域を提供し、上記複数のアイドル状態のブロックの各アイドル状態のストレージ・ブロックは、複数のブロック識別子の１つのブロック識別子と関連し、
ブロック・インデックスに上記複数のブロック識別子の各ブロック識別子を記載し、上記複数のブロック識別子の固有のブロック識別子を格納して、上記固有のブロック識別子と上記ブロック識別子をリンクさせる対応するコンテンツと各ブロック識別子を関連付け、それにより、上記複数のブロック識別子をリンクさせる、ように個別に、または集合的に構成された、１つ以上のプロセッサと、
を備える、
システム。
［項目１６２］
上記複数のブロック識別子の第一ブロック識別子は、現在操作可能なブロック識別子として記載される、
項目１６１に記載のシステム。
［項目１６３］
上記現在のブロック識別子は、現在アイドル状態のストレージ・ブロックを参照する、
項目１６２に記載のシステム。
［項目１６４］
現在のブロック識別子として記載されるブロック識別子は、別のブロック識別子の上記コンテンツに格納されない、
項目１６２に記載のシステム。
［項目１６５］
上記１つ以上のプロセッサは、
上記第一ブロック識別子から第二ブロック識別子へ上記現在操作可能なブロック識別子を更新し、上記第二ブロック識別子が上記ブロック・インデックスに記載される、
項目１６２に記載のシステム。
［項目１６６］
画像ストレージ・システムで利用可能なストレージを増加させる方法において、
第二アイドル状態のストレージ・ブロックを参照する第二ブロック識別子として現在操作可能なブロック識別子を識別するステップと、
第一ブロック識別子と関連する占有されたストレージ・ブロックがアイドル状態になっていることを判定するステップと、
上記第二ブロック識別子から上記第一ブロック識別子へ上記現在操作可能なブロック識別子を更新するステップと、
ブロック・インデックスに上記第一ブロック識別子を記載し、上記第二ブロック識別子を格納する第一コンテンツと上記第一ブロック識別子を関連付けるステップであって、上記第二アイドル状態のストレージ・ブロックの位置は、上記第一アイドル状態のストレージ・ブロックの位置とは無関係である上記関連付けるステップと、
を備える、方法。
［項目１６７］
第三ブロック識別子と関連する第二アイドル状態のストレージ・ブロックがアイドル状態になっていることを判定し、上記第一ブロック識別子から上記第三ブロック識別子へ上記現在操作可能なブロック識別子を更新する、
ステップをさらに備える、項目１６６に記載の方法。
［項目１６８］
上記占有されたストレージ・ブロックがアイドル状態になっていることを判定するステップは、ストレージ・ファイルからの上記占有されたストレージ・ブロックへの参照が削除されている表示を受信することを備える、項目１６６に記載の方法。
［項目１６９］
上記占有されたストレージ・ブロックがアイドル状態になっていることを判定するステップは、上記ストレージ・ブロック内に格納されたコンテンツが削除されている表示を受信することを備える、項目１６６に記載の方法。
［項目１７０］
画像ストレージ・システムで利用可能なストレージを増加させるためのプログラム・インストラクションを含む非一時的なコンピュータ可読媒体において、
第二アイドル状態のストレージ・ブロックを参照する第二ブロック識別子として現在操作可能なブロック識別子を識別するプログラム・インストラクションと、
第一ブロック識別子と関連する占有されたストレージ・ブロックがアイドル状態になっていることを判定するプログラム・インストラクションと、
上記第二ブロック識別子から上記第一ブロック識別子へ上記現在操作可能なブロック識別子を更新するプログラム・インストラクションと、
ブロック・インデックスに上記第一ブロック識別子を記載し、上記第二ブロック識別子を格納する第一コンテンツと上記第一ブロック識別子を関連付け、上記第二アイドル状態のストレージ・ブロックの位置は、上記第一アイドル状態のストレージ・ブロックの位置とは無関係であるプログラム・インストラクションと、
を備える、コンピュータ可読媒体。
［項目１７１］
第三ブロック識別子と関連する第二アイドル状態のストレージ・ブロックがアイドル状態になっていることを判定し、上記第一ブロック識別子から上記第三ブロック識別子へ上記現在操作可能なブロック識別子を更新するプログラム・インストラクション、
をさらに備える、
項目１７０に記載のコンピュータ可読媒体。
［項目１７２］
上記占有されたストレージ・ブロックがアイドル状態になっていることを判定することは、ストレージ・ファイルからの上記占有されたストレージ・ブロックへの参照が削除されている表示を受信することを備える、
項目１７０に記載のコンピュータ可読媒体。
［項目１７３］
上記占有されたストレージ・ブロックがアイドル状態になっていることを判定することは、上記ストレージ・ブロック内に格納されたコンテンツが削除されている表示を受信することを備える、
項目１７０に記載のコンピュータ可読媒体。
［項目１７４］
画像ストレージ・システムで利用可能なストレージを増加させるシステムにおいて、
メモリ・ストレージ領域を含むメディア・キャプチャ・デバイスと、
第二アイドル状態のストレージ・ブロックを参照する第二ブロック識別子として現在操作可能なブロック識別子を識別し、
第一ブロック識別子と関連する占有されたストレージ・ブロックがアイドル状態になっていることを判定し、
上記第二ブロック識別子から上記第一ブロック識別子へ上記現在操作可能なブロック識別子を更新し、
ブロック・インデックスに上記第一ブロック識別子を記載し、上記第二ブロック識別子を格納する第一コンテンツと上記第一ブロック識別子を関連付け、上記第二アイドル状態のストレージ・ブロックの位置は、上記第一アイドル状態のストレージ・ブロックの位置とは無関係である、
ように個別に、または集合的に構成された、１つ以上のプロセッサと、
を備える、システム。
［項目１７５］
また上記１つ以上のプロセッサは、
第三ブロック識別子と関連する第二アイドル状態のストレージ・ブロックがアイドル状態になっていることを判定し、上記第一ブロック識別子から上記第三ブロック識別子へ上記現在操作可能なブロック識別子を更新する、
ように構成される、
項目１７４に記載のシステム。
［項目１７６］
上記占有されたストレージ・ブロックがアイドル状態になっていることを判定することは、ストレージ・ファイルからの上記占有されたストレージ・ブロックへの参照が削除されている表示を受信することを備える、
項目１７４に記載のシステム。
［項目１７７］
上記占有されたストレージ・ブロックがアイドル状態になっていることを判定することは、上記ストレージ・ブロック内に格納されたコンテンツが削除されている表示を受信することを備える、
項目１７４に記載のシステム。
【国際調査報告】
2018515852.tif 000018
2018515852.tif 000019