Das Yocto Projekt

Startdate

. 05.12.2019
9:00

. 09.11.2019
17:00

Kursziele

Ziel dieses Kurses ist es, die erforderlichen Grundlagen zu vermitteln das Yocto Projekt zu verwenden, allerdings wird vorausgesetzt, dass Sie schon einiges an Wissen zum Thema Embedded GNU/Linux, dem GNU/Linux Kernel und Freunden mitbringen. Wir werden uns ansehen wie sowohl ein BSP oder Framework Betreuer das Yocto Projekt verwenden würde als auch ein Entwickler, der vielleicht gar nichts von dem YP zu wissen braucht bzw. auch nichts davon wissen will.

Beschreibung

Dieses viertägige Training kombiniert Hands-on Übungen mit Theorie, um das Yocto Projekt vorzustellen. Es beantwortet häufig gestellte Fragen wie:

  • Muss man wirklich für jedes Embedded GNU/Linux Projekt eine andere Version der Toolchain/der Libraries/Pakete und einen anderen Workflow haben?
  • Kann man sicherstellen dass die Entwicklungsumgebung für alle Entwickler/Zulieferer identisch ist und die Software, die man heute baut auch noch identisch in 10+ Jahren gebauet werden kann?
  • Kann das YP helfen herauszufinden, welche Software-Lizenzen alle benutzen Pakete benutzen?
  • ... und vieles mehr

Die Hands-on Sessions werden auf der eigenen Phytec-Hardware (phyCORE-AM3354) durchgeführt. Die Kursteilnehmer können sich ein vorgefertigtes Docker Image mit Ubuntu 14.x und alle Beispiele nach dem Training herunterladen, was es Ihnen ermöglicht mit dem Kursmaterial im eigenen Labor zu arbeiten. Bitte beachten Sie, dass dies kein Einf¨uhrungskurs in Embedded GNU/Linux so wie [1] [2] ist. Sie sollten schon wissen wie Embedded GNU/Linux funktioniert und wie man einen GNU/Linux Kernel und Kernel Drivers konfiguriert und baut.

Erforderliche Vorkenntnisse

  • Grundkenntnisse wie man ein GNU/Linux System (z.B. Ubuntu) im User Space verwendet
  •  Grundkenntnisse mit dem Umgang der Command Line Shell
  •  Grundkenntnisse von User/Kernel Space Programmierung unter GNU/Linux
  •  Mittelmäßige C-Programmierkenntnisse
  •  Sie sollten ”Linux Embedded für Einsteiger - Teil 1/3 (5 Tage)” [1] (dringend empfohlen!) bzw.”Linux Systemprogrammierung und Echtzeit - Teil 2/3 (5 Tage)” [2] besucht haben . . . es sei denn Sie sind mit dem darin vorgetragenen Material schon sehr vertraut. Um dem Training folgen zu können sollten Sie Erfahrung mit Embedded GNU/Linux mitbringen (wie man den Kernel baut, userspace, root file-system, tools).
  • Es könnte auch hilfreich sein wenn Sie einen Kurs wie ”Linux Treiberprogrammierung - Teil 3/3 (5 Tage) [3]” besucht haben, aber das ist keine erforderliche Vorkenntnis. Es reicht wenn Sie wissen wie man den GNU/Linux Kernel, Kerneltreiber in/out of tree baut und wissen was ein fdt ist um dem Kernel Kapitel folgen zu können.  

  • Die oben erwähnten Trainings können on-site und on-line angeboten werden. Hier [4] können Sie auch Angebote dazu einholen.

Wer sollte teilnehmen?

Sie verwenden bereits GNU/Linux für Ihre Projekte und haben wahrscheinlich schon von dem Yocto Projekt gehört, aber sich noch nicht richtig drüber getraut. Sie wissen nicht ob und wie Sie Ihren täglichen Workflow in dem YP unterbringen können und finden mit dem YP vieles recht kompliziert. Wozu braucht man das alles eigentlich wenn es doch bis jetzt auch (vermeintlich) einfacher ging? Sie sollten aus dem Training raus gehen und in der Lage sein zu entscheiden ob sie das YP brauchen oder nicht. Die Schulung richtet sich an Software-, Entwicklungs-, System-Ingenieure, Tester, Administratoren, Techniker und Interessierte am YP, die bereits gut fundierte Embedded GNU/Linux Kenntnisse [?] haben.

