본문 바로가기

운영체제(OS)

메모리 계층이란?? 메모리 계층이 왜 필요할까??

728x90

컴퓨터상에는 속도와 용량에 따라 메모리의 종류가 다양하며 그에 따른 계층관계가 존재한다.

 

메모리 계층구조 

 

위의 그림에서 보면 레지스터 - 캐시 - 메모리(RAM) - 하드 디스크 순으로 되어있다. 

그림상에서 위로 갈수록 속도가 빠르고 , 아래로 갈수록 용량이 커진다

용량이 클 수록 처리 범위가 넓어지니 느려지는것이 당연하다. 

 

 

 

그런데 메모리 계층이 왜 필요할까?

 

사용자 입장에서 당연히 느린 것보다는 빠른것을, 저장 용량이 작은것보다는 큰것을 원한다.  

그런데 만약 속도를 높이면 레지스터처럼 용량이 너무 부족해지고, 용량을 높이면 하드디스크처럼 속도가 너무 느려지게 된다. 

 

그래서 성능을 위해 속도와 용량의 상호보완을 위해 고안한 방법이 메모리 계층 구조이다.

 

 

어떻게 성능을 상호 보완 했다는 말일까???

cpu는 메모리에 올라와 있는 명령어를 처리할 수 있다고 했다. 

 

 

그런데 만약 메모리의 용량이 하드디스크처럼 아주 크다면?? 

 

-> 명령어를 처리하는데 너무 느려진다.

-> 너무 느리니까 메모리 크기 줄여서 속도 높여!!!

-> 너무 줄인 나머지 캐시나 레지스터 처럼 줄어든다면?

-> 너무 줄여서 메모리에 올릴 수 있는 프로그램이 없어!!

-> 다시 메모리 크기 좀만 늘려봐!!

-> 이렇게 마지노선이 정해진게 메인메모리의 사이즈라고 보면 된다. 

 

 

cpu가 접근 할 수 있는 메모리는 3가지가 있다.

 

1) cpu내부에 있는 레지스터

2) cpu와 메인 메모리 사이에 있는 캐시

3) 메인메모리

 

 

 

정리해보면 

빠른 속도와 큰 용량의 장점을 모두 취하는 방법이 메모리 계층구조이다.

 

 

 

'운영체제(OS)' 카테고리의 다른 글

인터럽트란?? 왜 필요할까?  (0) 2022.02.28
OS가 관리하는 컴퓨터의 하드웨어  (0) 2022.02.28
OS(운영체제)란?  (0) 2022.02.24