Corso Vittorio Emanuele II, 39 - Roma 0669207671

Ingegneria Informatica (Academic Year 2018/2019) - Programmazione e sicurezza

Programmazione di sistema



Slides

Lesson n. 1: Cenni introduttivi alla Programmazione di Sistema
   Introduzione al corso e Ambienti operativi

   Interfacciarsi con il sistema operativo

   Gestione degli errori
Vai alla slide della lezione Giovanni Malnati
Lesson n. 2: Il modello di esecuzione
   Il modello di esecuzione

   Implementazione del modello di esecuzione

   Preparazione ed esecuzione di un processo
Vai alla slide della lezione Giovanni Malnati
Lesson n. 3: Allocazione della memoria - parte I
   Allocazione statica e dinamica della memoria
Vai alla slide della lezione Giovanni Malnati
Lesson n. 4: Allocazione della memoria - parte II
   Allocazione della memoria in Linux

   Allocazione della memoria in Windows
Vai alla slide della lezione Giovanni Malnati
Lesson n. 5: Introduzione al linguaggio C++
   Introduzione al C++

   Classi ed Oggetti

   Allocazione dinamica

   Passaggio di parametri
Vai alla slide della lezione Giovanni Malnati
Lesson n. 6: Gestione delle eccezioni
   Eccezioni

   Strategie di eccezione
Vai alla slide della lezione Giovanni Malnati
Lesson n. 7: Composizione di oggetti
   Oggetti composti

   Duplicazione degli oggetti

   Copia e movimento
Vai alla slide della lezione Giovanni Malnati
Lesson n. 8: Ereditarietà e polimorfismo
   Ereditarietà

   Polimorfismo

   Conversione tra tipi
Vai alla slide della lezione Giovanni Malnati
Lesson n. 9: Funzioni e operatori
   Puntatori a funzioni

   Oggetti funzionali

   Funzioni lambda

   Overloading degli operatori
Vai alla slide della lezione Giovanni Malnati
Lesson n. 10: Programmazione generica
   Programmazione generica

   Smart pointer
Vai alla slide della lezione Giovanni Malnati
Lesson n. 11: Librerie
   Uso di librerie

   Librerie statiche

   Librerie dinamiche
Vai alla slide della lezione Giovanni Malnati
Lesson n. 12: Programmazione concorrente
   Programmazione concorrente

   Thread in Windows

   Thread in Linux
Vai alla slide della lezione Giovanni Malnati
Lesson n. 13: Sincronizzazione
   Modello di esecuzione dei thread

   Sincronizzazione
Vai alla slide della lezione Giovanni Malnati
Lesson n. 14: Programmazione concorrente in C++ Parte I
   Concorrenza in C++

   Esecuzione asincrona

   Attesa dei risultati
Vai alla slide della lezione Giovanni Malnati
Lesson n. 15: Programmazione concorrente in C++ Parte II
   Creazione di thread secondari

   Restituzione dei risultati

   Accedere al thread corrente
Vai alla slide della lezione Giovanni Malnati
Lesson n. 16: Programmazione concorrente in C++ Parte III
   Mutua esclusione

   Operazioni atomiche
Vai alla slide della lezione Giovanni Malnati
Lesson n. 17: Programmazione concorrente in C++ Parte IV
   Variabili condizioni

   Esecuzione di tast singoli
Vai alla slide della lezione Giovanni Malnati
Lesson n. 18: Interprocess communication
   Concorrenza e processi

   Comunicazione tra processi
Vai alla slide della lezione Giovanni Malnati
Lesson n. 19: Ipc in windows
   Mailslot

   Pipe

   Filemapping

   Alcuni meccanismi
Vai alla slide della lezione Giovanni Malnati
Lesson n. 20: Sincronizzazione in windows
   Sincronizzazione tra processi

   Eventi

   Semafori

   Mutex

   Meccanismi congiunti
Vai alla slide della lezione Giovanni Malnati
Lesson n. 21: Ipc – Linux
   Identificativi

   Message Queue

   Pipe

   Shared memory

   Memory Mapped File

   Semafori
Vai alla slide della lezione Giovanni Malnati
Lesson n. 22: Introduzione ad Android
   La Piattaforma Android

   Struttura di un applicazione
Vai alla slide della lezione Giovanni Malnati
Lesson n. 23: Organizzazione di un progetto Android
   Organizzazione del codice

   Esempio di applicazione
Vai alla slide della lezione Giovanni Malnati
Lesson n. 24: Attività
   La classe Activity

   Ciclo di vita di un attività

   Creazione dell'interfaccia utente
Vai alla slide della lezione Giovanni Malnati
Lesson n. 25: Interazione tra componenti
   Intent

   Transizioni tra attività

   Contesto di un applicazione
Vai alla slide della lezione Giovanni Malnati
Lesson n. 26: Concorrenza
   Multi-threading

   Looper e Handler

   AsyncTask
Vai alla slide della lezione Giovanni Malnati
Lesson n. 27: Servizi
   Introduzione ai servizi

   Ciclo di vita di un servizio

   Implementare un servizio
Vai alla slide della lezione Giovanni Malnati