Mutual exclusion, Operating System

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?

Posted Date: 2/22/2013 1:37:50 AM | Location : United States







Related Discussions:- Mutual exclusion, Assignment Help, Ask Question on Mutual exclusion, Get Answer, Expert's Help, Mutual exclusion Discussions

Write discussion on Mutual exclusion
Your posts are moderated
Related Questions
how fat file system is organised

Q. Presume that a system is in an unsafe state. Illustrate that it is possible for the processes to complete their execution without entering a deadlock state. Answer: An unsaf

Buddy system of memory allocation Free memory is used to maintain in linked lists, each of similar sized blocks. Every block is of size 2^k. When some memory is needed by a th

Q. Compare the utilization of networking sockets with the use of shared memory as a mechanism for communicating data between processes on a single computer. What are the merits of

demonstrate ergonomics

TII stands for The abbreviation of TII is Table of incomplete instructions.

Write a short note about the different STATES of a process. As a process implement it changes state. The state of a process is described in part by the current activity of that

The dynamic memory allocator is a layer between the application and the OS, managing heap objects. When a program requests memory from the allocator (via malloc(), for instance), t

Q. Why High level languages need Compiler? High level languages - illustrations are COBOL, FORTRAN, PL/I andALGOL - are processed by interpreters andcompilers. A compilers is a

COMBINED ULT/KLT APPROACHES Idea is to merge the best of both approaches Solaris is an illustration of an OS that combines both ULT and KLTĀ  Thread creation complete i