Seminarinformationen

Seminar - Ziel

In diesem 5-tägigem Seminar "Embedded Linux Application Development" lernen Sie die Entwicklung von Embedded-Linux-Anwendungen, die von Linux gegenüber traditionellen Betriebssystemen sowie die allgemeine Architektur von Embedded-Linux-Systemen kennen. Sie erhalten Einblicke die Entwicklungsumgebung, Cross-ilierung-Toolchains, Bootloader und Linux-Kernelkonfiguration. Der Kurs deckt auch die Erstellung von Root-Dateisystemen, die Nutzung vorhandener Open-Source-Software, Cross-Compilierung von Anwendungen und Bibliotheken Debugging ab. Sie erfahren mehr über-Dateysteme und Embedded Building Tools. Die Anwendungsentwicklung und Echtzeitaspekte unter Linux werden ebenfalls behandelt. Nach Abschluss des Kurses haben Sie das Wissen, Embedded-Linux-Anwendungen effizient zu entwickeln und zu debuggen.

Die dazu benötigte Hardware ist im Preis inbegriffen.

Teilnehmer - Zielgruppe

Embedded Entwickler

Kurs - Voraussetzungen

Erfahrung mit GNU/Linux- oder UNIX-Kommandos

Seminardauer

  • 5 Tage
  • 09:00 Uhr bis 17:00 Uhr

Schulungsunterlagen

  • nach Absprache

Seminar-Inhalt / Agenda

Einführung in Embedded Linux

  • Vorteile von Linux gegenüber den traditionellen Embedded-Betriebssystemen
  • Allgemeine Architektur eines Embedded Linux Systems

Embedded Linux Entwicklungsumgebung

  • Betriebssystem und Tools für den Einsatz auf dem Entwicklungsarbeitsplatz

Cross-Compilierung Toolchain und C-Bibliothek

  • Was sich in einer Cross-Compilation-Toolchain befindet
  • Auswahl der Ziel-C-Bibliothek
  • Einsatzbereite Cross-Compilierungs-Toolchains für die Kompilierung von Toolchains
  • Erstellen einer Cross-Compilierungs-Toolchain mit automatisierten Tools

Bootloader

  • Verfügbare Bootloader
  • Merkmale von Bootloadern
  • Bootloader "Das U-Boot"

Linux Kernel

  • Allgemeine Architektur des Linux-Kernels
  • Verfügbare Funktionen mit Schwerpunkt Embedded
  • Quellen abrufen
  • Versionierung des Linux-Kernels

Konfiguration und Kompilierung eines Linux-Kernels

  • Kernel-Konfiguration
  • Verwendung von vorgefertigten Standardkonfigurationen
  • Kernel-Kompilierung
  • Verwendung von Kernelmodulen

Root-Dateisystem unter Linux

  • Dateisysteme unter Linux
  • Rolle und Organisation des Root-Dateisystems
  • Speicherort des Root-Dateisystems (storage, memory, Netzwerk)
  • Gerätedateien, virtuelle Dateisysteme
  • Inhalt eines typischen Root-Dateisystems

Busybox

  • Detaillierter Überblick und Funktionen des Schweizer Taschenmessers für Embedded Computing
  • Konfiguration, Kompilierung und Bereitstellung

Block-Dateisysteme

  • Dateisysteme für blockorientierte Geräte
  • Journalisierte Dateisysteme
  • Nur-Lese-Dateisysteme
  • RAM-Dateisysteme
  • Erstellung verschiedener Dateisysteme
  • Verwendung in einem Embedded System

Nutzung vorhandener Open-Source-Software für Ihr System

  • Gründe für die Nutzung bestehender Software
  • Freie und quelloffene Software
  • Auswahl von Komponenten
  • Verschiedene Lizenzen und deren Anforderungen
  • Übersicht über bekannte typische Komponenten in Embedded Linux Systemen
  • Integration der Komponenten in Ihr System

Cross-Compilieren von Anwendungen und Bibliotheken

  • Konfigurieren, Cross-Compilieren und Installieren von Anwendungen und Bibliotheken
  • Details über Build-Systeme in den meisten Open-Source-Komponenten
  • Übersicht über Probleme bei der Verwendung dieser Komponenten

Embedded System Building Tools (Buildroot)

  • Überprüfung bestehender System Building Tools
  • Buildroot als Beispiel

Anwendungsentwicklung und Debugging

  • Programmiersprachen und verfügbare Bibliotheken
  • Übersicht über die Funktionen der C-Bibliothek für die Anwendungsentwicklung
  • Erstellung von Systemen für Ihre Anwendung
  • Quellbrowser und integrierte Entwicklungsumgebungen (IDE)
  • Debuggen von Remote-Anwendungen mit gdb und gdbserver

Linux und Echtzeit

  • Verständnis der Ursachen für Latenzzeiten unter Linux
  • Soft-Echtzeitlösungen unter Linux: integrierte Verbesserungen der Mainline Linux Version
  • Verwendung der neuesten RT Preempt-Patches für Mainline-Linux
  • Xenomai, eine harte Echtzeitlösung für Linux: Funktionen, Konzepte, Implementierung und Beispiele

Weitere Schulungen zu Thema Embedded Linux

Embedded Linux für IT-Entscheider

- u.a. in Nürnberg, Berlin, Stuttgart, München, Köln

In dieser 1-tägigen Schulung "Embedded Linux für IT-Entscheider" erhalten Sie einen umfassenden Überblick über Linux und seine Bedeutung im Embedded-Bereich. Sie lernen die wichtigsten Begrifflichkeiten im Umgang mit Linux kennen und verstehen, warum Linux eine beliebte ...

Embedded Linux Kernel and Driver Development

- u.a. in Nürnberg, Berlin, Stuttgart, München, Köln

In diesem fünftägigen Seminar "Embedded Linux Kernel and Driver Development" lernen Sie den Einsatz von Kconfig sowie Erstellen, Laden und Test vonulen. Debugging wird anhand von printk und seinen Derivaten,mesg sowie der Verwendung GDB mit Qemu behandelt. Sie ...

LFD430 Entwicklung von Gerätetreibern für Linux-Systeme

- u.a. in Wien, Zürich, Koblenz, Mannheim, Offenbach

In dieser 4-tägigen Schulung "LFD430 Entwicklung von Gerätetreibern für Linux-Systeme" lernen Sie, wie Sie Gerätetreiber für Linuxsysteme entwickeln. Erfahren Sie mehr über verschiedene Arten von Linux Gerätetreibern, die entsprechenden APIs und Methoden, mit ...

LFD440 Linux Kernel Debugging and Security

- u.a. in München, Paderborn, Zürich, Essen, Heidelberg

In dieser 4-tägigen Schulung "LFD440 Linux Kernel Debugging and Security" gewinnen Sie ein tiefes Verständnis für die grundlegenden Methoden und die interne Infrastruktur des Linux-Kernels. Der Kurs vermittelt sowohl theoretische Grundlagen als auch praktische ...