물리 주소

Physical address
가상 주소 공간과 물리적 주소 공간 간의 관계 다이어그램

컴퓨팅에서 물리 주소(실제 주소 또는 바이너리 주소)는 데이터 버스메인 메모리의 특정 스토리지 셀 또는 메모리 매핑 I/O 디바이스의 레지스터에 액세스 할 수 있도록 하기 위해 주소 버스 회로상의 바이너리 숫자의 형태로 나타나는 메모리 주소입니다.

중앙처리장치별 사용

가상 메모리를 지원하는 컴퓨터에서 물리 주소라는 용어는 주로 가상 주소와 구별하기 위해 사용됩니다.특히 메모리 주소를 변환하기 위해 메모리 관리 유닛(MMU)을 이용하는 컴퓨터에서 가상 주소와 물리 주소는 각각 [1]MMU에 의해 실행되는 변환 전후의 주소를 참조한다.

정렬되지 않은 주소 지정

기본 컴퓨터 아키텍처에 따라서는 메모리에 대한 비정렬 액세스로 인해 컴퓨터의 성능이 저하될 수 있습니다.예를 들어 인텔 8086과 같은 16비트 메모리 데이터 버스를 갖춘 16비트 컴퓨터는 액세스가 짝수 주소에 맞춰져 있으면 일반적으로 오버헤드가 줄어듭니다.이 경우 16비트 값을 1개 가져오려면 단일 메모리 읽기 작업, 즉 데이터 [2][3]버스를 통한 단일 전송이 필요합니다.

16비트 데이터 값이 홀수 주소에서 시작되는 경우 프로세서는 2개의 메모리 읽기 사이클을 실행하여 값을 로드해야 할 수 있습니다.즉, 1개는 로우 주소용(데이터의 절반을 폐기)이고, 2번째 읽기 사이클은 하이 주소를 로드하는(검색된 데이터의 절반을 폐기) 것입니다.Motorola 68000이나 Motorola 68010 프로세서나 SPARC 프로세서등의 일부의 프로세서에서는, 메모리 액세스가 비정렬이 되면 예외가 발생합니다(통상은 POSIXSIGBUS등의 소프트웨어 예외가 발생합니다).[2]

다른 디바이스에서 사용

Direct Memory Access(DMA; 다이렉트메모리 액세스) 기능을 사용하면 메인보드의 CPU 이외의 다른 디바이스에서 메인메모리의 주소를 지정할 수 있습니다.따라서 이러한 디바이스는 물리 주소에 대한 지식도 필요합니다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ Frank Uyeda (2009). "Lecture 7: Memory Management" (PDF). CSE 120: Principles of Operating Systems. UC San Diego. Retrieved 2013-12-04.
  2. ^ a b Daniel Drake (2007-12-04). "Memory access and alignments". LWN.net. Retrieved 2013-12-04.
  3. ^ Daniel Drake; Johannes Berg. "Documentation/unaligned-memory-access.txt". kernel.org. Retrieved 2013-12-04.