본문 바로가기
Computer Science/Computer Architecture

[컴퓨터 구조] 주기억장치(RAM과 주소 공간)

by ggyongi 2024. 12. 28.
반응형

주기억 장치의 역할

정의

  • 주기억 장치(Main Memory)는 CPU와 가장 가까운 메모리 계층으로, 프로그램 실행 중 필요한 데이터를 임시로 저장하는 공간
  • 컴퓨터의 데이터를 읽기 및 쓰기 작업에 빠르게 접근할 수 있도록 설계됨

역할

  1. 프로그램 명령어 저장:
    • 실행 중인 프로그램의 명령어가 저장
    • CPU는 명령어를 명령어 사이클(인출 → 해독 → 실행)에 따라 처리.
  2. 데이터 저장:
    • 프로그램이 처리하는 데이터가 저장
    • 연산 중인 중간 값과 최종 결과도 저장.
  3. CPU와 저장장치 간 데이터 중계:
    • 주기억 장치는 CPU와 하드디스크(보조기억장치) 사이에서 데이터를 빠르게 전달하는 역할을 합니다.

특징

  • 휘발성 메모리(Volatile Memory):
    • 전원이 꺼지면 저장된 데이터가 사라짐.
  • 직접 접근 가능:
    • CPU는 주기억 장치에 직접 접근하여 데이터를 읽고 씁니다.

 

RAM(Random Access Memory)

- 주기억 장치의 주요 구성 요소로, 실행 중인 프로그램과 데이터를 저장해 CPU가 빠르게 접근 가능.

- 데이터를 읽고 쓰는 속도가 빠른 휘발성 메모리.

- 임의 접근 가능: 어느 위치든 동일한 시간에 접근 가능

- RAM 용량이 클수록 한번에 많은 프로그램을 RAM에 적재하여 동시에 실행할 수 있다.

 

 

주소 공간

정의

  • 주소 공간은 메모리의 각 위치를 식별하는 고유한 주소의 범위를 의미합니다.
  • CPU는 명령어와 데이터를 처리하기 위해 주기억 장치의 주소를 사용합니다.

주소 공간의 구성

 

물리 주소 (Physical Address):

  • 실제 메모리의 물리적인 위치를 나타냅니다.
  • 주기억 장치의 크기에 따라 주소 범위가 결정.

논리 주소 (Logical Address):

  • CPU에서 참조하는 가상의 주소
  • CPU와 운영체제는 논리 주소를 물리 주소로 변환(MMU: Memory Management Unit)하여 데이터에 접근

논리 주소가 필요한 이유

 

  • 프로그램의 위치와 상관없이 일관성있는 동작을 보장
    • CPU 입장에서 물리 주소를 알 필요가 없어짐
    • 프로그램이 다른 물리 주소를 갖게 되더라도 CPU에서는 항상 동일한 논리 주소를 참조할 수 있음 
  • 프로그램 간 메모리 보호
    • 프로그램에 독립적인 논리 주소 공간을 할당.
    • 프로그램은 자신의 논리 주소 공간만 참조할 수 있으며, 다른 프로그램의 메모리를 침범하지 못합니다.
     

 

MMU의 주소 변환

MMU는 2개의 레지스터 정보를 사용하여 메모리 접근을 관리함

- 베이스 레지스터(base register): 현재 프로그램의 메모리 시작 위치를 저장

- 한계 레지스터(limit register): 현재 프로그램의 메모리 크기(범위)를 저장

 

1. 주소 변환

 물리 주소 = base register + 논리 주소

 

2. 접근 검증

변환된 물리 주소가 Base RegisterBase Register + Limit Register 범위 내에 있는지 확인.

만약 범위를 벗어나면 침범 탐지(트랩 또는 예외 발생) 후 접근을 차단.

 

 

 

참고로 가상메모리, 페이징 같은 고급 메모리 관리 기법에서는 이런 방법을 사용하지 않고 대신 페이지 테이블이라는 것을 활용(이 내용은 운영체제 과목에 있음)

  1.  
 

비전공자 네카라 신입 취업 노하우

시행착오 끝에 얻어낸 취업 노하우가 모두 담긴 전자책!

kmong.com

댓글