주요 차이점
링커와 로더의 차이점은 링커가 소스 프로그램의 실행 가능한 모듈을 생성하는 반면 로더는 실행 가능한 모듈을 주 메모리에로드한다는 것입니다.
링커 대 로더
프로그램 실행에 주요 역할을 하는 유틸리티 프로그램이 있습니다. 프로그램의 모든 소스 코드는 컴파일러,어셈블러,링커,로더를 통과해야하며 이는 모든 프로그램의 실행 순서입니다. 링커는 어셈블러에 의해 생성 된 객체 코드를 섭취하고 실행 모듈을 생성하기 위해 그들을 결합합니다. 반면에 로더는 실행을 위해 실행 가능한 모듈을 주 메모리로 로드합니다. 실행되어야 하는 프로그램은 주 메모리에 존재한다. 로더,운영 체제에서 실행 파일을로드합니다. 로더는 주 메모리의 실행 가능한 모듈에 메모리 공간을 할당합니다. 로더에는 다음과 같은 세 가지 유형이 있습니다: 절대 로더,재배치 로더 및 동적 실행 시간 로딩. 이 세 가지 로더는 절대 로딩 방식,재배치 가능한 로딩 방식 및 동적 런타임 로딩 방식 등 다양한 로딩 방식을 가지고 있습니다
어셈블러와 컴파일러는 동일한 프로세스가 아니지만 소스 프로그램의 객체 코드를 생성하고 링커에 전달하는 동일한 작업을 수행합니다. 링커의 주요 과정은 객체 코드를 가지고 링커의이 작업이 완료된 후 프로그램에 대한 실행 코드를 생성하고 로더에 코드를 할당하는 것입니다. 높은 수준의 언어로 된 라이브러리 및 헤더 파일이 내장되어 있습니다. 내장 라이브러리에 정의 된 일부 라이브러리 함수가 있습니다. 앱솔루트 로더는 프로그램의 실행 파일을 동일한 주 메모리 위치에 로드합니다. 절대 로더에서 프로그래머는 할당을 알고 있어야합니다. 로더를 재배치 컴파일 또는 실제 주 메모리 주소를 조립. 동적 실행 시간 로더,절대 메모리 프로그램은 명령이 실행될 때 생성됩니다. 함수는 링커에 의해 라이브러리 함수에 연결됩니다. 라이브러리 함수가 특정 함수의 발견되지 않은 경우 컴파일러는 경우에 통보되고있다. 큰 프로그램이 있을 때,그때 단위로 있있는 더 작은 프로그램으로 분할된다. 객체 모듈은 이러한 모듈이 컴파일되거나 조립 될 때 생성됩니다. 링커는 함께 전체 프로그램을 결합해야합니다. 링커에는 두 가지 유형이 있습니다 하나는 재배치 된 실행 가능한 모듈을 생성하는 링크 편집기이고 다른 하나는 로드 모듈이 생성 될 때까지 외부 모듈을 링크하는 동적 링커입니다.
비교 차트
링커 | 로더 |
링커 실행 파일을 생성하 모듈의 소스 프로그램 | 로더 로드 모듈을 실행합니다. |
입력 | |
어셈블러 | 로더가 실행 가능한 모듈에 입력이 있습니다. |
기능 | |
링커는 모든 객체 모듈을 결합 | 로더는 실행 파일에 주소를 할당 |
유형 | |
링커의 유형은 링크 편집기 및 동적 편집기 | 로더의 유형은 절대 로더,동적 런타임 로더 및 재배치 로더입니다. |
링커 란 무엇입니까?
어셈블러와 컴파일러는 동일한 프로세스가 아니지만 소스 프로그램의 객체 코드를 생성하고 링커에 전달하는 동일한 작업을 수행합니다. 링커의 주요 프로세스는 객체 코드를 가져 와서 링커의 작업이 완료된 후 프로그램에 대한 실행 코드를 생성하고 코드를 로더에 할당하는 것입니다. 높은 수준의 언어로 된 라이브러리 및 헤더 파일이 내장되어 있습니다. 내장 라이브러리에 정의 된 일부 라이브러리 함수가 있습니다. 이러한 함수는 링커에 의해 라이브러리 함수에 연결됩니다. 라이브러리 함수가 특정 함수의 발견되지 않은 경우 컴파일러는 경우에 통보되고있다. 큰 프로그램이 있을 때,그때 단위로 있있는 더 작은 프로그램으로 분할된다. 객체 모듈은 이러한 모듈이 컴파일되거나 조립 될 때 생성됩니다. 링커는 함께 전체 프로그램을 결합해야합니다. 링커에는 두 가지 유형이 있습니다 하나는 재배치 된 실행 가능한 모듈을 생성하는 링크 편집기이고 다른 하나는 로드 모듈이 생성 될 때까지 외부 모듈을 링크하는 동적 링커입니다.
로더란?
실행해야 하는 프로그램이 주 메모리에 있습니다. 로더,운영 체제에서 실행 파일을로드합니다. 로더는 주 메모리의 실행 가능한 모듈에 메모리 공간을 할당합니다. 로더에는 절대 로더,재배치 가능한 로더 및 동적 런타임 로딩의 세 가지 유형이 있습니다. 이 세 가지 로더는 절대 로딩 방식,재배치 가능한 로딩 방식 및 동적 런타임 로딩 방식 인 다른 로딩 방식을 가지고 있습니다. 앱솔루트 로더는 프로그램의 실행 파일을 동일한 주 메모리 위치에 로드합니다. 절대 로더에서 프로그래머는 할당을 알고 있어야합니다. 로더를 재배치 컴파일 또는 실제 주 메모리 주소를 조립. 동적 실행 시간 로더,절대 메모리 프로그램은 명령이 실행될 때 생성됩니다.
주요 차이점
- 링커는 소스 프로그램의 실행 가능한 모듈을 생성하는 반면 로더는 실행 가능한 모듈을 주 메모리에로드합니다.
- 링커는 어셈블러로 객체 코드를 입력 한 반면 로더는 실행 가능한 모듈을 입력해야합니다
- 링커는 모든 객체 모듈을 결합하는 반면 로더는 실행 파일에 주소를 할당합니다.
- 링커의 유형은 링크 편집기 및 동적 편집기이지만 로더 유형은 절대 로더,동적 런타임 로더 및 재배치 로더입니다.