Gruppo opzionale:
Gruppo OPZIONALE materie affini 30 cfu x "computer engineering" - (visualizza)
 |
30
|
|
|
|
|
|
|
|
|
8039834 -
MACHINE LEARNING
(obiettivi)
OBIETTIVI FORMATIVI: L’obiettivo del corso è di apprendere i concetti basilari dell’apprendimento statistico e il funzionamento di reti neurali sia ad un solo strato che con più di uno strato (Reti deep), considerando anche reti ricorsive nel contesto del text mining. Sarà descritto in dettaglio il problema di ottimizzazione non vincolata che permette l’addestramento di queste reti e gli algoritmi principali per risolverli come la backpropagation e il gradiente stocastico.
CONOSCENZA E CAPACITÀ DI COMPRENSIONE: Lo studente è introdotto alle conoscenze di ottimizzazione non lineare non vincolata, e alla comprensione delle problematiche relative ai problemi di apprendimento supervisionato con particolare attenzione a problemi di regressione e problemi di riconoscimento di immagini. Vengono descritte diverse tecniche, a partire dalla regressione lineare e passando poi per reti neurali di complessità crescente.
CAPACITÀ DI APPLICARE CONOSCENZA E COMPRENSIONE: Una frazione significativa del corso è dedicata all'utilizzo pratico delle tecniche descritte teoricamente. Lo studente è incoraggiato – attraverso uso di software dedicati (implementati in python) ad applicare gli strumenti proposti su dataset reali e di letteratura.
AUTONOMIA DI GIUDIZIO: Lo sviluppo di modelli di regressione e classificazione per dataset reali e l'implementazione per mezzo di pacchetti software, consente la verifica quantitativa della qualità delle soluzioni sviluppate dagli studenti. Parte dell'esame consiste nello sviluppo di progetti specifici in team di massimo due persone.
ABILITÀ COMUNICATIVE: L'interpretazione dei risultati ottenuti (a valle della fase implementazione e computazione) costituisce una delle attività fondamentali del processo di definizione di una soluzione di un problema reale, a partire da un modello di classificazione o regressione. Questo tipo di attività obbliga lo studente a un confronto con i colleghi e con il docente in cui sono stimolate le sue capacità critiche e dialettiche.
CAPACITÀ DI APPRENDIMENTO:
Lo studente è esposto (attraverso il materiale didattico proposto) alla lettura di testi di riferimento (sia libri che articoli di ricerca) e alla scoperta di strumenti software recenti e in continuo sviluppo. Viene pertanto messo in condizione di attingere a diversi strumenti al fine di (i) acquisire nuove competenze, (ii) sapersi aggiornare in modo continuo e autonomamente, (iii) intraprendere corsi di approfondimento nell'ambito della disciplina.
|
9
|
ING-INF/05
|
90
|
-
|
-
|
-
|
Attività formative affini ed integrative
|
ITA |
|
8039965 -
COSTRUZIONE DEL SOFTWARE
(obiettivi)
OBIETTIVI FORMATIVI: Tecniche industriali di costruzione di software con sviluppo agile in gruppo ampio e con attività di laboratorio anche distribuito. Metriche software: loro ontologie, sviluppo e impiego. Metodi e strategie per il miglioramento continuo della qualità basato su metriche.
CONOSCENZA E CAPACITÀ DI COMPRENSIONE: Sviluppo e comprensione di progetti software per il web. Metriche per la misura del software. Pianificazione strategica e piano di misure.
CAPACITÀ DI APPLICARE CONOSCENZA E COMPRENSIONE: Applicazione di pattern progettuali allo sviluppo di applicazioni software per il web. Metriche per la misura del software. Pianificazione strategica basata su dati.
AUTONOMIA DI GIUDIZIO: Utilità di una metrica e stadio del suo ciclo di vita. Valutazione del grado di realizzazione di obiettivi strategici di qualità. Valutazione di qualità di architetture software. Esperienza con lavoro di gruppo e conseguente resilienza.
ABILITÀ COMUNICATIVE: Valutare l'utilità di impiego di una metrica nel ciclo di sviluppo del software o in quello di miglioramento della qualità. Acquisire e trasferire requisiti d'utente, discuterli e analizzarli con il cliente e gli altri membri del gruppo agile allo scopo di implementarli in un software.
CAPACITÀ DI APPRENDIMENTO:Attitudine a riconoscere l'esigenza di introdurre nuove metriche. Abilità a riconoscere l'occorrenza di nuovi paradigmi e tecnologie di sviluppo, ad apprenderli ed eventualmente inserirli nel processo di sviluppo del proprio team.
-
CANTONE GIOVANNI
( programma)
Docenti del corso di Costruzione del software sono il prof. ing. Giovanni Cantone e il Dr. Ing. Manuel Mastrofini, PhD. Il programma del corso include: - Evoluzione delle ontologie per la misurazione del software. - Richiami di pattern per la progettazione del software. - Richiami di architetture software e linguaggi per il web. - Evoluzione dell'approccio Agile per lo sviluppo software. - Dalla definizione dei requisiti allo sviluppo di un progetto di taglio industriale con approccio Scrum.
 Nessun testo specifico, le trasparenze e tutto il materiale sviluppato durante il corso sono messe a disposizione dello studente anche tramite video registrati nella piattaforma resa disponibile per la didattica dall'Università.
