Give solution for readers-writers problem, Computer Engineering

Assignment Help:

Give a solution for readers-writers problem using conditional critical regions.

Solution for readers-writers problem using conditional critical regions:

Conditional critical region is a high-level synchronization construct. We suppose that a process have some local data, and a sequential program which can operate on the data. The local data can be accessed through only the sequential program which is encapsulated in same process. One process can't directly access the local data of the other process. However, processes can, share global data.

Conditional critical region synchronization construct needs that a variable v of type T, that is to be shared among several processes, be declared as v: shared T; The variable v can be accessed only within a region statement of the following form: region v while B do S;

This construct implies that, while statement S is being executed, no other process can access the variable v. while a process tries to enter the critical-section region, the Boolean expression B is calculated. If the expression is true, statement S is executed. If this is false, the process releases the mutual exclusion and is delayed till B becomes true and no other process is in the region connected with v.

Here, let A is the shared data object.

Assume that readcount is the variable which keeps track of how many processes are currently reading the object A.

Assume that writecount is the variable which keeps track of how many processes are currently writing the object A. simply one writer can update object A, at a specified time.

Both variables readcount and writecount are initialized to 0.

A writer can update the shared object A while no reader is reading the object A.

region A when( readcount = = 0 AND writecount = = 0){

......

writing is performed

...... }

A reader can read the shared object A unless a writer has acquired permission to update the object A.

region A when (readcount >=0 AND writecount = = 0){

......

reading is performed ...... }


Related Discussions:- Give solution for readers-writers problem

Explain the term- software, Explain the term- Software Some of the key ...

Explain the term- Software Some of the key aspects of software are considered in this section. Familiarisation with software packages is generally best achieved by carrying out

Variables and quantifiers for first-order models , Variables and Quantifier...

Variables and Quantifiers for First-order models -artificial intelligence: So what do sentences containing variables mean? In other words, how does first order model select whe

Polymorphism and inheritance in lingo programming, Question : (a) What...

Question : (a) What are parent scripts and child objects in Lingo object oriented programming (OOP)? What are the equivalent terms used in C++ OOP? (b) Differentiate b

What is garbage collection and what is it used for, In computer science, ga...

In computer science, garbage collection (GC) is a form of automatic memory management. The garbage collector, or just collector, attempts to reclaim garbage, or memory occupied by

How many lists can a program can produce, How many lists can a program can ...

How many lists can a program can produce? Every program can produce up to 21 lists: one basic list and 20 secondary lists.  If the user makes a list on the next level (that is,

What is check box, A dialog box, generally square, that records an on or of...

A dialog box, generally square, that records an on or off value.

Explain three-way handshake mechanism, Explain Three-Way Handshake Mechanis...

Explain Three-Way Handshake Mechanism used by TCP to terminate a Session reliably. Just to guarantee that connection is sets up or terminated reliably, transfer control protoco

Explain about registers, Q. Explain about Registers? A register is a gr...

Q. Explain about Registers? A register is a group of flip-flops that store binary information and gates that controls when and how information is transferred to register. An n-

Convert hexadecimal bch to decimal number, Convert hexadecimal BCH to decim...

Convert hexadecimal BCH to decimal of form 0100 1000. Converting the hexadecimal BCH to decimal number firstly convert given number into two's compliment that is: 0100100

Explain the different sub-functions of process scheduling, Explain the diff...

Explain the different sub-functions of Process Scheduling. Process scheduling contains the subsequent sub-functions: 1. Scheduling: Chooses the process to be executed next

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