1. 메모리 계층(memory hierachy)이란?
메모리 계층(memory hierarchy)은 컴퓨터 시스템에서 데이터를 저장하고 접근하는 다양한 수준의 메모리 구조를 의미합니다. 이 계층 구조는 레지스터, 캐시 메모리, 주기억장치(RAM), 그리고 보조기억장치로 구분됩니다. 각 계층은 속도, 용량, 비용에서 서로 다른 특징을 가지며, 이러한 차이를 효율적으로 활용하여 컴퓨터의 성능을 최적화합니다.
2. 메모리 계층의 구성
- 레지스터: CPU 내부에 위치한 매우 빠른 메모리로, CPU가 현재 처리 중인 명령어와 데이터를 임시로 저장합니다. 레지스터는 매우 빠른 접근 속도를 가지지만, 그 용량은 매우 제한적입니다.
- 캐시 메모리: CPU와 주기억장치 사이에 위치하여 자주 사용되는 데이터와 명령어를 저장합니다. 캐시 메모리는 레벨별로 나누어져 있으며(L1, L2, L3 등), 레벨이 낮을수록 CPU에 가깝고 속도가 빠릅니다. 캐시의 목적은 주기억장치의 데이터 접근 속도와 CPU의 처리 속도 사이의 격차를 줄이는 것입니다.
- 주기억장치(RAM): 현재 실행 중인 프로그램과 그 데이터를 저장하는 장소로, 시스템의 전원이 꺼지면 저장된 모든 정보가 사라지는 휘발성 메모리입니다. RAM은 빠른 데이터 접근 속도를 제공하지만, 캐시나 레지스터에 비해 상대적으로 느리고, 보조기억장치에 비해 용량이 작습니다.
- 보조기억장치: HDD(하드 디스크 드라이브)와 SSD(솔리드 스테이트 드라이브) 등이 이에 해당하며, 컴퓨터의 전원이 꺼져도 데이터가 유지되는 비휘발성 저장 공간입니다. 보조기억장치는 대용량 데이터 저장이 가능하지만, 접근 속도는 상대적으로 느립니다.
3. 계층이 존재하는 이유
- 더 빠른 접근과 처리 속도 증가 : 보통 많이 쓰는 것을 다시 많이 씀-> 특정 데이터에 많이 접근하게 되는데 좀 더 작은 캐시메모리에 해당 데이터가 있으면 더 빠르게 해당 데이터에 접근이 가능
- 비용의 효율성: 캐시메모리는 비싸고 램 등 아래로 갈수록 비용은 저렴해짐. 계층이 있고 캐싱때문에 비용을 좀 더 효율적으로 쓸 수 있음
- 자원의 효율적 사용 : 메모리 계층 구조는 자주 접근하는 데이터는 빠른 메모리에, 덜 접근하는 데이터는느린 메모리에 저자아여 자원을 효율적으로 사용할 수 있음-> 거의 접근하지 않은 데이터는 비싸고 빠른 메모리를 사용하지 않게 되어 자원을 낭비하지 않게 됨
ex. 로딩 과정
컴퓨터에서 프로그램이나 데이터를 로딩할 때, 보조기억장치로부터 데이터를 읽어서 RAM으로 이동시키는 과정이 포함됩니다. 이 과정에서 필요한 데이터가 RAM에 완전히 로드되지 않았다면, 시스템은 이를 완료하기 위해 작업을 계속합니다. 이 과정에서 캐시와 같은 상위 메모리 계층의 활용은 데이터 접근 속도를 높이고, 전체적인 시스템의 반응 속도와 처리 능력을 향상시키는 역할을 합니다.
메모리 계층 구조는 컴퓨터 아키텍처에서 핵심적인 개념으로, 시스템의 성능과 비용, 그리고 효율성을 균형 있게 관리하는 데 중요한 역할을 합니다.
'운영체제' 카테고리의 다른 글
가상메모리와 스와핑, 페이지폴트 그리고 스레싱 (0) | 2024.02.08 |
---|---|
시스템콜과 modebit (1) | 2024.02.08 |
인터럽트(Interrupt) (1) | 2024.02.08 |
운영체제와 컴퓨터시스템의 구조 (1) | 2024.02.07 |