Cosa sono le applicazioni in tempo reale?
Formulazione originale della domanda: Qual è l'applicazione in tempo reale del C?
Penso che l'autore abbia sentito il termine nel contesto del linguaggio di programmazione C, tuttavia il termine applicazione in tempo reale o sistema in tempo reale ha un contesto molto più ampio dell'applicazione al solo linguaggio C.
Credo di essere pienamente qualificato per rispondere a questa domanda dopo anni di esperienza nella programmazione in tempo reale.
Il software si qualifica come tempo reale quando uno dei suoi principali vincoli di esecuzione è il tempo. In particolare i periodi entro certi obiettivi devono essere raggiunti. Infatti i giochi sono in qualche modo un buon esempio di software in tempo reale, poiché i motori di rendering devono finire il calcolo del fotogramma prima che questo possa essere visualizzato sullo schermo. Tuttavia sono molto soft.
E ora raggiungiamo un punto molto importante nella questione del software in tempo reale. La classificazione del software in tempo reale si basa sulle conseguenze della mancanza di una scadenza:
- Hard - la mancanza di una scadenza è un fallimento totale del sistema; può significare la morte delle persone a bordo dell'aereo.
- Firm - le mancate scadenze poco frequenti sono tollerabili, ma possono degradare la qualità del servizio del sistema. L'utilità di un risultato è zero dopo la sua scadenza.
- Soft - l'utilità di un risultato si degrada dopo la sua scadenza, degradando così la qualità del servizio del sistema.
Le spiegazioni di cui sopra sono difficili da capire, quindi le illustrazioni qui sotto sono più esplicative:
Questo grafico mostra la degradazione del valore o della qualità nel tempo dopo aver mancato una scadenza per un sistema soft real-time.
Questa è una degradazione molto più ripida del sistema in tempo reale fermo, alcuni disegnano questo grafico in modo diverso, dove la linea è verticale a zero alla scadenza e poi continua a zero.
E il sistema in tempo reale duro, dove la mancanza della scadenza è assolutamente una perdita totale del valore della qualità.
Questi grafici spiegano perché i motori di gioco sono applicazioni soft real-time, in quanto perdere fotogrammi è solo un fastidio per il giocatore e non costa la vita a nessuno; spiegano cosa significa mancare la scadenza per un aeroplano; e mettono i sistemi di investimento automatico da qualche parte tra hard e firm in quanto la mancata offerta non deve significare la perdita totale dell'investimento.
Articoli simili
- Quali sono i migliori strumenti/applicazioni/siti web per ottenere veloci rilasci in tempo reale di notizie economiche che influenzano il mercato FX?
- Quali sono alcune buone soluzioni di chat in tempo reale per le applicazioni mobili?
- Quali sono alcune applicazioni in tempo reale della programmazione orientata agli oggetti?
- Cosa rende i giochi di strategia in tempo reale coinvolgenti?