CSc 8320: Advanced Operating Systems. Topic 6.3: Transactions and Concurrency Control. Hari Uday. Part 1: Basic Knowledge Originally Developed for Databases, but can be applied to Distributed File management systems
Topic 6.3: Transactions and Concurrency Control
Client Process: A client initiates start of transaction by issuing a begin transaction to its local TM. Tm generates transaction ID and work space for subsequent RW operations.Transaction Processing System
TM then sends the transaction ID to the scheduler . Called execution phase. Access requests from the TM are handled by Scheduler. To maintain atomicity, a rejected operation causes TM to abort. Finally, the TM either commits or aborts.Transaction Manager
OM is responsible for interfacing with the underlying file service for actual operations on an object.
Concept of Transactions are very important in multiuser file system (NFS, NTFS)
Equivalent schedules: For any file system, the effect (on the set of objects in the database) of executing the first schedule is identical to the effect of executing the second schedule
Two actions on the same data object conflict if at least one of them is a WRITE.
A serializable schedule is a schedule whose effect on any consistent database instance is guaranteed to be identical to that of some complete serial schedule over the set of committed transactions
If a transaction Ti is aborted, all its actions have to be undone. Not only that, if Tj reads an object last written
- If Ti writes an object, Tj can read this only after Ti commits.
– Ti writes an object: the old value and the new value. Log record must go to disk before the changed page!
– Ti commits/aborts: a log record indicating this action.
Development, Visualization, and Application of the ARIES Systems Code Carlson, L. ; Center for Energy Res., Univ. of California-San Diego, La Jolla, CA, USA ; Tillack, M. ; Najmabadi, F. ; Kessel, C.