-
MASTROFINI MANUEL
( programma)
Evoluzione delle ontologie per la misurazione del software. Richiami di pattern per la progettazione del software. Richiami di architetture software e linguaggi per il web. Evoluzione dell'approccio Agile per lo sviluppo software. Dalla definizione dei requisiti allo sviluppo di un progetto di taglio industriale con approccio Scrum.
 Nessun testo specifico, le slide e tutto il materiale sviluppato durante il corso vengono messe a disposizione dello studente anche tramite video registrati nella piattaforma resa disponibile dall'Università.
|
6
|
ING-INF/05
|
60
|
-
|
-
|
-
|
Attività formative affini ed integrative
|
ITA |
|
8039966 -
SISTEMI DI CALCOLO PARALLELO E APPLICAZIONI
(obiettivi)
OBIETTIVI FORMATIVI:
L'’insegnamento di propone di fornire le nozioni fondamentali, i principi architetturali e le metodologie e per la programmazione in ambienti di calcolo parallelo, con particolare enfasi ai modelli di programmazione ed agli strumenti di programmazione più comunemente usati. Il corso copre tre aree principali: la programmazione a scambio di messaggi, con riferimento allo standard MPI, la programmazione su CPU a memoria condivisa, con riferimento allo standard OpenMP, e la programmazione di acceleratori grafici, utilizzando il sistema CUDA.
Con riferimento alle linee guida riportate nel documento: "ACM/IEEE-CS- Computer Science Curricula 2013" (https://www.acm.org/binaries/content/assets/education/cs2013_web_final.pdf), il corso contribuisce a coprire le seguenti aree e relativi obiettivi:
Parallel and Distributed Computing (PD): Introduzione, Fondamenti di Programmazione Parallela, Decomposizione di problemi, Comunicazione e coordinazione Algoritmi paralleli.
CONOSCENZA E CAPACITÀ DI COMPRENSIONE:
Al termine del corso lo studente avrà acquisito le nozioni fondamentali pertinenti alla programmazione parallela, nelle modalità a scambio di messaggi e con l'uso di direttive di compilazione per sistemi a memoria condivisa; avrà inoltre acquisito la conoscenza degli algoritmi fondamentali per applicazioni di calcolo parallelo, con particolare riferimento agli algoritmi tipici del calcolo scientifico, incluse le metodologie di valutazione delle prestazioni.
CAPACITÀ DI APPLICARE CONOSCENZA E COMPRENSIONE:
Al termine del corso lo studente avrà acquisito le metodologie della programmazione parallela e gli strumenti necessari alla costruzione di algoritmi ed applicazioni parallele.
AUTONOMIA DI GIUDIZIO:
Al termine del corso lo studente sarà in grado di selezionare ed applicare i metodi della programmazione parallela per risolvere in autonomia problemi di programmazione al fine di ottenere sistemi caratterizzati da prestazioni ottimali.
ABILITÀ COMUNICATIVE:
Al termine del corso lo studente avrà acquisito padronanza della terminologia relativa ai sistemi di calcolo parallelo, e sarà in grado di comunicare efficacemente le scelte progettuali necessarie nella realizzazione pratica di applicazioni
CAPACITÀ DI APPRENDIMENTO:
Al termine del corso lo studente avrà acquisito la capacità di intraprendere in autonomia ulteriori approfondimenti su argomenti attinenti la programmazione in ambienti di calcolo parallelo, anche con l'acquisizione di nuovi strumenti.
-
FILIPPONE SALVATORE
( programma)
Prima parte Programmazione parallela a memoria distribuita
Concetti generali di programmazione parallela Il modello di programmazione MPI: - Ambiente, tipi di dato; - Comunicazioni punto-punto: blocking, non-blocking, semantica delle comunicazioni - Comunicazioni collettive: globali, non-blocking, neighbour-collectives, comunicazioni persistenti; - Tipi di dato derivati; - Comunicatori, gruppi, topologie; - Comunicazioni one-sided
Esempi applicativi
Cenni ai modelli di programmazione PGAS: CoArrays, UPC.
Seconda parte: Programmazione parallela a memoria condivisa Il modello di programmazione OpenMP: - Programmazione di thread, modello di esecuzione, modello di coerenza della memoria; - Direttive di compilazione, regioni parallele; - Parallelizzazione di cicli; - Gestione della memoria; - Programmazione di task
Esempi applicativi
Terza parte: CUDA - Acceleratori grafici - Programmazione in CUDA - Esempi applicativi
 Peter Pacheco: Parallel Programming in MPI , Morgan Kaufmann R. CHandra et al: Parallel Programming in OpenMP, Morgan Kaufmann
NVIDIA Co.: CUDA Programming guide
|
9
|
ING-INF/05
|
90
|
-
|
-
|
-
|
Attività formative affini ed integrative
|
ITA |
|
8039977 -
TEORIA DEI GIOCHI E BUSINESS ANALYTICS
(obiettivi)
OBIETTIVI FORMATIVI: Lo scopo di questo corso è quello di introdurre la teoria dei giochi e di mostrarne alcune applicazioni con un focus su problemi progetto di reti. Lo studente è introdotto alle conoscenze di base e alle tecniche tipiche della Teoria dei giochi con particolare riferimento ai giochi non-cooperativi, ai giochi cooperativa, alla teoria dei giochi algoritmica.
CONOSCENZA E CAPACITÀ DI COMPRENSIONE: Gli studenti apprenderanno le basi della teoria dei giochi per mezzo di strumenti classici dalla teoria dell'ottimizzazione, principalmente la programmazione lineare e teoria della dualità.
CAPACITÀ DI APPLICARE CONOSCENZA E COMPRENSIONE: L’'uso di strumenti quantitativi, classici dalla teoria dell'ottimizzazione, consente agli studenti di valutare e validare la aderenza dei modelli proposti ai problemi reali. Il focus su Network Design li porterà poi a risolvere alcuni modelli e valutare la qualità delle soluzioni e delle strategie di soluzione proposte.
AUTONOMIA DI GIUDIZIO: Lo sviluppo di modelli quantitativi consentirà di validare i modelli e le soluzioni proposte dagli studenti. Parte dell'esame consiste nello sviluppo di progetti specifici in team.
ABILITÀ COMUNICATIVE: L'interpretazione dei risultati ottenuti costituisce una delle attività fondamentali del processo di risoluzione di un problema a partire da un modello: in un lavoro di squadra questo tipo di attività obbliga lo studente a un confronto con i colleghi in cui sono stimolate le sue capacità critiche e anche dialettiche.
CAPACITÀ DI APPRENDIMENTO: Lo studente è esposto (attraverso il materiale didattico proposto) alla lettura di testi di riferimento non solo didattici ma anche di ricerca (articoli in riviste del settore). Viene pertanto messo in condizione di attingere a diverse fonti bibliografiche al fine di (i) acquisire nuove competenze, (ii) sapersi aggiornare in modo continuo e autonomamente, (iii) intraprendere corsi di approfondimento nell'ambito della disciplina.
-
ORIOLO GIANPAOLO
( programma)
1. Giochi in forma normale. equilibri di Nash. Pareto ottimalità. strategie debolmente e strettamente dominanti. Strategie conservative. Payoff e preordini totali. 2. Un' applicazione delle strategie dominanti: i meccanismi di asta. Aste di primo prezzo e aste secondo prezzo (o di Vickrey). Un'applicazione degli equilibri di Nash: la legislazione di incidente. 3. Giochi antagonistici e a somma zero. Punti di sella ed equilibri di Nash per giochi a somma zero. Giochi strettamente competitivi. 4. Estensione in strategia mista di un gioco antagonistico. L'esistenza di un equilibrio nella strategia mista per i giochi aantagonistico e valore del gioco. Il teorema di von Neumann. Bluff, underbid e poker di Kuhn. 5. i giochi cooperativi. Nucleo di un gioco. Il teorema di Bondareva-Shapley. I mercati con utilità trasferibile. Giochi semplici e valore di Shapley. 6. Giochi cooperativi con l'utilità non trasferibile. Il problema dell'house allocation. Il problema dello stable marriage. 7. Facility location: teoria ed algoritmi risolutivi esatti ed approssimati, deterministici e randomizzati. Algoritmo primale duale e meccanismi di cost sharing. Facility location games. 8. Albero ricoprente di peso minimo: teoria e algoritmi esatti. Alberi di Steiner: teoria ed algoritmi risolutivi esatti ed approssimati. Algoritmo primale duale e meccanismi di cost sharing. Giochi con alberi di Steiner.
 1. Dispense a cura del docente.
|
9
|
MAT/09
|
90
|
-
|
-
|
-
|
Attività formative affini ed integrative
|
ITA |
|
8039979 -
NETWORK AND SYSTEMS DEFENCE
(obiettivi)
OBIETTIVI FORMATIVI
Un utilizzo sicuro dei moderni sistemi informatici richiede che i professionisti di ciascuna area delle tecnologie dell'informazione abbiano una vasta comprensione delle potenziali criticità nell'utilizzo dei sistemi lungo tutto lo stack: hardware, reti di comunicazione, sistemi operativi, applicazioni software, gestione dei dati. In questo modo è possibile riconoscere, in fasi di progettazione o di realizzazione di un sistema ICT, quali siano i possibili pericoli e le contromisure da intraprendere per innalzare il livello di sicurezza. All'interno del corso di Difesa delle reti e dei sistemi verranno mostrate le metodologie e le tecniche alla base di alcune vulnerabilità dei vari livelli dello stack hardware/software, con l'obiettivo di illustrare tecniche e metodologie di difesa per rendere i sistemi più sicuri e resilienti.
Con riferimento alle linee guida riportate nel documento "ACM/IEEE Computing Curricula 2020 - CC2020" (https://www.acm.org/education/curricula-recommendations), il corso contribuisce a coprire le seguenti aree, relativi obiettivi e competenze: - CE-SEC (Information Security): Data security and integrity; Vulnerabilities; Network and web security; Side-channel attacks; Resource protection models; Secret and public-key cryptography; Authentication; Trusted computing - BCIA: Plan procedures, operations, and technologies for managing security and safety in a disaster recovery situation.
CONOSCENZA E CAPACITÀ DI COMPRENSIONE
Al termine del corso lo studente avrà acquisito i concetti fondamentali su possibili superfici di attacco ai vari livelli dello stack hardware e software che possono minare la sicurezza dei sistemi ICT, con una panoramica su moderne tecniche di rilevamento e difesa verso queste minacce. In questo modo, lo studente avrà la capacità di comprendere, in vari contesti legati al mondo ICT, quali sono le possibili criticità in fase di progetto e realizzazione di sistemi complessi.
CAPACITÀ DI APPLICARE CONOSCENZA E COMPRENSIONE
Al termine del corso lo studente avrà acquisito le metodologie proprie dell'analisi, progettazione, configurazione e valutazione di un sistema ICT dal punto di vista della sicurezza informativa. Particolare enfasi viene data alla comprensione degli aspetti fondamentali delle metodologie legate all'innalzamento del livello della sicurezza informatica, permettendo quindi allo studente di riportare le competenze acquisite in vari contesti reali.
AUTONOMIA DI GIUDIZIO
Al termine del corso lo studente sarà in grado di valutare i relativi vantaggi e svantaggi di determinate scelte progettuali all'interno di un sistema ICT dal punto di vista della sicurezza informatica. In questo modo, lo studente sarà in grado di scegliere, fra le diverse alternative, la soluzione adeguata alle proprie esigenze in base al problema sotto esame.
ABILITÀ COMUNICATIVE
Al termine del corso lo studente avrà acquisito padronanza della terminologia relativa alla sicurezza informatica nell'ambito dei sistemi e delle reti, sarà in grado di descrivere i concetti fondamentali con termini e linguaggio tecnico appropriato e, in fase progettuale, di argomentare circa le varie alternative a livello hardware e software.
CAPACITÀ DI APPRENDIMENTO
Al termine del corso lo studente avrà acquisito la capacità di intraprendere in autonomia ulteriori approfondimenti su argomenti inerenti allea sicurezza dei sistemi e delle reti e di utilizzare le conoscenze e metodologie imparate per affrontare problemi nuovi.
|
9
|
ING-INF/03
|
90
|
-
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
|
8039964 -
ANALISI DEL MALWARE
(obiettivi)
[OBIETTIVI FORMATIVI] L'insegnamento si propone di fornire agli studenti gli strumenti teorici, metodologici e pratici che consentono l'analisi di programmi "malevoli" in formato eseguibile il cui codice è potenzialmente nascosto, offuscato o protetto. Con riferimento alle linee guida riportate nel documento: "ACM/IEEE-CS- Computer Science Curricula 2013", il corso contribuisce a coprire le seguenti aree e relativi obiettivi: Operating Systems (OS), Architecture and Organization (AR), Systems Fundamentals (SF). [CONOSCENZA E CAPACITÀ DI COMPRENSIONE] Al termine dell'insegnamento lo studente sarà in grado di classificare i diversi tipi di malware e di saper valutare l'utilizzo di diverse tecniche di analisi per ricostruire il funzionamento e le operazioni di un qualsiasi programma, anche non preventivamente noto. [CAPACITÀ DI APPLICARE CONOSCENZA E COMPRENSIONE] Sarà inoltre in grado di applicare tecniche basate su sandbox, monitor, disassemblatori e debugger, superando eventuali meccanismi di protezione ed offuscamento ed inibendo i meccanismi di comunicazione e replicazione. [AUTONOMIA DI GIUDIZIO] Saprà integrare le varie e diverse conoscenze richeste dal lavoro di analisi dei programmi e formulare giudizi di merito sull'impatto e la pericolosità di programmi malevoli nei sistemi informatici interessati. [ABILITÀ COMUNICATIVE] Sarà in grado di comunicare efficacemente con i responsabili dei sistemi informativi, anche se non specializzati nel campo della sicurezza informatica. [CAPACITÀ DI APPRENDIMENTO] Sarà infine in grado di aggiornare autonomamente le proprie conoscenze per tenere conto della rapidissima evoluzione della tecnologia del malware.
-
CESATI MARCO
( programma)
Tecniche di base di Reverse Code Engineering "black box" e "white box". Analisi statica del codice. Uso di macchine virtuali. Linguaggio Assembly Intel x86. Utilizzo di IDA Pro e Ghidra. Ricostruzione di un programma ad alto livello dalle istruzioni Assembly. Esercizi di analisi statica di malware per Windows. Metodologia di RCE "gray box". Uso di un debugger per l'analisi del codice. Utilizzo di IDA Pro, OllyDbg, WinDbg per l'analisi di eseguibili per Windows. Funzionalita' del malware. Comportamento generale. Operazioni di base: lancio, codifica dei dati, comunicazioni. Meccanismi di protezione anti-RCE: anti-disassembler, anti-debugger, anti-sandboxing. Programmi pacchettatori e contromisure. Casi speciali: analisi di shellcode e analisi di codice ad oggetti.
 Practical Malware Analysis: The Hands-On Guide to Dissecting Malicious Software (English Edition), No Starch Press; 1° edizione, 2012. ISBN-10 : 1593272901 ISBN-13 : 978-1593 272906
|
6
|
ING-INF/05
|
60
|
-
|
-
|
-
|
Attività formative affini ed integrative
|
ITA |
|
8067437 -
NATURAL LANGUAGE PROCESSING
(obiettivi)
OBIETTIVI FORMATIVI: Il corso si propone di introdurre lo studente agli scopi, alle principali problematiche e ai principali modelli simbolici dell'elaborazione del linguaggio naturale. CONOSCENZA E CAPACITÀ DI COMPRENSIONE: Lo studente conoscerà le principali tematiche dell'elaborazione del linguaggio naturale. CAPACITÀ DI APPLICARE CONOSCENZA E COMPRENSIONE: Alla fine del corso, lo studente sarà in grado di implementare un modello di elaborazione del linguaggio. AUTONOMIA DI GIUDIZIO: Le lezioni sono organizzate di modo da permettere allo studente di valutare le informazioni presenti nella rete. Questo è necessario per permettere loro di scegliere nel mare magum della rete le informazioni che sono utili per trovare soluzioni ai problemi dati. ABILITÀ COMUNICATIVE: Allo studente viene richiesto di presentare alcuni argomenti durante le lezioni al fine di affinare la sua arte oratoria. Inoltre, l'esame prevede una presentazione orale davanti agli altri studenti. CAPACITÀ DI APPRENDIMENTO: Nel corso puntiamo molto sulla capacità di selezione delle informazioni come principale capacità di apprendimento.
|
9
|
ING-INF/05
|
90
|
-
|
-
|
-
|
Attività formative affini ed integrative
|
ITA |
|
|
8039963 -
SISTEMI OPERATIVI AVANZATI E SICUREZZA DEI SISTEMI
(obiettivi)
Il corso si propone di presentare metodi e tecniche avanzate per la progettazione e l'implementazione dei sistemi operativi. Esso fornisce anche approfondimenti sulle effettive operazioni eseguite a livello hardware nei processori moderni, compresi gli effetti del parallelismo hardware implicito ed esplicito, e illustra come questi abbiano impatto sugli approcci di progettazione del software. Gli argomenti trattati dal corso sono legati a casi di studio orientati ai sistemi Linux ed a processori x86. Forte attenzione viene posta sui metodi e sulle tecniche per la sicurezza nei sistemi, e sulle criticità di sicurezza derivanti dalle interazioni dell'hardware con il software. Il corso richiede conoscenze di base sulla struttura e sulle funzionalità dei sistemi operativi e conoscenze di programmazione in linguaggi C/ASM.
CONOSCENZA E CAPACITÀ DI COMPRENSIONE: Al termine del corso lo studente sarà in grado di comprendere il funzionamento dei sistemi operativi, anche per quel che concerne il livello kernel, e le interazioni che avvengono tra questo ed il software delle applicazioni sviluppate su di esso. CAPACITÀ DI APPLICARE CONOSCENZA E COMPRENSIONE: Al termine del corso lo studente sarà in grado di progettare e sviluppare nuove parti di un sistema operativo, in particolare per quel che concerne sistemi Linux. AUTONOMIA DI GIUDIZIO: Lo studente viene abituato a ragionare in maniera critica su scelte alternative di progetto e sviluppo, e su come queste possano poi avere impatto su aspetti funzionali e non funzionali del software. ABILITÀ COMUNICATIVE: Il superamento dell'esame prevede che lo studente affronti una prova scritta e lo sviluppo un progetto software, nelle quali deve essere in grado di esporre correttamente gli argomenti e presentare in modo chiaro la struttura del software sviluppato. CAPACITÀ DI APPRENDIMENTO: Una parte del materiale didattico è costituito da manuali e documentazione per il sistema operativo Linux. Lo studente impara ad usare ed interpretare in modo autonomo la manualistica di comune uso nello sviluppo del software di sistema.
-
QUAGLIA FRANCESCO
( programma)
Approfondimenti sull'hardware Processori pipelining e superscalari Hardware speculativo Multiprocessori e multi-core Organizzazione della memoria fisica Coerenza e consistenza della memoria Supporti per la sincronizzazione hardware Architetture di interrupt avanzate
Kernel Internals Indirizzamento e modelli di protezione del software GATE di accesso al kernel Dispatching delle chiamate di sistema Gestione della memoria a livello di sistema Gestione avanzata degli interrupt Scalabilita' del kernel Strutturazione del file system virtuale Interazioni del software con la gerarchia di memoria Approcci avanzati di coordinamento dei thread
Sicurezza Aspetti di sicurezza del sistema Autenticazione e abilitazione Domini di protezione e sistemi operativi sicuri Attacchi interni al sistema e contromisure Architetture IDS e Reference Monitor Attacchi al confine tra hardware e software
Casi di studio: kernel Linux 2.4 / 2.6 / 3.xx / 4.xx (architetture x86) Nozioni di base Principali strutture dati ed inizializzazione Comportamento a regime Kernel hacking Moduli
 William Stallings, "Operating Systems". Jackson Libri.
Abraham Silberschatz, Peter B. Galvin, "Operating Systems". Addison Wesley
Andrew S. Tanenbaum, "Modern Operating Systems". Jackson Libri.
|
9
|
ING-INF/05
|
90
|
-
|
-
|
-
|
Attività formative caratterizzanti
|
ITA |