컴파일러
-
링커, 로더, 번역기(Translator), 프로그램 실행과정전공/시스템프로그래밍 2020. 6. 6. 20:19
링커 원래의 프로그램이 너무 크면 여러 개의 모듈로 잘라서 어셈블러에 의해 기계어로 변환된다. 이때 모듈별로 서로 다른 object 모듈이 생성되고, 얘들이 보조기억장치에 저장된다. 목적 모듈들을 실행시킬 때는 개별이 아닌 한 묶음으로 실행되어야 하는데, 이 때 링커를 통해 목적모듈들을 연결한다. 로더 링커를 통해 합쳐진 하나의 프로그램은 로더를 통해 메모리에 적재되고 실행할 준비를 마치게 된다. 어셈블러가 로더의 역할을 대신할 수도 있지만 그러려면 어셈블러가 기억장소의 공간을 사용해야 된다. 어셈블러의 크기가 로더보다 훨씬 더 크기 때문에 비효율적이다. 그래서 로더라는 새로운 프로그램을 쓰는 것이다. 로더는 이전에도 언급했듯이 링킹이 없으면 모듈로더, 있으면 상대로더라고 했다. ..
-