Estratto del documento

Task aperiodici soft real time

I task aperiodici soft real time possono essere eseguiti con algoritmi che attuano un servizio in background o tramite server:

  • I primi eseguono solo negli istanti di tempo in cui l'unità di elaborazione è libera e non ci sono processi periodici hard da eseguire.
  • Nel secondo caso viene effettuata durante il computation time del processo server.

Quale differenza c'è tra il Polling Server e il Deferrable Server?

Il servizio Deferring Server è caratterizzato da un processo server il cui computation time non dipende dai task aperiodici in attesa di essere eseguiti. Il computation time viene posto pari alla capacità massima del server. Questo servizio usa in maniera poco efficiente le risorse ma diminuisce il tempo di risposta dei processi aperiodici.

Il servizio Polling Server è caratterizzato da un processo server il cui computation time dipende dai task aperiodici in attesa di essere eseguiti. Quando un nuovo task del processo server è attivato,

Il suo computation time è calcolato sommando i computation time dei task aperiodici in attesa di essere eseguiti.

Svolgere un esercizio di scheduling di 3 task periodici. Scegliere in autonomia i periodi di attivazione e i computation time in maniera tale che valga la condizione necessaria di schedulabilità. Scegliere l'algoritmo di scheduling secondo questo algoritmo: se il giorno della data è pari usare RMPO, altrimenti usare EDF.

Lezione 3204. Descrivere l'architettura tipica di un Hardware Abstraction Layer (HAL).

Per disaccoppiare il sistema operativo dalle infinite possibili combinazioni di risorse hardware viene introdotto un componente chiamato HARDWARE ABSTRACTION LAYER.

I task NON REAL TIME vengono gestiti dall'HAL con politica BEST EFFORT.

I task REAL TIME vengono gestiti attraverso lo SCHEDULER che ospita uno degli algoritmi di scheduling studiati.

Il sistema operativo controlla periodicamente che le deadline dei task real time vengano

risorse disponibili e le caratteristiche del sistema; POTENZIALI PROBLEMI DI PERFORMANCE: se il numero di eventi da gestire è elevato, il sistema potrebbe risentire di rallentamenti o di congestione della coda degli eventi; DIFFICOLTÀ DI DEBUGGING: a causa della natura asincrona degli eventi, può essere complesso individuare e risolvere eventuali errori o bug nel codice; POTENZIALI PROBLEMI DI SICUREZZA: se non gestiti correttamente, gli eventi possono essere sfruttati per scopi malevoli, come ad esempio l'iniezione di codice dannoso o l'accesso non autorizzato alle risorse del sistema.

Caratteristiche dei task in ingresso. Lezione 3307. Illustrare il concetto di parallelismo per la gestione di eventi simultanei indicando le differenze principali tra sistemi di controllo event driven e time driven.

Un sistema di controllo TIME DRIVEN deve gestire necessariamente le problematiche relative alla GESTIONE SINCRONA di EVENTI ASINCRONI (che attivano i task). In un sistema di controllo DIGITALE, un EVENTO può essere associato al valore logico di un variabile binaria (SEGNALE LOGICO)

Un sistema operativo si dice EVENT DRIVEN se esso è in grado di schedulare un task (scartandolo, mettendolo in coda o mandandolo subito in esecuzione) nello stesso istante in cui si verifica l’evento che lo ha attivato.

08. Indicare i vincoli per la scelta del periodo di rilevazione in un sistema time driven real time con task periodici.

In un sistema di controllo time driven un evento può NON ESSERE OSSERVABILE. In particolare ciò può avvenire solo se il segnale

logico associato all'evento rimane attivo per un tempo inferiore del periodo di rilevazione.

09. Quali sono i PRO e i CONTRO di un sistema operativo time driven?

VANTAGGI

  • SEMPLICE DA REALIZZARE: è sufficiente abilitare un timer per rilevare periodicamente l'occorrenza di eventi;
  • PREVEDIBILITÀ: ipotizzando che l'inizio e la fine dell'elaborazione di qualsiasi task si concluda entro l'intervallo di tempo tra due istanti di rilevazione successivi, è sempre possibile garantire il comportamento real time del sistema di controllo.
  • REATTIVITÀ: ipotizzando che l'inizio e la fine dell'elaborazione di qualsiasi task si concluda entro l'intervallo di tempo tra due istanti di rilevazione successivi, è possibile determinare il limite superiore del response time del sistema di controllo, pari a due volte il periodo di rilevazione.

SVANTAGGI

  • FLESSIBILITÀ: le problematiche evidenziate

(osservabilità degli eventi, ritardo di rilevazione, ordine di occorrenza) rendono questo approccio poco flessibile

Lezione 3409. Sotto quali condizioni si può realizzare un sistema di controllo event-driven a partire da un sistema di controllo time-driven?

