APFS
開発者Apple
正式名Apple File System
導入2017年3月27日 (iOS 10.3)
パーティション識別子7C3457EF-0000-11AA-AA11-00306543ECAC(GPT)
構造
ディレクトリB木(B-tree)
限度
最大ファイル サイズ8 EiB
最大ファイル数263
ファイル名の文字UTF-8でエンコードされたUnicode 9.0
特徴
タイムスタンプ変更、属性変更、アクセス、作成
日付分解能1ナノ秒
パーミッションUNIXパーミッション、NFS v4、ACL
透過的圧縮なし
透過的暗号化あり
対応OSmacOS、iOS、iPadOS、visionOS、tvOS、watchOS、Linux
テンプレートを表示
Apple File System (APFS) は、Appleが開発したmacOS、iPadOS、iOS、visionOS、tvOSおよびwatchOS 向け[1]のファイルシステムである[2][3]。これらのOSで使われてきたHFS+ (Mac OS 拡張フォーマットとも呼ばれる) の根本的な問題を解決することを目的としている。APFSは フラッシュメモリおよびSSDに最適化されており、暗号化に重点を置いている[4][5]。 2016年6月13日に開催されたWorldwide Developers Conference (WWDC) 2016にて、1998年から使用されていた HFS+ 以来約20年ぶりに、2017年の導入を目指した開発が発表された[4][5]。 iOSデバイスには2017年3月27日に iOS 10.3のリリースで導入され、macOSデバイスには2017年9月25日に macOS High Sierraのリリースで導入された[6][1]。 HFS+はシングルスレッドにしか対応していないが、APFSはマルチスレッドに対応しており、ファイルのタイムスタンプはナノ秒単位で管理される[7]。 ファイル共有プロトコルはAFPには対応していないため、SMBを使うことが推奨されている[7]。 2014年よりドミニク・ジャンパオロ
歴史
このファイルシステムはApple WatchからMac Proにまでスケールしている。inodeには64bitの数が採用され、よりセキュアなストレージになっている。APFS のコードでは、HFS+ と同様に TRIMコマンド が使われており、空き容量の管理とパフォーマンスの改善に貢献している。これにより、iOS, iPadOSとmacOSでは、読み書きの速度が向上する場合があり[1]、iOSデバイスではAPFSの利用可能データの計算方法の改善により、デバイスの空き容量が増加することがある。 クローンを利用することで、オペレーティングシステムは、同じボリュームにあるファイルのコピーを追加のスペースを消費せずに効率よく作成できる。クローンファイルに対してなされた変更は、差分データ APFSは、ポイントインタイムで読み取り専用のファイルシステムのインスタンスを作成することで、スナップショットをサポートする[3]。 APFSはネイティブにディスク全体の暗号化 APFS はinodeの数が64bitに増加したため、1つのボリュームに 9 × 10 13 {\textstyle 9\times 10^{13}} 個以上のファイルを作成することが可能になった[9]。 APFSはチェックサムを利用してメタデータの完全性を保証している。ただし、現時点ではユーザー領域のデータには未対応である[10]。 APFSはシステムのクラッシュによるメタデータの破損を回避できるように設計されている。既存のメタデータを置き換えるように上書きするのではなく、初めに完全に新しいレコードとして書き込み、新しいデータにポインタを変更した後に、古いデータを開放するようになっている。この仕組みにより、データの更新中にクラッシュした場合に、同じレコード中に古いデータと新しいデータが部分的に混在するような事態を避けることができるようになった。また、HFS+ ジャーナルファイルシステムではファイルをジャーナルに書き込んだ後にカタログファイルにもう一度書き込む必要があり、1回の変更のたびにストレージに2回書き込まなければならないという問題があったが、これも解消した[10]。
クローン
スナップショット
暗号化
暗号化なし
1つの鍵による暗号化
複数の鍵による暗号化 (各ファイルが独立した鍵で暗号化され、メタデータが別の鍵で暗号化される[3])
ファイル数の最大値の増加
データの完全性 (data integrity)
クラッシュに対する保護
Size:40 KB
出典: フリー百科事典『ウィキペディア(Wikipedia)』
担当:undef