Návrh Školení

Osnova kurzu

Zavedení

  • historie Unixu/Linux, licence, standardy, práce se svobodným softwarem, hledání nápovědy, speleologie, filozofie Unixu

Vložené specifika

  • Linux na ploše ve srovnání s Linux ve vestavěném systému, křížové/nativní toolchainy, předpřipravené toolchainy, sestavovací systémy, C knihovny,...

Eval Board

  • Jak se spouští?, Podívejte se na spouštění

Yocto Úvod

  • Co je Yocto? Proč používat YP? Co je YP?, Poky, BitBake, OE-Core, Metadata

YP Autobuilder

  • Co je to YP Autobuilder?, Docker kontejner (pull, launch kontejner)

Pracovní postup YP

  • Úvod
  • Workflow, OE architektura
  • Konfigurace (uživatel, metadata, stroj, zásady distribuce)
  • Zdroje
  • Sestavení (načítání zdroje, záplata, konfigurace/kompilace/instalace, pseudo, příklady receptur, výstupní analýza/balení, generování obrázků, generování SDK)
  • Přizpůsobení obrázků (úvod, local.conf, IMAGE_FEATURES, vlastní soubory .bb, vlastní skupiny balíčků)

BitBake

  • Dějiny
  • Syntax
  • Ladění (úroveň ladění, hledání receptů/obrázků/skupin balíčků, prostředí/úkoly/protokolování BitBake, vynucení sestavení/specifická úloha, cleansstate, zneplatnění razítka, devshell, průzkumník závislostí, zabít všechny instance BitBake, grafický obal BitBake)

Vrstvy

  • Úvod, nástroj bitbake-layers, nástroj yocto-layer

BSP

  • Úvod, Pracovní postup vývoje systému, BSP Developer's Guide (bsp-tool)

Jádro

  • Úvod, Pracovní postup vývoje systému, Manuál vývoje jádra (defconfig, defconfig + konfigurační fragment, kmod ve stromu, kmod mimo strom, fdt,…)

Sada nástrojů pro vývoj aplikací

  • Úvod, Cross-Development Toolchain, Sysroot, ADT- Eclipse Yocto Plug-in, emulátor QEMU, User Space Tools
  • Instalace ADT & Toolchains
    • Použití tarballu Cross-Toolchain (Úvod, Sestavení/Instalace tarballu Cross-Toolchain, Cross-Toolchain + Makefile/Autotools/Autotools lib + aplikace, recepty)
    • Pomocí instalačního programu ADT (Úvod, Web Server, Sestavit obraz + instalační program ADT, Konfigurovat + spustit instalační program ADT, přidat instalační program ADT na webový server, Instalační program ADT na hostiteli)

Zatmění

  • Úvod, pracovní postup vývoje aplikací
  • Práce s Eclipse (funkce rootfs, jádro + fdt, rootfs, instalace JDK, instalace Eclipse, konfigurace Eclipse, instalace Yocto Plugin, Konfigurace Yocto Plugin, Vytvoření Autotooled Project, Konfigurace Cross-Toolchains, Sestavení projektu)

Ladění

  • Úvod, gdb, vzdálené ladění gdb, (vzdálené ladění gdb) Ladění pomocí Eclipse, (vzdálené) Spuštění z Eclipse

Profilování/sledování

  • Intro, perf, gprof, gcov, strace, ftrace, systemtap, oprofile, LTTng + Eclipse (vizualizace dat)

Balíček Management

  • Práce s balíčky, IPK, vytváření feedu balíčků, instalace balíčku s opkg na cíl

Licencování

  • Úvod, Přidat vlastní licenci, Soulad s licencí Open Source

Devtool

  • Úvod, devtool, ukázka meta-cfengine v reálném světě

Pokud není uvedeno jinak, obsah a tato osnova kurzu podléhají licenci Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0).

Požadavky

Předpoklady

  • Základní znalost používání systému GNU/Linux (např. Ubuntu) jako koncového uživatele v uživatelském prostoru
  • Základní znalost prostředí příkazového řádku
  • Základní znalost programování uživatelského/kernelového prostoru s GNU/Linux
  • Středně pokročilá znalost programování v C
  • Měli byste se zúčastnit Embedded GNU/Linux Systems Architecture (5 dní) (důrazně doporučujeme!), pokud již nejste obeznámeni s materiálem prezentovaným na těchto školeních.
  • Ve skutečnosti potřebujete mít zkušenosti s Embedded GNU/Linux (jádro, uživatelský prostor, kořenový souborový systém, nástroje), abyste mohli absolvovat školení Yocto.
  • Mohlo by být užitečné, kdybyste se zúčastnili Embedded GNU/Linux Device Drivers and Kernel Internals (5 dní) , ale to není ve skutečnosti podmínkou. Stačí vědět, jak sestavit jádro GNU/Linux, ovladače jádra ze stromu/mimo něj a fdt ze strany jádra, abyste mohli postupovat podle školení Yocto.
 28 hodiny

Počet účastníků


Price per participant

Reference (1)

Upcoming Courses

Související kategorie