Vinaora Nivo Slider 3.x
Laurea Triennale
Vinaora Nivo Slider 3.x
Laurea Magistrale
Vinaora Nivo Slider 3.x
Informazioni per le nuove Matricole
Vinaora Nivo Slider 3.x
F.A.Q.

Vinaora Nivo Slider 3.x
Guida dello Studente - Laurea Triennale
Vinaora Nivo Slider 3.x
Guida dello Studente - Laurea Magistrale
Vinaora Nivo Slider 3.x
Piani di Studio
Vinaora Nivo Slider 3.xVinaora Nivo Slider 3.xVinaora Nivo Slider 3.xVinaora Nivo Slider 3.x
Premio letterario Galileo per la divulgazione scientifica 2021
CyberChallenge.it
Presentazione Corso di Laurea in Ingegneria Informatica 2020/2021
Ingegneria.POT

Ultimi Avvisi

ACADEMY

Le Academy sono delle iniziative di formazione professionalizzante sviluppate dal DIETI in collaborazione con aziende quali Apple, Deloitte, CISCO, Accenture, Capgemini, TIM ed altre ancora. L'idea è di allargare le competenze fornite nei Corsi di Studio del Dipartimento con un approccio esperenziale ed a diretto contatto con il mondo del lavoro. Alcune di queste iniziative consentono anche di acquisire dei crediti formativi riconosciuti nei Corsi di Studio del nostro Dipartimento.

CANALI SOCIAL

Per ricevere aggiornamenti, puoi iscriverti ai nostri canali social su Facebook, Telegram, Instagram, LinkedIn, Twitter oppure al gruppo Teams Contact Point

UNIVERSITALY

Universitaly è il portale del Ministero dell'Istruzione, dell'Università e della Ricerca, creato appositamente per accompagnare gli studenti nel loro percorso di studi. Il sito è una vera e propria porta d’ingresso che permette di entrare nel mondo dei corsi di laurea e istruzione superiore in Italia. Link Universitaly

SCHEDA DELL'INSEGNAMENTO (SI)
SSD ING-INF/05

 

 

CORSO DI STUDI: LAUREA MAGISTRALE IN INGEGNERIA DELL’AUTOMAZIONE E ROBOTICA

ANNO ACCADEMICO: 2022-2023

 

INFORMAZIONI GENERALI - DOCENTE

Docente: Marcello Cinque

Telefono: +39 0817683874

Email: Questo indirizzo email è protetto dagli spambots. È necessario abilitare JavaScript per vederlo.

 

INFORMAZIONI GENERALI - ATTIVITÀ

 

INSEGNAMENTO INTEGRATO (EVENTUALE): 
MODULO (EVENTUALE):
CANALE (EVENTUALE):
ANNO DI CORSO (I, II, III): I
SEMESTRE (I, II): II
CFU: 9

 

INSEGNAMENTI PROPEDEUTICI

