링커, 로더, 실행 파일
링커의 주된 역할로 올바른 것은?
- A여러 오브젝트 파일이나 라이브러리를 결합하고, 이름을 주소에 연결해 실행 파일을 만든다
- B소스 코드의 문법 오류를 찾아서 알려 준다
- C실행 중인 프로그램의 메모리를 다 쓰고 나면 자동으로 해제한다
정답과 해설 보기
정답: A. 여러 오브젝트 파일이나 라이브러리를 결합하고, 이름을 주소에 연결해 실행 파일을 만든다
링커는 각 오브젝트 파일에서 참조하는 이름(심볼)을 어딘가에서 정의된 실체와 대응시키고(심볼 해석), 각 파일의 코드와 데이터를 나열해 최종 주소를 정한 다음, 명령 안의 임시 주소를 올바른 값으로 고쳐 씁니다(재배치). 필요하면 라이브러리에서 함수를 꺼내 추가합니다. 이렇게 해서 OS가 읽어 들여 실행할 수 있는 실행 파일이 완성됩니다.
- A. 올바릅니다. 심볼 해석과 재배치를 수행합니다.
- B. 문법 오류는 컴파일러가 찾습니다.
- C. 그것은 가비지 컬렉터의 일입니다.