COMPLETE SOLUTIONS VERIFIED
Critical Operations
Should be carefully managed and synchronized to prevent; for example simultaneous
read and write , which an cause incorrect and nondeterministic behavior
Solutions of Critical Operations
1. A resource can be locked before accessing it, this ensures that other agents cannot
access the object while being locked. While this solves the issue it eliminates the
possibility of parallel processing.
2. A more thoughtful implementation is not lock the parallel read operations, while
locking the parallel read-write and write-write combinations
Producer-Consumer problem
it does not solve the synchronization problem that could occur in a distributed
computing system
Deadlock prevention
use an algorithm that can guarantee that no deadlock can occur
Deadlock Avoidance
use an algorithm that will anticipate that a deadlock is likely to occur and therefore
refuse a resource request.
deadlock detection and recovery