암스테르담 컴파일러 키트

Amsterdam Compiler Kit
암스테르담 컴파일러 키트
개발자앤드류 타넨바움, 세리엘 제이콥스
현재: David Given
초기 릴리즈1980년대 초반
안정된 릴리스
6.0pre5 / 2016년 6월 2일, 6년 전(2016-06-02)
저장소
기입처C
운영 체제Minix, Unix와 같은
유형대상 변경 가능한 컴파일러
면허증.BSD 라이선스
웹 사이트tack.sourceforge.그물

암스테르담 컴파일러 키트(ACK)는 David [1]Given이 2005년부터 유지 보수한 Andrew Tanenbaum과 Ceriel Jacobs가 작성한 대상 변경 가능한 컴파일러 스위트 툴 체인입니다.C, Pascal, Modula-2, Occam BASIC 프로그래밍 언어의 프런트가 있습니다.

역사

ACK의 주목도는 1980년대 초 ACK가 여러 소스 언어와 타깃 [2][3]플랫폼을 지원하도록 설계된 최초의 휴대용 컴파일 시스템 중 하나였다는 사실에서 비롯되었습니다.

ACK는 MINIX 사용자 도메인이 NetBSD(MINIX 3.2.0)로 대체되고 Clang이 시스템 컴파일러로 채택될 때까지 MINIX의 네이티브 컴파일러 도구 체인으로 알려져 있었습니다.

원래는 비공개 소스 소프트웨어였지만(특수 케이스로서 MINIX용으로 바이너리를 배포할 수 있었다) 2003년 4월에 BSD 라이선스로 출시되었습니다.

작동 원리

최대의 휴대성은, EM이라고 불리는 바이트 코드를 사용하는 중간 언어를 사용하는 것으로 실현됩니다. 언어 프런트 엔드는 EM 객체 파일을 생성하며, 이러한 파일은 백엔드에 의해 네이티브 머신 코드로 변환되기 전에 여러 범용 옵티마이저를 통해 처리됩니다.

ACK에는 ACK 고유의 a.out-based 형식으로 파일을 조작할 수 있는 범용 링커와 라이브러리가 포함되어 있어 EM 코드와 네이티브 머신 코드를 포함한 파일로 동작합니다.단, EM 바이너리를 먼저 변환하지 않으면 EM 코드를 네이티브 머신 코드에 링크할 수 없습니다.

타깃 프로세서

ACK 백엔드는 소규모 8비트 CPU부터 시작하여 광범위한 CPU에 대한 네이티브 머신 코드를 생성할 수 있습니다.

* 버전 6.0

「 」를 참조해 주세요.

레퍼런스

  1. ^ "The Amsterdam Compiler Kit". 2005. 공식 웹사이트의 타임라인.
  2. ^ Tanenbaum, Andrew S; van Staveren, H.; Keizer, E.G.; Stevenson, J.W. (1983). "A Practical Tool Kit For Making Portable Compilers". Communications of the ACM. 26 (9): 654–660. doi:10.1145/358172.358182. hdl:1871/2605. S2CID 1217657.
  3. ^ A.V. Aho, R. Sethi & J.D. Ullman (1986). Compilers: Principles, Techniques, and Tools ("The Dragon Book"). Addison-Wesley. p. 511. ISBN 0-201-10088-6.

외부 링크