计算机系统结构--分布式共享存储器---目录协议的实现

一、分布式共享存储器结构
分布式共享存储器结构
二、基本思想
1.目录中存放本地存储器各块的状态信息以及那些cache中有该块的副本。
2.目录法采用位向量来记录哪些块有该块的副本,1表示有,0表示没有,并将有该块副本的处理机集合称为共享集S。
三、存储块的状态
1.未缓存(uncacahed):表示该块位调入cache中。
2.共享(shared):表示该块在多个处理机有副本。
3.独占(exclusive):表示该块只在一个处理机有副本,而且该处理机有该块的最新数据。
四、处理机角色分类
1.本地节点:指发出访问请求的节点。
2.宿主节点:包含所访问存储单元以及目录项的节点。
3.远程节点:拥有存储单元副本的节点。
五、状态转换
1.1.如果节点1读本地自己的存储单元块1,则节点1的目录将该块的状态改为shared,块1的共享集变为{1}。
1.2如果节点1读的是节点2的存储单元块2,则节点1直接向节点2发出读不命中,并告诉节点2要读的存储单元地址,节点2将该单元的数据发给节点1,并将块2的状态改为shared,块2的共享集变为{1}。
2.1如果此时节点2中块2的状态为shared,共享集为{1,2},而节点3要写节点2的存储单元块2,则节点3直接向节点2发出写不命中,节点2查看块2状态为shared,则节点2将数据发给节点1,并且告诉共享集中节点1,2将块2的信息作废,同时将自己块2 的状态改为exclusive,共享集变为{3}。
3.如果节点2中的块2位exclusive,共享集为{3},此时节点1发出读不命中,则节点1发现节点2的块2状态为exclusive,则直接向其共享集中节点3发出读不命中,则节点3将块2的最新信息写回节点2,并将节点2中块2的状态改为shared,共享集为{1,3}
4.如果此时节点2中的块2要被替换了,而块2的状态为exclusive,共享集为{3},则节点2直接向节点3发出写回消息,然后节点3将其关于块2的最新数据写回节点2的存储器。
六、转换图
状态转换图

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值