引进意向锁后,系统对某一数据对象加锁时不必逐个检查与下一级结点的封锁冲突了。例如,事务T要对关系R加X锁时,系统只要检查根结点数据库和R本身是否已加了不相容的锁(如发现已经加了IX,则与X冲突),而不再需要搜索和检查R中的每一个元组是否加了X锁或S锁。 13. 试述常用的意向锁:IS锁,IX锁,SIX锁,给出这些锁的相容矩阵。 答: IS锁
如果对一个数据对象加IS锁,表示它的后裔结点拟(意向)加S锁。例如,要对某个元组加S锁,则要首先对关系和数据库加IS锁 IX锁
如果对一个数据对象加IX锁,表示它的后裔结点拟(意向)加X锁。例如,要对某个元组加X锁,则要首先对关系和数据库加IX锁。 SIX锁
如果对一个数据对象加SIX锁,表示对它加S锁,再加IX锁,即SIX = S + IX。 相容矩阵(略)
14. 理解并解释下列术语的含义:封锁,活锁,死锁,排它锁,共享锁,并发事务的调度,可串行化的调度,两段锁协议。 答:(略,已经在上面有关习题中解答)
*25. 试述你了解的某一个实际的DBMS产品的并发控制机制。 答:(略,参见《概论》第8节,简单介绍了有关Oracle的并发控制机制。)