17

回避策を探しているわけではありません。説明が欲しいです。Google で見つけたリンクのほとんどは、ファイルの制限が 4GB であることを示していますが、その理由はわかりません。

ウィキペディアによる説明を認識しています: http://en.wikipedia.org/wiki/File_Allocation_Table#FAT32

しかし、これはまだ理由について詳しく説明していません。(SCANDISK との関係は?)

おそらく、4GB のファイル サイズ制限を超えることができるかどうかがわかるでしょう。

4

3 に答える 3

32

FAT32 は 32 ビットのファイル サイズを保存し、32 ビットで保存できる最大値は 2^32-1 ~= 4.29e9 であるためです。2^32-1 バイト = 4GB - 1 バイト。

(実際、これはウィキペディアの記事で説明されています。)

于 2011-01-11T20:46:08.827 に答える
9

その答えを拡張するために、FAT32はFAT16とFAT12から派生しています。FAT12が導入されたとき、PCは16ビットOSを実行し、10メガバイトを超えるドライブはありませんでした。PC上の誰もが、利用可能な最大のドライブの400倍のサイズのファイルが必要になるとは誰も予想していなかったと思います。さらに、Microsoftがファイルサイズのビット32〜39を保持するために各ディレクトリエントリに追加のバイトを割り当てるという先見の明を持っていたとしても(それぞれ最大1テラバイトのファイルを許可)、アプリケーションプログラマーがそれを使用したかどうかは疑わしいです。32ビットより大きい整数演算を便利にサポートする言語はありません。32ビットの数学でさえかなり派手だと考えられていました。

私の頭の中でより大きな質問は、連続番号のセクターに基づいていない標準の非FAT32ストレージインターフェイスに移行するための努力に気付いていない理由です。フラッシュドライブとハードドライブの両方が、さまざまなセクター書き込みの論理的重要性を知ることで恩恵を受ける可能性があります(フラッシュの場合、摩耗管理を実行するときに削除されたセクターをコピーする必要がなくなるため、ハードドライブの場合、データ整合性要件に違反しない方法で再シーケンスされる書き込み)。

于 2011-01-11T23:58:07.160 に答える
0

私も同じ疑問を抱いており、最終的に、すべてのファイルには独自のメタデータがあり、ファイルサイズとして 4 バイトが含まれていることに気付きました。したがって、最大ファイル サイズは 4G - 1 バイトです。

于 2015-02-15T09:26:35.903 に答える