Utveckling av inbyggda system i Linux

Produkter med inbyggda system har vuxit både i storlek och i funktionalitet från små kontroll- och mätenheter till uppkopplade produkter med ett stort antal applikationer. Det kan vara produkter med grafiska användargränssnitt eller webbaserade användargränssnitt som hanterar många nätverksprotokoll med olika standarder som t ex TCP/IP.

Linux är idag det vanligaste valet när man utvecklar mer kraftfulla och uppkopplade inbyggda system. Linux går att köra på ett antal olika arkitekturer som PowerPC, ARM och MIPS och stöder alla sorters applikationer. Det gör det möjligt att snabbt få upp det mesta av ett inbyggt system med hjälp av standardverktyg och standardapplikationer.

I kursen går vi igenom en serie av verktyg för utveckling av inbyggda system i Linux. Du får en översikt över byggverktyg, kernel och boot loader-funktionalitet samt genomgång av ett urval av bibliotek. I genomgången ingår ett antal övningar där du får prova på olika aspekter på utvecklingsprocessen för ett inbyggt Linux-system som är baserat på en ARM-processor som heter BeagleBone. För övningarna används Buildroot tillsammans med gdb och Eclipse.

Efter kursen kan du:

  • Sätta upp utvecklingsmiljön och skapa en korskompilator.
  • Sätta upp och konfigurera en boot loader.
  • Konfigurera och korskompilera Linux-kärnan.
  • Skapa ett rootfil-system med biblioteksfiler och de program som behövs för att få ett fullt fungerande system.
  • Göra en säker uppdatering av ett Embedded Linux-system.


Målgrupp
Målgruppen är de som snabbt vill komma igång och utveckla inbyggda system för Linux.

Mål
Efter genomgången utbildning har du de praktiska verktygen för att utveckla ett inbyggt system i Linux.

Bakgrundskunskaper
Deltagarna förväntas ha grundläggande kunskaper i Linux och i mjukvaruutveckling.

Språk
Utbildningsmaterialet är skrivet på engelska. Utbildningen kan genomföras antingen på svenska eller engelska.

Kurslängd
Kursen genomförs under två dagar.

Innehåll
I utbildningen går vi igenom:

  • Introduktion till Embedded Linux
  • Licenser
  • Toolchain
    • Hur man bygger en korskompilator inklusive biblioteksfiler
    • Bygga toolchain med crosstool-ng
  • Boatloader
    • Översikt av olika bootloaders
    • Genomgång av bootloadern U-Boot
  • Linuxkärnan
    • De olika delsystemen
    • Konfigurera och bygga Linuxkärnan
    • Deivce Tree
    • Korskompilering av Linuxkärnan
    • Hantering av kärnmoduler under drift
    • Argument till Linuxkärnan
  • Rootfilsystemet
    • Filträdet
    • boot (Sytem V init, systemd)
    • device-filer
    • lib-filer
    • busybox
    • filsystem
    • bygga systemet
    • Introduktion till Yocto
  • Utvecklingsmiljö
    • Korskompilering av ett program
    • NFS-rootfilsystem
  • Uppdateringar
    • Olika typer av uppdateringar
    • Program för säker uppdatering utan att förstöra kortet


Mer information
För mer information kontakta Åsa Detterfelt, 070-659 58 12, alternativt maila asa.detterfelt@mindroad.se.


"Intressant innehåll, bra och engagerad lärare"

Deltagare i april 2016

Kurstillfällen:
Stockholm 12 - 13/12, 22 - 23/2, 25 - 26/4,  20 - 21/6
Göteborg 23 - 24/11, 30 - 31/1, 21 - 22/3, 22 - 23/5
Linköping 14 - 5/3

Anmälan och frågor:
Maila asa.detterfelt@mindroad.se för att anmäla dig, eller för eventuella frågor.