Insegnamento ELEMENTI DI ARCHITETTURA DEGLI ELABORATORI E SISTEMI OPERATIVI

Corso
Programmazione e gestione di sistemi informatici
Codice insegnamento
A003645
Curriculum
Comune a tutti i curricula
Docente
Damiano Perri
Docenti
  • Damiano Perri
Ore
  • 42 ore - Damiano Perri
CFU
6
Regolamento
Coorte 2025
Erogato
2025/26
Attività
Base
Ambito
Formazione informatica, matematica e statistica di base
Settore
INF/01
Tipo insegnamento
Obbligatorio (Required)
Tipo attività
Attività formativa monodisciplinare
Lingua insegnamento

ITALIANO
Contenuti

Il corso è diviso in due moduli.
Il primo modulo è Architettura degli Elaboratori, il secondo è Sistemi Operativi.
Il primo modulo introduce le basi fondamentali per comprendere le architetture degli elaboratori.
Il secondo modulo, Sistemi Operativi, tratterà nello specifico il sistema operativo Unix, la gestione dei processi, l'allocazione delle risorse del sistema operativo e Bash.

Testi di riferimento

La letteratura consigliata è la seguente:
1) Andrew S. Tanenbaum, Architettura dei Calcolatori un approccio strutturale, Pearson
2) Abraham Silberschatz et Al, Sistemi operativi. Concetti ed esempi, Pearson

Oltre ai due testi consigliati il docente fornirà del materiale di studio aggiuntivo sotto forma di slide che sarà sufficiente alla preparazione dell'esame.

Obiettivi formativi

Alla fine di questo corso, gli studenti comprenderanno le architetture dei sistemi informatici.
Gli studenti saranno in grado di comprendere il funzionamento dei sistemi operativi, i clici di vita dei processi e le principali tecniche per evitare deadlock e allocare correttamente le risorse della macchina.

Prerequisiti

Nessun prerequisito richiesto

Metodi didattici

Il corso prevede lezioni teoriche e discussioni in classe. Le lezioni saranno frontali e si svolgeranno in aula presso il DMI secondo il calendario pubblicato sul sito del dipartimento.
Altre informazioni

Il docente è disponibile ad erogare lezioni frontali, esercitazioni e sessioni di esami in lingua Inglese. Il docente è disponibile a sostenere l'esame in lingua Inglese.
Modalità di verifica dell'apprendimento

La valutazione del corso avverrà tramite un esame scritto da svolgere in aula tramite LibreEOL e un esame orale.
Programma esteso

Il corso è diviso in due moduli. Il primo modulo è Architettura degli Elaboratori, il secondo è Sistemi Operativi. Il primo modulo introduce le basi fondamentali per comprendere le architetture degli elaboratori. Verranno illustrati i principali eventi storici che hanno portato alle architetture moderne trattando le principali generazioni nelle architetture dei computer. Verranno poi trattati i seguenti argomenti: organizzazione della CPU, differenze e caratteristiche di RISC e CISC, la memoria principale, la memoria secondaria, la tecnica Hit and miss, l'input e l'output, il livello logico digitale con richiami a porte logiche e circuiti, il livello di microarchitettura, il livello di architettura ISA ed esempi di istruzioni, ciclo per l'esecuzione di una istruzione, le interruzioni, i sistemi RAID. Il secondo modulo, Sistemi Operativi, tratterà nello specifico: il sistema operativo Unix, le sue caratteristiche e gli schemi di funzionamento che lo governano, i processi, i thread e il loro ciclo di vita. Successivamente verrà trattata: la sincronizzazione dei processi, il blocco critico, lo scheduling della CPU, lo scheduling dei sistemi I/O. Il corso proseguirà trattando: la struttura del file system, e si concluderà con la spiegazione di come si utilizza bash, sia tramite approfondimenti teorici che tramite esercizi pratici di programmazione.
Obiettivi Agenda 2030 per lo sviluppo sostenibile

Questo insegnamento concorre alla realizzazione degli obiettivi ONU dell'Agenda 2030 per lo Sviluppo Sostenibile