Explain peterson''s solution for the critical section problem, Operating System

Assignment Help:

Explain the Peterson's solution for the critical section problem?

In Peterson's solution two variables a) flag and b) turn are used as shared variables. If the both shared variables are set after that particular process can get into the critical section. Or else it gives other processes to get into the critical section and consider the segment for a process Pi to get into the critical section.

         do

            {

               flag[i]=true

               turn=j

               while(flag[j]&&turn==j)

               critical section

               flag[i]=false

               remainder section

            }while(1)

 

code segment for a process Pj is as follows:-

do

            {

               flag[j]=true

               turn=i

               while(flag[i]&&turn==i)

               critical section

               flag[j]=false

               remainder section

            }while(1)

 

            When flag[i]=true and turn=j is implemented, let a context switch take place. Therefore the control comes to the process Pj. therefore the statement flag[j]=true is executed. Again a contest switch take place and control is now with Pi. Therefore when the while condition is checked both of the conditions are true. Therefore while condition is true always and it ends up in an infinite loop. Therefore Pi is in an infinite loop and waits till the condition gets false. Therefore Pj executes here first and makes flag[j]=false. Therefore when a context switch occurs, Pi will get into its critical section. Implementation of each process depends on the context switch occurring between the two processes.


Related Discussions:- Explain peterson''s solution for the critical section problem

Describe the differences among short-term and medium-term, Describe the dif...

Describe the differences among short-term, medium-term, and long-term scheduling.   Short-term (CPU scheduler)-selects from jobs in memory those jobs that are ready to execu

Explain acyclic-graph directories, Acyclic-graph directories An acyclic...

Acyclic-graph directories An acyclic graph permits directories to have shared subdirectories and files. The similar file or subdirectory may be in two dissimilar directories. A

Producer-consumer using condition variables, Now let us present an implemen...

Now let us present an implementation of a producer-consumer system using condition variables. This implementation works. dequeue() lock(A) while (queue empty) { wait(A, C)

What is banker''s algorithm, What is banker's algorithm? Banker's algor...

What is banker's algorithm? Banker's algorithm is a deadlock avoidance algorithm that is applicable to a resource-allocation system with multiple examples of each resource type

Custom memory allocation, Some people write custom memory allocators to mee...

Some people write custom memory allocators to meet their speci?c needs. Although this is not needed for most of the applications, it is also not uncommon. The goal, of course, is t

Unix , A friend has promised to log in at a particular time. However, he ne...

A friend has promised to log in at a particular time. However, he needs to be contacted as soon as he logs in. The shell script checks after every minute whether he has logged in o

Is data in a file access sequentially or randomly, Q. Give an instance of ...

Q. Give an instance of an application in which data in a file should be accessed in the following order: a. Sequentially b. Randomly Answer: a. Print the content of

Os structures, #question.explain varios types of system calls..

#question.explain varios types of system calls..

What is a client server system, What is a client server system? Central...

What is a client server system? Centralized systems proceed as server systems to satisfy request generated by client systems Server system is able to be broadly div

What are the three major purposes of an operating system, Q. What are the t...

Q. What are the three major purposes of an operating system? Answer: To offers an environment for a computer user to execute programs on computer hardware in a conveni

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd