Difference between cooperation synchronization and competition synchronization issues that might be faced during the execution of tasks?
Answers
Answer:
As discussed
Explanation:
Synchronization is such a procedure that controls the order of tasks in which they have to be executed. There are majorly Two kinds of syschronization that are needed when tasks share data namely cooperation and competition. Cooperation synchronization is that when it's required between task X and You and then when task X must wait for task Y to complete some specific activity or instructions before task X can continue its own execution. Competition synchronization is generally adopted between two tasks when they both require the usage of same resource that can't be simultaneously used at Same instance
The issues:
Producer Consumer problem, where a finite buffer pool is mainly used for exchange of messages between processes of producer and consumer.
Because the buffer pool has a maximum size, this problem is often called the Bounded buffer problem
The dining philosopher's problem involves the allocation of the same Very limited resources to a collection of processes in a given deadlock-free and starvation-free state
In another problem there are some processes known as called readers that only read the shared data and can never change it and there are other processes as writers who may change the data in addition to reading or maybe in place of reading it. This is reader write problem.