Search

메모리 주소(논리 주소, 물리 주소)

class
운영체제
상태
완료
날짜
목차

메모리 주소

컴퓨터가 메모리 주소를 저장할 때는 직접적인 주소가 아닌 논리 주소를 사용합니다. 이후, 해당 논리 주소를 물리 주소로 변환하여 메모리에 값을 저장합니다.
그렇다면 왜 컴퓨터는 주소를 이런 복잡한 방법으로 저장할까요?

메모리 주소의 장점

1. 프로그램의 독립성과 보안 강화

논리 주소를 사용함으로써, 각 프로세스는 독립된 메모리 공간을 갖는 것처럼 작동할 수 있습니다. 이는 다른 프로세스의 메모리 공간에 대한 접근을 제한하여 프로그램 간의 영향을 방지합니다. 예를 들어, 한 프로세스가 메모리 누수 또는 버그로 인해 잘못된 메모리 접근을 시도하더라도, 다른 프로세스의 논리 주소 공간에 영향을 주지 않아 시스템의 전체 안정성이 유지됩니다.

2. 가상 메모리의 효율적 관리

논리 주소와 물리 주소의 분리는 가상 메모리 시스템의 기반이 됩니다. 가상 메모리 시스템은 필요에 따라 메모리 페이지를 디스크의 스왑 공간과 교환할 수 있게 하여, 실제 물리 메모리보다 더 큰 어플리케이션을 실행할 수 있게 합니다. 이러한 페이지 교체는 논리 주소를 기반으로 이루어지므로, 프로그램 코드는 실제 메모리의 위치에 관계없이 일관된 방식으로 데이터에 접근할 수 있습니다.

3. 메모리 보호와 오류 격리

논리 주소를 사용함으로써 운영 체제는 각 프로세스가 접근할 수 있는 메모리 영역을 정확히 제어할 수 있습니다. 이는 메모리 보호 기능을 강화하여, 한 프로세스의 오류가 시스템 전체나 다른 프로세스에 영향을 미치는 것을 방지합니다. 또한, 프로세스 간 데이터를 격리시켜 보안을 강화하는 데도 기여합니다.

4. 효율적인 프로세스 관리

논리 주소 시스템을 통해 운영 체제는 여러 프로세스를 더 효과적으로 관리할 수 있습니다. 프로세스가 실행될 때마다 각각의 논리 주소 공간이 할당되고, 이 공간 내에서 자유롭게 메모리를 사용할 수 있게 됩니다. 이를 통해 프로세스 관리가 단순화됩니다.

논리 주소

논리 주소는 아래 이미지를 보시면 알 수 있듯이, CPU에서 논리 주소를 할당받아 MMU(메모리 관리 장치, Memory Management Unit)를 통해 물리 주소로 변환한 후, 이를 이용해 메모리에서 값을 찾습니다.

물리 주소

물리 주소는 컴퓨터 메모리에서 데이터가 실제로 저장되는 위치를 가리키는 주소입니다. 이 주소는 컴퓨터의 물리적인 메모리, 즉 RAM내의 실제 위치를 나타냅니다.