링커
링커는 언어 번역프로그램이 생성한 목적 프로그램들과 라이브러리,
또 다른 실행 프로그램(로드 모듈) 등을 연결하여 실행 가능한 로드 모듈을 만드는 시스템 소프트웨어이다
연결 기능만 수행하는 로더의 한 형태로, 링커에 의해 수행 수행되는 작업을 링킹이라고 한다.
로더
로더는 컴퓨터 내부로 정보를 들여오거나 로드 모듈을 디스크 등의
보조기억장치로부터 주기억장치에 적재하는 시스템 소프트웨어이다.
로더의 기능
할당
- 실행 프로그램을 실행시키기 위해 기억장치 내에 옮겨놓을 공간을 확보하는 기능
연결
- 부 프로그램 호출 시 그 프로그램이 할당된 기억장소의 시작주소를 호출한 부분에 등록하여 연결하는 기능
재배치
- 디스크 등의 보조기억장치에 저장된 프로그램이 사용하는 각 주소들을 할당된 기억장소의 실제 주소로 배치시키는 기능
적재
- 실행 프로그램을 할당된 기억공간에 실제로 옮기는 기능
로더의 종류
Compile And Go 로더
- 별도의 로더 없이 언어 번역 프로그램이 로더의 기능까지 수행하는 방식
- 연결 기능은 수행하지 않고 나머지 기능은 언어 번역 프로그램이 담당한다.
절대 로더
- 목적 프로그램을 기억장소에 적재시키는 기능만 수행하는 로더로, 로더 중 가장 간단한 프로그램으로 구성
- 기억장소 할당이나 연결을 프로그래머가 직접 지정하며 한번 지정한 주기억장소의 위치는 변경이 어렵다.
- 할당/연결(프로그래머), 재배치(언어 번역 프로그램), 적재(로더)
직접 연결 로더
- 일반적인 기능의 로더로, 로더의 기능 네 가지를 모두 수행하는 로더이다.
동적 적제 로더
- 프로그램을 한꺼번에 적재하는 것이 아니라 실행 시 필용한 부분만을 적재하고,
나머지 부분은 보조기억장치에 저장해두는 것으로 호출시 적재라고 한다.
'ComputerScience > OperatingSystem' 카테고리의 다른 글
프로세서 스케줄 (0) | 2017.10.10 |
---|---|
프로세스 (0) | 2017.10.10 |
매크로 (0) | 2017.10.10 |
운영체제의 개요 (0) | 2017.10.10 |
시스템 소프트웨어의 구성 (0) | 2017.10.10 |