Bro When P0 sets its interest(Flag=TRUE) and suddenly got preempted without executing turn and then process p1 comes then p1 will find While loop as true because (Flag(P0)==T and turn==1) it will be in busy wait after that p0 will be resumed and find while loop as true (Flag(P1)==T and turn==0) then it will be in busy wait but now p1 will get into critical section because turn is now 0(set by p0) and then comes out from Critical section and then set flag(P1==F) which will make process 0 to get into critical section and if it agains wanted to get into critical section then it will get into it because if process p1 doesn't want to get into critical section then process p0 will find FLAG(p1=F) hence while loop will be false and PROGRESS is GUARANTEED.