Kursinhalt

  • Einführung
    • Geschichte von Unix/Linux, Lizenzen, Standards, Mit freier Software arbeiten, Spelunking, Die Unix Philosophie
  • Besonderheiten
    • Linux auf dem Desktop im Vergleich zu Linux auf einem Eingebetteten System, Cross-/Native Toolchains, Schon Vorgebaut, Build-Systeme, C-Bibliotheken,. . .
  • Eval Board
    • Wie booted es? Sehen Sie es booten
  • Yocto Einführung
    • Was ist das YP? Warum sollte man das YP verwenden?, Poky, BitBake, OE-Core, Metadata
  • Der Yocto Autobuilder
    • Was ist der YP Autobuilder?, Docker container (pull, start container)
  • Der YP Workflow
    • Einleitung
    • Konfiguration (Benutzer, Metadaten, Maschine, Distribution Policy)
    • Quellen
    • Bauen (Quellen fetchen, Patchen, Konfigurieren/Kompilieren/Installieren, Pseudo, Beispiele für Rezepte, Output-Analyse/Packaging, Erzeugen von Images, Erzeugen von SDKs)
    • Anpassen von Images (Intro, local.conf, IMAGE FEATURES, kundenspezifische .bb files,
      kundenspezifische packagegroups)
  • BitBake
    • Geschichte
    • Syntax
    • Debugging (Debug Level, Rezepte/Images/Packagegroups finden, BitBake Umgebung/Tasks/Logging, build/spezifischen Task erzwingen, cleansstate, stamp f¨ur ungültig erklären, devshell, Abhängigkeits-Explorer, alle BitBake Instanzen töten, grafische Wrapper für BitBake )
  • Layers
    • Intro, bitbake-layers tool, yocto-layer tool
  • BSP
    • Intro, Systementwicklung Workflow, BSP-Entwicklerhandbuch (bsp-tool)
  • Kernel
    • Intro, Systementwicklung Workflow, Kernel-Entwicklerhandbuch (defconfig, defconfig +
      Konfigurationsfragment, in tree kmod, out of tree kmod, fdt,. . . )
  • Application Development Toolkit
    • Intro, Cross-Development Toolchain, Sysroot, ADT- Eclipse Yocto Plug-in, Der QEMU Emulator, User Space Wekzeuge
    • Installieren von ADT & Toolchains
      • Einen Cross-Toolchain tarball verwenden (Intro, den Cross-Toolchain tarball Bauen/Installieren, Cross-Toolchain + Makefile/Autotools/Autotools lib + App, recipes)
      • Den ADT Installer verwenden (Intro, Web Server, Image + ADT Installer bauen, ADT installer konfigurieren und ausführen, Den ADT Installer über einen Webserver zur Verfügung stellen, Den ADT installer am Host ausführen)
  • Debugging
    • Intro, gdb, gdb Remote-Debugging, (gdb Remote) Debugging mit Eclipse, (remote) Ausführen mit Eclipse
  • Profiling/Tracing
    • Intro, perf, gprof, gcov, strace, ftrace, systemtap, oprofile, LTTng + Eclipse (Datenvisualisierung)
  • Paketverwaltung
    • mit Paketen arbeiten, IPK, die Schaffung eines Paket-Feeds, Installation eines Pakets mit opkg auf der Zielhardware
  • Lizenzierung
    • Intro, eine benutzerdefinierte Lizenz hinzuf¨ugen, Open-Source-Lizenz-Compliance
  • Devtool
    • Intro, devtool, Demonstration wie man einen meta-layer für ein richtiges Projekt meta-cfengine erstellt


Unsere Empfehlung für die Anreise- und Hotelkonditionen:

Bei Ausfall der Schulung durch höhere Gewalt, Krankheit des Dozenten oder Beraters sowie sonstige unvorhersehbare Ereignisse besteht kein Anspruch auf Durchführung. Phytec Messtechnik GmbH kann in diesem Fall nicht zum Ersatz von Reise- und Übernachtungskosten sowie für sonstige mittelbare und unmittelbare Folgeschäden haftbar gemacht werden. Bitte beachten Sie, bei Ihrer Buchung einen Tarif mit kostenfreier Stornierungsmöglichkeit zu wählen.

Preise inklusive Hardware, Software, Schulungsunterlagen sowie Tagesverpflegung. 

Price

Price
1.990 € (P.P., zzgl. MwSt.)

Location

Location

Mainz · ·

Registration

Registration

Das Yocto Projekt 1.990 € (P.P., zzgl. MwSt.)

Registration

5 .

Organisator

Organisator

Phytec

Email: info@phytec.de
Phone: 0472309472ß984