- 2
- 0
- 约 197页
- 2017-02-23 发布于上海
- 举报
第九讲软件服务质量保障技术
加锁:Locking 进程在访问共享的资源之前,必须获得所有的锁 在访问共享的资源之后,必须释放所有的锁 2PL: 进程一旦开始释放锁,它再不能获取其它的锁 一个典型的 2PL 加锁过程为: 锁的兼容性 进程是否能够获得锁取决于所请求的锁是否与资源目前的锁状态(其它进程已请求的锁)兼容 兼容性由锁兼容性矩阵决定 最小的锁兼容性矩阵: 锁冲突 如果所请求的锁与资源的锁状态不兼容,则不能获得所请求的锁 这被称为“锁冲突” 处理锁冲突的方法有: 强迫请求进程等待,直到冲突的锁被释放 告诉请求进程,无法获得所请求的锁 死锁 2PL 可能导致死锁状态 在该状态下,多个进程分别获取部分所需的资源,并互相等待其它进程释放资源 死锁必须通过终止一个或多个相关的进程才能得到解决 这需要被终止的进程放弃它们已经进行的所有操作 解决死锁的核心在于避免死锁 锁粒度 2PL适用于任意粒度的资源 并发程度高的进程将需要小粒度的锁机制 小粒度的锁机制将导致需要较大数目的锁实现 这将导致系统开销的增加 因此,在实现具体系统时,需要在并发度与锁开销之间进行权衡 层次锁是其中的一种折中方案 层次锁 用于内部包含其它内容的资源 例如: 文件 (包含多条记录) 集合或序列 (包含对象) 锁状态增加了 intention read (IR) 与 intention write (IW)
您可能关注的文档
最近下载
- 福建连城银矿选矿工艺流程试验研究报告.doc VIP
- Unit 3 Extended Reading Smartphone a smart choice 课件-2022-2023学年高中英语牛津译林版(2020)必修第三册.pptx VIP
- 奶粉的功效和作用.pptx
- 毕业设计论文_基于plc的自动售货机.doc VIP
- 1-枪水-清洁剂MSDS.pdf VIP
- 穆斯堡尔谱原理及应用.ppt VIP
- SKPx5燃气阀门执行器-使用说明-中文.pdf VIP
- 建设工程监理合同模板(最新).docx
- SKP15SKP25SKL25…SKP55SKP75电动液压阀门执行器SKPx5.pdf VIP
- 电商直播对消费者购买意愿的影响因素研究.docx VIP
原创力文档

文档评论(0)