Mutual exclusion, Operating System

Assignment Help:

With software algorithms for mutual exclusion, such as Dekker's algorithm, Peterson's algorithm, or Lamport's bakery algorithm, note that optimizing compilers and out-of-order execution by processors could invalidate most of these algorithms because such "optimization" does not take into account that the value of a shared variable can be changed by something other than the immediately evident code. This overly-simplistic characterization also happens with I/O devices, especially simple programmed I/O where data or control register contents changes as a result of the state of the device, not as a consequence of execution of processor instructions, as well as with clocks where the current time register changes continually. It also happens when DMA is used to input blocks of data, which is slightly more complex because the addresses whose value changes are not evident literally. What does this imply about device drivers?


Related Discussions:- Mutual exclusion

What are the various scheduling criteria for cpu scheduling, What are the v...

What are the various scheduling criteria for CPU scheduling? The various scheduling criteria are CPU utilization

Virtual addresses, Virtual addresses are made up of two parts: the ?rst par...

Virtual addresses are made up of two parts: the ?rst part is the page number, and the second part is an offset inside that page. Suppose our pages are 4kb (4096 = 212 bytes) long,

unix script command and echo command, Objectives 1.    Login to UNIX ...

Objectives 1.    Login to UNIX system and logout 2.    Learn features of the vi editor and to use online help (main pages).  Gain experience using them to create a document

Explain segmentation hardware?, Explain segmentation hardware? We defin...

Explain segmentation hardware? We define an completion to map two-dimensional user-defined addresses into one-dimensional physical addresses. This mapping is affected by means

Define the global vs. local variables, Define the Global vs. local variable...

Define the Global vs. local variables It is also important to discuss the scope of resources being granted to the application program.  Variable scoping is defined as the acces

Multiprogramming, how response times are reduced by allowing time sharing o...

how response times are reduced by allowing time sharing on top of multiprogramming

Briefly discuss on real-time scheduling, Briefly discuss on real-time sched...

Briefly discuss on real-time scheduling? It is divided into two types.  Hard real-time systems are needed to complete a critical task within a guaranteed amount of time. T

How does ntfs handle data structures, Q. How does NTFS handle data structur...

Q. How does NTFS handle data structures? How does NTFS recover from a system crash? What is guaranteed after a recovery takes place? Answer: In NTFS all file-system data stru

Fork system call in unix, Forking is an important phase of Unix, critical t...

Forking is an important phase of Unix, critical to the support of its design strategies, which encourages the implementation of filters. In Unix, a filter is a process that reads i

Different ways in which a thread can be cancelled, What are the different w...

What are the different ways in which a thread can be cancelled? Cancellation of a target thread may happen in two different scenarios: Asynchronous cancellation: One thr

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