ゼロバイトファイルとは
ゼロバイトファイルは、コンピューターシステム、ハードドライブ、または実際の長さがゼロバイトのその他のストレージデバイス上のデータファイルです。 多くの場合、ファイルの作成中に、ネットワーク転送の中断、ソフトウェアのクラッシュ、ファイル処理ルーチンの不適切な書き込みなどのエラーが原因でゼロバイトファイルが作成されます。 また、ファイルディレクトリを表示しているユーザーにメッセージを送信したり、ディレクトリやファイル名を予約して自動プロセスを制御したり、プログラムに即時の状態や情報を示すために、意図的にゼロバイトファイルが作成される場合もあります。 ファイルサイズが実際にゼロバイトであるゼロバイトファイルと、メタデータまたはそれを作成したプログラムからの他の情報をまだ含むことができるテキストコンテンツのないドキュメントファイルなど、生成されたデータを含まないファイルとの間には技術的な違いがあります。 エラーによって長さゼロのファイルが作成される場合は特に、破損したファイルによってオペレーティングシステムがファイルを直接操作できないため、ゼロバイトのファイルを削除するのは非常に困難です。
コンピューターまたは他のデバイスのファイルシステム内では、ファイルには名前、拡張子、アクセスプロパティなどの特定の属性があり、オペレーティングシステムによって管理されています。 ファイルに含まれる以上の情報はバイトとして保存され、カウントしてファイルのサイズを決定できます。 ファイルの作成は必ずしも簡単な作業ではないため、ほとんどのファイルには情報が含まれています。 ただし、ファイルをオペレーティングシステム内で作成することは可能です。そのため、ファイルには名前と属性がありますが、データが含まれていないため、ゼロバイトファイルになります。
情報の作成とストレージデバイス上のファイルへの書き込みは、完了するまでに複数の手順を実行するプロセスです。 場合によっては、このプロセスが中断されたり完了しなかったりして、データが含まれていないファイルが残ることがあります。 これの一般的な原因の1つは、物理ストレージデバイスをアクティブ化してから情報を物理的にエンコードおよび保存するより時間のかかるタスクを実行する前に、オペレーティングシステムがランダムアクセスメモリ(RAM)に大量のデータを収集するために使用する手順に関係します。 データのキャッシュは、常に自動的にファイルに書き込まれるわけではありません(フラッシュと呼ばれる機能)。したがって、ファイルを作成し、キャッシュをフラッシュしないので、データは物理的に書き込まれず、空のファイルが残ります。
インターネットからファイルをダウンロードしているときなど、ネットワークを介してデータを送信しているときに、ファイル作成中にキャッシュをフラッシュするのと同じ概念が発生する可能性があります。 データ転送が完了していない場合、情報がストレージドライブに書き込まれず、ゼロバイトのファイルが残る可能性があります。 長さゼロのファイルの他の原因には、データの書き込みを妨げるディスク上の物理エラーや、実際にはファイルではない長さゼロのアーティファクトを残すファイルアロケーションテーブル情報の破損などがあります。
ゼロバイトファイルは、意図的に作成される場合があります。 これは、情報を内部に保存するのではなく、ファイルの名前を使用してユーザーにメッセージを残すために実行できます。 また、インストールや登録などの特定のプロセスが実行されたことを示すプレースホルダーとしても使用されます。 長さゼロのファイルは、情報を書き込もうとするプログラムによって作成されることもありますが、書き込み対象は何も受け取らず、空のファイルが残ります。