Target-Compiler

Target-Compiler

Unter einem Cross-Compiler versteht man einen Compiler, der auf einem bestimmten System (auch Hostplattform genannt) läuft, aber Kompilate (Objektdateien oder ausführbare Programme) für andere Systeme erzeugt. Diese Ziel-Systeme können andere Betriebssysteme, andere Prozessoren oder eine Kombination der beiden sein. Ein konkretes Beispiel wäre ein Compiler der auf einem Intel-basiertem Windows System läuft und Programme für PowerPC-basierte Linux-Systeme erzeugt. Handelt es sich bei der Zielplattform um ein eingebettetes System, das selbst nicht für Entwicklung und Übersetzung geeignet ist, spricht man auch von einem Target-Compiler.

Cross-Compiler werden aus verschiedenen Gründen benötigt und eingesetzt:

  • Mit ihnen kann ein Betriebssystem oder der Compiler selbst auf eine neue Hardwareplattform portiert werden auf der das Betriebssystem oder Compiler bisher noch nicht verfügbar war.
  • Es lassen sich mit ihnen Programme für eingebettete Systeme erstellen die nicht über die Ressourcen verfügen um selbst einen Compiler laufen zu lassen (z. B. wenn diese Systeme zu wenig Arbeitsspeicher haben oder keine Festplatte besitzen).
  • Sie können auf hoch-performanten Systemen laufen und für langsamere Systeme Kompilate erzeugen. Dadurch kann unter Umständen sehr viel Zeit gespart werden. Gerade bei eingebetteten System werden häufig vergleichsweise langsame Prozessoren verwendet die Stunden benötigen würden um ein gewünschtes Programm zu erzeugen während ein aktueller Server diese Arbeit eventuell in wenigen Minuten erledigen kann.

Populäre freie Compiler, die zum Teil für den Einsatz als Cross-Compiler geeignet sind, sind z. B. der GNU C Compiler und der Free Pascal-Compiler. Für einige 8-Bit-Zielsysteme (Mikrocontroller aus der MCS-51-Serie, Zilog Z80, Dallas 80C390, Motorola HC08, Microchip PIC) eignet sich der ebenfalls freie Small Device C Compiler[1]. Für alte 6502-basierte Computerarchitekturen gibt es den cc65-Compiler.

Viele Hersteller von Prozessoren für eingebettete Systeme liefern ihren Kunden entsprechende Target-Compiler mit, meist für die Programmiersprache C und lauffähig auf einem oder mehreren gängigen Betriebssystemen.

Fußnoten

  1. http://sdcc.sourceforge.net SDCC

Wikimedia Foundation.

Игры ⚽ Нужно решить контрольную?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Compiler — This article is about the computing term. For the anime, see Compiler (anime). A diagram of the operation of a typical multi language, multi target compiler A compiler is a computer program (or set of programs) that transforms source code written …   Wikipedia

  • Compiler optimization — is the process of tuning the output of a compiler to minimize or maximize some attributes of an executable computer program. The most common requirement is to minimize the time taken to execute a program; a less common one is to minimize the… …   Wikipedia

  • Compiler Description Language — Compiler Description Language, or CDL, is a Computer language based on affix grammars. It is very similar to Backus–Naur form(BNF) notation. It was designed for the development of compilers. It is very limited in its capabilities and control… …   Wikipedia

  • Compiler-compiler — A compiler compiler or compiler generator is a tool that creates a parser, interpreter, or compiler from some form of formal description of a language and machine. The earliest and still most common form of compiler compiler is a parser generator …   Wikipedia

  • Target-Action — The term Target Action design paradigm refers to a kind of software architecture, where a computer program is divided up into objects which dynamically establish relationships by telling each other which object they should target and what action… …   Wikipedia

  • target — 1. noun /tɑːɡɪt/ a) A butt or mark to shoot at, as for practice, or to test the accuracy of a firearm, or the force of a projectile. Take careful aim at the target …   Wiktionary

  • Target language — A target language is a language that is the focus or end result of certain processes. *In applied linguistics and second language pedagogy, the term target language refers to any language that learners are trying to learn in addition to their… …   Wikipedia

  • target program — machine language that is crated by a compiler …   English contemporary dictionary

  • Cross Compiler — Unter einem Cross Compiler versteht man einen Compiler, der auf einem bestimmten System (auch Hostplattform genannt) läuft, aber Kompilate (Objektdateien oder ausführbare Programme) für andere Systeme erzeugt. Diese Ziel Systeme können andere… …   Deutsch Wikipedia

  • Cross-Compiler — Unter einem Cross Compiler versteht man einen Compiler, der auf einem bestimmten System (auch Hostplattform genannt) läuft, aber Kompilate (Objektdateien oder ausführbare Programme) für andere Systeme erzeugt. Diese Ziel Systeme können andere… …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”