PCのSIZEとDISK ON DISKの違いは?なぜディスク上のサイズが常に大きいのですか?[複製]


5

この質問にはすでに答えがあります:

簡単なテキストファイルを作成しました。その大きさを見ました。0バイトでした。次に、アルファベット「a」を入力し、そのサイズを確認しました。ITは言う:

サイズ:1バイト

ディスク上のサイズ:4.00 KB(4096バイト)

違いはなんですか?そして、なぜ同じデータに対して2つの異なる値があるのでしょうか?私が言及しているOSはWindowsです。


これは明らかにプログラミングの問題ではありません。
リラックス

4
ところで、ディスク圧縮を使用する場合、ディスク上のサイズは基本サイズよりも小さくなる可能性があります。
ジェリーコフィン

申し訳ありませんが、プログラムでファイルのサイズを読みたいと思いました。どのサイズになるのか戸惑っていました。それは私がこの疑問を持っているところ..です
MK ...

1
...またはスパースファイルを使用する場合
-jpalecek

ディスク上のサイズは常に大きいとは限りません小さなファイルはMFTに直接保存され、ディスク上のサイズは0になります。多くの場合、圧縮ファイルはディスク上でサイズが小さくなります
-phuclv

回答:


10

ハードドライブは、ビットとバイトの長い文字列として見ることができます。ハードドライブをフォルダーやファイルを保持するものとして使用できる方法は、ファイルシステムを使用しています。

ほとんどのファイルシステムは、ブロックを使用してファイルを保持します。各ファイルは1つ以上のブロックで構成されます。そのため、ファイルには少なくとも1ブロックのサイズが必要です。この場合、4キロバイト(小さなブロック)です。

これはすべて、使用するファイルシステムに大きく依存しますが、これはおそらく説明です。


ありがとう。しかし、これはメモリの浪費ではありませんか?
mk ..

@ happy2Help:はい、しかしそれはもっと重要な他の利点をもたらします:主に速度。それはトレードオフです。
-orlp

うーん、面白い..これはよくある問題で、これに名前があれば、親切に言ってください。これについてはグーグルでもっと知ります。素敵な答え..短くてわかりやすくするための+1 ..ありがとう
mk ..

2
@ happy2Helpファイルをブロックに割り当てるプロセスは「ブロッキング」と呼ばれます。未使用のブロック全体をファイルに割り当てることによって浪費されるスペースは、おそらく最後のブロックを完全に満たしていないため、「スラックスペース」と呼ばれます。いくつかの最新のファイルシステムは、名前が示すように、ブロックに複数のファイルの一部を含めることを可能にする「ブロックサブアロケーション」と呼ばれるプロセスでこれを克服しようとします。
インドレック

ファットまたはntfsファイルシステムの場合、断片化により「ディスク上のサイズ」に追加される可能性があります
-Moab
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.