Oggetti di Gestione transazioni

Lo scopo principale dell'oggetto di gestione transazioni è creare e gestire un flusso di log CLFS ( Common Log File System ) usato da KTM per registrare le informazioni sullo stato delle transazioni.

L'oggetto gestione transazioni contiene anche un valore di clock virtuale che KTM gestisce e usa per sequenziare le informazioni nel flusso di log dell'oggetto.

KTM fornisce un set di routine di oggetti di gestione transazioni che i componenti TPS in modalità kernel possono chiamare. KTM fornisce anche un set simile di routine in modalità utente che le applicazioni in modalità utente possono chiamare. Per altre informazioni sulle routine in modalità utente, vedere la Microsoft Windows SDK.

KTM crea un oggetto gestore transazioni quando un gestore di risorse chiama ZwCreateTransactionManager. In genere, ogni gestore di risorse in un tps crea un oggetto di gestione transazioni. Ma è anche possibile progettare un tps in cui diversi gestori di risorse condividono un singolo oggetto di gestione transazioni.

I componenti TPS possono aprire handle aggiuntivi per un oggetto gestore transazioni esistente chiamando ZwOpenTransactionManager. Ad esempio, se il tps ha diversi gestori di risorse che condividono un singolo oggetto di gestione transazioni, un gestore di risorse chiama ZwCreateTransactionManager e quindi passa il GUID dell'oggetto agli altri gestori risorse in modo che possano chiamare ZwOpenTransactionManager.

I gestori di risorse chiudono gli handle agli oggetti di Gestione transazioni chiamando ZwClose.

Il sistema operativo elimina l'oggetto dopo la chiusura dell'ultimo handle e KTM ha rilasciato tutti i relativi riferimenti all'oggetto.