Realtidsoperativsystem – Wikipedia
Realtidsoperativsystem, RTOS är en speciell typ av operativsystem där tidsprestanda är av vikt.
Karaktäristik
[redigera | redigera wikitext]Ett RTOS skiljer sig från gängse operativsystem på ett par distinkta punkter. Framför allt måste ett RTOS vara förutsägbart med avseende på tid till skillnad från ett operativsystem till en PC eller en stordator där en beräkning eller skrivarutskrift är korrekt även om den skulle bli klar några sekunder för sent. Ett RTOS kan därför ha ansvar för kritiska system, där liv kan hänga på att en korrekt funktion utförts i tid. Ett annat kopplat krav är att den förutsägbara tiden är tillräckligt kort för att klara av uppgiften, något som diskvalificerar de flesta vanliga operativsystem.
Numera skiljer man på hård realtid och mjuk realtid. Grovt sett anser man att system där mänskliga liv hänger på att funktionen upprätthålls kräver hård realtid exempelvis sjukvårdsutrustning. System som inte skadar människor vid felaktig funktion kan anses kunna använda mjuk realtid, exempelvis DVD-spelare och mobiltelefoner. Dock kan det för de senare finnas kommersiella skäl att vilja hålla en hög tillgänglighet på funktionen. Ett RTOS krävs för hård realtid, men inte för mjuk realtid.
Användning
[redigera | redigera wikitext]För det mesta är ett RTOS använt i ett inbyggt system som då kallas realtidssystem. Tillämpningen kan exempelvis mäta temperaturer i ett järnverk eller styra en industrirobot eller ett flygplan, som en del av ett system där dussintals inbyggda system kan kommunicera med varandra och i slutänden även med en operatör. Mellan de inbyggda systemen och operatören finns ibland en processdator som samlar in data från och skickar kommandon till de inbyggda systemen via ett användargränssnitt.
Förutsägbarhet
[redigera | redigera wikitext]Tiden som måste vara förutsägbar är den mellan att systemet registrerat en yttre händelse till dess att händelsen är färdigbehandlad. För att tiden för detta skall gå att beräkna måste samtliga delar av mjukvaran garantera sin maximala fördröjning av RTOS:et för detta att ta över vid en yttre händelse. RTOS:et har dessutom i sig självt väl definierade maxfördröjningar för olika operationer.
Oftast är detta inte ett problem då mikroprocessorn kan hantera avbrott i särskilda avbrottsrutiner. Problem uppstår då data delas mellan olika delar av mjukvaran. Om till exempel mjukvaran avbryts på grund av en yttre händelse när den är i färd med att bearbeta något data så kan det hända att avbrottet i sig feltolkar det bearbetade datat och komma att skriva sönder detta med nytt data. Ett RTOS har mekanismer för att garantera integriteten hos datat så att avbrott inte kan modifiera detta vid fel tillfällen och möjliggör därigenom en förutsägbar fördröjning för avbrottet att slå igenom på systemet som helhet.
Svenska RTOS
[redigera | redigera wikitext]- DICOS, Ericsson
- D-NIX, Dataindustrier AB
- OS8, Dataindustrier AB
- OSE, http://www.enea.se
- rt-kernel, http://www.rt-labs.se
- Rubus, https://web.archive.org/web/20140330145412/http://www.arcticus.se/
- Sierra, http://www.agstu.com (HW-RTOS)