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

Briefly explain the process management in unix., Briefly explain the proces...

Briefly explain the process management in UNIX. UNIX makes use of the easy but powerful process facility that is visible to the user. UNIX follows the model in which the majori

Interpreters, Use and overview? Pure and impure interpreter?

Use and overview? Pure and impure interpreter?

Basic server model, Suppose we want to program a Web server; we could easil...

Suppose we want to program a Web server; we could easily do so without using concurrency, as follows: while(true) wait connection read from socket and parse url look up url cont

Explain what type of group scope you will use, Question: (a) The actual...

Question: (a) The actual use and scope groups depend on the mode in which a domain is running. There are two domain modes in which you can run a Windows 2000 domain. List and d

Explain the main functions of an operating system, Question: a) What sp...

Question: a) What special measures must be taken to ensure the reliability, availability, and security of electronic commerce and digital business process? b) What are the c

Program of calculator and controller - fork, Program of Calculator and Con...

Program of Calculator and Controller with the fork, exec, and wait system calls The objective of this assignment is to get you to be comfortable with the fork(), exec(), and wai

Explain system-wide open-file and per-process open-file, Explain system-wid...

Explain system-wide open-file and per-process open-file The system-wide open-file table have a copy of the FCB of each open file, as well as other information. The per-pr

Name two differences between logical and physical addresses, Q. Name two di...

Q. Name two differences between logical and physical addresses? Answer: A logical address doesn't refer to an actual existing address rather it refers to an abstract address in

Explain operating systems for mainframe computers, What are the main differ...

What are the main differences between operating systems for mainframe computers and personal computers? The design goals of operating systems for those machines are quite diffe

Deadlock prevention-resource allocation graph allocation, Explain Deadlock ...

Explain Deadlock Prevention-Resource allocation graph allocation Resource allocation graph algorithm :  Using this algorithm we are able to actually know if there exists in th

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