PERIODO DI RILEVAZIONE TS MOLTO PIÙ PICCOLO DEL VALORE MINIMO TI DEI TASK PERIODICI — IDEALMENTE INFINITO

10. Come vengono utilizzati i sistemi event- o time- driven relativamente ai diversi livelli della piramide dell'automazione?

In funzione della piramide di automazione abbiamo a livello di coordinamento e conduzione sono presenti task misti, pertanto è intuitivo pensare di usare sistemi di controllo real time event driven; Invece a livello di campo si usano i TIME DRIVEN.

IN REALTA’ ESSENDO DIFFICILE FORZARE IL SISTEMA OPERATIVO AD ESSERE COSTANTEMENTE PRONTO A RILEVARE UN NUOVO EVENTO; ED ESSENDO COMPLESSO REALIZZARE UNO SCHEDULING HARD REAL TIME. È MOLTO PIU’ CONVENIENTE

sistema operativo è open source e se si ha accesso al codice sorgente. Inoltre, è necessario avere una conoscenza approfondita dell'architettura del sistema operativo e delle sue componenti per poter apportare le modifiche necessarie. I sistemi operativi installati di default nei Consumer Electronics, come ad esempio Windows, Linux e Mac OS, non sono progettati per gestire sistemi di controllo real time. Questi sistemi operativi sono ottimizzati per fornire una vasta gamma di funzionalità e supportare un'ampia varietà di applicazioni, ma non sono in grado di garantire il determinismo richiesto per i sistemi di controllo real time. Il problema principale risiede nella mancanza di controllo sul tempo di esecuzione dei task. Nei sistemi operativi consumer, la CPU può essere bloccata da varie risorse come periferiche di I/O, DMA, memoria virtuale e interruzioni di sistema. Questo rende estremamente difficile garantire il determinismo dello scheduler implementato nel kernel del sistema operativo. Per rendere un sistema operativo adatto per l'utilizzo come sistema di controllo real time, è necessario apportare modifiche al codice del suo scheduler e del suo HAL. Questo è possibile solo se il kernel del sistema operativo è open source e se si ha accesso al codice sorgente. Inoltre, è necessaria una conoscenza approfondita dell'architettura del sistema operativo e delle sue componenti per poter apportare le modifiche necessarie. In conclusione, i sistemi operativi installati di default nei Consumer Electronics non sono adatti per essere utilizzati come sistemi di controllo real time a causa della mancanza di determinismo nel loro scheduler e delle limitazioni delle risorse hardware. Per utilizzare un sistema operativo come sistema di controllo real time, è necessario apportare modifiche al codice del suo scheduler e del suo HAL, cosa possibile solo se si ha accesso al codice sorgente e si ha una conoscenza approfondita del sistema operativo.sistemaoperativo è Open Source. Lezione 3610. Quando un embedded system è chiamato microcontrollore? Un embedded controller realizzato tramite un singolo circuito integrato viene chiamato microcontrollore. Esso è un dispositivo su un unico chip che raggruppa le funzionalità di un processore ed un insieme di dispositivi/periferiche. Rappresentare la struttura tipica di un embedded system e descriverla. CENTRAL PROCESSING UNIT (CPU) È il processore che si occupa di eseguire sia il Basic I/O System (BIOS), ovvero il sistema operativo, che il programma realizzato dall'utente che implementa l'algoritmo di controllo. La CPU può essere un microprocessore general purpose (numeri interi), oppure un digital signal processor (numeri interi e reali), o un field programmable gate array (funzioni logiche). MEMORIA RAM È la memoria volatile necessaria per mantenere lo stato del programma, ovvero tutti i dati temporanei necessari durante.

L'elaborazione degli algoritmi di controllo logico sequenziale.

MEMORIA (EPP)
ROM è la memoria non volatile necessaria per memorizzare permanentemente il sistema operativo (ROM) e il programma utente ([EEP]ROM).

GESTIONE TEMPORIZZAZIONI
Gestione dei timer utili per la sincronizzazione e la temporizzazione delle attività della CPU.

GESTIONE RETE
Contiene i protocolli di base (di livello fisico e di accesso al mezzo trasmissivo) per gestire la comunicazione con altri dispositivi di controllo (embedded e non).

GESTIONE USCITE
Contiene una serie di circuiti per la generazione di segnali analogici (DAC) e digitali.

ACQUISIZIONE SEGNALI DIGITALI
Circuiti per l'accoppiamento con i segnali digitali in ingresso.

ACQUISIZIONE SEGNALI ANALOGICI + ADC
Circuiti per l'accoppiamento con i segnali analogici in ingresso, l'eventuale multiplexer e il converitore A/D (ADC) per il campionamento e la quantizzazione.

GESTIONE I/O
Circuiti per l'accoppiamento con bus dedicati o

