NTFSとFAT32、exFAT
これは「ファイルシステム」という、記憶装置置(HDD,SSD,USBフラッシュメモリなど)に記録されているデータをOSが管理するためのシステムです。
データを管理するシステムのため、これらを知っておかないと、
「データが保存できない!」「接続したPCとかでデータが見えない」というトラブルが発生します。
また、本来正常なのに「フォーマットしますか?」と表示される場合が有る。
何が違うかと言うと、
具体的に「データの記録方式」「記憶領域の場所やサイズ、利用方法」「アクセス権」「ファイルの文字長」などです。
NTFS
NT系のシステムのためWindows NT以降のOS(2000/XP以降)で利用することができますが、Windows 95、Windows 98などでは利用できません。
< 仕様 >
・2TB以上のドライブサイズを管理可能(実装256TB)
・最大16TBのファイルサイズを管理可能
・クラスタサイズ( アロケーション ユニット サイズ )は512byte~64KBまで
・最大ファイル名長は255文字まで(Unicode)
・圧縮、暗号化機能などの実装あり
NTFSは理論上 2の64乗-1 クラスタ のボリューム(ドライブサイズ)を管理可能ですが、コンピューターの性能上から実装256TBまでと制限しています。
2012年1月現在なら、ドライブ容量に制限が無くなったと考えて良いでしょう。
ただし、今度はファイルシステムではなくOSそのものが2TB以上のドライブを管理できない場合があります。
Windowsの32bit/64bitの違い
ファイル容量も4GBの制限が外れて、最大16TBまでのファイルを管理できます。
FAT32
< 仕様 >
最大2TBまでのドライブサイズを管理可能
最大4GBまでのファイルサイズを管理可能
クラスタサイズ( アロケーション ユニット サイズ )は512byte~32KBまで
最大ファイル名長は255文字まで
圧縮、暗号化機能なし
FAT32は総セクタ数を32ビットで管理します。なので 2の32乗=4,294,967,295 にセクタを分割します。
これにより、セクタサイズが512バイトの場合だとボリュームサイズ(ドライブサイズ)は2TBまでとなります。
つまり、2TB以上の容量を持ったドライブは扱えないということです。
(2000/XPなどのNT系OSでは32GBまでフォーマット可能。それ以上は専用のツールが必要。)
ファイル名は最大255文字まで、圧縮機能や暗号化機能なども実装されていないので堅牢性が少し低めです。
フロッピーディスク時代のファイルシステムのため、あまり大きなデータを扱うことを想定していません。
よって大容量記憶装置では非効率なファイルシステムとなっています。
また、ちょっと古いシステムのため想定外の障害が発生するとデータ損失や不整合が起きやすくなっています。
exFAT
exFATは、元々はWindows CE用に開発されたものであるが、現在ではWindows Vista SP1以降のWindows OSで利用できる。
旧世代のシステム(PC等)を使用しなければならい。そのような方の為の、ファイルシステムとの考えもある。
<< 使用は推奨しない!!>>
ただしFATと名前は付いているが、実際にはexFATは従来のFAT16やFAT32と互換性はない。
FATしかサポートしていない機器ではexFATを使うことはできない。
Windows XP SP2/SP3およびWindows Server 2003 SP2では、
以下のWebページで配布されているパッケージを追加インストールすれば利用できる。
最大ボリューム・サイズの拡大。理論的には最大で2の64乗セクタまでサポートするが、現在の実装では256Tbytesまでの容量をサポート
最大ファイル・サイズは2の64乗bytesまでサポート。4Gbytesを超えるファイルも分割することなく記録可能
クラスタ・サイズの拡大によるアクセス・パフォーマンスの改善。(現在の実装では)最大32Mbytesまでのクラスタ・サイズをサポート
(従来のファイル割り当てテーブルだけでなく)空き領域ビットマップも使って、高速な空きクラスタ管理や高速な削除処理を実現(ファイルの削除ではFATを更新せずに、空き領域ビットマップを更新するだけ)
ハッシュ値を使った高速な名前検索の実現
意図しないデバイスの取り外しなどが起こっても、(FATよりも)障害を起こしにくくなるような内部処理の実装
FATファイル・システム並みの簡単な実装で取り扱える(NTFSよりも実装は容易で、パーソナル・ストレージにとっては十分な機能を装備)