views:

50

answers:

1

I know the MESI protocol is used to implement cache coherence in multiprocessor systems. But I don't know how its implemented. Any help on this is very much appreciated.

+2  A: 

The cache coherence protocols are in general implemented in hardware (inside the CPU or accompanying chip sets). An operating system usually only sets up the cachable region of the system memory and has some control of the cache state, but the actual protocol is hardware specific.

For a reference on how to control caching details on Intels CPUs you can read the Intel® 64 and IA-32 Architectures Software Developer's Manual Volume 3A: System Programming Guide(chapter 11). But this only covers the details that are under the control of software or the operating system.

Frank Bollack
The MESI protocol exists to coordinate the reliable access to data between multiple CPUs. Its also important to understand how the application software synchronizes access to data, too. Read the discussion write serialization, memory barries and LOCKs.
Ira Baxter