Co oznacza mesi?

Skrót „MESI” oznacza Modified-Exclusive-Shared-Invalid, który jest protokołem spójności pamięci podręcznej używanym w systemach wieloprocesorowych w celu utrzymania spójności wielu kopii tych samych danych w różnych pamięciach podręcznych. Oto wyjaśnienie, co reprezentuje każdy z tych stanów:

1. Zmodyfikowany (M):

- Wiersz pamięci podręcznej jest w stanie Zmodyfikowany, jeśli został zmodyfikowany lokalnie i zawiera najbardziej aktualną wersję danych.

- Inne pamięci podręczne, w których wcześniej znajdowały się kopie tych samych danych, zostają unieważnione, gdy linia pamięci podręcznej przejdzie w stan Zmodyfikowany.

- Stan Zmodyfikowany wskazuje wyłączną własność danych, co oznacza, że ​​żadna inna pamięć podręczna nie ma obecnie ważnej kopii.

2. Ekskluzywne (E):

- Gdy linia pamięci podręcznej jest w stanie Exclusive, zawiera prawidłową kopię danych, ale nie została zmodyfikowana lokalnie.

- Inne pamięci podręczne mogą mieć nieprawidłowe lub udostępnione kopie tych samych danych, ale żadna inna pamięć podręczna nie ma zmodyfikowanej kopii.

3. Wspólne (S):

- Linia pamięci podręcznej jest w stanie Udostępniona, gdy wiele pamięci podręcznych zawiera prawidłowe kopie tych samych danych i żadna z nich ich nie zmodyfikowała.

- W stanie Udostępnione wszystkie kopie danych są ze sobą spójne.

4. Nieprawidłowy (I):

- Stan Nieprawidłowy wskazuje, że linia pamięci podręcznej nie zawiera prawidłowej kopii danych.

- Gdy uzyskany zostanie dostęp do linii pamięci podręcznej i okaże się, że jest ona nieprawidłowa, procesor musi pobrać ją z pamięci głównej lub innej pamięci podręcznej, która ma ważną kopię.

Protokół MESI gwarantuje, że tylko jedna pamięć podręczna zawiera w danym momencie zmodyfikowaną kopię danych, co zapobiega niespójnościom pomiędzy wieloma kopiami przechowywanymi w pamięci podręcznej. Zapewnia również, że w przypadku współdzielenia danych w wielu pamięciach podręcznych wszystkie kopie pozostają spójne dzięki określonym działaniom podejmowanym w przypadku zmiany stanu.