1. (5p) What are the properties of a good locking protocol? Mutual exclusion, deadlock free, and starvation free. An optional property is fairness. 2. (5p) What are the differences between linearizability and sequentical consistency? Construct an example that is sequential consistent but not linearizable. Linearizability requires both the order between event across threads and the order between thread local events to be preserved. Sequential consistency only requires thread local event order to be preserved. T1: |--- enq(x) ---| |-- deq(y)---| T2: |--enq(y)--| ----------------------------------------------------------> time The above example is sequential consistent but not linearizable.