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

Define lru page replacement policy, Define ‘LRU’ page replacement policy ...

Define ‘LRU’ page replacement policy LRU is Least Recently Used page replacement policy.

Linux, how to find ncr value in shell script

how to find ncr value in shell script

Explain activities of an os in regard to file management, What are the five...

What are the five major activities of an operating system in regard to file management? The creation and deletion of files The creation and deletion of directories The s

Explain rehashing to handle collision, Explain Rehashing to Handle Collisio...

Explain Rehashing to Handle Collision Rehashing:  Re-hashing schemes make use of a second hashing operation while there is a collision. If there is an additional collision, we

OS is a resource allocator and control program, why we say OS is a resource...

why we say OS is a resource allocator and control program

What is the use of system calls, Q. What is the use of system calls? A...

Q. What is the use of system calls? Answer: System calls permit user-level processes to request services of the operating system.

Explain swapping, Explain Swapping Swapping is a method of temporarily ...

Explain Swapping Swapping is a method of temporarily removing inactive programs from the memory of computer system.

Networking protocols, Modern networks are not implemented as a single piece...

Modern networks are not implemented as a single piece of software; that would render the task of dealing with multiple technologies and manufacturers virtually impossible. The solu

What is busy waiting, What is busy waiting? The repeated implementation...

What is busy waiting? The repeated implementation of a loop of code while waiting for an event to happen is known as busy-waiting. The CPU is not engaged in any actual producti

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