schede di espansione.GESTIONE INTERRUPT Circuiti per la rilevazione degli eventi.

12. Facendo riferimento alla piramide dell'automazione, quale tipologia di dispositivi realizza il sistema di controllo distribuito ai vari livelli?

In Automazione i sistemi di controllo hard/soft real-time distribuiti operanti a livello di conduzione sono realizzati tramite SCADA (Supervisory Control and Data Acquisition).

Per quanto riguarda i sistemi di controllo hard/soft real-time distribuiti operanti a livello di campo, coordinamento e conduzione, possono anche essere realizzati tramite DCS (Distributed Control System)

Lezione 3708. Quale differenza c'è tra un micro-processore ed un micro-controllore?

Dicesi microprocessore una tipologia di processore la cui struttura hardware è interamente contenuta in un circuito integrato. Un microcontrollore invece è un embedded controller realizzato tramite un singolo circuito integrato. Esso è un dispositivo su un unico chip che

raggruppa le funzionalità di un processore ed un insieme di dispositivi/periferiche. Inoltre, il microcontrollore contiene un microprocessore con un set di istruzioni ridotto ed alcune periferiche dedicate.
  1. Quali requisiti caratterizzano un micro-controllore?
  2. I requisiti a cui è chiamato a rispondere un microcontrollore sono:

    • Gestione ingressi/uscite
    • Comunicazione periferiche
    • Controllo di motori ed attuatori
    • Gestione di programmi logico sequenziali
    • Reazione ad eventi
    • Acquisizione dati da sensori
  3. Quali vantaggi offre una realizzazione su micro-processore?
  4. Noto a priori il problema di automazione, il sistema embedded (un sistema basato su micro-processore) permette di ridurre l'hardware, lo spazio, i consumi energetici, i tempi di realizzazione ed il costo necessari a realizzare il sistema di controllo.

  5. Descrivere l'architettura logica di un micro-controllore.
  6. Descrivere le periferiche di cui un micro-controllore
Anteprima
Vedrai una selezione di 15 pagine su 70
Sistemi Di Controllo Distribuiti Domande Aperte Pag. 1 Sistemi Di Controllo Distribuiti Domande Aperte Pag. 2
Anteprima di 15 pagg. su 70.
Scarica il documento per vederlo tutto.
Sistemi Di Controllo Distribuiti Domande Aperte Pag. 6
Anteprima di 15 pagg. su 70.
Scarica il documento per vederlo tutto.
Sistemi Di Controllo Distribuiti Domande Aperte Pag. 11
Anteprima di 15 pagg. su 70.
Scarica il documento per vederlo tutto.
Sistemi Di Controllo Distribuiti Domande Aperte Pag. 16
Anteprima di 15 pagg. su 70.
Scarica il documento per vederlo tutto.
Sistemi Di Controllo Distribuiti Domande Aperte Pag. 21
Anteprima di 15 pagg. su 70.
Scarica il documento per vederlo tutto.
Sistemi Di Controllo Distribuiti Domande Aperte Pag. 26
Anteprima di 15 pagg. su 70.
Scarica il documento per vederlo tutto.
Sistemi Di Controllo Distribuiti Domande Aperte Pag. 31
Anteprima di 15 pagg. su 70.
Scarica il documento per vederlo tutto.
Sistemi Di Controllo Distribuiti Domande Aperte Pag. 36
Anteprima di 15 pagg. su 70.
Scarica il documento per vederlo tutto.
Sistemi Di Controllo Distribuiti Domande Aperte Pag. 41
Anteprima di 15 pagg. su 70.
Scarica il documento per vederlo tutto.
Sistemi Di Controllo Distribuiti Domande Aperte Pag. 46
Anteprima di 15 pagg. su 70.
Scarica il documento per vederlo tutto.
Sistemi Di Controllo Distribuiti Domande Aperte Pag. 51
Anteprima di 15 pagg. su 70.
Scarica il documento per vederlo tutto.
Sistemi Di Controllo Distribuiti Domande Aperte Pag. 56
Anteprima di 15 pagg. su 70.
Scarica il documento per vederlo tutto.
Sistemi Di Controllo Distribuiti Domande Aperte Pag. 61
Anteprima di 15 pagg. su 70.
Scarica il documento per vederlo tutto.
Sistemi Di Controllo Distribuiti Domande Aperte Pag. 66
1 su 70
D/illustrazione/soddisfatti o rimborsati
Acquista con carta o PayPal
Scarica i documenti tutte le volte che vuoi
Dettagli
SSD
Ingegneria industriale e dell'informazione ING-IND/35 Ingegneria economico-gestionale

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher sarilla-97 di informazioni apprese con la frequenza delle lezioni di Sistemi di controllo distribuiti e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università telematica "e-Campus" di Novedrate (CO) o del prof Suraci Vincenzo.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community