메모리 (memory, 기억장치)
- 프로그램 명령이나 데이터를 저장
- 프로그램은 메모리에서 활동한다. 즉, 메모리가 없으면 프로그램이 동작할 수 없다.
메인 메모리 (main memory, 주기억장치)
- 프로그램의 동작에 주로 사용
- 전원이 들어온 상태에서만 현재 동작하는 프로그램들과 데이터를 저장
- 메인메모리가 클 수록 동시에 많은 프로그램을 실행할 수 있다
보조기억장치 (auxiliary memory, 2차 기억장치)
- 자료의 저장에 주로 사용
- 전원이 종료된 후에도 프로그램과 데이터를 안전하게 저장
가상 메모리 (virtual memory, 가상기억장치)
- 주로 하드디스크의 일부를 확장된 램으로 가정해 부족한 메인메모리의 일부로 사용
- 논리적 공간이라 물리적으로 연속적일 필요는 없음
- 부족한 메인메모리 크기를 외형적으로 늘려 실제보다 많은 양의 메모리를 갖는 것처럼 동작
- 운영체제가 자동으로 관리하나, 사용자가 임의로 최대 크기를 설정할 수도 있음
메인메모리와 가상메모리
- 메인메모리 크기를 충분히 늘리면 HDD 액세스 횟수나 가상메모리의 크기가 줄어 시스템 성능은 크게 향상한다.
- 성능이 높은 CPU일수록 메모리를 늘리면 효과가 크다.
메모리 계층
- 여러 종류의 기억장치를 계층적인 구조로 사용
- 적은 비용으로 기억장치 용량을 늘리고 전체 기억장치의 평균 엑세스 속도를 높이는 방법
- CPU에 가까울 수록 상위 계층 (엑세스 타임이 빠르고 용량이 작다)
- 상위 계층에 데이터가 있을 확률이 높을 수록 전체 기억장치의 평균 액세스 타임은 빨라짐 -> 캐시를 사용하는 이유!
엑세스 타임
- CPU가 데이터의 저장 위치에 접근을 완료하거나 응답을 받기 시작하는 데 걸린 시간
- 기억장치나 입출력장치의 동작속도를 나타내는 척도