Studiare
In questa sezione è possibile reperire le informazioni riguardanti l'organizzazione pratica del corso, lo svolgimento delle attività didattiche, le opportunità formative e i contatti utili durante tutto il percorso di studi, fino al conseguimento del titolo finale.
Calendario accademico
Il calendario accademico riporta le scadenze, gli adempimenti e i periodi rilevanti per la componente studentesca, personale docente e personale dell'Università. Sono inoltre indicate le festività e le chiusure ufficiali dell'Ateneo.
L’anno accademico inizia il 1° ottobre e termina il 30 settembre dell'anno successivo.
Calendario didattico
Il calendario didattico indica i periodi di svolgimento delle attività formative, di sessioni d'esami, di laurea e di chiusura per le festività.
Periodo | Dal | Al |
---|---|---|
I sem. | 2-ott-2017 | 31-gen-2018 |
II sem. | 1-mar-2018 | 15-giu-2018 |
Sessione | Dal | Al |
---|---|---|
Sessione invernale d'esame | 1-feb-2018 | 28-feb-2018 |
Sessione estiva d'esame | 18-giu-2018 | 31-lug-2018 |
Sessione autunnale d'esame | 3-set-2018 | 28-set-2018 |
Sessione | Dal | Al |
---|---|---|
Sessione di laurea estiva | 18-lug-2018 | 18-lug-2018 |
Sessione di laurea autunnale | 22-nov-2018 | 22-nov-2018 |
Sessione di laurea invernale | 20-mar-2019 | 20-mar-2019 |
Periodo | Dal | Al |
---|---|---|
Vacanze di Natale | 22-dic-2017 | 7-gen-2018 |
Vacanze di Pasqua | 30-mar-2018 | 3-apr-2018 |
Festa del Santo Patrono - S. Zeno | 21-mag-2018 | 21-mag-2018 |
Vacanze estive | 6-ago-2018 | 19-ago-2018 |
Calendario esami
Gli appelli d'esame sono gestiti dalla Unità Operativa Segreteria Corsi di Studio Scienze e Ingegneria.
Per consultazione e iscrizione agli appelli d'esame visita il sistema ESSE3.
Per problemi inerenti allo smarrimento della password di accesso ai servizi on-line si prega di rivolgersi al supporto informatico della Scuola o al servizio recupero credenziali
Docenti
Ugolini Simone
simone.ugolini@univr.itPiano Didattico
Il piano didattico è l'elenco degli insegnamenti e delle altre attività formative che devono essere sostenute nel corso della propria carriera universitaria.
Selezionare il piano didattico in base all'anno accademico di iscrizione.
1° Anno
Insegnamenti | Crediti | TAF | SSD |
---|
2° Anno Attivato nell'A.A. 2018/2019
Insegnamenti | Crediti | TAF | SSD |
---|
3° Anno Attivato nell'A.A. 2019/2020
Insegnamenti | Crediti | TAF | SSD |
---|
Insegnamenti | Crediti | TAF | SSD |
---|
Insegnamenti | Crediti | TAF | SSD |
---|
Insegnamenti | Crediti | TAF | SSD |
---|
Legenda | Tipo Attività Formativa (TAF)
TAF (Tipologia Attività Formativa) Tutti gli insegnamenti e le attività sono classificate in diversi tipi di attività formativa, indicati da una lettera.
Tipologia di Attività formativa D e F
Insegnamenti non ancora inseriti
Elementi di architettura e sistemi operativi (2018/2019)
Codice insegnamento
4S02717
Crediti
12
Lingua di erogazione
Italiano
Settore Scientifico Disciplinare (SSD)
ING-INF/05 - SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI
L'insegnamento è organizzato come segue:
Teoria
Laboratorio
Obiettivi formativi
Conoscenza e capacità di comprensione: gli studenti acquisiranno nozioni teoriche e pratiche per la realizzazione in forma digitale di un algoritmo presentando le possibili alternative dalla costruzione di un dispositivo digitale dedicato all'utilizzo di un processore universale; capiranno i fondamenti dei meccanismi di funzionamento di un processore e del processo di traduzione di un programma da codice astratto a linguaggio macchina e della sua esecuzione; comprenderanno l’organizzazione di un sistema informatico e del sistema operativo che lo gestisce con le problematiche connesse di correttezza ed efficienza.
Capacità di applicare conoscenza e comprensione: gli studenti saranno in grado di progettare architetture digitali dedicate per algoritmi semplici; tradurre programmi semplici da una descrizione ad alto livello in linguaggio macchina; scrivere procedure interpretate di sistema utilizzando chiamate di sistema nel linguaggio C per l'ambiente UNIX; gestire sistemi informatici, con particolare attenzione all'installazione e all'amministrazione di applicativi e risorse.
Programma
Architettura dei calcolatori.
Introduzione all'architettura degli elaboratori.
Realizzazione di funzioni logiche elementari con circuiti a interruttore e porte logiche CMOS.
Tipologie di circuiti: digitali e analogici; combinatori e sequenziali; sequenziali sincroni e asincroni.
Introduzione alla logica combinatoria.
Assiomi e teoremi dell'algebra di Boole.
Riscrittura di espressioni con le regole dell'algebra di Boole.
Forme normali congiuntive e disgiuntive.
Funzioni incompletamente specificate.
Ipercubi Booleani e mappe di Karnaugh.
Minimizzazione logica usando le mappe di Karnaugh.
Implicanti, primi ed essenziali.
Calcolo degl'implicanti primi di funzioni a una o piu' uscite.
Minimizzazione esatta con il metodo di Quine-McCluskey.
Ritardi nei circuiti combinatori e circuiti oscillatori.
Logica regolare e programmabile per circuiti combinatori.
Selettori e deselettori.
Progettazione di circuiti combinatori dalla specifica in linguaggio naturale alla realizzazione in una tecnologia data.
Linguaggi di descrizione dei sistemi elettronici.
Aritmetica binaria con numeri negativi.
Condizioni di trabocco in complemento a due.
Rappresentazione dei numeri reali con aritmetica in virgola fissa e virgola mobile.
Addizionatori a propagazione di riporto, ad anticipo di riporto, a selezione di riporto.
Addizionatore binario modulo e segno e addizionatore di numeri in codifica BCD.
Sottrattore binario.
Unita' aritmetico-logica.
Introduzione alla logica a piu' livelli.
Conversione tra AND/OR, OR/AND e NAND, NOR.
Introduzione ai circuiti sequenziali.
Lucchetto ("latch").
Cella di memoria statica con coppia ad anello d'invertitori.
Cella di memoria SR con coppia di porte NOR (o NAND) incrociate.
Bistabili ("flip-flop").
Metodologie di temporarizzazione sincrona.
Registri di base. Registri a scorrimento. Contatori.
Analisi di registri a scorrimento e contatori dallo schema logico al grafo degli stati.
Sintesi di registri a scorrimento e contatori dal grafo degli stati allo schema logico.
Analisi e sintesi di macchine a stati finiti.
Macchine di Moore, Mealy, Mealy sincronizzate.
Trasformazione da macchine di Moore a macchine di Moore temporizzate.
Confronto tra macchine di Moore temporizzate e macchine di Mealy sincronizzate.
Minimizzazione degli stati di macchine a stati finiti.
Impatto della minimizzazione degli stati sulla minimizzazione logica.
Codifica degli stati di macchine a stati finiti.
Progettazione di circuiti sequenziali dalla specifica,
alla macchina a stati finiti, alla rappresentazione logica minimizzata.
Relazioni tra i percorsi critici e la frequenza/periodo di un circuito sequenziale.
Architettura di un processore.
Unita' di controllo e unita' esecutiva.
Ciclo di prelievo-decodifica-esecuzione di un'istruzione.
Tipi d'istruzioni. Registri fondamentali.
Interazione con le unita' d'ingresso-uscita.
Cicli di esecuzione delle operazioni di somma tra registri,
lettura/scrittura da/a memoria, salto (macchina di Mealy sincrona).
Macchine a stati finite estese.
Progettazione di processori dedicati: esempio del processore che realizza l'algoritmo di Euclide del Massimo Comun Divisore.
Esercizi di laboratorio: programmazione nel linguaggio macchina dell'architettura LC-3.
Sistemi Operativi.
Introduzione ai sistemi operativi.
Cronistoria dei sistemi di calcolo e dei sistemi operativi:
- da ENIAC fino ai sistemi distribuiti fine anni 80;
- da Internet fine anni 80 fino alla nuvola e ai sistemi mobili odierni.
Funzioni del sistema operativo: l'esempio di protezione della memoria con traduzione degl'indirizzi e modalita' nucleo-utente.
Multiprogrammazione, concorrenza e spazi d'indirizzamento.
Processi e flussi esecutivi ("threads") come meccanismi di gestione della protezione della memoria e della concorrenza.
Stati di un processo, code degli stati di un processo, cambiamenti di stato.
Esempio di gestione con la pila ("stack") delle chiamate a procedura.
Chiamate principali di sistema per gestire la creazione, esecuzione, interruzione, commutazione di contesto, duplicazione ("fork") e confluenza ("join"), terminazione di flussi esecutivi ("threads").
Eventi interni ed esterni per l'interruzione volontaria o la prelazione.
Interruzioni.
Gestione dei flussi esecutivi in modalita' sistema operativo oppure utente.
Multiprogrammazione.
Introduzione alla concorrenza.
Gestione di servizi di rete con gruppi di flussi esecutivi di servizio ("threaded web server").
Programmazione di servizi di rete di tipo ATM con gestione ad eventi.
Analisi di un esempio paradigmatico di agenti concorrenti rispetto a una sezione critica.
Il problema dell'attesa attiva.
Definizione di sezioni critiche mediante la disabilitazione/riabilitazione delle interruzioni.
Disabilitazione delle interruzioni durante la sezione critica o durante l'acquisizione e rilascio dei lucchetti.
Istruzioni macchina atomiche per lettura-modifica-scrittura e loro uso per definire sezioni critiche.
I semafori. Il problema produttori-consumatori con i semafori.
I monitor.
Gestione di una coda infinita con i monitor.
Il problema dei lettori-scrittori con i monitor.
Confronto tra monitor e semafori.
Gestione di una lista con l'istruzione atomica compare-and-swap.
Contesa sulle risorse e stallo.
Algoritmo per rilevare lo stallo.
Algoritmo del banchiere per evitare uno stallo.
Schedulazione di processi.
Algoritmi FIFO, RR, minimo tempo di completamento senza e con prelazione, lotteria.
Schedulazione con piu' code di priorita'.
Valutazione degli algoritmi di schedulazione.
Gestione della memoria principale.
Schemi di traduzione degl'indirizzi da virtuali a fisici:
rilocazione, segmentazione semplice, multi-segmentazione, impaginazione, multi-livello: segmentazione + impaginazione, impaginazione a due livelli, tavola inversa.
Ruolo del sistema operativo nella traduzione degl'indirizzi.
Formato di un elemento nella tavola delle pagine.
Introduzione al concetto di cache e gerarchia della memoria come gerarchia di cache a piu' livelli.
Cache a indirizzamento diretto, associativo a piu' vie, completamento associativo.
TLB come cache delle traduzioni degl'indirizzi da virtuali a fisici.
Gestione dell'insuccesso nell'accesso a una TLB.
Organizzazione della TLB, e accesso in parallelo alla TLB e cache dei dati.
Memoria virtuale e impaginazione su richiesta.
Meccanismo dell'impaginazione su richiesta e gestione di una mancanza di pagina. Eccezioni trasparenti e precise.
Politiche di rimpiazzo della pagine: FIFO, MIN, LRU, casuale.
Anomalia di Belady.
Algoritmo dell'orologio e della seconda scelta.
Saturazione del sistema per il sovraccarico di accessi in memoria
("thrashing"). Insieme di lavoro.
Dispositivi d'ingresso-uscita.
Laboratorio: programmazione di sistema e dell'interfaccia dei comandi con il linguaggio C.
Bibliografia
Attività | Autore | Titolo | Casa editrice | Anno | ISBN | Note |
---|---|---|---|---|---|---|
Teoria | R.Katz, G.Borriello | Contemporary logic design (Edizione 2) | Pearson Education International | 2005 | 0-13-127830-4 | |
Teoria | Franco Fummi, Mariagiovanna Sami, Cristina Silvano | Progettazione Digitale (Edizione 2) | McGraw-Hill | 2007 | 8838663521 |
Modalità d'esame
Le competenze sono verificate con una prova scritta di teoria e con una prova scritta e di programmazione per il laboratorio; il voto della prima contribuisce per i 3/4 del voto finale e quello della seconda per 1/4.
Materiale e documenti
- Architettura - Cap. 1-10 CLD Borriello-Katz (en, 745 KB, 01/10/18)
- Architettura - Dispense LC3-Patt (it, 6576 KB, 03/12/18)
- Architettura - Lezioni Vahid (it, 291 KB, 03/12/18)
- Lezione Storia dei Sistemi di Calcolo (en, 3100 KB, 11/01/19)
- Lezioni UCB Sistemi Operativi (fino a lez. 15) (en, 9620 KB, 11/01/19)
- XX-TV Temi d'esame (it, 3914 KB, 23/11/18)
- BASH - Elenco comandi di base shell (it, 236 KB, 29/03/19)
- BASH - Esercizi di base gestione file e procesi (it, 228 KB, 29/03/19)
- BASH - Esercizi su utilizzo SHELL (it, 2 KB, 05/04/19)
- BASH - Lucidi Unix Shell.pdf (it, 4992 KB, 22/03/19)
- BASH- Progetto di laboratorio 2019.pdf (it, 545 KB, 25/04/19)
- LC3 - ASCII TABLE.pdf (it, 91 KB, 22/03/19)
- LC3 - Esercizi.pdf (it, 255 KB, 22/03/19)
- LC3 - IstructionSet.pdf (it, 43 KB, 08/03/19)
- LC3 - Lezione1.pdf (it, 474 KB, 08/03/19)
- LC3 - Lezione2.pdf (it, 540 KB, 08/03/19)
- LC3 - Lezione3.pdf (it, 409 KB, 15/03/19)
- SystemCall - Esercizio su fork dup exec (it, 1 KB, 27/05/19)
- SystemCall - Esercizio su fork dup exec Pipe (it, 1 KB, 27/05/19)
Prospettive
Avvisi degli insegnamenti e del corso di studio
Per la comunità studentesca
Se sei già iscritta/o a un corso di studio, puoi consultare tutti gli avvisi relativi al tuo corso di studi nella tua area riservata MyUnivr.
In questo portale potrai visualizzare informazioni, risorse e servizi utili che riguardano la tua carriera universitaria (libretto online, gestione della carriera Esse3, corsi e-learning, email istituzionale, modulistica di segreteria, procedure amministrative, ecc.).
Entra in MyUnivr con le tue credenziali GIA: solo così potrai ricevere notifica di tutti gli avvisi dei tuoi docenti e della tua segreteria via mail e anche tramite l'app Univr.
Docenti tutor
Prova Finale
Alla prova finale sono riservati 3 crediti. L'esame di laurea consiste in un colloquio che può essere basato su un breve elaborato scritto, un esame orale, o un esame scritto. La forma e i contenuti dell'esame vengono concordati tra lo studente e il docente referente (relatore), il quale sarà anche membro della Commissione d'esame. Il colloquio può riguardare approfondimenti di argomenti non trattati durante la normale attività didattica, oppure può mettere in luce problematiche e metodologie affrontate durante un'attività di tirocinio. Su proposta del relatore la prova finale/elaborato può essere compilata e discussa in lingua straniera.
Il punteggio finale di Laurea è stabilito da una apposita Commissione di Laurea secondo le modalità indicate nel Regolamento di Ateneo, che esprime un giudizio finale in centodecimi con eventuale lode.
Il relatore dell'esame di laurea potrà essere un qualunque docente strutturato dell'Ateneo che soddisfa almeno uno dei seguenti requisiti: componente del Collegio Didattico del corso di laurea, oppure componente del Dipartimento di Informatica, oppure che insegna in un SSD presente nel piano del corso di laurea.
Il punteggio minimo per il superamento dell'esame finale è di 66/110. II voto di ammissione è determinato rapportando la media pesata sui CFU degli esami di profitto a 110 e successivamente arrotondando il risultato all'intero più vicino. A parità di distanza, si arrotonda all'intero superiore. Per media degli esami di profitto si intende la media ponderata sui crediti. E' previsto un incremento al massimo di 8/110 rispetto al voto di ammissione, di cui 4 punti riservati alla valutazione dell'esame di laurea da parte della commissione di esame composta da due docenti e 4 punti riservati alla valutazione del curriculum della/o studentessa/studente. La valutazione del curriculum avviene attraverso un calcolo basato sul seguente schema (che tiene conto in maniera positiva di eventuali lodi e periodi Erasmus ed in maniera negativa di eventuali anni fuori corso): se in corso: 3,5 + 0,2 * numero lodi; se fuori corso: 3,5 –0,5 * numero anni fuori corso + 0,1 * numero lodi; 1 punto ogni 3 mesi di Erasmus effettuato.
L'attribuzione della lode, nel caso di un incremento che porti ad una votazione che raggiunga o superi 110/110, è a discrezione della Commissione di Laurea nonché attribuita se il parere dei membri della commissione è unanime.
Modalità e sedi di frequenza
Come riportato nel Regolamento Didattico, la frequenza al corso di studio non è obbligatoria.
È consentita l'iscrizione a tempo parziale. Per saperne di più consulta la pagina Possibilità di iscrizione Part time.
Le attività didattiche del corso di studi si svolgono negli spazi dell’area di Scienze e Ingegneria che è composta dagli edifici di Ca’ Vignal 1, Ca’ Vignal 2, Ca’ Vignal 3 e Piramide, siti nel polo di Borgo Roma.
Le lezioni frontali si tengono nelle aule di Ca’ Vignal 1, Ca’ Vignal 2, Ca’ Vignal 3 mentre le esercitazioni pratiche nei laboratori didattici dedicati alle varie attività.
Caratteristiche dei laboratori didattici a disposizione degli studenti
- Laboratorio Alfa
- 50 PC disposti in 13 file di tavoli
- 1 PC per docente collegato a un videoproiettore 8K Ultra Alta Definizione per le esercitazioni
- Configurazione PC: Intel Core i3-7100, 8GB RAM, 250GB SSD, monitor 24", Linux Ubuntu 24.04
- Tutti i PC sono accessibili da persone in sedia a rotelle
- Laboratorio Delta
- 120 PC in 15 file di tavoli
- 1 PC per docente collegato a due videoproiettori 4K per le esercitazioni
- Configurazione PC: Intel Core i3-7100, 8GB RAM, 250GB SSD, monitor 24", Linux Ubuntu 24.04
- Un PC è su un tavolo ad altezza variabile per garantire un accesso semplificato a persone in sedia a rotelle
- Laboratorio Gamma (Cyberfisico)
- 19 PC in 3 file di tavoli
- 1 PC per docente con videoproiettore 4K
- Configurazione PC: Intel Core i7-13700, 16GB RAM, 512GB SSD, monitor 24", Linux Ubuntu 24.04
- Laboratorio VirtualLab
- Accessibile via web: https://virtualab.univr.it
- Emula i PC dei laboratori Alfa/Delta/Gamma
- Usabile dalla rete universitaria o tramite VPN dall'esterno
- Permette agli studenti di lavorare da remoto (es. biblioteca, casa) con le stesse funzionalità dei PC di laboratorio
Caratteristiche comuni:
- Tutti i PC hanno la stessa suite di programmi usati negli insegnamenti di laboratorio
- Ogni studente ha uno spazio disco personale di XXX GB, accessibile da qualsiasi PC
- Gli studenti quindi possono usare qualsiasi PC in qualsiasi laboratorio senza limitazioni ritrovando sempre i documenti salvati precedentemente
Questa organizzazione dei laboratori offre flessibilità e continuità nel lavoro degli studenti, consentendo l'accesso ai propri documenti e all'ambiente di lavoro da qualsiasi postazione o da remoto.