메모리에서 논리 주소를 물리 주소로 변환하는 과정을 "재배치"라고 합니다. 프로그램이 발행한 논리 주소는 데이터나 명령어의 실제 저장 위치가 아니지만 이 주소를 변환하여 실제 저장 위치의 물리적 주소를 얻을 수 있으며 이는 재배치에 해당합니다.
이 튜토리얼의 운영 환경: Windows 7 시스템, Dell G3 컴퓨터.
논리 주소를 물리 메모리 주소로 변환하는 과정을 "재배치"라고 합니다.
프로그램이 실행될 때 중앙 처리 장치에서 생성되는 콘텐츠의 주소를 논리 주소라고 합니다. 이 주소를 가상 주소라고도 합니다. 논리 주소에 대해 이야기할 때는 CPU가 각 프로세스에 할당하는 주소를 말합니다. 프로세스가 메모리에 있는 실제 주소는 프로세스가 생각하는 주소와 다릅니다.
CPU는 프로세스를 실행할 때마다 해당 프로세스에 특정 메모리를 할당합니다. 할당된 메모리 공간은 CPU가 프로세스를 위해 생성하는 논리 주소에 위치합니다.
논리 주소를 생성할 때 CPU는 주소를 생성하고, 프로그램은 CPU가 생성한 주소에 기본 주소를 더해
逻辑地址 = 基地址 + CPU 生成地址
를 얻습니다. 물리 주소는 프로세스와 그 내용이 메인에 배치되는 주소입니다. 메모리 또는 하드 디스크(메모리에 있는 메모리) 장치의 실제 주소입니다. 이 주소는 사용자 프로그램에서 직접 접근하거나 볼 수 없기 때문에 코드가 아닌 위치를 나타내는 포인터의 도움으로 접근할 수 있도록 논리 주소를 이 주소에 매핑해야 합니다
그리고 논리 주소 프로그램에서 내보내는 주소는 데이터나 명령이 저장되는 실제 장소가 아닙니다. 그러나 이 주소는 실제 저장 위치의 물리적 주소를 얻기 위해 변환될 수 있으며 이는 재배치와 동일합니다.
(MMU는 메모리 관리 단위입니다)
간단한 이해:
논리 주소는 상대 주소입니다. 예를 들어 1G 메모리에 1M 공간이 할당되면 1M 공간의 첫 번째 바이트입니다. 주소
는 1G 메모리 100M에 1M 공간을 할당하기 시작합니다. 이때 101M의 첫 번째 바이트는 물리적 주소
를 나타냅니다. 또 다른 예: 집을 임대하려는 사람이 4명이 있습니다. 집 주소는 XX번지 XX번지이고, 이 주소는 실제 주소, 실제 주소입니다. 집주인은 이 네 집에 1 2 3 4라는 번호를 매겼습니다. 이 네 사람은 보통 어느 방에 살고 있는지 이야기한다. 이것이 논리적 주소이지만 실제 주소는 여전히 XX번 XX번이다.
차이:
더 많은 관련 지식은 FAQ 칼럼을 방문해주세요!
위 내용은 메모리에서 논리 주소를 물리 주소로 변환하는 과정을 무엇이라고 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!