MESIプロトコル
ライト要求は当該キャッシュラインがModified状態ならローカルにキャッシュに書き込むだけで済む。Shared状態なら、他のキャッシュのShared状態のキャッシュラインを無効化する必要がある。これもリードと同様にバススヌーピングなどで実現する。その上でModified状態に遷移してローカルにキャッシュにライトを行う。Invalid状態の場合、他のキャッシュのShared状態とModified状態のキャッシュラインを無効化しなければならない。別のキャッシュの当該キャッシュラインがModified状態なら、そのキャッシュラインの内容を主記憶に書き戻すか、ライト要求したキャッシュに対して内容を送る。なお、一般にCPUのライト要求はせいぜいワード単位までであり、キャッシュラインは複数ワードという構成が一般的であるため、Invalid状態でのライト要求の場合、書き込みの前に当該キャッシュライン全体を読み込んでおく必要がある。
任意の2つのキャッシュがあるとき、それぞれの対応するキャッシュラインがとりうる状態の組合せは次のようになる。