Advanced synchronization, Operating System

Synchronization serves two purposes: 1) to ensure safety for updates on shared data (e.g. to avoid races conditions), and 2) to coordinate and order actions taken by threads (e.g. handling threads which communicate intermediate results amongst one another).]

One of the most important aspects of parallel programs is that all their possible interleavings must be correct. One possible way to guarantee this is to simply put one lock in the beginning of each thread; however, it is also clear that we want to use as as few constraints as possible, in order to effectively exploit the available concurrency. Thus, the correct placement of locks is not always trivial. In general, locks provide safety and correctness, while condition variable provide ordering.

Posted Date: 3/12/2013 5:15:50 AM | Location : United States







Related Discussions:- Advanced synchronization, Assignment Help, Ask Question on Advanced synchronization, Get Answer, Expert's Help, Advanced synchronization Discussions

Write discussion on Advanced synchronization
Your posts are moderated
Related Questions
Under what circumstances do page faults occur?  Describe the actions taken by the operating system when a page fault occurs. A page fault happens when an access to a page that

What is linked allocation, as detailed in text? Directory has pointers to first and last blocks of file. Every block of file (except last) has pointer to the next block.

When programming with threads, there are three very common mistakes that programmers often make: 1. locking twice (depending on the system and type of lock, can cause crashes, h

Concept of Reentrancy   It is a useful, memory-saving method for multiprogrammed timesharing machines. A Reentrant method is one in which multiple clients can share a singl

Allocators can also be used to avoid problems with unsafe languages. C and C++ are pervasive, with huge amounts of existing code. They are also memory-unsafe languages, in that the

Describe the technique of packing. The physical record size will not accurately match the length of the desired logical record and the Logical records may even differ in length

The term ‘page traffic’ explains   Page traffic’ explains the movement of pages in and out of memory.

Unix process API The two most important function calls to use when programming with several processes are fork and exec:  fork() creates a copy of current process. It gives

Fault tolerance Machine failures, Communication faults, storage device crashes, and decays of storage media should be tolerated by the system to some extent. A fault tolerant s

Q. Most WANs utilize only a partially connected topology. Why is this subsequently Answer: Cost. A completely connected network requires a link between every node in the netw