컴퓨터 내부에는 다양한 기억 장치들이 존재하고 있고, 대표적으로 다음과 같이 장치들이 있다. 

 

  • CPU 레지스터(Register) : 
    CPU 내 위치한 고속 메모리로 극소량의 데이터를 저장할 수 있다.  
  • 캐시(Cache) :
    SRAM 으로 구성되었으며, CPU Core 외에 존재하여 주기억장치와 CPU 간 속도차를 극복하기 위해 사용된다.
  • 주기억장치(Main Memory) :
    DRAM 으로 구성되었으며, CPU가 직접 접근하여 데이터를 사용할 수 있다. 
  • 보조기억장치(HDD, SSD) :
    CPU가 직접 접근할 수 없고, device controller 등을 통해 접근이 가능하다.

다 같이 기억(저장)한다는 점에서 유사할 텐데 이렇게 다양한 기억장치들이 한 컴퓨터 내에 존재하는 이유는 무엇일까.

하나의 종류로 저장공간을 통일해서 관리하면 더 편할 텐데 여러 기억장치들이 존재하는 이유는 무엇일까.

 


 다양한 기억장치로 컴퓨터가 구성되는 이유는 각 기억장치의 저장/기억 단위당 가격, 성능, 용량이 서로 다르고, 각 요소 간에 tradeoff 가 있기 때문이다. 이 tradeoff 를 잘 이용하면 저렴한 가격으로 성능 좋은 대용량을 가진 기억 장치를 가진 것 처럼 동작할수 있다. 

 

[각 기억장치의 특징]

  1. "저장/기억 단위당 가격""access 성능" 간에 trade off 가 존재 
  2. "저장/기억 용량""가격" 간에 trade off 가 존재
  3. "access 성능""저장/기억 용량" 간에 trade off 가 존재

즉, 저장 용량이 커질 수록 저장/기억 단위당 가격은 낮아지는 반면 access 속도는 떨어지고, 반대의 경우에는 가격은 높아지고, access 속도를 향상되는 것이다. 

access 속도가 빠른 기억장치의 순서
레지스터(Register) > 캐시(Cache) > 주기억장치(Main Memory) > 보조기억장치(HDD, SSD)

더 많은 용량을 지원하는 순서 / 저장/기억 단위당 저렴한 가격 순서 
보조기억장치(HDD, SSD) > 주기억장치(Main Memory) > 캐시(Cache) > 레지스터(Register)


 

 

 

 

 

Reference


[CPU Register 참고 링크]

 

CPU 레지스터 (Register) 의 이해 및 종류

CPU 레지스터 : 중앙처리장치(CPU) 내에 위치한 기억장치로 많은 수의 레지스터를 CPU내에 포함시키는 것은 어렵기 때문에 특수 목적용 레지스터들과 몇몇 일반 목적용 레지스터만 존재한다. 대표적인 레지스터의..

technote.kr