Schulungsübersicht

Gliederung des Kurses

Einführung

  • Geschichte von Unix/Linux, Lizenzen, Standards, Arbeit mit freier Software, Hilfe finden, Spelunking, die Unix Philosophie

Eingebettete Spezifika

  • Linux auf dem Desktop im Vergleich zu Linux in einem eingebetteten System, cross-/native Toolchains, vorgefertigte Toolchains, Build-Systeme, C-Bibliotheken,...

Eval-Brett

  • Wie bootet es?, Sehen Sie es booten

Yocto Einführung

  • Was ist Yocto? Warum das YP benutzen? Was ist das YP?, Poky, BitBake, OE-Core, Metadaten

Der YP-Autobuilder

  • Was ist der YP Autobuilder?, Docker Container (pull, launch container)

Der YP Arbeitsablauf

  • Einführung
  • Workflow, OE-Architektur
  • Konfiguration (Benutzer, Metadaten, Maschine, Verteilungspolitik)
  • Quellen
  • Build (Source fetching, Patching, Configure/Compile/Install, Pseudo, Beispiele für Rezepte, Output Analyse/Packaging, Image Generation, SDK Generation)
  • Anpassen von Images (Intro, local.conf, IMAGE_FEATURES, benutzerdefinierte .bb Dateien, benutzerdefinierte Packagegroups)

BitBake

  • Verlauf
  • Syntax
  • Debugging (Debug-Level, Rezepte/Images/Packagegroups finden, BitBake-Umgebung/Aufgaben/Protokollierung, Build erzwingen/spezifische Aufgabe, cleansstate, Stempel ungültig machen, devshell, Abhängigkeits-Explorer, alle BitBake-Instanzen beenden, grafischer BitBake-Wrapper)

Schichten

  • Einführung, BitBake-Schichten-Werkzeug, Yocto-Schichten-Werkzeug

BSP

  • Einführung, Systementwicklungs-Workflow, BSP-Entwicklerhandbuch (BSP-Tool)

Kernel

  • Einführung, Systementwicklungs-Workflow, Kernel-Entwicklungshandbuch (Defconfig, Defconfig + Konfigurationsfragment, im Baum kmod, außerhalb des Baums kmod, FDT, …)

Toolkit für die Anwendungsentwicklung

  • Einführung, Cross-Development Toolchain, Sysroot, ADT- Eclipse Yocto Plug-in, Der QEMU Emulator, User Space Tools
  • Installation von ADT & Toolchains
    • Einen Cross-Toolchain-Tarball verwenden (Einführung, Erstellen/Installieren des Cross-Toolchain-Tarballs, Cross-Toolchain + Makefile/Autotools/Autotools lib + App, Rezepte)
    • Den ADT-Installer verwenden (Intro, Web Server, Image + ADT-Installer erstellen, ADT-Installer konfigurieren + ausführen, ADT-Installer zum Webserver hinzufügen, ADT-Installer auf dem Host)

Eclipse

  • Einführung, Workflow der Anwendungsentwicklung
  • Arbeiten mit Eclipse (rootfs Features, Kernel + fdt, rootfs, JDK installieren, Eclipse installieren, Eclipse konfigurieren, Yocto Plugin installieren, Yocto Plugin konfigurieren, Autotooled Projekt erstellen, Cross-Toolchains konfigurieren, Projekt bauen)

Fehlersuche

  • Einführung, gdb, gdb remote debugging, (gdb remote) Debugging mit Eclipse, (remote) Ausführen aus Eclipse

Profiling/Verfolgung

  • Einführung, perf, gprof, gcov, strace, ftrace, systemtap, oprofile, LTTng + Eclipse (Datenvisualisierung)

Pakete Management

  • Arbeiten mit Paketen, IPK, Erstellen eines Paket-Feeds, Installieren eines Pakets mit opkg auf dem Ziel

Lizensierung

  • Einführung, Benutzerdefinierte Lizenz hinzufügen, Einhaltung der Open Source Lizenz

Devtool

  • Einführung, devtool, Praxisbeispiel meta-cfengine

Wenn nicht anders vermerkt, stehen der Inhalt und diese Kursübersicht unter der LizenzAttribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0).

Voraussetzungen

Voraussetzungen

  • Grundlegende Vertrautheit mit der Verwendung eines GNU/Linux-Systems (z. B. Ubuntu) als Endbenutzer im Benutzerraum
  • Grundlegende Vertrautheit mit einer Kommandozeilen-Shell
  • Grundlegende Kenntnisse der Benutzer-/Kernelspace-Programmierung mit GNU/Linux
  • Fortgeschrittene C-Programmierkenntnisse
  • Sie sollten an Embedded GNU/Linux Systems Architecture (5 Tage) teilgenommen haben (dringend empfohlen!), es sei denn, Sie sind bereits mit dem dort vorgestellten Material vertraut.
  • Sie müssen Erfahrung mit Embedded GNU/Linux (Kernel, Userspace, Root-Dateisystem, Werkzeuge) haben, um an der Yocto-Schulung teilnehmen zu können.
  • Es könnte hilfreich sein, wenn Sie Embedded GNU/Linux Device Drivers and Kernel Internals (5 Tage) besucht haben, aber das ist nicht wirklich eine Voraussetzung. Es reicht aus, wenn Sie wissen, wie man den GNU/Linux Kernel, Kernel-Treiber in/out of tree und die fdt von der Kernel-Seite aus erstellt, um dem Yocto-Training zu folgen.
 28 Stunden

Teilnehmerzahl


Price per participant (excl. VAT)

Erfahrungsberichte (1)

Kommende Kurse

Verwandte Kategorien