Discuss, with examples, how the problem of maintaining coherence of cached data manifests itself in following processing environment:
a. Single-processor systems
b. Multiprocessor systems
c. Distributed systems
Answer:
In single-processor systems, the memory needs to be updated when a processor issues updates to cached values.
These updates can be performed immediately or in a lazy manner.
In a multiprocess or system, different processors might be caching the same memory location in its local caches.
When updates are made, the other cached locations need to be invalidated or updated. In distributed systems, consistency of cached memory values is not an issue.
However, consistency problems mightarise when a client caches file data.