핵심 키워드: 저장 장치 계층 구조, 캐시 메모리, 캐시 적중률, 참조 지역성의 원리

이번 절에서는 저장 장치 계층 구조를 통해 저장 장치의 큰 그림을 그리고, CPU와 메모리 사이에 위치한 캐시 메모리를 학습한다.

CPU는 프로그램을 실행하는 과정에서 메모리에 저장된 데이터를 빈번하게 사용한다. 하지만 CPU가 메모리에 접근하는 시간은 CPU의 연산 속도보다 느리다.

CPU가 연산을 빨리 한다 해도 메모리에 접근하는 시간이 느리면 CPU의 빠른 연산 속도는 아무런 쓸모가 없겠지?

이를 극복하기 위한 저장 장치가 바로 **캐시 메모리**다.

캐시 메모리의 탄생 배경과 특징을 이해하려면 우선 저장 장치 계층 구조라는 개념을 이해해야 한다.

스크린샷 2022-11-20 오후 2.38.34.png

저장 장치 계층 구조

모든 사용자들은 빠르고 동시에 요량이 큰 저장 장치를 원한다. 하지만 안타깝게도 빠른 저장 장치와 용량이 큰 저장 장치는 양립하기 어렵다.

저장 장치가 따르는 명제

  1. CPU와 가까운 저장 장치는 빠르고, 멀리 있는 저장 장치는 느리다
  2. 속도가 빠른 저장 장치는 저장 용량이 작고, 가격이 비싸다.

예) 가령 CPU 내의 레지스터, 메모리(RAM), USB 메모리를 비교 해보자.

CPU와 가장 가까운 레지스터는 일반적으로 RAM보다 용량은 작지만, 접근 시간이 압도적으로 빠르고 가격이 비싸다. 그리고 USB 메모리보다 CPU에 더 가까운 RAM은 접근 시간이 훨씬 더 빠르지만, 같은 용량이라 할지라도 가격은 더 비싸다.

즉, 낮은 가격대의 대용량 저장 장치를 원한다면 느린 속도는 감수해야 하고, 빠른 메모리를 원한다면 작은 용량과 비싼 가격은 감수해야 한다.

이렇게 저장 장치들의 장단점이 명확한데, 어느 하나의 저장 장치만을 사용할 없겠죠? 그래서 일반적으로 컴퓨터는 다양한 저장 장치를 모두 사용하게 된다.