NTFS transaccional (TxF) es una tecnología en Windows Vista y sistemas operativos posteriores que permite que las operaciones de archivos se realicen en una partición NTFS mediante transacciones, lo que brinda soporte para la semántica de atomicidad, consistencia, aislamiento y confiabilidad ( ACID ). La tecnología permite realizar operaciones atómicas en un archivo, en múltiples archivos y en múltiples fuentes de datos, como el registro y las bases de datos . La tecnología está diseñada para mejorar la confiabilidad de las aplicaciones que se crean al ayudar a mantener la integridad de los datos y para simplificar su desarrollo debido a una reducción significativa en la cantidad de código de manejo de errores.
Kernel Transaction Manager (KTM) implementa NTFS transaccional y registro transaccional (TxR). Para desarrollar aplicaciones que realicen transacciones con otros recursos, es necesario desarrollar un servicio de soporte de transacciones, también llamado administrador de recursos. Las aplicaciones COM+ deben usar su administrador de transacciones nativo.
El administrador de transacciones del núcleo puede trabajar directamente con el coordinador de transacciones distribuidas (DTC), que permite que las aplicaciones habilitadas para DTC combinen operaciones de archivos transaccionales con las de otras tecnologías transaccionales en una sola transacción.
Un uso típico de NTFS transaccional consta de los siguientes pasos:
Las operaciones de descriptor utilizan las funciones normales de archivo de la API de Win32 (por ejemplo, WriteFile). Hay funciones transaccionales explícitas para operaciones que utilizan nombres de archivo.
Algunas funciones transaccionalesfunción transaccional | Contraparte no transaccional | Descripción |
---|---|---|
CreateTransaction | Crear una transacción | |
CreateFileTransacted | Crea un archivo | Crear (abrir) un archivo |
Copiar archivo transaccionado | Copiar archivo ex | Copia de archivo |
MoveFileTransacted | MoveFileWithProgress | Mover un archivo o directorio |
DeleteFileTransacted | Borrar archivo | Borrar un archivo |
CreateDirectoryTransacted | CreateDirectoryEx | crear un directorio |
RemoveDirectoryTransacted | QuitarDirectorio | Eliminación de un directorio |
RollbackTransaction | Revertir una transacción | |
Confirmar transacción | Compromiso de transacción |
Otra forma es usar TxF a través de DTC. Para esto necesitas:
Sin embargo, Microsoft desaconseja encarecidamente a los desarrolladores el uso de TxF en las aplicaciones y advierte que es posible que la tecnología no esté disponible en futuras versiones de Microsoft Windows .