分布式计算——笔记(四)——进程协作

多个并发进程要求访问共享资源时,进程在共享资源上如何协调工作,才能不致于发生冲突,且保证共享资源的正确性和完整性?

概念

  • 分布式互斥:保证临界区资源的互斥利用
  • 选举:从多个并发的进程中选择一个进行协调
  • 事件排序、排序组播:就进程间事件的发生顺序进行协调达成一致
  • 避免分布式死锁:要求一组进程对公共资源进行公平的原子访问,不出现死锁也不出现饿死
  • 同步器:在异步网络中实现时钟滴答

分布式互斥

基于消息传送,保证在任何一个时刻只有一个进程访问临界区
互斥算法评价标准:消耗带宽、客户延迟时间、同步延迟(一个进程离开临界区和下一个进程进入临界区的时间差)

  • 三大基准
    ME1:至多一个进程在使用临界区
    ME2:不发生死锁
    ME3:顺序执行
  • 中央服务器互斥算法(令牌token传递)
    满足ME1,ME2,不满足ME3(消息传递延迟)。性能较差。
  • 基于环的互斥算法
    将进程安排成环,令牌token在环中顺序传递。
    满足ME1,ME2,不满足ME3(环拓扑结构不是因请求顺序动态调整的)。
    性能上:持续消耗网络带宽,相邻进程进入临界区的延迟可以是1到N个消息传输;但优点是退出只需要一次消息传输。
  • Lamport算法
  • Ricart-Agrawala算法
  • Maekawa投票算法

选举

评价标准:发送消息总数,算法回转时间

  • 基于环的选举算法
    一组进程连接成环,全体人员依次传递消息,参与选举的人比较自己的标识符与传递过来的标识符,向下传较大的那一个。如果传过来的标识符是自己的,则在整个环中传递宣布当选信息,再在整个环中确认当选。
  • 霸道算法
    假设进程可能崩溃,消息传递可靠,且所有进程知道其他进程的标识符。在协调者发生故障时重新选举。`

排序组播

FIFO排序,因果排序,全排序, 混合排序

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值