Sistema operativo in tempo reale (RTOS): componenti, tipi, esempi
⚡ Riepilogo intelligente
I sistemi operativi in tempo reale (RTOS) sono adatti ad applicazioni che devono elaborare dati e rispondere agli eventi entro limiti di tempo rigorosi e prevedibili, utilizzando la pianificazione basata sulle priorità e una commutazione di attività rapida e deterministica, in modo da non perdere mai le scadenze critiche.
Che cos'è un tempo reale Operasistema operativo (RTOS)?
A sistema operativo in tempo reale (RTOS) is an sistema operativo Progettato per servire applicazioni in tempo reale che elaborano i dati man mano che arrivano, per lo più senza ritardo di buffer. L'acronimo RTOS sta per Real-Time Operating System (sistema operativo in tempo reale).
In un RTOS, i requisiti di tempo di elaborazione vengono calcolati in decimi di secondo. Si tratta di un sistema a tempo limitato con vincoli temporali fissi. In questo tipo di sistema, l'elaborazione deve essere eseguita entro i limiti specificati. In caso contrario, il sistema fallirà.
Perché utilizzare un RTOS?
Ecco alcuni importanti motivi per utilizzare un RTOS:
- Offre una pianificazione basata sulle priorità, che consente di separare l'elaborazione analitica dall'elaborazione non critica.
- Il sistema operativo in tempo reale fornisce funzioni API che consentono di ottenere un codice applicativo più pulito e compatto.
- AbstracLa gestione delle dipendenze temporali e la progettazione basata sui compiti si traducono in un minor numero di interdipendenze tra i moduli.
- Un RTOS offre uno sviluppo modulare basato su attività, che consente test modulari basati su attività.
- L'API basata sulle attività incoraggia lo sviluppo modulare, poiché un'attività ha in genere un ruolo ben definito. Ciò consente a progettisti e team di lavorare in modo indipendente sulle rispettive parti del progetto.
- Un RTOS è orientato agli eventi, e non spreca tempo di elaborazione per eventi che non si verificano.
Componenti dell'RTOS
Componenti del tempo reale Operasistema di ting
Ecco i componenti principali di un RTOS:
Il pianificatore: Questo componente di un RTOS decide l'ordine in cui vengono eseguite le attività, generalmente in base alla loro priorità.
Multiprocessing simmetrico (SMP): Si tratta di una serie di compiti diversi che possono essere gestiti dal sistema operativo in tempo reale (RTOS) in modo da consentire l'elaborazione parallela.
Libreria di funzioni: È un elemento importante di un RTOS che funge da interfaccia per connettere il kernel al codice applicativo. L'applicazione invia le sue richieste al kernel utilizzando una libreria di funzioni in modo che quest'ultimo possa produrre i risultati desiderati.
Gestione della memoria: Questo elemento è necessario nel sistema per allocare la memoria a ciascun programma ed è l'elemento più importante del sistema operativo in tempo reale (RTOS).
Latenza di invio rapida: Si tratta dell'intervallo tra la terminazione di un'attività che il sistema operativo è in grado di identificare e il tempo effettivo impiegato dal thread, che si trova nella coda dei thread pronti, per iniziare l'elaborazione.
Oggetti dati e classi definiti dall'utente: Un RTOS utilizza linguaggi di programmazione come C o C++, che dovrebbero essere organizzati in base al loro funzionamento.
Tipi di RTOS
Esistono tre tipi di RTOS:
Tempo reale difficile
In un RTOS rigido, la scadenza viene gestita in modo molto rigoroso, il che significa che un determinato compito deve iniziare l'esecuzione all'ora programmata specificata e deve essere completato entro la durata assegnata.
Esempio: sistemi di terapia intensiva medica, sistemi aeronautici, ecc.
Tempo reale stabile
Anche questo tipo di RTOS deve rispettare le scadenze. Tuttavia, il mancato rispetto di una scadenza potrebbe non avere un impatto significativo, ma potrebbe causare effetti indesiderati, come un drastico calo della qualità del prodotto.
Esempio: Vari tipi di applicazioni multimediali.
Morbido tempo reale
Un RTOS soft real-time accetta alcuni ritardi da parte del sistema operativo. In questo tipo di RTOS, viene assegnata una scadenza per un'attività specifica, ma un breve ritardo è accettabile. Pertanto, le scadenze vengono gestite in modo flessibile da questo tipo di RTOS.
Esempio: sistemi di transazione online e sistemi di quotazione dei prezzi del bestiame.
Termini utilizzati in RTOS
Ecco i termini essenziali utilizzati nei sistemi operativi in tempo reale (RTOS):
- Compito: Un gruppo di attività correlate che, insieme, forniscono una determinata funzionalità di sistema.
- Lavoro: Un lavoro è una piccola parte di lavoro che può essere assegnata a un processore e che può richiedere o meno risorse.
- Orario di rilascio di un lavoro: È il momento in cui un lavoro è pronto per essere eseguito.
- Tempo di esecuzione di un lavoro: È il tempo necessario affinché un lavoro venga completato.
- Scadenza di un lavoro: È il tempo entro il quale un lavoro dovrebbe terminare la sua esecuzione.
- processori: Sono anche conosciute come risorse attive. Sono importanti per l'esecuzione di un lavoro.
- Scadenza relativa: Il tempo massimo di risposta consentito per un lavoro è chiamato scadenza relativa.
- Tempo di risposta di un lavoro: Si tratta del lasso di tempo che intercorre tra l'avvio di un'attività e il suo completamento.
- Scadenza assoluta: Si tratta della scadenza relativa, che include anche i tempi di rilascio.
Caratteristiche dell'RTOS
Ecco le caratteristiche importanti di RTOS:
- Occupa pochissima memoria
- Consuma meno risorse
- I tempi di risposta sono altamente prevedibili
- Funziona in modo affidabile anche in un ambiente imprevedibile
- Il kernel salva lo stato del processo interrotto e quindi determina quale processo eseguire successivamente.
- Il kernel ripristina lo stato del processo e trasferisce il controllo della CPU a tale processo.
Fattori per la selezione di un RTOS
Ecco i fattori essenziali da considerare nella scelta di un RTOS:
- Performance: Le prestazioni sono il fattore più importante da considerare nella scelta di un RTOS.
- Middleware: Se un sistema operativo in tempo reale non supporta un middleware, si presenta il problema dell'integrazione, che richiede molto tempo.
- Senza errori: I sistemi RTOS sono progettati per essere privi di errori, quindi la probabilità di incorrere in un errore durante l'esecuzione di un'attività è minima.
- Utilizzo nei sistemi embedded: I programmi di un RTOS sono di piccole dimensioni, quindi gli RTOS sono ampiamente utilizzati per sistemi integrati.
- Utilizzo massimo: Un RTOS ti aiuta a ottenere il massimo utilizzo delle risorse di sistema.
- Trasferimento di compiti: Il tempo di spostamento delle attività è molto breve.
- Caratteristiche uniche: Un buon RTOS dovrebbe essere performante e offrire funzionalità aggiuntive, come ad esempio il modo in cui esegue un comando e l'efficienza con cui protegge la memoria del sistema.
- Prestazioni 24 ore su 7, XNUMX giorni su XNUMX: Un RTOS è ideale per le applicazioni che devono funzionare 24 ore su 24, 7 giorni su 7.
Differenza tra GPOS e RTOS
| Scopo generale Operasistema di gestione dati (GPOS) | Real-Time Operasistema di sincronizzazione (RTOS) |
| Viene utilizzato per PC desktop e laptop. | Viene applicato solo all'applicazione incorporata. |
| Pianificazione basata sui processi. | Si utilizza una programmazione basata sul tempo, come la programmazione round-robin. |
| La latenza degli interrupt non è considerata importante quanto in un RTOS. | Il ritardo di interruzione è minimo, misurato in pochi microsecondi. |
| Nel sistema non è presente alcun meccanismo di inversione di priorità. | Il meccanismo di inversione della priorità è presente, quindi non può essere modificato dal sistema. |
| L'operazione del kernel può essere interrotta o meno. | L'operazione del kernel può essere interrotta. |
| L'inversione di priorità passa inosservata. | Nessuna garanzia di prevedibilità. |
Applicazioni del tempo reale Operasistema di ting
I sistemi in tempo reale sono utilizzati in:
- Sistemi di prenotazione delle compagnie aeree.
- Sistemi di controllo del traffico aereo.
- Sistemi che garantiscono un aggiornamento immediato.
- Qualsiasi sistema che fornisca informazioni aggiornate e precise sui prezzi delle azioni.
- Sistemi applicativi per la difesa come RADAR.
- Sistemi multimediali in rete.
- Sistemi di comando e controllo.
- Telefonia via Internet.
- Sistemi frenanti antibloccaggio.
- Pacemaker cardiaci.
Svantaggi dell'RTOS
Ecco gli svantaggi dell'utilizzo di un RTOS:
- Un RTOS esegue un numero minimo di attività contemporaneamente e si concentra solo sulle applicazioni che contengono un errore, in modo da poterle evitare.
- Un RTOS si concentra su pochi compiti. Pertanto, per questi sistemi è estremamente difficile eseguire il multitasking.
- Per un RTOS sono necessari driver specifici che gli consentano di offrire un tempo di risposta rapido ai segnali di interruzione, contribuendo così a mantenerne la velocità.
- Un RTOS utilizza molte risorse, il che rende questo sistema costoso.
- Le attività a bassa priorità potrebbero dover attendere a lungo, poiché il sistema operativo in tempo reale (RTOS) dà priorità all'accuratezza dei programmi in esecuzione.
- Nei sistemi operativi in tempo reale il passaggio tra attività è ridotto al minimo.
- Utilizza algoritmi complessi, difficili da comprendere.
- Un RTOS utilizza molte risorse, il che a volte non è adatto al sistema.


