캐시 일관성 — MESI 프로토콜

별점: ★★★★★ | 기본 필수


답안.

Ⅰ. 개요

코어0 L1캐시 ─ 코어1 L1캐시 ─ 코어2 L1캐시 ↓ ↓ ↓ 공유 LLC (Last Level Cache)

Ⅱ. 핵심 구성요소

멀티코어 환경:
  코어0 L1캐시 ─ 코어1 L1캐시 ─ 코어2 L1캐시
         ↓               ↓               ↓
              공유 LLC (Last Level Cache)

문제: 코어0이 X=1을 캐시에 쓰면
     코어1의 캐시에는 여전히 X=0
     → 일관성 위반!
각 캐시 라인이 4가지 상태 중 하나:

M (Modified):
  이 캐시만 최신 데이터 보유
  메모리 값과 다름 (dirty)
  → 교체 시 메모리에 쓰기 (Write-Back) 필요

E (Exclusive):
  이 캐시만 보유 (유일), 메모리와 동일 (clean)
  읽기 전용 상태

S (Shared):
  여러 캐시가 동시 보유 가능
  메모리와 동일 (clean)
  쓰기 시 다른 캐시에 무효화 메시지

I (Invalid):
  유효하지 않은 데이터
  캐시 미스 → 메모리/다른 캐시에서 가져옴


해당 키워드의 기술적 구성요소와 동작 원리를 서술한다.

### Ⅲ. 특징 및 비교

핵심 기술의 장단점과 유사 기술과의 차이를 분석한다.

### Ⅳ. 적용 사례

실무 환경에서의 적용 사례와 기대효과를 제시한다.

### Ⅴ. 전망

최신 기술 동향과 향후 발전 방향을 서술한다.