Le protocole MESI (Modified, Exclusive, Shared, Invalid, aussi connu sous le nom d'Illinois protocol) est un protocole de cohérence de cache utilisé dans les systèmes multiprocesseur.

Chaque ligne du cache est estampillée avec l'une des marques suivantes (codées sur deux bits supplémentaires) :

  • M - Modified (Modifié) : La ligne de cache n'est présente que dans le cache considéré et a été modifiée (état parfois désigné par sale (dirty)). Elle n'est pas cohérente avec la valeur présente en mémoire centrale. La ligne en mémoire centrale doit être mise à jour avec la version locale avant que d'autres puissent la lire.
  • E - Exclusive (Exclusif) : La ligne de cache n'est présente que dans le cache considéré, mais est propre, c'est-à-dire identique à la valeur correspondante en mémoire centrale. On dit que la cohérence est assurée.
  • S - Shared (Partagé) : Indique que cette ligne est peut-être dans d'autres caches. La cohérence est assurée.
  • I - Invalid (Invalide) : Indique que cette ligne de cache n'est plus à jour.

Une évolution de ce protocole est le protocole MOESI, qui rajoute une marque O (Owned). L'article sur le protocole MOESI est plus complet que celui-ci.

Voir aussi modifier

Lien externe modifier