[ 공 부 ]/[ C ]
[ C ] 메모리의 종류 ( 물리적 관점 )
HiStar__
2020. 9. 22. 14:10
하드 디스크
-
컴퓨터의 전원이 나간 상태에서도, 저장된 데이터가 지워지지 않는 저장 장치.
RAM ( Random Access Memory )
-
휘발성 메모리, 하드 디스크에 저장되어 있는 실행 프로그램을 RAM으로 이동시켜 실행.
-
속도가 느린 하드디스크가 아닌 RAM으로 이동시켜 빈번하게 접근
Cache Memory
-
Cache의 경우 CPU 내부에 존재하기 때문에, 램보다 더 빠른 속도로 ALU의 접근이 가능하다.
-
램에서 자주 사용되는 데이터를 Cache로 이동시켜 ALU의 빈번한 접근을 돕는다.
- 프로그래머가 캐시 메모리를 직접 지정할 수 없다.
Register
-
ALU의 고속 연산을 돕는 메모리이다. 데이터와 명령어를 저장하는 역할
- Flip Clop(각각 16bit의 정보를 저장할 수 있는 것)의 집합.
-
연산 결과와 반환값을 1차적으로 저장하는 메모리 공간.
- 산술 연산을 포함하여 연산 결과는 일단 Register에 저장.
- 함수의 반환값도 일단 레지스터에 저장.
-
대입 연산자를 사용하여 별도의 변수에 연산의 결과나 함수의 반환값을 저장하지 않는다면, 이 값은 레지스터에 머물다가 소멸된다.
- 메인 메모리 -> 레지스터로 데이터를 옮겨와 데이터를 처리한 후, 그 내용을 다시 레지스터에서 메인 메모리로
저장하는 "로드-스토어 설계'
속도가 빠른 순서 : Register(가장 빠름) -> Cache -> RAM -> 하드 디스크(가장 느림)
용량이 큰 순서 : 하드 디스크 ( 큼 ) -> RAM -> Cache -> Register( 작음 )
참 고
-
[ 참고 서적 ] : [ 오렌지 미디어 ] 난 정말 C Programming을 공부한 적이 없다구요!