Kursplan

Kursplan

Introduktion

  • historia av Unix/Linux, licenser, standarder, arbeta med fri programvara, hitta hjälp, spelunking, Unix-filosofin

Inbäddade specifikationer

  • Linux på skrivbordet jämfört med Linux i ett inbäddat system, cross-/native verktygskedjor, förbyggda verktygskedjor, byggsystem, C-bibliotek,...

Evalstyrelsen

  • Hur startar den?, Se att den startar

Yocto Introduktion

  • Vad är Yocto? Varför använda YP? Vad är YP?, Poky, BitBake, OE-Core, Metadata

YP Autobuilder

  • Vad är YP Autobuilder?, Docker container (drag, starta container)

YP Workflow

  • Intro
  • Arbetsflöde, OE-arkitektur
  • Konfiguration (användare, metadata, maskin, distributionspolicy)
  • Källor
  • Bygg (Källhämtning, lappning, konfigurera/kompilera/installera, pseudo, exempel på recept, utdataanalys/paketering, bildgenerering, generering av SDK)
  • Anpassa bilder (Intro, local.conf, IMAGE_FEATURES, anpassade .bb-filer, anpassade paketgrupper)

BitBake

  • Historia
  • Syntax
  • Felsökning (felsökningsnivå, hitta recept/bilder/paketgrupper, BitBake-miljö/uppgifter/loggning, force build/specifik uppgift, cleansstate, ogiltigförklara stämpel, devshell, beroendeutforskare, döda alla BitBake-instanser, BitBake grafiskt omslag)

Skikten

  • Intro, bitbake-layers-verktyg, yocto-layer-verktyg

BSP

  • Intro, arbetsflöde för systemutveckling, BSP-utvecklarguide (bsp-verktyg)

Kärna

  • Intro, arbetsflöde för systemutveckling, kärnutvecklingsmanual (defconfig, defconfig + konfigurationsfragment, i träd kmod, out of tree kmod, fdt,...)

Verktygssats för applikationsutveckling

  • Intro, Cross-Development Toolchain, Sysroot, ADT-Eclipse Yocto Plug-in, QEMU Emulator, User Space Tools
  • Installation av ADT & Toolchains
    • Använda en Cross-Toolchain tarball (Intro, bygga/installera Cross-Toolchain tarball, Cross-Toolchain + Makefile/Autotools/Autotools lib + App, recept)
    • Använda ADT Installer (Intro, Web Server, Build image + ADT installer, Configure + run ADT installer, add ADT installer to webserver, ADT installer on host)

Förmörkelse

  • Intro, Arbetsflöde för applikationsutveckling
  • Arbeta med Eclipse (rootfs funktioner, kärna + fdt, rootfs, installera JDK, installera Eclipse, konfigurera Eclipse, installera Yocto Plugin, Konfigurera Yocto Plugin, Skapa Autotooled Project, Konfigurera Cross-Toolchains, Bygg projektet)

Felsökning

  • Intro, gdb, gdb fjärrfelsökning, (gdb fjärrkontroll) Felsökning med Eclipse, (fjärr) Kör från Eclipse

Profilering/spårning

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

Paket Management

  • Arbeta med paket, IPK, skapa ett paketflöde, installera ett paket med opkg på målet

Licensiering

  • Intro, Lägg till anpassad licens, Open Source License Compliance

Devtool

  • Intro, devtool, verklighetstrogna meta-cfengine

Förutom där annat anges innehåll och denna kursöversikt är licensierade under Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0).

Krav

Förutsättningar

  • Grundläggande förtrogenhet med att använda ett GNU/Linux-system (t.ex. Ubuntu) som slutanvändare i användarutrymmet
  • Grundläggande förtrogenhet med ett kommandoradsskal
  • Grundläggande kunskap om användar/kärnrymdsprogrammering med GNU/Linux
  • Medellång C-programmeringskunskap
  • Du bör ha deltagit i Embedded GNU/Linux Systems Architecture (5 dagar) (rekommenderas starkt!) om du inte redan är bekant med materialet som presenteras i dessa utbildningar.
  • Du behöver faktiskt ha erfarenhet av Embedded GNU/Linux (kärna, användarutrymme, rotfilsystem, verktyg) för att följa Yocto-utbildningen.
  • Det kan vara användbart om du deltog i Embedded GNU/Linux Device Drivers and Kernel Internals (5 dagar), men det är egentligen inte en förutsättning. Det är tillräckligt att veta hur man bygger GNU/Linux-kärnan, kärndrivrutiner in/ut ur trädet och fdt från kärnan för att följa Yocto-utbildningen.
 28 timmar

Antal deltagare



Price per participant

Relaterade Kategorier