(se previsti dall'Ordinamento del CdS)

...................................................................................................................................................

 

EVENTUALI PREREQUISITI

Conoscenze di base di programmazione

 

OBIETTIVI FORMATIVI

Il corso fornisce le conoscenze di base sui sistemi in tempo reale, sulla schedulazione di task real-time, sulla gestione delle risorse, sulle reti di calcolatori e sui sistemi operativi adottati in ambito industriale. Fornisce inoltre le competenze necessarie alla progettazione, il dimensionamento e lo sviluppo di sistemi in tempo reale. Le esercitazioni consistono in applicazioni di programmazione concorrente con task real-time sviluppate in diversi ambienti (real-time LINUX, FreeRTOS, ChibiOS) e progettazione OO di software real-time attraverso SysML e il profilo OMG MARTE.

 

RISULTATI DI APPRENDIMENTO ATTESI

(Descrittori di Dublino)

Conoscenza e capacità di comprensione

Lo studente deve dimostrare: di conoscere le problematiche dell’elaborazione in tempo reale, di saper illustrare i fondamenti teorici relativi agli algoritmi per lo scheduling di task periodici e aperiodici e per la gestione delle risorse condivise con vincoli temporali, e relativi test di fattibilità, di saper riconoscere le principali soluzioni per la comunicazione in rete con vincoli temporali, di comprendere i principi di programmazione concorrente applicati ai sistemi real-time.

 

Capacità di applicare conoscenza e comprensione 

Lo studente deve dimostrare di saper astrarre problemi di progettazione di sistemi in tempo reale e di ricondurli ad opportuni modelli teorici atti alla verifica della fattibilità, di saper risolvere problemi di dimensionamento di sistemi real-time attraverso le metodologie e gli algoritmi appresi, di saper progettare sistemi complessi attraverso strumenti di astrazione e modellazione di alto livello, di saper implementare sistemi software real-time utilizzando primitive per la gestione dei task periodici e aperiodici e per l’inter-process communication in tempo reale.

 

PROGRAMMA-SYLLABUS

Concetti Introduttivi. Introduzione ai sistemi in tempo reale: campi applicativi. dimensionamento, deadline, sistemi hard e soft real-time, caratteristiche desiderabili; problematiche di progetto e sviluppo.

Prevedibilità dei sistemi di calcolo. Fonti di non determinismo hardware e del Sistema Operativo. Introduzione allo Scheduling. Processo e programma. Schedulazione, fattibilità, schedulabilità, ottimalità, preemption.

Scheduling di task real time. Algoritmo di Jackson, algoritmo di Horn, algoritmo di Bratley. Scheduling con vincoli di precedenza. Timeline Scheduling, Rate Monotonic (RM). Earliest Deadline First (EDF), Deadline Monotonic. Ottimalità e test di garanzia. Response Time Analysis. Processor Demand Criterion per EDF.

Accesso a risorse condivise. Il problema della priority inversion. Non-preemptive protocol. Highest locker priority. Priority Inheritance e Priority Ceiling. Analisi di schedulabilità, calcolo dei tempi di bloccaggio. Stack Resource Policy.

Server aperiodici. Schedulazione in background. Polling Server (PS). Deferrable Server (DS), Sporadic Server (SS), Slack Stealer. Dynamic Sporadic Server (DSS), Total Bandwidth Server (TBS), Costant Bandwidth Server (CBS).

Gestione dei sovraccarichi. Carico, valore cumulativo, fattore competitivo. Admission control; robust scheduling, resource reservation con CBS. Algoritmo RED. Job skipping, period adaptation e service adaptation.

Comunicazione Real-time. I protocolli CSMA/CD e Token Ring. Modelli di traffico real-time. Fonti di non determinismo nelle reti. Controller Area Network (CAN), ProfiNET ed Ethernet Power Link. RTNet. Weighted Fair Queuing, RSVP e RTP (cenni).  RTPS e Standard DDS. Esempi applicativi. 

Analisi del Worst Case Execution Time. Metodi statici e metodi measurement-based. Bound caluculation: path-based, structure-based e implicit path enumeration (IPET). Esempi di tool statici e measurement-based.

Real Time Operating Systems (RTOS): Primitive per la programmazione di applicazioni concorrenti in ambiente real-time. Colloquio con le periferiche, RTOS commerciali ed Open Source, introduzione a FreeRTOS, ChibiOS e Linux real-time. Sviluppo di applicazioni concorrenti real-time in tali ambienti.

Standard e Certificazioni. La standardizzazione, standard per RTOS: RT-POSIX, OSEK, AUTOSAR, ARINC, MICRO-ITRON. Standard di certificazione: DO-178B, IEC61508.

Progettazione di Sistemi Real Time con SysML e OMG MARTE. Model driven engineering. UML2 ed estensioni: profili, metamodelli e stereotipi. Progettazione con SysML. Specifica MARTE. Esempi in ambiente integrato (Papyrus).

 

 MATERIALE DIDATTICO

-          Libro di testo:

  ·         G. Buttazzo “Sistemi in tempo reale”, Pitagora editrice

-          Trasparenze delle lezioni, dispense didattiche ed articoli scientifici di approfondimento disponibili sul sito docente.

 

MODALITÀ DI SVOLGIMENTO DELL'INSEGNAMENTO

La didattica è erogata

a) per il 70% con lezioni frontali e

b) per il 30% con esercitazioni guidate in aula per approfondire praticamente gli aspetti relativi all’utilizzo di sistemi operativi real-time e alla programmazione di task real-time.

Gli argomenti delle lezioni frontali e dei seminari sono esposti con l’ausilio di trasparenze dettagliate, messe a disposizione dello studente nel materiale didattico tramite il sito web ufficiale del docente.

 

VERIFICA DI APPRENDIMENTO E CRITERI DI VALUTAZIONE

a) Modalità di esame:

L'esame si articola in prova:
 Scritta e orale
 Solo scritta  
 Solo orale  
 Discussione di elaborato progettuale   
 Altro (prova al calcolatore)  

 

In caso di prova scritta i quesiti sono (*):
 A risposta multipla  
 A risposta libera
 Esercizi numerici

   

La prova scritta è suddivisa in due parti: 1) risoluzione di esercizi numerici e 2) un esercizio di programmazione concorrente real-time. La parte 2) può essere sostituita dallo svolgimento di due prove di programmazione in itinere, durante lo svolgimento del corso. Il codice consegnato durante il corso sarà oggetto di discussione all’orale. 

 

b)Modalità di valutazione:

L’esito della prova scritta è vincolante ai fini dell’accesso alla prova orale. Il voto finale è stabilito come media degli esiti delle prove scritte e dell’orale.

 

Utilizziamo i cookie sul nostro sito Web. Alcuni di essi sono essenziali per il funzionamento del sito, mentre altri ci aiutano a migliorare questo sito e l'esperienza dell'utente (cookie di tracciamento). Puoi decidere tu stesso se consentire o meno i cookie. Ti preghiamo di notare che se li rifiuti, potresti non essere in grado di utilizzare tutte le funzionalità del sito.