주소 바인딩이란?

컴퓨터 평면 화면 및 키보드 - 측면 보기

주소 바인딩은 컴퓨터 메모리를 소프트웨어에 할당합니다.

이미지 크레디트: Ryan McVay/포토디스크/게티 이미지

컴퓨터 메모리는 논리적 주소와 물리적 주소를 모두 사용합니다. 주소 바인딩은 물리적 주소를 가상 주소라고도 하는 논리적 주소에 연결하여 물리적 메모리 위치를 논리적 포인터에 할당합니다. 주소 바인딩은 컴퓨터 메모리 관리의 일부이며 메모리에 액세스해야 하는 응용 프로그램을 대신하여 운영 체제에서 수행됩니다.

메모리 관리

주소 바인딩은 프로그램 코드가 메모리에 저장되는 방식과 관련이 있습니다. 프로그램은 다음의 구조적 요구 사항에 따라 설정된 일련의 규칙에 따라 사람이 읽을 수 있는 텍스트로 작성됩니다. 프로그래밍 언어 및 컴퓨터의 중앙 처리 장치에 의해 작업으로 해석되는 키워드 사용 단위. 프로그램의 실행 가능한 버전이 생성되는 시점은 주소 바인딩이 발생하는 시점을 나타냅니다. "C" 및 COBOL과 같은 일부 프로그램 언어는 컴파일해야 하는 반면, 주로 스크립트와 같은 다른 언어는 기계 코드로 컴파일된 바이너리 버전이 아닌 원래 프로그램 텍스트에서 실행됩니다.

오늘의 비디오

컴파일 시간

주소 바인딩의 첫 번째 유형은 컴파일 시간 주소 바인딩입니다. 이것은 프로그램이 실행 가능한 바이너리 파일로 컴파일될 때 컴퓨터의 기계어 코드에 메모리 공간을 할당합니다. 주소 바인딩은 객체 코드가 저장된 메모리의 세그먼트 시작점에 논리 주소를 할당합니다. 메모리 할당은 장기적이며 프로그램을 다시 컴파일해야만 변경할 수 있습니다.

로드 시간

프로그램이 할당될 때 메모리 할당이 지정되면 어떤 프로그램도 컴파일된 상태에서 한 컴퓨터에서 다른 컴퓨터로 전송할 수 없습니다. 이는 실행 코드에 새 컴퓨터의 다른 프로그램에서 이미 사용 중인 메모리 할당이 포함되기 때문입니다. 이 경우 프로그램의 논리 주소는 프로그램이 호출되어 메모리에 로드될 때까지 물리 주소에 바인딩되지 않습니다.

실행 시간

실행 시간 주소 바인딩은 일반적으로 프로그램의 변수에만 적용되며 컴파일되지 않는 스크립트에 대한 가장 일반적인 바인딩 형식입니다. 이 시나리오에서 프로그램은 스크립트의 명령을 처리하는 동안 변수가 처음 발견될 때 프로그램의 변수에 대한 메모리 공간을 요청합니다. 메모리는 프로그램 시퀀스가 ​​끝날 때까지 또는 스크립트 내의 특정 명령이 변수에 바인딩된 메모리 주소를 해제하지 않는 한 해당 변수에 공간을 할당합니다.