exFATとは何? わかりやすく解説 Weblio辞書 (original) (raw)
exFAT | |
---|---|
開発者 | マイクロソフト |
正式名 | Extended File Allocation Table |
導入 | 2006年11月 (2006-11) (Windows Embedded CE 6.0) |
パーティション識別子 | 0x07(MBR) EBD0A0A2-B9E5-4433-87C0-68B6B72699C7(GPT) |
構造 | |
ディレクトリ | テーブル |
領域管理 | ビットマップ、リンクリスト |
不良ブロック | クラスタタグ |
限度 | |
最大ファイル サイズ | 128 PiB(実装上) 16 EiB(理論上) |
最大ファイル数 | 2,796,202(ディレクトリ毎)[1] |
最大ファイル名長 | 255文字[1] |
最大ボリューム サイズ | 512 TiB(推奨) 64 ZiB(理論上)[1] |
ファイル名の文字 | /\:*"?<>|とNUL及びUS以外の全てのUnicode(UTF-16でエンコードされる) |
特徴 | |
タイムスタンプ | 作成、修正、アクセス |
日付範囲 | 1980年1月1日 (1980-01-01) - 2107年12月31日 (2107-12-31)(ローカルタイム) |
日付分解能 | 10ミリ秒(作成、修正) 2秒(アクセス) |
フォーク | 無し |
属性 | 読み取りのみ、隠し、システム、サブディレクトリ、アーカイブ |
パーミッション | ACL(オプション) |
透過的圧縮 | 無し |
透過的暗号化 | 無し |
重複排除 | 無し |
対応OS | Windows Embedded CE 6.0 Windows XP SP2 以降[2] Windows Server 2003 SP2[3] Windows Vista SP1 以降 Windows 7 Windows 8 Windows 10 Windows Server 2008(但しHyper-V Serverでは非対応) Windows Server 2008 R2以降 Linux(メインラインカーネルドライバ[4]およびFUSEを利用した実装) Mac OS X v10.6.5以降 一部のAndroid端末 |
テンプレートを表示 |
exFAT(イーエックスファット、Extended File Allocation Table)は、マイクロソフトによって2006年に導入されたファイルシステムである。USBフラッシュドライブやSDカードなどのフラッシュドライブ向けに最適化がされている。
データ構造のオーバーヘッドによりNTFSが適切ではない用途に使用することができる。
32 GiBを超えるメモリーカード規格であるSDXC/SDUCメモリーカードやメモリースティックXCの標準ファイルシステムに採用されている。
2019年8月28日にマイクロソフトがexFATの仕様を公開するまではプロプライエタリなファイルシステムであった[1]。
歴史
Windows Embedded CE 6.0で初めて導入され、デスクトップ向けにはWindows Vista SP1 で初めて導入された[5]。Windows XP と Windows Server 2003 は更新プログラムをインストールする必要がある[2][3]。
Windows以外での利用
Macにおいては、2010年にAppleにより、SDXCカードスロットの付いたMac miniとiMacがリリースされ付属する専用Mac OS X v10.6.4が対応した後、Mac OS X v10.6.5以降で対応している[6]。
Linuxにおいては、有志がLinux Kernel Mailing Listにおいてパッチの開発を行っていた[7]が、現在ではTuxera(英語版、中国語版)がマイクロソフトと知的所有権の合意のもと、Linuxシステム向けのドライバを開発している。また、exfatプロジェクトによってFUSEを利用した実装による読み書き可能なexFATドライバが公開されている[8]ほか、FUSEを利用しない実装についても、Dynamic Kernel Module Support(英語版)を利用したカーネルモジュールとして公開されている[9]。
2009年12月10日にMicrosoftが特許を保有するexFAT技術のライセンス提供を開始。ただしLinuxへの導入には反対。
2019年8月28日にexFATの仕様が公開され、今後のLinux System Definitionの改定でOINメンバーがexFATの特許を利用できるようにすると発表した[10]。これを受けて、LinuxカーネルにexFATを組み込む作業が開始され、同年11月24日リリースのバージョン5.4においてサポートされた[11]。
特徴
従来のFile Allocation Table (FAT) ファイルシステムに対する優位点としては以下のものがある。
- 大きなディスクサイズに対するスケーラビリティ。
- 理論上の最大ファイルサイズは264バイト (16EiB)。従来は最大 232バイト (4GiB)。
- 理論上の最大クラスタサイズは2255セクタ。実装上の限界は32MiB。
- 空き領域ビットマップの導入による、空き領域割り当てと削除のパフォーマンス向上。
- 1つのディレクトリで最大2,796,202のファイル格納をサポート[1]。
- アクセス制御リストのサポート(Windows Vista SP1/7 RTMでは未サポート)[12]。
- Transaction-Safe FAT File System (TFAT) のサポート(WinCEでのオプション機能)。
- 特定のデバイスの特性に合わせてファイルシステムをカスタマイズできるようにするためのOEM定義のパラメータを用意。
- UTCタイムスタンプが導入(Windows Vista SP2から[13])
- 修正時刻のタイムスタンプの分解能が従来の2秒から10ミリ秒になったことによる、いわゆる2秒問題(NTFSなどからファイルをコピーした際に修正時刻が最大2秒ずれる問題)の解決。
従来のFATファイルシステムに対する欠点としては以下のものがある。
- exFATを使うデバイスは、Windows VistaのReadyBoostを利用できない[14]。なお、Windows 7以降では利用可能[15]。
- ライセンスが不明確である。なお、MicrosoftはFATの一部に関する特許を取得している[16]。
- Windows XPにおいてOSをインストールするファイルシステムとしては利用できない。
- Windows標準のユーティリティを使用してDVD-RAMをフォーマットすることはできない。ただし、サードパーティ製ツールを使用してexFATフォーマットされたDVD-RAMメディアの読み書きは可能である。
特許
- Vivek P. Kamath, Dennis R. Adler, Ralph A. Lipe, ほか。(1996年11月26日)アメリカ合衆国特許第 7,542,999号 _Extended file system_。
脚注
- ^ a b c d e Nick Adman (2019年8月27日). “exFAT file system specification”. Microsoft Corporation. 2019年9月3日閲覧。
- ^ a b マイクロソフト. “Windows XP 用の更新プログラム (KB955704)”. 2017年11月1日時点のオリジナルよりアーカイブ。2008年1月28日閲覧。 (x86)
マイクロソフト. “Windows XP x64 Edition 用の更新プログラム (KB955704)”. 2015年3月6日時点のオリジナルよりアーカイブ。2009年8月26日閲覧。 (x64) - ^ a b マイクロソフト. “Windows Server 2003 用更新プログラム (KB955704)”. 2016年1月12日時点のオリジナルよりアーカイブ。2009年8月26日閲覧。 (x86)
マイクロソフト. “Windows Server 2003 x64 Edition 用更新プログラム (KB955704)”. 2016年3月8日時点のオリジナルよりアーカイブ。2009年8月26日閲覧。 (x64)
マイクロソフト. “Windows Server 2003 for Itanium-based Systems 用更新プログラム (KB955704)”. 2017年11月1日時点のオリジナルよりアーカイブ。2009年8月26日閲覧。 (IA64) - ^ corbet (2019年11月25日). “The 5.4 kernel has been released”. LWN.net. 2019年12月1日閲覧。
- ^ Brandon LeBlanc (2007年8月28日). “Vista SP1 Whitepaper” (英語). マイクロソフト. 2007年8月28日閲覧。
- ^ “Mac OS X 10.6.5 Notes: exFAT Support, AirPrint, Flash Player Vulnerability Fixes”. 2010年11月28日閲覧。
- ^ 海上忍 (2009年2月2日). “MS以外で初の対応? LinuxでexFAT読み取り用のパッチが公開”. 毎日コミュニケーションズ. 2017年10月8日閲覧。
- ^ 末岡洋子 (2013年1月22日). “FUSEベースのMicrosoft「exFAT」実装、「fuse-exfat 1.0」がリリース”. SOURCEFORGE.JP Magazine. 2014年12月31日閲覧。
- ^ “Native Linux Kernel Module Is Out For Microsoft exFAT - Phoronix” (2013年6月25日). 2017年10月8日閲覧。
- ^ John Gossman (2019年8月28日). “exFAT in the Linux kernel? Yes!”. Microsoft. 2019年9月2日閲覧。
- ^ Valdis Klētnieks (2019年8月28日). “staging: exfat: add exfat filesystem code to staging”. git.kernel.org. 2019年9月2日閲覧。
- ^ Ryan Smith (2008年2月27日). “Second Shot: Windows Vista SP1” (英語). Anandtech. 2008年2月6日閲覧。
- ^ Mike Nash (2008年10月24日). “Windows Vista Service Pack 2 Beta” (英語). The Windows Blog. 2008年2月6日閲覧。
- ^ “exFAT Versus FAT32 Versus NTFS” (英語) (2008年2月27日). 2008年7月6日閲覧。
- ^ Windows 7 評価ガイド 基本的な機能の提供
- ^ Elizabeth Montalbano (2006年1月11日). “Microsoft FAT patents upheld” (英語). Computerworld. 2008年2月22日閲覧。[_リンク切れ_]
関連項目
外部リンク
- exFAT file system specification - Microsoft Docs (英語)
- exFAT ファイルシステムの仕様 - Microsoft Docs (日本語)
- exfat - GitHub (FUSEによる実装)
- Personal Storage: Opportunities and challenges for pocket-sized storage devices in the Windows world (英語) (Microsoft PowerPoint プレゼンテーション)
- TFAT Overview (英語)
- Extended FAT File System (英語)
- exFAT 構造解析
表話編歴ファイルシステム | |
---|---|
ディスク | Advanced Disc Filing System(英語版) AdvFS(英語版) APFS Bcachefs Be File System(英語版) Btrfs CrossDOS(英語版) Disc Filing System(英語版) Episode(英語版) EFS HPFS ext ext2 ext3 ext3cow ext4 FAT FAT12 FAT16 FAT32 exFAT Files-11 HAMMER HFS HFS Plus IBM General Parallel File System JFS Macintosh File System(英語版) MINIX NetWare File System(英語版) NILFS Novell Storage Service NTFS QFS QNX4FS ReFS ReiserFS Reiser4 SpadFS(英語版) UBIFS UFS VERITAS File System Write Anywhere File Layout(英語版) XFS Xsan ZFS 光ディスク / 磁気テープ HSF ISO 9660 ISO 13490 UDF LTFS Flashメモリ / SSD APFS FAT exFAT CHFS TFAT EROFS FFS2 F2FS JFFS JFFS2 LogFS NILFS NVFS YAFFS UBIFS 分散ファイルシステム Coda CXFS(英語版) GFS2 GlusterFS Google File System OCFS2 QFS Xsan |
ネットワーク型 | AFS OpenAFS AFP DFS GPFS GlusterFS Google File System Lustre NCP NFS POHMELFS Hadoop Plan 9 FS SMB (CIFS) SSHFS |
特殊用途 | cramfs Dokan EROFS FUSE SquashFS UMSDOS UnionFS aufs initrd 疑似・仮想 configfs devfs procfs specfs sysfs tmpfs WinFS 暗号化 EncFS EFS ZFS UFS2 |
その他 | ファイルシステムの比較(英語版) |
![]() |