Applicazioni Real-Time - diegm - Università degli Studi di Udine

annuncio pubblicitario
Fondamenti di Informatica – Applicazioni Real-Time
FONDAMENTI DI INFORMATICA
Prof. PIER LUCA MONTESSORO
Laureando LUCA DA RE
Facoltà di Ingegneria
Università degli Studi di Udine
Applicazioni Real-Time
© 2007 Pier Luca Montessoro e Luca Da Re (si veda la nota di copyright alla slide n. 2)
1
Fondamenti di Informatica – Applicazioni Real-Time
Nota di Copyright
Questo insieme di trasparenze (detto nel seguito slide) è protetto dalle leggi sul copyright
e dalle disposizioni dei trattati internazionali. Il titolo ed i copyright relativi alle slides (ivi
inclusi, ma non limitatamente, ogni immagine, fotografia, animazione, video, audio,
musica e testo) sono di proprietà dell’autore prof. Pier Luca Montessoro, Università degli
Studi di Udine.
Le slide possono essere riprodotte ed utilizzate liberamente dagli istituti di ricerca,
scolastici ed universitari afferenti al Ministero della Pubblica Istruzione e al Ministero
dell’Università e Ricerca Scientifica e Tecnologica, per scopi istituzionali, non a fine di
lucro. In tal caso non è richiesta alcuna autorizzazione.
Ogni altro utilizzo o riproduzione (ivi incluse, ma non limitatamente, le riproduzioni su
supporti magnetici, su reti di calcolatori e stampe) in toto o in parte è vietata, se non
esplicitamente autorizzata per iscritto, a priori, da parte dell’autore.
L’informazione contenuta in queste slide è ritenuta essere accurata alla data della
pubblicazione. Essa è fornita per scopi meramente didattici e non per essere utilizzata in
progetti di impianti, prodotti, reti, ecc. In ogni caso essa è soggetta a cambiamenti senza
preavviso. L’autore non assume alcuna responsabilità per il contenuto di queste slide (ivi
incluse, ma non limitatamente, la correttezza, completezza, applicabilità, aggiornamento
dell’informazione).
In ogni caso non può essere dichiarata conformità all’informazione contenuta in queste
slide.
In ogni caso questa nota di copyright e il suo richiamo in calce ad ogni slide non devono
mai essere rimossi e devono essere riportati anche in utilizzi parziali.
© 2007 Pier Luca Montessoro e Luca Da Re (si veda la nota di copyright alla slide n. 2)
2
Fondamenti di Informatica – Applicazioni Real-Time
Applicazioni Sistemi Operativi Real-Time
• I sistemi operativi real-time sono “nascosti”:
– Non sono studiati per interagire con l'utente
(uomo)
– La programmazione di questi ambienti avviene
solitamente con l'ausilio di altri sistemi operativi
non real-time
• La loro principale applicazione è in sistemi
embedded
• La maggior parte dei sistemi operativi realtime consiste in soluzioni proprietarie studiate
appositamente per particolari piattaforme
hardware (progetto hardware/software)
© 2007 Pier Luca Montessoro e Luca Da Re (si veda la nota di copyright alla slide n. 2)
3
Fondamenti di Informatica – Applicazioni Real-Time
Campi di applicazione
• Campi di applicazione dei sistemi
operativi real-time:
– Macchine automatiche
– Automobili
– Computers
– Sistemi di telecomunicazione
– Centrali Elettriche
– Avionica
– Robotica
– ecc...
© 2007 Pier Luca Montessoro e Luca Da Re (si veda la nota di copyright alla slide n. 2)
4
Fondamenti di Informatica – Applicazioni Real-Time
Campi di applicazione
© 2007 Pier Luca Montessoro e Luca Da Re (si veda la nota di copyright alla slide n. 2)
5
Fondamenti di Informatica – Applicazioni Real-Time
Campi di applicazione
© 2007 Pier Luca Montessoro e Luca Da Re (si veda la nota di copyright alla slide n. 2)
6
Fondamenti di Informatica – Applicazioni Real-Time
La prima applicazione Real-Time
• Nel 1947, in collaborazione con la
marina militare americana, iniziò lo
sviluppo del progetto Whirlwind
• Fu il primo computer ad alta velocità in
grado di operare in real-time ed ad
essere usato per un fine pratico
© 2007 Pier Luca Montessoro e Luca Da Re (si veda la nota di copyright alla slide n. 2)
7
Fondamenti di Informatica – Applicazioni Real-Time
Il progetto Whirlwind
• Le caratteristiche del Whirlwind furono
possibili grazie all’uso di nuclei di
ferrite, che erano molto più veloci delle
memorie a tubo catodico dei precedenti
sistemi
• Nuclei di ferrite dello stesso genere
furono usati negli Stati Uniti in memorie
come la UNIVAC 1003 (1953) e la IBM
704 (1954)
© 2007 Pier Luca Montessoro e Luca Da Re (si veda la nota di copyright alla slide n. 2)
8
Fondamenti di Informatica – Applicazioni Real-Time
Il progetto Whirlwind
• Jay W. Forrester pensò ad un’istruttore
ed analizzatore di volo aereo che
simulasse le forze aereodinamiche che
agiscono sui controlli del pilota
• Il pilota deve agire prontamente nel
simulatore tanto quanto nella realtà
• Tutta la strumentazione deve quindi
operare in tempi di risposta reali
© 2007 Pier Luca Montessoro e Luca Da Re (si veda la nota di copyright alla slide n. 2)
9
Fondamenti di Informatica – Applicazioni Real-Time
Database Real-Time
• Un’importante area di applicazione dei
sistemi real-time è nei database
• Un database real-time è un sistema di
processare le transazioni nel quale i dati
hanno esplicite costrizioni temporali
© 2007 Pier Luca Montessoro e Luca Da Re (si veda la nota di copyright alla slide n. 2)
10
Fondamenti di Informatica – Applicazioni Real-Time
Database Real-Time
• Disegnare Database Real-Time implica:
– Analizzare le esigenze del sistema
nell’identificare i dati
– Determinare le capacità hardware
– Identificare le differenti criticità dei dati e le
restrizioni di integrità
© 2007 Pier Luca Montessoro e Luca Da Re (si veda la nota di copyright alla slide n. 2)
11
Fondamenti di Informatica – Applicazioni Real-Time
Database Real-Time
• I database Real-Time sono usati in una
varietà di applicazioni:
– Controllo di processo
– Sistemi radar
– Produzione computerizzata
– Controllo del traffico
– Realtà virtuale
– Multimedia
© 2007 Pier Luca Montessoro e Luca Da Re (si veda la nota di copyright alla slide n. 2)
12
Fondamenti di Informatica – Applicazioni Real-Time
Database Real-Time
• I sistemi di gestione di database ordinari
provvedono tecniche di controllo simultaneo
che cercano di preservare la consistenza dei
dati (per esempio bloccando letture e
scritture) e della logica
• I database real-time devono anche imporre
controlli che preservino l’esigenza di
consistenza temporale dei dati
– Come in molti sistemi real-time, minimizzare la
risposta media è meno importante che garantire i
vincoli temporali delle transazioni critiche
© 2007 Pier Luca Montessoro e Luca Da Re (si veda la nota di copyright alla slide n. 2)
13
Fondamenti di Informatica – Applicazioni Real-Time
Elaborazione Real-Time delle immagini
• La rappresentazione di immagini real-time
non riguarda solo processori veloci ad
architettura parallela
• Essa coinvolge almeno 3 fondamentali
confronti:
– Performance contro risoluzione dell’immagine
– Performance contro le dimensioni della banda di
input/output
– Numero di task contro sincronizzazione
© 2007 Pier Luca Montessoro e Luca Da Re (si veda la nota di copyright alla slide n. 2)
14
Fondamenti di Informatica – Applicazioni Real-Time
Elaborazione Real-Time delle immagini
• Il problema di esprimere algoritmi per
immagini (specialmente in architetture
multiprocessore), di trovare appropriati
linguaggi di programmazione, di testare
l’affidabilità e di creare tecniche
concrete di sviluppo software non è
risolto semplicemente con dell’hardware
più veloce
© 2007 Pier Luca Montessoro e Luca Da Re (si veda la nota di copyright alla slide n. 2)
15
Fondamenti di Informatica – Applicazioni Real-Time
Elaborazione Real-Time delle immagini
• Vantaggi dell’elaborazione real-time:
– Molte applicazioni per immagini possono essere
realizzate senza utilizzare costrutti di linguaggio
che distruggono il determinismo
– Sono disponibili speciali architetture real-time
• Svantaggi dell’elaborazione real-time:
– Molte applicazioni per immagini sono critiche per
quanto riguarda il tempo ed elaborano
intensivamente dati
– Non esistono linguaggi di programmazione
standard disponibili per l’elaborazione real-time
delle immagini
© 2007 Pier Luca Montessoro e Luca Da Re (si veda la nota di copyright alla slide n. 2)
16
Fondamenti di Informatica – Applicazioni Real-Time
Elaborazione Real-Time delle immagini
• L’elaborazione delle immagini copre una
vasta gamma di aree di ricerca:
–
–
–
–
–
Compressione delle immagini
Acquisizione ed inseguimento di un target
Controlli e sensori remoti
Miglioramento e filtro delle immagini
Connessioni di rete per la visualizzazione realtime
– Architetture computer avanzate
– Misurazioni ed esami ottici
– Simulazione
© 2007 Pier Luca Montessoro e Luca Da Re (si veda la nota di copyright alla slide n. 2)
17
Fondamenti di Informatica – Applicazioni Real-Time
Elaborazione Real-Time delle immagini
• Queste aree di ricerca sono critiche in
applicazioni quali:
– Robotica
– Realtà virtuale
– Multimedia
– Ispezioni industriali
– Televisioni ad alta definizione
– Simulatori avanzati
– Produzione assistita da computer
– Veicoli intelligenti
© 2007 Pier Luca Montessoro e Luca Da Re (si veda la nota di copyright alla slide n. 2)
18
Fondamenti di Informatica – Applicazioni Real-Time
Un sistema di elaborazione immagini realtime
Video
analogico
Digitalizzazione
Miglioramento
e filtro
delle immagini
Movimento e
rilevazione
delle immagini
Visualizzazione
Decisione
logica
•
•
•
•
•
Viene digitalizzato un video analogico in ingresso da una telecamera o
un sensore
L’immagine viene migliorata e filtrata per rimuovere il rumore
Se necessario viene effettuato il movimento e la rilevazione delle
immagini
Se richiesto vengono applicate decisioni logiche per modificare
l’immagine
Spesso è necessaria una visualizzazione real-time (per esempio a 30
frame al secondo per una continua percezione del movimento)
© 2007 Pier Luca Montessoro e Luca Da Re (si veda la nota di copyright alla slide n. 2)
19
Fondamenti di Informatica – Applicazioni Real-Time
Applicazioni: la Realtà Virtuale
• I sistemi a realtà virtuale sono complessi simulatori
che coinvolgono la vista, l’udito, il tatto ed altri
feedback per far credere ai meccanismi di percezione
umani di essere realmente in un mondo artificiale
• Anche se la realtà virtuale ha ovvie applicazioni in
simulatori di combattimento, l’impiego più
promettente è in ambito civile ed include:
–
–
–
–
Esercizi e ricreazione
Riabilitazione fisica e terapie
Addestramento professionale
Diagnosi psicologica
© 2007 Pier Luca Montessoro e Luca Da Re (si veda la nota di copyright alla slide n. 2)
20
Fondamenti di Informatica – Applicazioni Real-Time
Applicazioni: la Realtà Virtuale
• Vi sono 3 modelli di Realtà Virtuale:
– Telepresenza: un operatore che controlla
da remoto un robot come se fosse
fisicamente presente
– Immersione: un simulatore può realmente
ingannare i sensi umani nel credere che
l’ambiente ricreato sia vero
– Incremento di realtà (Augmented Reality):
un display di informazioni reali è integrato
con informazioni simulate
© 2007 Pier Luca Montessoro e Luca Da Re (si veda la nota di copyright alla slide n. 2)
21
Fondamenti di Informatica – Applicazioni Real-Time
Applicazioni: la Realtà Virtuale
• Alte performance e garanzie temporali sono
essenziali per assicurare che l’illusione di realtà sia
mantenuta
• Quelli a realtà virtuale forse sono i più complessi
sistemi real-time perché interessano problemi come il
controllo ed il puntamento
• La realtà virtuale interessa anche processori e
programmi simultanei, periferiche condivise, ed è
quindi importante il concetto di sincronizzazione
© 2007 Pier Luca Montessoro e Luca Da Re (si veda la nota di copyright alla slide n. 2)
22
Fondamenti di Informatica – Applicazioni Real-Time
Applicazioni: i multimedia
• L’aumento dei computer multimediali ha
spinto la ricerca verso l’elaborazione
multimediale
• I sistemi multimediali possono essere visti
come una combinazione di immagini,
animazioni, video e audio
• Come per la realtà virtuale, nelle applicazioni
multimediali è importante che l’audio sia in
sincronia con l’immagine della persona che
parla
© 2007 Pier Luca Montessoro e Luca Da Re (si veda la nota di copyright alla slide n. 2)
23
Fondamenti di Informatica – Applicazioni Real-Time
Applicazioni: i multimedia
• I sistemi multimediali hanno bisogno di:
– Alta potenza di calcolo
– Reti ad alta velocità
– Grandi dispositivi di memorizzazione
– Tecniche di compressione audio e video
– Sistemi Operativi real-time
– Sviluppo di software
– Memorizzazione e recupero dati
– Tecniche parallele
© 2007 Pier Luca Montessoro e Luca Da Re (si veda la nota di copyright alla slide n. 2)
24
Fondamenti di Informatica – Applicazioni Real-Time
Applicazioni: i multimedia
• Si è lavorato per creare sistemi operativi multimediali
che abbiano ampie bande per i bus, alte performance
e schedulazione real-time
• Nello sviluppo dei strumenti software le ricerche si
sono concentrate attorno ad un nuovo linguaggio ad
oggetti
• Di grande interesse sono le tecniche di compressione
audio e video che si sono concentrate nello sforzo di
mantenere il sistema deterministico, predicibile e
sincronizzato
© 2007 Pier Luca Montessoro e Luca Da Re (si veda la nota di copyright alla slide n. 2)
25
Fondamenti di Informatica – Applicazioni Real-Time
Una generica architettura multimediale
Controllo degli
ingressi
Video digitale
Visualizzazione
video
Audio digitale
Video digitale
compresso
decompressione
Sistema di
elaborazione
multimediale
Audio digitale
compresso
Uscita
audio
decompressione
Database
© 2007 Pier Luca Montessoro e Luca Da Re (si veda la nota di copyright alla slide n. 2)
26
Fondamenti di Informatica – Applicazioni Real-Time
Applicazioni: sistemi di telecomunicazione
• La proprietà di un sistema operativo
real-time di rispondere entro tempi
determinati alle sollecitazioni esterne
ben si adatta nel caso di sistemi di
monitoraggio
• In questo ambito si inserisce il progetto
City8 iniziato nel 2003 dall’impegno
congiunto di Telecom Italia Lab e Pirelli
Broadband Solutions
© 2007 Pier Luca Montessoro e Luca Da Re (si veda la nota di copyright alla slide n. 2)
27
Fondamenti di Informatica – Applicazioni Real-Time
Il progetto City8
• Il progetto della Pirelli consiste in un
dispositivo che controlli il traffico dati in una
centrale telefonica Telecom
• Tale dispositivo monterà il modulo embedded
PPChameleon distribuito da Dave s.r.l. nel
quale verrà installato il sistema operativo
real-time VxWorks
• La centrale telefonica farà parte di una rete
MAN (Metropolitan Area Network)
© 2007 Pier Luca Montessoro e Luca Da Re (si veda la nota di copyright alla slide n. 2)
28
Fondamenti di Informatica – Applicazioni Real-Time
Il dispositivo City8
© 2007 Pier Luca Montessoro e Luca Da Re (si veda la nota di copyright alla slide n. 2)
29
Fondamenti di Informatica – Applicazioni Real-Time
Il progetto City8: rete MAN
• Una rete MAN si colloca per dimensioni tra un rete
LAN (Local Area Network) e una rete WAN (Wide
Area Network)
• Solitamente essa copre un’area con le dimensioni di
una città oppure in alcuni casi può essere composta
da un gruppo di edifici
• Una rete MAN agisce come una connessione ad alta
velocità che permettere la distribuzione delle risorse
regionali (simile ad una grande LAN)
• È spesso usata anche per provvedere una
connessione condivisa con altre reti ricorrendo ad un
collegamento con una WAN
© 2007 Pier Luca Montessoro e Luca Da Re (si veda la nota di copyright alla slide n. 2)
30
Fondamenti di Informatica – Applicazioni Real-Time
Il progetto City8: rete MAN
• Le centrali facenti parte di una MAN sono collegate
tra loro attraverso fibra ottica e formano un’anello (o
Metro Ring), collegato a sua volta al resto della rete
© 2007 Pier Luca Montessoro e Luca Da Re (si veda la nota di copyright alla slide n. 2)
31
Fondamenti di Informatica – Applicazioni Real-Time
Il progetto City8: tecnologia WDM
•
Questo sistema fa uso della tecnologia WDM (Wavelength
Division Multiplexing), utile ad aumentare la banda delle reti
d’accesso e delle MAN
•
Per modulare diversi canali su una stessa fibra ottica si usano
diverse portanti di differenti lunghezze d'onda, una per ogni
canale, e per la singola portante si usa la modulazione di
intensità: in questo modo è possibile sfruttare la grande banda
ottica disponibile
•
La tecnologia di trasporto ottico basata sulla multiplazione di
lunghezza d'onda a spaziatura larga, o Coarse Wavelength
Division Multiplexing (CWDM), si sta rapidamente affermando
come una soluzione efficiente ed economica per un utilizzo in
ambito metropolitano e di accesso, sia in reti Lineari (PuntoPunto, Bus) che ad Anello (Ring)
© 2007 Pier Luca Montessoro e Luca Da Re (si veda la nota di copyright alla slide n. 2)
32
Fondamenti di Informatica – Applicazioni Real-Time
Il progetto City8: CWDM vs. DWDM
•
A differenza del DWDM (Dense Wavelength Division
Multiplexing), tecnologia di trasporto a multiplazione densa di
lunghezza d'onda, che viene applicata in reti Metro Core e
Regional come sistema di trasporto ad alta capacità, il CWDM è
nato con lo specifico obiettivo di operare in ambito metropolitano
al fine di ridurre i costi di trasporto, laddove non sono richieste
prestazioni elevate in termini di banda, numero di canali e
distanza trasmissiva
•
Il contenimento dei costi deriva in particolare dagli elementi
chiave di tale tecnologia, che consente l'impiego di sorgenti
ottiche colorate (Laser) a basso costo e di
Multiplazione/Demultiplazione ottica passiva, oltre a prevedere
l'assenza di amplificazione ottica
© 2007 Pier Luca Montessoro e Luca Da Re (si veda la nota di copyright alla slide n. 2)
33
Fondamenti di Informatica – Applicazioni Real-Time
Il progetto City8: sistema EMMAS
•
Telecom Italia Lab ha realizzato la componente gestionale del
City8, comprensiva sia del sistema EMMAS (Element Manager
Metro Access System), residente nei centri di gestione della
rete, che del Terminale di Accesso Locale (TAL), ad uso del
tecnico di centrale per operazioni di installazione/configurazione
direttamente in loco
© 2007 Pier Luca Montessoro e Luca Da Re (si veda la nota di copyright alla slide n. 2)
34
Fondamenti di Informatica – Applicazioni Real-Time
Il progetto City8: sistema EMMAS
• Il software di gestione EMMAS copre tutte le aree
funzionali tipiche per il controllo di apparati ottici
• Offre in particolare un insieme di funzionalità per il
provisioning, l'assurance, l'esercizio e manutenzione
degli apparati City8:
–
–
–
–
–
gestione della configurazione
gestione del firmware
gestione allarmi
gestione protezioni
gestione delle prestazioni
• L'interfaccia verso gli apparati si basa sul protocollo
gestionale SNMP/v2 e su FTP per il download del
firmware di apparato
© 2007 Pier Luca Montessoro e Luca Da Re (si veda la nota di copyright alla slide n. 2)
35
Fondamenti di Informatica – Applicazioni Real-Time
Applicazioni del City8
• Un'applicazione pratica della soluzione EMMAS/City8
nel contesto nazionale è costituita dal suo impiego da
parte di Telecom Italia nell'infrastruttura di rete di
trasporto per la fornitura all'utenza residenziale dei
cosiddetti servizi "triple play" cioè i servizi voce
(VoIP), broadband internet e IP-TV basati su rete IP
• Per tale applicazione sono stati dispiegati in campo
circa 220 apparati City8 nelle principali città italiane,
in topologie ad anello di 4/5 nodi ciascuno, che
vengono gestiti da due server EMMAS, situati nei
centri di esercizio di Milano Rozzano e Napoli
© 2007 Pier Luca Montessoro e Luca Da Re (si veda la nota di copyright alla slide n. 2)
36
Fondamenti di Informatica – Applicazioni Real-Time
Applicazioni del City8
• Altre installazioni EMMAS/City8 sono in corso
per TIF (Telecom Italia France) ed altri
operatori di telecomunicazione, che si stanno
orientando a soluzioni di trasporto CWDM per
determinati segmenti di rete
• Tra i possibili impieghi rientra anche la
fornitura di servizi Lambda wave, cioè di
trasporto dati su canali ottici ad alta velocità
per applicazioni orientate all'utenza business,
di tipo remote back-up, disaster recovery e
business continuity
© 2007 Pier Luca Montessoro e Luca Da Re (si veda la nota di copyright alla slide n. 2)
37
Scarica