what are the Proposals for Achieving Mutual Exclusion?, Basic Computer Science

Assignment Help:
Proposal a) Disabling Interrupts (Hardware Solution)
• Every process disables all interrupts just after entering in its critical section and re-enables all interrupts just previous to leaving critical section. With interrupts turned off the CPU could not be switched to further process. consequently, no other process will enter its critical and mutual exclusion get.
• Conclusion
Disabling interrupts is sometimes a useful interrupts is sometimes a useful technique within the kernel of an operating system, but it is not appropriate as a general mutual exclusion mechanism for users’ process. The reason is that it is unwise to give user process the power to exit interrupts.

Proposal b) Lock Variable (Software Solution)
• In this solution, we judge a single, shared, (lock) variable, at first 0. When a process desires to enter in its critical section, it first tests the lock. If lock is 0, the process at first sets it to 1 and then enters the critical section. If the lock is previously 1, the process just waits until (lock) variable becomes 0.Therefore, a 0 means that no process in its critical section, and 1 means hold your horses - some process is in its critical section.
Conclusion of problem
the error in this proposal can be best explained by illustration. Suppose process A sees that the lock is 0. Before it can put the lock to 1 one more process B is scheduled, runs, and sets the lock to 1. as the process A runs again, it will also set the lock to 1, and two processes will be in their critical section at the same time.

Proposal c) Strict Alteration
• In this proposed solution, the integer variable ''turn'' remains track of whose turn is to enter the critical section. Originally, process A inspect turn, finds it to be 0, and come in its critical section. Process B also gets it to be 0 and sits in a loop continually testing ''turn'' to see when it becomes 1.constantly testing a variable waiting for some value to come out is called the Busy-Waiting.
• Conclusion
taking turns is not a high-quality thought when one of the processes is much slower than the other. Suppose process 0 finishes its critical section quickly, so both processes are now in their noncritical part. This circumstance violates above mentioned condition 3.
by means of Systems calls ''sleep'' and ''wakeup''
• Essentially, what above mentioned solution do is this: when a process desires to enter in its critical section, it checks to see if then entry is permitted or not? If it is not, the process goes into stretched loop and waits (i.e., start busy waiting) until it is allowed to enter. This approach waste CPU-time.
• Now appear at some interprocess communication primitives is the pair of steep-wakeup.
• Sleep
o This is a system call that reasons the caller to block, that is, be suspended until any other process wakes it up.
• Wakeup
o This is a system call that wakes up the process.
Equally ''sleep'' and ''wakeup'' system calls have one parameter that stand for a memory address used to match up ''sleeps'' and ‘wakeups’.

Related Discussions:- what are the Proposals for Achieving Mutual Exclusion?

Microwave transmission, Microwave Transmission: Using space as transmi...

Microwave Transmission: Using space as transmission medium, microwave emanates from an origination point on earth, such as telephone exchange, where many individual messages h

What is structure, Problem 1 Write a recursive function to find sum of ...

Problem 1 Write a recursive function to find sum of even numbers from 2 to 50 Writing function and explanation Problem 2 What is structure? Explain how structu

Short program to practice assembly language loops, Purpose of Code This...

Purpose of Code This is a short program to practice assembly language loops and if/else statements. You will use various jump commands and the cmp instruction.  The progra

Operating system problems, 1. In discussing software algorithms for mutual ...

1. In discussing software algorithms for mutual exclusion, we noted that optimizing compilers and out-of-order execution by processors could invalidate most of these algorithms bec

Display the item in red colour on a web page, QUESTION (a) Give the app...

QUESTION (a) Give the appropriate syntax to implement a Client-Side Image Map, specifying all possible attributes where required (b) List the benefits of using Cascading Sty

What are the most common forms of mixing, Question 1 What is the differenc...

Question 1 What is the difference between Variable Bit Rate and Constant Bit Rate? Question 2 Write a note on: Normalization, Reverberation, Noise Reduction, Filters, and

Constant , Constant: In contrast to a variable, which is used as ident...

Constant: In contrast to a variable, which is used as identifier for a value and which can change, constants are identifiers that are used for values, which cannot be changed.

Compare between file processing system and dbms, Problem a. Compare bet...

Problem a. Compare between file processing system and DBMS >>This is a comparison of DBMS with file processing system which the answer has to be searched from the GOOGLE an

Describe what are system software and application software, Problem: (a...

Problem: (a) Using appropriate examples describe what are System software and Application Software. (b) Explain four tasks of file management a user frequently performs i

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