[컴퓨터구조] 메모리

Local Gaji·2023년 6월 17일
0

컴퓨터구조

목록 보기
8/9

🎈 메모리 (RAM)

실행할 프로그램의 명령어와 데이터를 저장하는 기억장치
전원을 끄면 메모리에 있는 데이터는 모두 날아간다 (휘발성 저장 장치)

CPU는 보조기억장치 (비휘발성) 에 접근하지 못하므로, 실행하고 싶은 프로그램을 보조기억장치에서 메모리로 복사하여 실행한다

메모리에 프로그램의 어떤 데이터가 어떻게 저장되는지는 이 단원 에 나온다


🎈 메모리 주소

메모리에 프로그램이 실시간으로 적재/삭제 되며 변경되는데, CPU는 어느 메모리 주소에 뭐가 저장되어 있는지 알 수가 없다. 그래서 프로그램은 0부터 시작하는 각자의 주소 (논리 주소)를 가지고 있다. CPU는 프로그램의 논리 주소를 보고 물리 주소를 찾아간다.


🔰 물리 주소

정보가 실제로 저장된 하드웨어상의 주소


🔰 논리 주소

실행중인 프로그램 각각에게 부여된 0부터 시작하는 주소

근데 논리 주소로 물리 주소를 어떻게 찾아야 할까??


🔰 메모리 관리 장치 MMU

CPU와 주소 버스 사이에서 논리주소와 물리주소를 변환해주는 하드웨어

각 프로그램의 첫번째 물리주소가 베이스 레지스터 에 저장된다. 이 주소는 논리 주소로는 0번지가 된다.
필요한 명령어의 논리 주소에다가 베이스 레지스터 값을 더하면 물리주소를 알 수 있다.


🎈 메모리 보호 기법

CPU는 실행중인 프로그램의 주소 범위에만 접근해야 한다.
그러기 위해서는 먼저 해당 프로그램의 크기, 즉 논리주소가 0으로 시작해서 몇 번까지 있는지 알아야 한다.

프로그램의 시작 주소를 베이스 레지스터가 알고 있는 것처럼, 한계 레지스터는 프로그램의 최대 크기를 저장한다.

0개의 댓글