멀티코어와 동기화
MESI 프로토콜에서 Exclusive(E) 상태의 라인에 해당 코어가 쓸 때의 동작으로 올바른 것은?
- A다른 모든 코어에 무효화 요청을 보낸 뒤 쓴다
- B쓸 수 없으므로 일단 주기억장치에 쓴 뒤 다시 읽는다
- C다른 코어에 알릴 필요 없이 그대로 M 상태로 바뀐다
정답과 해설 보기
정답: C. 다른 코어에 알릴 필요 없이 그대로 M 상태로 바뀐다
E 상태는 이 코어만 라인을 가지고 있고 내용이 주기억장치와 같은 상태입니다. 다른 코어에 복사본이 없다는 것을 알고 있으므로, 쓸 때 무효화 통지를 하지 않고 M 상태로 전이할 수 있습니다. 하나의 코어만 사용하는 데이터를 읽은 뒤 쓰는 흔한 처리에서 통신을 생략할 수 있다는 점이 E 상태를 두는 이점입니다. S 상태에서 쓰는 경우에는 다른 복사본의 무효화가 필요합니다.
- A. E 상태에서는 다른 복사본이 없으므로 통지가 필요 없습니다.
- B. 그대로 쓸 수 있습니다.
- C. 맞습니다. 자신만 가지고 있다는 것을 알고 있기 때문입니다.