북 스터디/혼자 공부하는 컴퓨터구조 + 운영체제

메모리의 주소 공간

EnoughTT 2023. 10. 26. 15:16

메모리의 주소 공간

 

물리 주소와 논리 주소

  • 물리 주소: 정보가 실제로 저장된 하드웨어상의 주소
  • 논리 주소: 실행 중인 프로그램 각각에게 부여된 0번지부터 시작되는 주소

현재 메모리에 메모장, 게임, 인터넷 브라우저 프로그램이 적재되어 있다고 가정해보면

 

메모리가 사용하는 주소는 하드웨어상의 실제 주소인 물리 주소이고, CPU와 실행 중인 프로그램이 사용하는 주소는 각각의 프로그램에 부여된 논리 주소임

 

CPU가 메모리와 상호작용하려면 논리 주소와 물리 주소간의 변환이 이루어져야 함

변환: 메모리 관리 장치 (MMU)에서 수행

 

MMU는 CPU가 발생시킨 논리 주소에 베이스 레지스터 값을 더하여 논리 주소를 물리 주소로 변환함

예를 들면 현재 베이스 레지스터에 15000이 저장되어 있고 CPU가 발생시킨 논리 주소가 100번지라면 이 논리 주소는 아래 그림처럼 물리 주소 15100번지 (100 + 15000)로 변환됨. 물리 주소 15000번지부터 적재된 프로그램 A의 논리 주소 100번지에 접근 가능함

 

 

베이스 레지스터: 프로그램으 가장 작은 물리 주소, 프로그램의 첫 물리 주소를 저장

논리 주소: 프로그램의 시작점으로부터 떨어진 거리

 

 

 

메모리 보호 기법

한계 레지스터: 논리 주소 범위를 벗어나는 명령어 실행을 방지하고 실행 중인 프로그램이 다른 프로그램에 영향을 받지 않도록 보호를 담당함

 

CPU는 메모리에 접근하기 전에 접근하고자 하는 논리 주소가 한계 레지스터보다 작은지를 항상 검사함

CPU가 한계 레지스터보다 높은 논리 주소에 접근하려고 하면 인터럽트 (트랩)을 발생시켜 실행을 중단함

 

 

'북 스터디 > 혼자 공부하는 컴퓨터구조 + 운영체제' 카테고리의 다른 글

다양한 보조기억장치  (0) 2023.10.29
캐시 메모리  (0) 2023.10.27
RAM의 특징과 종류  (0) 2023.10.24
CISC와 RISC  (0) 2023.10.23
명령어 병렬 처리 기법  (0) 2023.10.22