라이트스루, 라이트백

(라이트백에서 넘어옴)
cache writing policies
캐시 쓰기 정책
write-through
라이트스루, 바로 쓰기
write-back, write-behind
라이트백, 나중에 쓰기, 라이트비하인드

1 캐시 쓰기 정책[편집]

  • 캐시에서 데이터 갱신 방식
정책 설명
write-through 바로 쓰기. 캐시와 하위저장소에 동시에 쓰는 방식
write-back 나중에 쓰기. 캐시에만 썼다가, 어쩔 수 없이 캐시영역에서 밀러날 때 하위저장소에 저장하는 방식

2 라이트스루[편집]

  • 캐시와 하위저장소에 동시에 쓰는 방식
  • 시간은 걸리지만 데이터를 확실히 변경해두는 방식
  • 유실되면 곤란한 데이터인 경우에 주로 사용
  • 쓰기 동작시 항상 정식 데이터를 기록하므로 '라이트백'에 비해 느림

500px-Write-through_with_no-write-allocation.svg.png

3 라이트백[편집]

  • 더티 비트 사용하여 지연된 쓰기를 하는 방식
  • 캐시에만 썼다가, 어쩔 수 없이 캐시영역에서 밀러날 때 하위저장소에 저장하는 방식
  • 데이터를 갱신할 때, 정식 데이터는 갱신하지 않고 캐시 데이터만 갱신했다가 나중에 정식 데이터를 갱신하는 방식
  • 캐시에 쓰면서 dirty(불일치) 기록해둠 + 다른 데이터에게 자리를 내어줄 때 dirty하면 하위저장소에 기록함
  • 캐시 데이터만 갱신하므로 매우 빠름
  • 캐시 데이터가 유실되면 그 변경분이 정식 데이터에 반영될 수 없음[1]
  • 사용예시: CPU 캐시

700px-Write-back_with_write-allocation.svg.png

4 같이 보기[편집]

5 참고[편집]

  • 비휘발성 메모리를 사용하는 방법도 있으나 매우 비쌈
  • 문서 댓글 ({{ doc_comments.length }})
    {{ comment.name }} {{ comment.created | snstime }}