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, Anleitung für BSP-Entwickler (bsp-tool)

Kernel

  • Einführung, Systementwicklungs-Workflow, Kernel-Entwicklungshandbuch (defconfig, defconfig + Konfigurationsfragment, in tree kmod, out of tree 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 Lizenz Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0).

Voraussetzungen

Voraussetzungen

  • Grundkenntnisse im Umgang mit einem GNU/Linux-System (z.B. Ubuntu) als Endbenutzer im User-Space
  • Grundlegende Vertrautheit mit einer Kommandozeilen-Shell
  • Grundkenntnisse in der Benutzer-/Kernelspace-Programmierung mit GNU/Linux
  • Mittlere C-Programmierkenntnisse
  • Sie sollten an Embedded GNU/Linux Systems Architecture (5 Tage)  teilgenommen haben (dringend empfohlen!), es sei denn, Sie sind bereits mit dem Material vertraut, das in diesen Schulungen vorgestellt wurde.
  • Sie müssen tatsächlich Erfahrung mit Embedded GNU/Linux (Kernel, Userspace, Root-Dateisystem, Tools) haben, um dem Yocto-Training zu folgen.
  • Es könnte hilfreich sein, wenn Sie den Kurs "Embedded GNU/Linux Device Drivers and Kernel Internals" (5 Tage) besucht haben, aber das ist nicht wirklich eine Voraussetzung. Es ist ausreichend zu 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


Beginnt

Endet


Die Termine sind abhängig von der Verfügbarkeit und finden zwischen 09:30 und 16:30 statt.
Offene Schulungskurse erfordern mindestens 5 Teilnehmer.

Erfahrungsberichte (1)

Kombinierte Kurse

Embedded Linux Systems Architecture

  35 Stunden

Verwandte Kategorien