What are race conditions?, Operating System

Assignment Help:

What are race conditions?

Race conditions are problems that take place due to the sharing of the same file by several processes. In such a case none of the processes is able to use the shared file. Consider the illustration of a printing queue that maintains the list of all files to be printed. As well consider a file shared by two processes PA and PB.

1266_What are race conditions.png

The file has obtained two variables:

                    ‘in’ pointing to the next free slot (N.F.S)                     

and

          ‘out’ pointing to the next job to be executed.       

    

   Primarily in the file, in=7 and out=4. Let PA be the first process that uses the file. Then PA sets its local variable N.F.S=7. However before placing into the queue, an interrupt occurs. At present PB comes. PB also sets its local variable N.F.S=7 and is placed in the queue.

Then N.F.S=N.F.S+1 which sets in=8. In such a case while implementing PA overwrites the slot 7 that is already occupied by PB. Thus nothing will be printed. Such a condition is an example for race condition.

 

The file has obtained two variables:

                        'in' pointing to the next free slot (N.F.S)                     

and

          'out' pointing to the next job to be executed.     

 

Primarily in the file, in=7 and out=4. Let PA be the first process that uses the file. Then PA sets its local variable N.F.S=7. However before placing into the queue, an interrupt occurs. At present PB comes. PB also sets its local variable N.F.S=7 and is placed in the queue.

Then N.F.S=N.F.S+1 which sets in=8. In such a case while implementing PA overwrites the slot 7 that is already occupied by PB. Thus nothing will be printed. Such a condition is an example for race condition.


Related Discussions:- What are race conditions?

CPU sheduling, categorize the CPU scheduling algorithms and among them expl...

categorize the CPU scheduling algorithms and among them explain the non-preemptive algorithms..

Explain threads in details?, What are threads? A thread - sometimes c...

What are threads? A thread - sometimes called as an implementation context or a lightweight process - is a single sequential flow of control within a program. We use threads

Explain the concept of mutual exclusion, Question 1: (a) Discuss about...

Question 1: (a) Discuss about the evolution of operating systems from mainframe batch systems to mainframe time sharing systems. (b) Explain your understanding of the "sus

Define thread cancellation and target thread, Define thread cancellation & ...

Define thread cancellation & target thread. The thread cancellation is the task of terminating a thread before it has completed. A thread that is to be cancelled is often refer

Prevention of a data race in a parallelised program, Present your own fully...

Present your own fully documented and tested programming example illustrating the prevention of a data race in a parallelised program. This is an example where total number of p

Selection of a disk-scheduling algorithm, Q. How would utilize of a RAM di...

Q. How would utilize of a RAM disk affect your selection of a disk-scheduling algorithm? What factors would you require to consider? Do the similar considerations apply to hard-di

Remote it support engineer windows systems administrator, Remote IT Support...

Remote IT Support Engineer Windows Systems Administrator Project Description: Need Windows base IT Support Engineer / Systems Network Administrator - perfectly MCSE qualified

Garbage collection, The dynamic memory allocator is a layer between the app...

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

Write a short note on the linux file systems, Question: (a) Red Hat Li...

Question: (a) Red Hat Linux is distributed under the Open Source agreement. Explain what you understand by Open Source distribution system. (b) Write a short note on the L

Explain the network protocols, Explain the Network protocols There are ...

Explain the Network protocols There are a wide variety of network protocols to choose from traditionally client - server developers were required to choose a communications pro

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