Course Outline

Cursusbeschrijving

Invoering

  • geschiedenis van Unix/Linux, licenties, standaarden, werken met vrije software, hulp zoeken, spelunking, de Unix-filosofie

Ingebouwde specificaties

  • Linux op de desktop vergeleken met Linux in een embedded systeem, cross-/native toolchains, vooraf gebouwde toolchains, build-systemen, C-bibliotheken,...

Eval-bord

  • Hoe start het op? Zie hoe het opstart

Yocto-introductie

  • Wat is Yocto? Waarom gebruik maken van het YP? Wat is de YP?, Poky, BitBake, OE-Core, Metadata

De YP Autobouwer

  • Wat is de YP Autobuilder?, Docker container (trekken, starten container)

De YP-workflow

  • Intro
  • Workflow, OE-architectuur
  • Configuratie (gebruiker, metadata, machine, distributiebeleid)
  • Bronnen
  • Bouwen (bron ophalen, patchen, configureren/compileren/installeren, pseudo, voorbeelden van recepten, uitvoeranalyse/verpakking, afbeelding genereren, SDK-generatie)
  • Afbeeldingen aanpassen (Intro, local.conf, IMAGE_FEATURES, aangepaste .bb-bestanden, aangepaste pakketgroepen)

BitBake

  • Geschiedenis
  • Syntaxis
  • Foutopsporing (foutopsporingsniveau, recepten/afbeeldingen/pakketgroepen zoeken, BitBake-omgeving/taken/logboekregistratie, build/specifieke taak forceren, cleansstate, stempel ongeldig maken, devshell, afhankelijkheidsverkenner, alle BitBake-instanties doden, grafische BitBake-wrapper)

Lagen

  • Intro, gereedschap bitbake-lagen, gereedschap yocto-lagen

BSP

  • Intro, Workflow voor systeemontwikkeling, BSP-ontwikkelaarsgids (bsp-tool)

Kernel

  • Intro, Workflow voor systeemontwikkeling, Handleiding voor kernelontwikkeling (defconfig, defconfig + configuratiefragment, in boom kmod, uit boom kmod, fdt, ...)

Toolkit voor applicatieontwikkeling

  • Intro, Cross-Development Toolchain, Sysroot, ADT-Eclipse Yocto Plug-in, de QEMU-emulator, tools voor gebruikersruimte
  • ADT en Toolchains installeren
    • Een Cross-Toolchain-tarball gebruiken (Intro, de Cross-Toolchain-tarball bouwen/installeren, Cross-Toolchain + Makefile/Autotools/Autotools lib + App, recepten)
    • Het ADT-installatieprogramma gebruiken (Intro, Web Server, Image bouwen + ADT-installatieprogramma, Configureren + ADT-installatieprogramma uitvoeren, ADT-installatieprogramma toevoegen aan webserver, ADT-installatieprogramma op host)

Verduistering

  • Inleiding, workflow voor applicatieontwikkeling
  • Werken met Eclipse (rootfs-functies, kernel + fdt, rootfs, JDK installeren, Eclipse installeren, Eclipse configureren, Yocto Plugin installeren, de Yocto Plugin configureren, Autotooled Project maken, de Cross-Toolchains configureren, het project bouwen)

Foutopsporing

  • Intro, gdb, gdb foutopsporing op afstand, (gdb remote) Foutopsporing met Eclipse, (op afstand) Uitvoeren vanuit Eclipse

Profilering/tracering

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

Pakket Management

  • Werken met pakketten, IPK, een pakketfeed maken, een pakket installeren met opkg op het doel

Licentie

  • Intro, aangepaste licentie toevoegen, naleving van open source-licenties

Ontwikkeltool

  • Intro, devtool, real-world showcase meta-cfengine

Tenzij anders vermeld, zijn de inhoud en dit cursusoverzicht gelicentieerd onder Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0).

Requirements

Vereisten

  • Basiskennis van het gebruik van een GNU/Linux-systeem (bijv. Ubuntu) als eindgebruiker in gebruikersruimte
  • Basiskennis van een opdrachtregelshell
  • Basiskennis van programmeren van gebruikers-/kernelruimte met GNU/Linux
  • Gemiddelde kennis van programmeren in C
  • Je zou Embedded GNU/Linux Systems Architecture (5 dagen) moeten hebben gevolgd (sterk aanbevolen!) tenzij je al bekend bent met het materiaal dat in die trainingen wordt gepresenteerd.
  • Om de Yocto training te kunnen volgen, heb je daadwerkelijk ervaring nodig met Embedded GNU/Linux (kernel, userspace, root file system, tools).
  • Het kan nuttig zijn als u Embedded GNU/Linux Device Drivers en Kernel Internals (5 dagen) bijwoont, maar dat is niet echt een vereiste. Het is voldoende om te weten hoe je de GNU/Linux-kernel, kerneldrivers in/uit de boom en de fdt van de kernelkant moet bouwen om de Yocto-training te volgen.
  28 Hours
 

Getuigenissen (1)

Related Courses

Embedded Linux Systems Architecture

  35 Hours

Related Categories