Question: In a concurrent system, a process, Process A, continuously produce data to be consumed by another process, Process B, through a shared array, buffer, as

 In a concurrent system, a process, Process A, continuously produce data

In a concurrent system, a process, Process A, continuously produce data to be consumed by another process, Process B, through a shared array, buffer, as illustrated below. What possible problems may arise? What are the possible solutions? How would you need to revise this pseudo- code to tackle those possible problems? Shared array and variable: buffer [N], count Count: # of valid data items in buffer Process A produces data items and stores in buffer If buffer is full, must wait Process B consumes data items from buffer If buffer is empty, must wait Process A produce (&data) spin while (count bufferli- data Process B spin while (count -0); wait while buffer is empty count-count - 1; data-bufferlil; consume(&data); N) count count +

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!