in Operating System edited by
548 views
0 votes
0 votes

Image may contain: text

The definition of progress is: “When no process is in the critical section and another process wants to enter the critical section, then it should be allowed without any delay” 

Suppose we do a context switch from 1 to 2 after executing Wait(P). Now the second process will get stuck at the loop and even though there is no process in the critical section, the second process is unable to enter the critical section.

How does this achieve progress then?

in Operating System edited by
548 views

1 comment

another way to answer- search the option which lead to deadlock (as you don't show all the option, here option (a) lead to deadlock). deadlock implies no progress because the progress take infinite time to decide who will enter the CS.
0
0

1 Answer

0 votes
0 votes
Progress is if multiple processes are waiting to enter the critical section and there is no process in the critical section, eventually one of the processes will gain entry.

Now first u executed S1 that is a statement of Process which implies that it wants to have access to the critical section so there is no progress issue if S2 has to wait ... Progress problem would have been there if for the execution of Process 2 Process 1 had to execute 1st that is alteration was required. Like this if we context switch anytime then we will always be having a progress problem for some or the other process.. So I think main aim is to check that there is no strict alteration and deadlock which implies progresss .

Related questions