CONTACT ONS

Cursusaanbod

1. Inleiding tot de Linux-kernel

  • Overzicht van embedded Linux
  • Architectuur van de Linux-kernel
  • Verschillen tussen gebruikersruimte en kernelruimte
  • Verantwoordelijkheden van de kernel
  • Workflow bij kernelontwikkeling
  • Overzicht van ondersteunde embedded-platforms

2. Opzetten van het ontwikkelmilieu

  • Voorbereiden van de ontwikkelwerkstation
  • Concepten rond cross-compilatie
  • Installeren van benodigde ontwikkeltools
  • Configuratie van het BeagleBone Black development board
  • Configureren van de seriële console
  • Opstarten van het doelapparaat

3. Verkrijgen en begrijpen van de kernelbroncode

  • Structuur van de Linux-kernel broncode
  • Stabiele kernels versus langdurig ondersteunde kernels
  • Downloaden van kernelbronnen
  • Verkenning van de broncodestructuur
  • Dokumentatie over de kernel
  • Beheer van verschillende kernelversies

4. Configuratie, compilatie en opstarten van de kernel

  • Kernelconfiguratie via menuconfig
  • Selecteren van kernelfuncties
  • Cross-compilatie van de kernel
  • Bouwen van kernelimages
  • Installeren van kernelmodules
  • Inleiding tot bootloaders
  • Opstarten met een aangepaste kernel

5. Basisprincipes van het Device Tree

  • Functie en doel van het Device Tree
  • Device Tree Source (DTS) bestanden
  • Device Tree Blob (DTB)
  • Concepten rond hardwarebeschrijving
  • Aanpassen van Device Tree-bestanden
  • Bouwen en implementeren van Device Trees

6. Linux-kernelmodules

  • Architectuur van kernelmodules
  • Bouwen van laadbare kernelmodules
  • Modules laden en verwijderen uit de kernel
  • Instellingen voor modules (parameters)
  • Moduleafhankelijkheden
  • Interactie met kernelmodules
  • Technieken voor module-debugging

7. Debuggen van de Linux-kernel

  • Logging in de kernel via printk()
  • Gebruik van dmesg
  • Dynamisch debuggen
  • Analyse van kernelpaniekfouten
  • Oops-berichten begrijpen
  • Debuggen met GDB
  • Basishulpmiddelen voor performance-tracking

8. Character Device Drivers

  • Het model van Linux device-drivers
  • Character devices
  • Drivers registreren in het systeem
  • Bestandsoperaties beheren
  • Lezen en schrijven naar apparaten
  • Het IOCTL-interface gebruiken
  • Geheugenbeheer in drivers
  • Schoonmaken van resources na gebruik

9. Integratie van drivers en hardwaretoegang

  • Platform-specifieke apparaten en hun drivers
  • Programmeren met GPIO’s
  • Behandelen van interrupts
  • Gebruik van timers en uitgesteld werk
  • Toegang tot hardwareregisters
  • Werken met memory-mapped I/O

10. Versiebeheer met Git

  • Basisprincipes van Git
  • Beheren van kernelbroncode met Git
  • Branching en samenvoegen van wijzigingen
  • Patches maken en distribueren
  • Wijzigingen controleren en beoordelen
  • Samenwerken bij kernelontwikkeling

11. Praktische oefeningen in kernelontwikkeling

  • Een aangepaste kernel configureren
  • De kernel bouwen en implementeren
  • Een eenvoudig kernelmodule ontwikkelen
  • Een basale character device driver coderen
  • Device Tree-bestanden aanpassen
  • Kernelproblemen debuggen op het BeagleBone Black platform

12. Best Practices en samenvatting

  • Coderingstijl bij kernelontwikkeling
  • Hoe betrouwbare drivers schrijven
  • Veelgemaakte fouten tijdens ontwikkeling
  • Beschikbare documentatiebronnen voor kernels
  • Workflow voor bijdragen aan open-sourceprojecten
  • Samenvatting van de belangrijkste concepten
  • Vraag- en antwoordronde
  • Volgende stappen in Linux-kernelontwikkeling

Vereisten

Een basiskennis van het gebruik van een GNU/Linux-systeem is vereist.

 14 Uren

Aangepaste bedrijfsopleiding

Opleidingsoplossingen ontworpen exclusief voor bedrijven.

  • Aangepaste inhoud: We passen de syllabus en praktijkopdrachten aan naar de echte doelen en behoeften van uw project.
  • Voor flexibel schema: Datums en tijden aangepast aan het rooster van uw team.
  • Formaat: Online (live), In-company (bij uw kantoren) of Hybride.
Investering

Prijs per privégroep, online live training, startend vanaf 3200 € + BTW*

Neem contact met ons op voor een exacte offerte en om onze laatste promoties te horen

Reviews (2)

Voorlopige Aankomende Cursussen

Gerelateerde categorieën