Corso Linux kernel internals
Descrizione corso
Il corso Linux Kernel Internals, organizzato in sette giornate, è rivolto ad utenti con familiarità con l'uso, l'amministrazione e la programmazione delle applicazioni del sistema operativo Linux.
La sua finalità è quella di fornire una panoramica generale ma approfondita dell'organizzazione e della struttura interna del kernel Linux. Questo corso offre la possibilità di capire i principi di funzionamento del più diffuso sistema operativo al mondo.
- Introduzione al software libero
- La licenza d'uso del kernel
- Il modello di sviluppo del kernel
- Scrittura di moduli del kernel
- Parametri e simboli dei moduli
- Debugging del kernel:
- printk
- filesystem virtuali
- uso di gdb per il kernel
- La rappresentazione dei processi
- La gestione delle interruzioni hardware
- Gestione del tempo nel kernel
- Wait queue
- Funzioni procastinabili
- Timer normali e ad alta precisione
- Concorrenza e sincronizzazione
- Barriere di esecuzione
- Spinlock e loro specializzazioni
- Semafori e loro specializzazioni
- Primitive Read-Copy-Update (RCU)
- Variabili per-CPU
- Altre primitive di sincronizzazione
- Schedulazione dei processi
- Classi di schedulazioni
- Lo scheduler CFS
- Bilanciamento del carico in sistemi multiprocessore
- Allocazione della memoria
- Allocatore delle pagine fisiche
- Allocatore di regioni di memoria fisica
- L'allocatore di oggetti (slab allocator)
- Allocazione di regioni di memoria virtuale
- Il Virtual File System
- Lo schema di base delle chiamate di sistema per la gestione dei file
- Gestione della memoria virtuale
- Paginazione su richiesta
- La copiatura su scrittura delle pagine fisiche
- Mapping tra memoria fisica e file
- La page cache
- Recupero della memoria fisica
- Device driver
- Gestione delle periferiche hardware
- Device driver a caratteri
- Device driver a blocchi
- Device driver di rete
Il corso puo' essere svolto presso la nostra sede di Roma, in via Roggiano Gravina, 37 (zona Anagnina), oppure, su richiesta, presso la sede del cliente.
Al fine di poter attendere il corso con il massimo profitto è consigliato che i partecipanti siano in possesso delle seguenti conoscenze:
- Familiarità con l'uso e l'amministrazione dei sistemi GNU/Linux
- Conoscenza di base del linguaggio C
Modulo richiesta informazioni
-
Share
- Tweet