繁体   English   中英

弱公平与强公平有什么区别?

[英]What is the difference between weak fairness and strong fairness?

弱公平与强公平有什么区别? 什么是一个例子,它包含一组变量和一组动作?

给出转换图:

  1. 弱公平性确保执行不能永远保持在启用了导致其他状态的动作的状态。
  2. 强烈公平的情况下,无需执行就可以无限制地执行任何操作。

我不完全确定,但我相信这就是答案:

强弱与弱势

如果每个无限次启用的进程最终都会运行,那么调度程序非常公平。

如果每个持续启用的进程最终都会运行,那么调度程序就会非常公平。

  • 对于共享变量程序,弱公平是合理的
  • 对于同步过程,弱公平是合理的,但它不是很有用(启用不是本地的)
  • 强烈的公平是不现实的(太多的簿记)
  • 对于异步流程,弱公平性既合理又有用

a!0 k n:=0; go:=true;
do
    (go ^ a?x ! go:=false)
    2 (go ! n:=n + 1)
od

继续执行第二种替代方案是不公平的,因为这会忽略两个进程之间同步通信的可能性,这可能是在无数次的情况下进行的。

有效的实现应该尽量合理公平,并且应该确保输出命令在首次变为可执行文件后不会被不合理地延迟。

什么是公平的?

  • 这种执行不是很公平,而是非常公平。
  • 假设公平性很强,程序终止于n = 0。
  • 假设公平性较弱,该计划也可能出现分歧。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM