最近,我正在阅读有关临界区问题的《操作系统概念》第六章,在6.2节中,我们知道解决同步问题的算法必须满足三个要求:1.互斥2.进度3.有界等待。显然,如果一种算法满足第二个要求(进度),则不一定由于处理速度或调度问题而意味着该算法满足“有界等待”。
但是,我的问题是,如果一个算法满足“有界等待”的要求,我们可以由此暗示这个算法也满足“进度”的要求吗?如果否,请问情况如何?如果是,为什么我们不只提出第三项要求,而删除第二项,因为第三项可能意味着第二项。顺便说一句,任何人都可以解释第二个和第三个之间的关系(和差异)吗?