OS之分布式系统中的同步问题.pptVIP

  • 1
  • 0
  • 约1.23万字
  • 约 132页
  • 2017-05-30 发布于北京
  • 举报
另外一种预防 让等待进程的时间戳比被等待进程的时间戳大 (即更年轻)时允许进程等待 这时等待链上的时间戳是不断减小的 分布式死锁的预防(5) 等待-死亡算法 为启动早的进程指定高的优先级更明智 这些进程的执行时间较长 占用的系统时间较多 而且可能占有较多的资源 等待-死亡的死锁预防算法 老进程 10 年轻进程 20 需要资源 保持资源 等待 (a) 老进程 10 年轻进程 20 需要资源 保持资源 死亡 (b) 负伤-等待算法 假定一个事务负伤(实际上是被杀死) 而另一个事务等待而得名 如果一个老进程申请的资源被年轻的进程占用 老进程就可以抢占年轻的进程的资源 对应的事务也就被杀死了 年轻的进程可能会立即再次启动,并试图获得资源,结果被迫等待 负伤-等待死锁预防算法 老进程 10 年轻进程 20 申请资源 保持资源 优先 (a) 老进程 10 年轻进程 20 保持资源 (b) 申请资源 等待 两段加锁的优点 每个事务读到的值都是由已经提交的事务修改过的值 不会因为基于一个还不能使用的文件的原因,而终止该事务 所有锁的分配和释放都由系统处理 不需要事务了解这些过程: 文件被访问时,系统为它加锁; 事务结束时,释放相关的锁 避免了级连式的事务终止的情况发生: 由于使用了不该使用的文件而必须中止事务 九、常用的避免死锁的方法(1) 以某种规范的顺序分配锁,避免出现占有一等待

文档评论(0)

1亿VIP精品文档

相关文档