• Data objects are a special type of shared resources.
  • When jobs are scheduled preemptively, their accesses to data object may be interleaved.
  • To ensure data integrity it is common to require that reads and writes be serializable.
  • A sequence of reads and writes by a set of jobs is serializable if the effect produced by the sequence on all the data objects shared by the jobs is the same as the effect produced by a serial sequence.
  • Two phase locking protocol is used to access the data objects. It is :
    • A way to ensure serializability
    • A job never requests any lock once it releases some lock