The X/Open DTP functional model consists of the following components:
The application program (AP)
The resource manager (RM)
The transaction processing monitor (TM)
The AP contains the code written to accomplish a particular transaction or portion thereof. As such, it designates the beginning and end of global transactions.
The RM provides access to shared resources. Database servers, file servers, and print servers are examples of RMs. In a typical X/Open DTP environment, a single AP communicates with more than one RM. In the Sybase XA environment, the RM is an Adaptive Server database.
The TM coordinates the communication between all parties participating in the transaction. The TM assures that the work done by the AP is contained in a global transaction, which commits or aborts atomically.
Specifically, the TM’s tasks include:
Assigning global identifiers to transactions.
Monitoring the progress of global transactions.
Coordinating the flow of transaction information between the APs and the RMs.
Managing the transaction commitment protocol and failure recovery. For details, see “How the components interact”.