ntfs – データがあるのに、ディスク上のファイルのサイズはどうして 0 バイトになるのでしょうか?

ntfs

Windows10に362バイトのデータが入ったファイルがあるのですが、「ディスク上のサイズ」が0バイトしかありません。これはアセンブリで書かれた簡単な「Hello world」プログラムで、Notepad++に保存されています

ディスク上のサイズが362バイトの時に0になるなんてありえないですよね?

普通のハードディスクではなく、SSDを持っています

プロパティダイアログのスクリーンショット

Screenshot of the Properties dialog

  110  Coder88  2016-01-24


ベストアンサー

これは、ファイルが非常に小さく、その内容とファイルシステムのブックキーピングが 1KB に収まる場合に起こります。ディスクスペースを節約するために、NTFS は小さなファイルを「常駐」させ、その内容をファイルレコードに保存します。したがって、ファイルレコードの先には何もないので、ディスク上のサイズはゼロになります。ファイルが十分に大きくなると、NTFS はそのファイルを「非常駐」にし、1 つ以上のクラスタを割り当て (ゼロではない「ディスク上のサイズ」を作成)、ファイルレコード内のデータの場所にクラスタを指す「マッピングペア」を作成します

SSDハードドライブやWindows 10は、これに影響を与えません。詳細はこちらをご覧ください。NTFS ファイルの成長の 4 つのステージ

ディスク上のサイズ」は正確には正しくないことに注意してください。例えば、NTFSファイルレコードが占有する定数1KBは決して含まれていません。このメトリックは Windows 95 で導入されたもので、NTFS を使用していなかったため、この現象を説明することはできませんでした。この推定アルゴリズムは Windows 7 にも引き継がれましたが、その間の多くの Windows バージョンでは NTFS と常駐ストレージが使用されていました。最終的にWindows 8では、常駐データのみのファイルをディスク上のゼロサイズとしてカウントするように更新されました。詳細はこちらをご覧ください。「ディスク上のサイズ」とは?

161  Ben N  2016-01-24


タイトルとURLをコピーしました