Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
vuoi
o PayPal
tutte le volte che vuoi
Server separati
Server separati hanno il loro proprio disco. I dati sono continuamente copiati dal server primario al secondario, causando un alto overhead di rete e server a causa delle operazioni di copia.
Server connessi
I server sono cablati agli stessi dischi, ma ogni server ha il suo disco. Questo riduce l'overhead di rete e del server e solitamente richiede il mirroring del disco o una tecnologia RAID per compensare il rischio di errori del disco.
Server che condividono
Più server condividono simultaneamente l'accesso ai dischi. Questo comporta un basso overhead di rete e server, ma aumenta il rischio di avere tempi di inattività causati dagli errori del disco. Solitamente viene utilizzato con il mirroring del disco o una tecnologia RAID e richiede un software di gestione dei blocchi.
possono essere usati due approcci: 1. Cluster ad alta disponibilità: ▪ Offre un'alta probabilità che tutte le risorse siano in servizio ▪ Qualsiasi query persa, se ripetuta, verrà servita da un computer diverso nel cluster ▪ Il SO del cluster non fa garanzie riguardo lo stato delle transazioni parzialmente eseguite ▪ Se c'è un errore, le query in progresso vengono perse 2. Cluster con tolleranza per gli errori: ▪ Vengono raggiunte usando dei dischi condivisi ridondanti e dei meccanismi di annullamento delle transazioni non eseguite e di salvataggio delle transazioni completate ▪ Assicura che tutte le risorse siano sempre disponibili ▪ La funzione di cambiare un'applicazione e le risorse dati su un sistema in errore a favore di un sistema alternativo nel cluster è chiamato fallover ▪ Il ripristino delle applicazioni e delle risorse dati nel sistema originale quando questo viene sistemato è detto fallbackfallback può essere automatizzato ma è desiderabile solo se il problema è stato veramente sistemato e ha basse probabilità che possa riaccadere • Il fallback automatizzato può far sì che gli errori successivi nelle risorse rimbalzino tra i computer con conseguenti problemi di performance e recupero degli errori • Un cluster ha bisogno di una capacità effettiva di bilanciamento del caricamento tra i computer disponibili • Questo include la necessità che i cluster siano scalabili incrementalmente • Quando un nuovo computer è aggiunto al cluster, la funzione di bilanciamento del caricamento dovrebbe automaticamente includere questo computer nelle applicazioni in scheduling • Il middleware deve riconoscere che il servizio possa apparire su membri differenti del cluster e può migrare da un membro all'altro Ci sono tre tipi di computazione parallela: 1. Compilatore in parallelo ○ Determina, a tempo- di compilazione, quali parti dell'applicazione possono essere eseguite in parallelo
- La performance dipende dalla natura del problema e da quanto è realizzato bene il compilatore
- Applicazione in parallelo
- Il programmatore realizza l'applicazione in modo che venga eseguita su un cluster e usi il message passing per spostare i dati, come richiesto, trai vari nodi dei cluster
- Questo dà grandi responsabilità al programmatore, ma potrebbe essere l'approccio migliore per sfruttare i cluster per varie applicazioni
- Computazione parametrica
- Questo approccio può essere usato se un'applicazione è un algoritmo o un programma che può essere eseguito un grande numero di volte, ogni volta con un insieme differente di condizioni di partenza e parametri
- Per far sì che questo approccio sia efficiente, si ha bisogno di strumenti di processamento parametrico per organizzare, eseguire e gestire i lavori in maniera
- I dispositivi IoT possono essere considerati come oggetti quotidiani connessi ad internet che possono inviare o ricevere dati
- L'IoT si riferisce agli ultimi sviluppi tecnologici e alla continua rivoluzione della computazione e delle comunicazioni
- Il termine si riferisce a:
- Espansione dell'interconnessione tra i dispositivi smart
- Applicazione di piccoli sensori
- Interconnessione di miliardi di oggetti industriali e personali, solitamente attraverso sistemi cloud
- Dispositivi considerabili di IoT:
- Computer
- Smartphone
- Tutti i dispositivi embedded con:
- Larghezza di banda bassa
- Bassa ripetizione di cattura dei dati
- Larghezza di banda bassa per l'uso dei dati
- Il concetto di Internet of Things è diventato famoso nel 1999 grazie alle pubblicazioni dell'Auto-ID Center dell'MIT relative all'analisi di mercato
- La Radio-Frequency Identification (RFID) era vista come un
- Se tutti gli oggetti e le persone nella loro vita quotidiana fossero equipaggiate con identificatori, i computer potrebbero gestire tutto
- A parte attraverso l'utilizzo delle RFID, l'identificazione delle cose può essere raggiunta attraverso tecnologie come la Near Field Communication (NFC), codici QR, Bluetooth e digital watermarking
- PC, server, router, firewall, ecc...
- Comprati come dispositivi IT da persone e aziende IT e usano principalmente la connettività via cavo
- Macchine/apparecchi con IT embedded costruite da compagnie non IT, come macchine mediche, SCDA (Supervisory Control and Data Acquisition), controllo dei processi e kiosks
- Comprate come apparecchi da persone e aziende OT e usano principalmente la connettività via cavo
- Smartphone, tablet e eBook reader comprati come dispositivi IT dai consumatori o
- Impiegati
- Usano esclusivamente la connettività wireless che spesso ha diverse forme
- Tecnologia con sensori e attuatori
- Dispositivi con un singolo obiettivo comprati dai consumatori e persone IT e OT
- Usano esclusivamente la connettività wireless
- Generalmente si trovano in un modulo singolo come parte di sistemi più grandi
- Sensore:
- Un sensore misura alcuni parametri di entità fisica, chimica o biologica e manda un segnale elettrico proporzionale alla caratteristica osservata che può essere sia di voltaggio analogico o di impulso digitale
- In entrambi i casi, l'output del sensore è tipicamente l'input del micro controllore o di altri elementi di gestione
- Attuatore: un attuatore riceve un segnale elettrico da un controllore e risponde interagendo con il suo ambiente per produrre un effetto su alcuni parametri di entità fisica, chimica o biologica
- Micro controllore: la parte "smart" in
- Ricetrasmettitore:
- Un ricetrasmettitore contiene le componenti elettroniche di cui si ha bisogno per trasmettere e ricevere i dati
- Molti dispositivi IoT contengono un ricetrasmettitore wireless, capace di comunicare usando il Wi-Fi, ZigBee o altri schemi wireless
- Radio-Frequency Identification (RFID)
- La tecnologia che usa onde radio per identificare gli oggetti sta diventando sempre più una tecnologia abilitante per le IoT
- Gli elementi principali di un sistema RFID sono le etichette e i lettori
- Le etichette RFID sono piccoli dispositivi programmabili usati per tracciare oggetti, animali e umani
- Ci sono etichette che variano in forma, dimensione, funzionalità e costo
processore
- c'è bisogno di sistemi operativi ad-hoc:
- TinyOS
- RIOT (Open Source)
- Clinux
- Piccola impronta di memoria:
- Poca memoria disponibile
- c'è bisogno di allocare sia il SO che le applicazioni
- c'è bisogno di librerie ottimizzate sia in termini di spazio che di performance e strutture dati con gestione efficiente dello spazio
- Supporto per hardware eterogenei:
- Per i sistemi più grandi come server, PC e laptop domina l'architettura basata sul processore Intel x86
- Per i sistemi più piccoli, come smartphone e alcune classi di dispositivi IoT, domina l'architettura ARM
- I dispositivi limitati sono basati su varie architetture e famiglie di microcontrollori, specialmente formate da processori a 8-bit e 16-bit
- Una grande varietà di tecnologie di comunicazione sono anche implementate su dispositivi limitati
- Connettività di rete:
- IEEE 802.15.4 o Wireless Personal
- Area Network (WPAN) a bassa velocità:
- Es. ZigBee
- Bluetooth Low Energy (BLE)
- 6LoWPAN (IPv6 over Low power Wireless Personal Area Networks)
- CoAP (Constrained Application Protocol)
- RPL (Routing Protocol for Low power and Lossy network)
- LoRaWAN (Low-power Long-Range Network technology)
- Efficienza energetica:
- Deve funzionare per anni con una singola batteria
- Rendere il processore il più efficiente possibile dal punto di vista energetico
- Schemi di trasmissione wireless che minimizzano il consumo di energia
- Il SO deve fornire delle funzioni relative al consumo dell'energia -> Fornirle al livello più alto e usarle
- Funzionalità real-time:
- Molti dispositivi devono supportare applicazioni real-time (Es. sorveglianza, automobili smart)
- Il SO deve soddisfare gli obblighi di esecuzione tempestiva
- Sicurezza:
- Nello strato applicativo:
- Autorizzazione, autenticazione
- Confidenzialità dei dati
Anti-virus▪ Privacy○ Nello strato di collegamento▪ Autorizzazione, autenticazione