NEU: WHITE PAPER
NEU: WHITE PAPER
NEU: WHITE PAPER
NEU: WHITE PAPER
NEU: WHITE PAPER

Neue Anforderungen aus dem "Consumer Umfeld" steigern die Komplexität von eingebetteten Systemen immer weiter, hinzu kommt ein überhitzter Bauteilemarkt.

In diesem White Paper stellen wir Ihnen drei Wege vor, die zu einer erfolgreichen und robusten Embedded-Plattform führen.

>> zum White Paper

27.06.2018 | Fachthema

Yocto vs. Buildroot

Verwendete Tags:
Betriebssystem
Embedded Linux
GELin
Linux
Open Source
Software

Wie baut man sich sein eigenes Linux?

Der Kampf der System-Builder

Als Lösungsanbieter mit eigener Embedded Linux Distribution, die es übrigens schon seit fast 10 Jahren gibt, können wir diese Frage natürlich beantworten!

Die Antwort: Mit Know-How und Software-Tools, die gemeinhin als System-Builder bekannt sind!

 

System-Builder sind Programme, die Entwickler eines Linux-Systems dabei unterstützen, die notwendigen Softwarepakete für das zu bauende System auszuwählen. Daraus entsteht dann eine Linux Distribution, also ein „Betriebssystemkern“ für die Zielplattform - in unserem Fall für ein eingebettetes System (Embedded System). Dieser kann für den Anwender dann mit den unterschiedlichsten Programmen kombiniert werden.

 

Diese System-Builder-Tools gibt es in verschiedensten Varianten und Ausprägungen. Zwei haben sich dabei in den letzten Jahren besonders hervor getan: Buildroot und Yocto.

Beide Projekte sind Open-Source und ermöglichen es, Linux Systeme selbst zu bauen. Außerdem sind sie im Industriebereich weit verbreitet und gut dokumentiert.

Als Ergebnis bei der Verwendung von Buildroot oder Yocto bekommt man sogleich alles, was man für seine eigene kleine Linux Distribution benötigt:

  • ein Root-Dateisystem
  • eine Toolchain
  • den Linux-Kernel selbst
  • sowie einen Bootloader

 

Beide Programme verfügen mit jeweils ungefähr 2000 Softwarepaketen annähernd über die gleiche Qualität und Menge. Beide können auf unterschiedliche Zielplattformen und Architekturen wie ARM oder i386 zusammengestellt werden. Das ist auch der Grund, warum man bei Yocto und Buildroot auch von „Cross-Plattform“ spricht.

 

Doch was unterscheidet jetzt Yocto und Buildroot?

Auf den ersten Blick sehen sie recht ähnlich aus, bei genauerer Betrachtung unterscheiden sich die Beiden jedoch in der Philosophie wie Systeme gebaut werden:

 

  • YOCTO

    Yocto-Project - "It's not an embedded Linux distribution"

    Yocto-Project - "It's not an embedded Linux distribution"

    Yocto legt äußersten Wert auf Flexibilität. Durch sein Multi Layer System können verschiedene Hersteller Ihre Software ins System einbringen, ohne dabei andere Schichten zu beeinflussen. Das ermöglicht zum Beispiel ein gezieltes Updaten von Softwareteilen auf einer Plattform. Außerdem können verschiedene Prozessorplattformen in einer Distribution durch das Schichtenmodell einfach gepflegt werden.

    Diese Vorteile in der Flexibilität bringen natürlich auch eine gewisse Komplexität mit sich, die es zu verstehen und behandeln gilt. Denn dadurch wird auch die Distribution in der Regel auch etwas anspruchsvoller, zum Beispiel im Speicherverbrauch.

    Yocto selbst ist ein Open Source-Projekt, wird aber von einem Advisory Board gelenkt, hinter dem große Firmen wie Intel, Texas Instruments, NXP, Renesas oder auch Comcast als Sponsoren stehen.

 

  • BUILDROOT

    Buildroot - "Making Embedded Liunx Easy"

    Buildroot - "Making Embedded Liunx Easy"

    Buildroot steht für Einfachheit und geringen Ressourcenverbrauch. Einfach gilt vor allem für die benutzerfreundliche Bedienung. So werden zum Beispiel Abhängigkeiten von Software-Paketen automatisch erkannt und dementsprechend richtig ausgewählt.

    Die kleinstmögliche Installation liegt bei schlanken 2,2 MB. Die zentralen Softwareteile von Buildroot sind mit ca. 1000 Zeilen Code ungefähr den Faktor 60 kleiner als das bei Yocto der Fall ist.

    Darüber hinaus wird das Projekt stark von der Community getrieben, wobei es auch größere Sponsoren wie Google gibt, die immer wieder Events wie Entwickler-Treffen unterstützen.

 

 

Die wichtigsten Details beider Systeme zusammengefasst:

   YOCTO BUILDROOT
 Embedded Image von Grund auf bauen  Ja Ja
 Aktiv betreut und weiterentwickelt  Ja  Ja
 Industriell weit verbreitet  Ja  Ja
 Sehr kleines Root Dateisystem  Nein  Ja
 Für eine spezifische Plattform  Teilweise  Ja
 Fokus auf Einfachheit  Nein  Ja
 Flexibles Layer Modell  Ja  Nein
 Partielle Updates möglich  Ja  Teilweise
 Vollautomatische Abhängigkeiten  Nein  Ja
 Optimal für schlanke Embedded Systeme  Nein  Ja
 Lizenz  MIT/GPL GPL

 

 

Womit arbeitet Ginzinger?

Ginzinger verwendet System-Builder vor allem dazu, um einen großen Teil der Softwarekomponenten für GELin zu erzeugen. Als hauseigene Embedded Linux Distribution existiert GELin bei Ginzinger electronic systems mittlerweile schon seit zehn Jahren. Dabei werden die Softwarekomponenten für genau eine Prozessorarchitektur gebaut - zum Beispiel die i.MX6 Prozessorreihe von NXP.

 
„GELin“ bildet eine anwenderfreundliche Abstraktionsschicht, um die Komplexität des System-Builders und der Softwarekomponenten einfach handhabbar zu gestalten.

Ginzinger setzt auf Buildroot als Werkzeug. Die zentrale Pflege, ohne die bei Yocto üblichen Layer, vereinfacht die Kommunikation mit der Community und die Mitarbeit. Die einfachen, klaren und flachen Strukturen sind gut verständlich, ressourcenschonend und relativ rasch beherrschbar.


Buildroot erlaubt es Ginzinger aufgrund seiner schlanken Struktur, sich voll auf die Implementierung hochoptimierter Lösungen für die Endkunden zu konzentrieren. Zusammen mit dem jahrelangen Entwicklungs-Know How bedeutet dies für den Endkunden einen enormen Vorteil.

  

Wenn Sie Fragen zu Embedded Linux oder maßgeschneiderter Elektronik haben kontaktieren sie uns!

 

 

 

Kontakt

Sie haben Fragen

oder möchten Kontakt aufnehmen?