언어 번역 프로그램과 링커, 로더

2020. 10. 6. 14:15CS 필기 노트/OS

반응형

 

언어 번역 프로그램 종류

 

어셈블러 : 어셈블리 언어로 작성된 프로그램을 입력받아 기계어로 변환한다.

컴파일러 : 고급 언어로 작성된 프로그램을 컴퓨터에서 즉시 실행할 수 있는 형태의 목적 프로그램으로 변환한다.

인터프리터 : 프로그램을 문장단위로 번역하는 프로그램으로, 온라인에서 쓰는 언어가 대표적이다

 

링커

언어 번역 프로그램이 생성한 라이브러리, 목적 프로그램 등을 연결하는 시스템 소프트웨어다.

연결 기능만 수행하는 로더의 한 형태로, 링커에 의해 수행되는 작업을 링킹이라고 부른다.

 

로더

 

로더의 기능

1. 할당 - 프로그램을 실행시키기 위해 공간을 확보

2. 연결  - 프로그램이 할당된 기억 장소의 시작 주소를 호출한 부분에 등록하여 연결

3. 재배치 - 보조 기억장치에 저장된 프로그램이 사용하는 주소를 실제 주소로 배치

4. 적재 - 프로그램을 기억공간에 실제로 옮김

 

로더의 종류

컴파일 로더 : 별도의 로더 없이 번역 프로그램이 알아서 다함

절대 로더 : 적재 기능만 수행하며, 할당 및 연결은 프로그래머가 해야한다. 

재배치 로더 : 재배치가 가능한 프로그램을 배치하기 위해 주소를 표시한다.

직접 연결 로더 : 일반적인 로더로 기본 4가지를 모두 수행한다.

동적 적재 로더 : 모든 세그먼트를 적재하지 않고, 필요한 부분만 적재한다.

 

 

 

 

 

 

 

 

 

 

 

 

반응형