Developing Linux Device Drivers (LFD430)
Questo corso sui driver dei dispositivi Linux con istruttore elencherà i diversi tipi di driver dei dispositivi Linux, nonché le API e i metodi appropriati attraverso i quali i dispositivi si interfacciano con il kernel. Questo corso tratterà i diversi tipi di driver di dispositivo utilizzati in Linux, le API appropriate attraverso le quali i dispositivi (sia hardware che software) si interfacciano con il kernel, i moduli e le tecniche necessarie per lo sviluppo e il debug dei driver Linux e molto altro ancora.
COD: LFD430
Categorie: Linux Foundation
Metodologia didattica
Il corso prevede laboratori didattici in cui ciascuno studente potrà lavorare ai fini di portare a termine esercizi formativi che forniranno esperienza pratica nell’utilizzo dello strumento, per ciascuno degli argomenti affrontati durante il corso.
Chi dovrebbe partecipare
Prerequisiti
Conoscenza delle interfacce e dei metodi di base del kernel, come la scrittura, la compilazione, il caricamento e lo scaricamento dei moduli, l’uso delle primitive di sincronizzazione e le basi dell’allocazione e della gestione della memoria, come quelle fornite da LFD420 Linux Kernel Internals and Development.
Programma didattico
- Introduzione
- Premesse
- Come lavorare nei progetti OSS
- Driver di dispositivo
- Moduli e driver di dispositivo
- Gestione e allocazione della memoria
- Dispositivi a caratteri
- Caratteristiche del kernel
- Trasferimento tra spazio utente e spazio kernel
- Interruzioni ed eccezioni
- Misurazioni temporali
- Timer del kernel
- ioctls
- Modello di dispositivo unificato e sysfs
- Firmware
- Code di attesa
- Gestione delle interruzioni: Funzioni differibili e driver utente
- I/O hardware
- PCI
- Driver di piattaforma
- Accesso diretto alla memoria (DMA)
- Driver di rete I: Basi
- Driver di rete II: Strutture dati
- Driver di rete III: Trasmissione e ricezione
- Driver di rete IV: Argomenti selezionati
- Driver USB
- Gestione energetica
- Driver a blocchi
- Chiusura e sondaggio di valutazione
- Architettura del kernel I
- Anteprima della programmazione del kernel
- Moduli
- Architettura del kernel II
- Configurazione e compilazione del kernel
- Stile del kernel e considerazioni generali
- Condizioni di gara e metodi di sincronizzazione
- Indirizzamento della memoria
- Allocazione della memoria
Al termine di questo corso online sui driver per dispositivi Linux, dovrai essere in grado di sviluppare driver per dispositivi per sistemi Linux, partendo da una familiarità e una comprensione di base del kernel Linux.
Durata – 4 giorni
Erogazione – in Aula, On Site, Remoto
Requisiti PC e SW:
- Connessione Internet
- Web browser, Google Chrome
- Zoom
Lingua
Trainer: Italiano
Labs: Inglese
Slides: Inglese