Ero sivun ”Reaaliaikainen käyttöjärjestelmä” versioiden välillä
[katsottu versio] | [katsottu versio] |
Ei muokkausyhteenvetoa |
wl |
||
Rivi 1: | Rivi 1: | ||
'''Reaaliaikainen käyttöjärjestelmä''' ({{k-en|Real-time operating system}}, RTOS) on [[käyttöjärjestelmä]]tyyppi, joka noudattaa [[reaaliaikaisuus|reaaliaikaisuuden]] vaatimuksia toiminnallisten vaatimuksien lisäksi.<ref name="nasa101">{{Verkkoviite | osoite = https://www.nasa.gov/sites/default/files/482489main_4100_-_RTOS_101.pdf | nimeke = Real-Time Operating Systems (RTOS) 101 | julkaisija = NASA | tiedostomuoto = PDF | viitattu = 30.11.2017}}</ref> Reaaliaikainen käyttöjärjestelmän tavoitteisiin kuuluu aikarajan deterministinen noudattaminen.<ref name="nasa101" /> |
'''Reaaliaikainen käyttöjärjestelmä''' ({{k-en|Real-time operating system}}, RTOS) on [[käyttöjärjestelmä]]tyyppi, joka noudattaa [[reaaliaikaisuus|reaaliaikaisuuden]] vaatimuksia toiminnallisten vaatimuksien lisäksi.<ref name="nasa101">{{Verkkoviite | osoite = https://www.nasa.gov/sites/default/files/482489main_4100_-_RTOS_101.pdf | nimeke = Real-Time Operating Systems (RTOS) 101 | julkaisija = NASA | tiedostomuoto = PDF | viitattu = 30.11.2017}}</ref> Reaaliaikainen käyttöjärjestelmän tavoitteisiin kuuluu aikarajan [[Determinismi|deterministinen]] noudattaminen.<ref name="nasa101" /> |
||
Vaatimukset voidaan jakaa kahteen kategoriaan:<ref>{{Verkkoviite | osoite = http://people.inf.ethz.ch/troscoe/pubs/UCAM-CL-TR-376.pdf | nimeke = The Structure of a Multi-Service Operating System | tekijä = Roscoe, Timothy | julkaistu = 1995 | viitattu = 20.2.2017}}</ref><ref name="rtsched">{{Verkkoviite | osoite = http://cseweb.ucsd.edu/classes/wi01/cse221/OSSurveyW01/papers/khushu,simmons.scheduling_and_synchronization_in_embedded_real-time_operating_systems.pdf | nimeke = Scheduling and Synchronization in Embedded Real-Time Operating Systems | tekijä = Khushu, Sanjeev & Simmons, Johnathan | julkaistu = 5.3.2001 | viitattu = 20.2.2017 }}</ref> |
Vaatimukset voidaan jakaa kahteen kategoriaan:<ref>{{Verkkoviite | osoite = http://people.inf.ethz.ch/troscoe/pubs/UCAM-CL-TR-376.pdf | nimeke = The Structure of a Multi-Service Operating System | tekijä = Roscoe, Timothy | julkaistu = 1995 | viitattu = 20.2.2017}}</ref><ref name="rtsched">{{Verkkoviite | osoite = http://cseweb.ucsd.edu/classes/wi01/cse221/OSSurveyW01/papers/khushu,simmons.scheduling_and_synchronization_in_embedded_real-time_operating_systems.pdf | nimeke = Scheduling and Synchronization in Embedded Real-Time Operating Systems | tekijä = Khushu, Sanjeev & Simmons, Johnathan | julkaistu = 5.3.2001 | viitattu = 20.2.2017 }}</ref> |
Versio 30. marraskuuta 2017 kello 13.39
Reaaliaikainen käyttöjärjestelmä (engl. Real-time operating system, RTOS) on käyttöjärjestelmätyyppi, joka noudattaa reaaliaikaisuuden vaatimuksia toiminnallisten vaatimuksien lisäksi.[1] Reaaliaikainen käyttöjärjestelmän tavoitteisiin kuuluu aikarajan deterministinen noudattaminen.[1]
Vaatimukset voidaan jakaa kahteen kategoriaan:[2][3]
- pehmeä (soft real-time), palvelun laadun heikkeneminen kuten audiotoiston pätkiminen
- kova (hard real-time), täysi epäonnistuminen kuten sydämentahdistimen epäonnistuminen
Keskeinen suunnittelukohta on vaatimus vasteajan noudattamisesta: ajassa, jossa toiminnon on joko onnistuttava tai epäonnistuttava (deadline). Reaaliaikaisen järjestelmän ei tarvitse olla nopea, mutta sen on oltava luotettava ja reagoitava aina tietyn aikarajan sisällä.
Reaaliaikaiset järjestelmät vaativat takeen (guarantee) vasteajasta: tavallinenkin järjestelmä voi toimia aikarajan sisällä mutta se ei välttämättä ole taattua.
Esimerkkejä käyttökohteesta voivat olla Fly-by-wire järjestelmä ja lukkiutumattomat jarrut (ABS).
Toteutustapoja
Toteutustavat voidaan jakaa kahteen kategoriaan:
- tapahtumapohjainen (event-driven)
- aikajakava (time sharing)
Aikajakavajärjestelmä voi olla tasaisempi moniajon kannalta, mutta voi käyttää enemmän resursseja kuin tarpeen mikäli järjestelmä käyttää paljon aikaa odottamiseen.
Viestimekanismit
Asynkroninen viestien välitys ja käsittely on menetelmä, jota voidaan käyttää kun halutaan varmistaa että haluttu toiminto ei pysäytä tehtävän suorittamista.[3]
Menetelmä tarkoittaa usein erillisiä säikeitä eri tehtäville.
Osiointi
- Pääartikkeli: DO-178B
Tehtävät osioidaan kriittisestä vähemmän kriittiseen siten, että alemman kriittisyystason epäonnistuminen ei voi keskeyttää korkeamman kriittisyystason tehtäviä. Menetelmää käytetään ilmailun ohjelmistojen toteuttamisessa.
Voidaan myös vaatia formaalia todistetta ohjelmakoodin oikeellisuudesta ja kaikkien syötteiden ja tilojen huomioimisesta toteutuksen toiminnassa.
Reaaliaikakäyttöjärjestelmiä
Katso myös
Lähteet
- ↑ a b Real-Time Operating Systems (RTOS) 101 (PDF) NASA. Viitattu 30.11.2017.
- ↑ Roscoe, Timothy: The Structure of a Multi-Service Operating System people.inf.ethz.ch. Viitattu 20.2.2017.
- ↑ a b Khushu, Sanjeev & Simmons, Johnathan: Scheduling and Synchronization in Embedded Real-Time Operating Systems cseweb.ucsd.edu. Viitattu 20.2.2017.
Aiheesta muualla
- The Open Group Base Specifications (englanniksi)