Operating system 带比较和交换的有界等待互斥

Operating system 带比较和交换的有界等待互斥,operating-system,synchronization,Operating System,Synchronization,据我所知,我在每一行都添加了注释,但我仍然不明白为什么我们将waiting[j]=false结束时,不运行流程j的关键部分。在我看来,waiting[j]=false应替换为i=j

据我所知,我在每一行都添加了注释,但我仍然不明白为什么我们将
waiting[j]=false结束时,不运行流程j的关键部分。在我看来,
waiting[j]=false应替换为
i=j

对于要进入其关键部分的流程,
等待[i]
必须为false,但只有当流程通过调用
等待[j]=false离开其关键部分时,
等待[i]
才能设置为false,我认为这意味着现在进程
j
可以进入其关键部分,提示进程
I
等待。我还在学习这些概念,所以我不是100%确定。Abraham和Silberschatz第9版并没有对这些算法进行透彻的解释

我要接受你的答案,因为期末考试刚过,我就忘了我在这门课上学到的一切