88155 - INFORMATICA INDUSTRIALE P

Anno Accademico 2023/2024

  • Docente: Riccardo Venanzi
  • Crediti formativi: 6
  • SSD: ING-INF/05
  • Lingua di insegnamento: Italiano
  • Moduli: Riccardo Venanzi (Modulo 1) Matteo Sartini (Modulo 2)
  • Modalità didattica: Convenzionale - Lezioni in presenza (Modulo 1) Convenzionale - Lezioni in presenza (Modulo 2)
  • Campus: Bologna
  • Corso: Laurea in Meccatronica (cod. 5818)

    Valido anche per Laurea in Meccatronica (cod. 6009)

Conoscenze e abilità da conseguire

Al termine del modulo lo studente conosce i criteri di progetto del software di automazione orientati a favorirne la portabilità in ambienti di esecuzione differenziati. In particolare lo studente è in grado di applicare, con riferimento a relativamente semplici sistemi, l’approccio progettuale “divide et impera”, procedendo alla definizione del ruolo delle singole entità costituenti ed identificando idonei modelli per la descrizione formale del loro comportamento.

Contenuti

Il corso si articola in due parti. Nella prima parte, allo studente vengono presentati argomenti nel contesto dei moderni sistemi operativi; loro evoluzione, concetto di processo, gestione della memoria e sistemi di input/output. Nella seconda parte del corso lo studente impara a conoscere e ad utilizzare design patterns di generale applicabilità nel contesto della progettazione del software di automazione.


Parte #1: Introduzione ai Moderni Sistemi Operativi (30 h)

  • Visione storica del Sistema Operativo e principali sotto-sistemi.

  • Gestione dei Processi: definizione, strutture, concorrenza, sincronizzazione, ordinamento (con ceni all'ordinamento a tempo reale), stallo.
  • Gestione della Memoria: gerarchie, rilocazione, strutture, memoria virtuale, paginazione.

  • Modelli e Architetture di Sistemi Operativi: discussione sulle scelte progettuali dei sistemi UNIX/Linux e dei sistemi Windows.

Parte #2: Design patterns nel contesto del software di automazione (30 h)

 

  • Peculiarità delle applicazioni multitasking real-time. Parametri temporali e modelli di riferimento per le diverse tipologie di task real-time.
  • Principali strategie per la schedulazione di applicazioni comprendenti una molteplicità di task periodici: “Rate Monotonic Priority Ordering” e “Earliest Deadline First”. Il fondamentale requisito della predicibilità delle prestazioni: metodi per la verifica a priori della schedulabilità di un’applicazione.
  • Criteri di progetto del software di automazione orientati a favorirne la portabilità in ambienti di esecuzione differenziati.L’approccio progettuale “divide et impera”. Il fondamentale principio della distinzione dei tre aspetti “what to do”, “when to do”, “how to do”.

    o Decomposizione funzionale di un sistema complesso in termini di una gerarchia di entità, astratte o concrete, opportunamente cooperanti.
    o Definizione del ruolo e delle funzionalità di ciascuna entità (“what to do”), nonché delle relative interfacce e dei protocolli previsti per l’interazione con le altre entità operanti nello stesso livello o nei livelli adiacenti della gerarchia.
    o Modelli di riferimento per la definizione formale del comportamento delle singole entità (“how to do”).
    o Modelli di riferimento per la definizione delle modalità di esecuzione dei compiti delle singole entità (“when to do”).

  • Esemplificazione degli aspetti di carattere teorico e metodologico con riferimento a casi applicativi di notevole interesse nell’ambito delle macchine automatiche per il packaging.

Testi/Bibliografia

  • A. S. Tanenbaum, Modern Operating Systems - 4th Edition, Prentice Hall, 2014.
  • Slide e riferimenti bibliografici resi disponibili dal docente

Metodi didattici

Il corso sarà affiancato da un set di esercitazioni pratiche di laboratorio, in cui gli studenti saranno stimolati a compiere attività a svolgimento guidato in forma di lavoro personale e autonomo. Tali attività saranno necessarie per il completamento della preparazione e il raggiungimento delle abilità desiderate; testi e soluzioni delle esercitazioni saranno rese disponibili sul sito Web del corso.

Modalità di verifica e valutazione dell'apprendimento

Il corso prevede una prova scritta che valuta il livello di apprendimento raggiunto sul tema dei sistemi operativi: principali problematiche e scelte progettuali. Inoltre, e' prevista la consegna di un progetto con successiva discussione orale di durata circa 30-45 minuti. La prova progettuale verte sull'argomento di progettazione di un modulo applicativo nel contesto dell'automazione.

Strumenti a supporto della didattica

Il materiale mostrato a lezione (slide, esercizi risolti, esercizi suggeriti, esempi e proposte di progetto) sarà interamente messo a disposizione sul sito Web del corso.
Tale materiale deve essere considerato il principale materiale di studio per la preparazione dell'esame; la bibliografia suggerita è indicata come supporto e integrazione opzionale.


Orario di ricevimento

Consulta il sito web di Riccardo Venanzi

Consulta il sito web di Matteo Sartini

SDGs

Istruzione di qualità

L'insegnamento contribuisce al perseguimento degli Obiettivi di Sviluppo Sostenibile dell'Agenda 2030 dell'ONU.