Impara a programmare il Kernel Linux LFD420


Diventa operativo nello sviluppo del Kernel Linux: dall’architettura interna ai driver, con laboratori guidati e codice reale.

Obiettivi del corso

Vuoi andare oltre lo user-space e capire come il sistema operativo gestisce processi, memoria, interrupt e dispositivi? LFD420 è il corso che ti porta dal design alle mani nel codice, con una didattica step-by-step e laboratori verificati su VM/QEMU. Alla fine sarai in grado di leggere, modificare e contribuire a componenti del kernel e sviluppare driver carattere pronti per ambienti reali.

Cosa ti porti a casa

  • Padronanza dei concetti chiave del Kernel Linux e del suo modello di esecuzione.
  • Capacità di compilare e patchare il kernel in modo sicuro.
  • Sviluppo di moduli e driver (carattere), gestione interrupt, bottom halves, workqueues.
  • Tecniche di debug & tracing moderne (ftrace, perf, eBPF/bpftrace).
  • Best practice per concorrenza e sincronizzazione (atomic, spinlock, mutex, semafori).
  • Metodo di lavoro ripetibile per portare il codice in produzione o upstream.

A chi è rivolto

  • Sviluppatori C/C++ che vogliono scendere a livello kernel.
  • System/DevOps/Embedded engineers che gestiscono piattaforme Linux e driver.
  • Studenti e professionisti che puntano a ruoli low-level, real-time, sicurezza o embedded.

Prerequisiti consigliati

  • Buona conoscenza di C e Linux user-space (shell, gcc, make).
  • Familiarità con git e strumenti di build.
  • Nozioni base di architettura dei sistemi (processi, memoria, I/O).

🎓 Cosa imparerai

Un percorso che ti accompagna passo passo, dalle basi del kernel alle tecniche avanzate:

  • Orientarti nell’albero sorgente del kernel e nel suo processo di build.
  • Compilare e configurare un kernel personalizzato, gestendo patch e moduli out-of-tree.
  • Implementare e caricare moduli kernel, interfacciandoti con sysfs/procfs.
  • Progettare driver carattere con API moderne (open/read/write/ioctl, poll, mmap).
  • Gestire interrupt, tasklet/softirq e workqueues in modo sicuro.
  • Applicare correttamente spinlock/mutex/semafori e primitive atomiche.
  • Comprendere scheduler e context switch; usare affinità CPU e politiche RT.
  • Analizzare gestione memoria: slab/slub, allocatori, page cache, vmalloc/kmalloc.
  • Effettuare debug/tracing con ftrace, perf, e bpftrace/eBPF.
  • Scrivere test e riprodurre bug con un ambiente di laboratorio replicabile.

📌 Ogni modulo unisce teoria ed esercitazioni pratiche su un ambiente di laboratorio guidato.

Laboratori pratici inclusi

Non solo teoria: ogni partecipante avrà accesso a un ambiente Linux reale, pronto all’uso e sicuro.

  • Nessuna carta di credito richiesta
  • Accesso garantito per la durata del corso
  • Possibilità di estendere la durata dei laboratori

Ogni modulo include un lab pratico in VM/QEMU (Ubuntu LTS) pensato per riprodurre in autonomia:

  • Compilazione kernel custom e gestione moduli out-of-tree.
  • Driver carattere con test user-space.
  • Simulazione IRQ + tasklet/workqueue e misurazioni di latenza.
  • Esercizi di locking con race condition dimostrata e fix.
  • Tracing con ftrace/perf e bpftrace per osservare syscall e path critici.

Per chi è pensato

  • Studenti universitari che vogliono competenze cloud spendibili subito
  • Professionisti IT che vogliono aggiornarsi e migliorare il CV
  • Sviluppatori e sysadmin junior che puntano ad apprendere meglio il Kernel Linux

Cosa ottieni con l’iscrizione

  • ✅ 32 ore di formazione live con docente certificato
  • ✅ Ambiente di laboratorio Linux
  • ✅ Accesso illimitato alle registrazioni delle lezioni
  • ✅ Tutto il materiale didattico (Libri, documentazione, slide)
  • ✅ Attestato finale di partecipazione

Prezzo e modalità

  • Prezzo: 660 € (tutto incluso)
  • Modalità: Live online (Zoom/Teams)
  • Durata: 4 giorni per un totale di 32 ore

Iscriviti subito – i posti si esauriscono velocemente!

Domande frequenti

  • Serve esperienza? NRichiede basi di C e Linux. Non serve esperienza pregressa nel kernel, ma la voglia di scrivere codice low-level sì.
  • E se perdo una lezione? Puoi rivedere tutte le registrazioni per 6 mesi.
  • È utile per la certificazione LPI? Sì, ti prepara all'esame di certificazione.
  • Posso rifare i laboratori? Sì, avrai più lanci disponibili e potrai esercitarti finché vuoi.