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 2023
Erogato
2023/24
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 tutti i martedì e i giovedì dalle 11 alle 13.
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 progetto da svolgere a casa, un esame scritto da svolgere in aula tramite LibreEOL e una verifica orale delle conoscenze.
Il progetto è necessario per verificare l'apprendimento delle conoscenze relative al modulo di sistemi operativi.
Il voto finale sarà dato dalla media pesata dei risultati ottenuti alla prova scritta e alla prova orale.
Lo scritto avrà peso 70%, l'orale avrà un peso pari al 30% del voto finale.
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.
Condividi su