Operating system 为什么边写边写(!false)而不是简单地边写边写(true)?

Operating system 为什么边写边写(!false)而不是简单地边写边写(true)?,operating-system,locking,critical-section,mutual-exclusion,Operating System,Locking,Critical Section,Mutual Exclusion,我是一名网络开发人员,经常遇到自己可以回答这个问题的情况 我正在准备考试,学习操作系统中用作同步机制解决方案的锁变量 这是给定的代码- //0 - free //1 - occupied //ENTRY SECTION initialize lock = 0; while(lock != 0); //infinite loop to stop another process from entering critical section lock = 1; ---- ---- ---- //

我是一名网络开发人员,经常遇到自己可以回答这个问题的情况

我正在准备考试,学习操作系统中用作同步机制解决方案的锁变量

这是给定的代码-

//0 - free
//1 - occupied 

//ENTRY SECTION
initialize lock = 0;
while(lock != 0); //infinite loop to stop another process from entering critical section
lock = 1;
----
----
----

//EXIT SECTION
lock = 0;
我的问题是,为什么它不是
while(lock==1)
而不是
while(lock!=0)
?我尝试手动解决问题,但在使用
while(lock==1)

有人能给我举一个例子,在使用
时(lock==1)
会失败吗