Multicore & Synchronization

Which correctly lists the four states of the MESI cache coherence protocol?

  1. AMemory, Execute, Store, Index
  2. BModified, Exclusive, Shared, Invalid
  3. CMiss, Evict, Swap, Idle
Show answer and explanation

Answer: B. Modified, Exclusive, Shared, Invalid

In MESI, each cache line is in one of four states: Modified (changed and held only by this core), Exclusive (unchanged and held only by this core), Shared (several cores hold the same contents) or Invalid. The state changes whenever the core reads or writes, or learns of other cores' reads and writes, which prevents copies of the same address from disagreeing.

  • A. These are not cache line states.
  • B. Correct. Every line is in one of these four states.
  • C. These are not cache line states.
Practice this topic Back to topic

More Multicore & Synchronization questions

  1. In the MESI protocol, what does it mean when a cache line is in the Modified (M) state?
  2. In the MESI protocol, what happens when a core writes to a line it holds in the Exclusive (E) state?
  3. In an invalidation-based coherence protocol, what happens when a core writes to a line in the Shared (S) state?
  4. In MESI, when core 1 tries to read a line that core 0 holds in the Modified (M) state, what generally happens?
  5. Which describes the snooping approach to cache coherence?