トランザクションNTFS

トランザクションNTFS (Transactional NTFS, TxF) とは、Windows Vista以降のオペレーティングシステムに搭載された機能の一つである。
トランザクションNTFSによって原子性がNTFSに提供されることで、Windowsアプリケーション開発者はファイル書き込みが完全にファイルを更新するか、まったく更新しないかのいずれかのみの状態をとることを保証することができる。
Windows 8にて非推奨の機能となりグループポリシーで無効にできるようになった。
概要.
トランザクションNTFSでは、ファイルとディレクトリに対する変更、削除、作成、名前変更動作をアトミックに行うことができる（不可分操作）。トランザクションの利用とは、処理の正当性を保証することである。つまり、ひとつのトランザクションとして処理される一連のファイル操作については、その全てのファイル操作が成功したときのみ実際のファイルに反映される。もしそのファイル操作の一部が失敗した場合は、そのトランザクションを構成する全てのファイル操作による変更を元に戻し（ロールバック）、失敗したことにすることを保証する。
トランザクションNTFSはWindowsカーネルコンポーネントのひとつであるカーネルトランザクションマネージャー (KTM) 上に実装されている。KTMは、カーネル内のオブジェクトに対するトランザクション操作を実現したWindows Vistaで初めて導入された。KTMがローカルトランザクションを管理し、 (MS DTC) が分散トランザクションを管理する。
ただし、現 Vista のバージョンでは KTM と MS DTC がファイルシステムの同じ領域を同時に管理できないため、ローカルトランザクションと分散トランザクションを統合できない。同じファイルをローカルトランザクションと分散トランザクションで同時に利用することはできない。
以前のWindowsにおいても、NTFSはディスクブロック書き込みとファイルインデックスのアトミック実行等を実現し、低レベル操作に対してジャーナリングをサポートしていた。
トランザクションNTFSでは、さらに次のことを可能にした：
トランザクションNTFSを暗号化ファイルシステム (EFS) 上のファイルに対する更新に適用することは、Windows Vista Service Pack 1 (SP1) およびWindows Server 2008ではまだサポートされていない。