Erinevus lehekülje "Reaalaja operatsioonisüsteem" redaktsioonide vahel

P
resümee puudub
P
Reaalaja operatsioonisüsteemide võtmetunnuseks on [[rakendus]]te nõuete vastuvõtmisele ja täitmisele kuluva aja, [[kosteaja]], pidevus ja ette ennustatus.<ref>{{netiviide | URL =http://www.chibios.org/dokuwiki/doku.php?id=chibios:articles:jitter| Pealkiri = Response Time and Jitter|Keel=Inglise|Kasutatud = 23.12.2012}}</ref> Reaalaja operatsioonisüsteemid jagunevad rangeteks ning nõrkadeks reaalaja operatsioonisüsteemideks. Range reaalaja operatsioonisüsteem on pidevam ja paremini ette ennustatava ajalise kasutusega kui nõrk reaalaja operatsioonisüsteem. Reaalaja operatsioonisüsteem, mis enamasti või tavaliselt suudab täita tähtaegu on nõrk reaalaja operatsioonisüsteem. Kui süsteem suudab tähtaegu alati deterministlikult täita on tegemist range süsteemiga. Põhiline disainiprobleem ei ole mitte kõrge läbilaskevõime vaid tagatud nõrk või range jõudluskategooria.<ref>{{netiviide | URL =http://www.ni.com/white-paper/3938/en| Pealkiri = Mis on reaalaja operatsioonisüsteem (RTOS)|Autor=[[National Instruments]]|Keel=Inglise|Kasutatud = 23.12.2012}}</ref>
 
Reaalaja operatsioonisüsteemide tähtsaks osaks on [[ressursijaotus]]ega tegelev arenenud [[plaanur]]id. Paindlik ja keeruline plaanur lubab küll erinevamate prioriteetidega rakenduste hulka, aga reaalaja operatsioonisüsteemid on enamasti pühendatud kitsamale kasutusvaldkonnale. Võtmetegurid on katkestuste ja lõimevahetuse[[lõim]]evahetuse minimaalne [[latents]]. Reaalaja operatsioonisüsteemi puhul väärtustatakse rohkem kui kiirelt ja etteaimatavalt see suudab reageerida, mitte see kui palju tööd ajaühikus ära tehakse.
 
 
=Disainifilosoofia=
=Tegumite vaheline suhtlus ja ressursside jagamine=
 
Mitmiktegumitöötlusega süsteemid peavad andmeid ja riistvara resursseressursse protsesside vahel jagama. Kui samal ajal üritavad mitu protsessi samale ressurssileressursile ligi pääseda tekivad ette ennustatamattudennustatamatud olukorrad. On kolm enam levinud lahendust selle probleemiga võitlemiseks.
 
==Katkestuste ajutine välja lülitamine==
Tavalised operatsioonisüsteemid ei luba kasutaja programmidel [[katkestus]]i välja lülitada, sest niiviisi võiks kasutaja programm kontrollida protsessorit nii kaua kui tahab. Modernsed protsessorid ei luba kasutaja programmidel katkestusi keelata, sest sellist kontrolli peetakse võtmetähtsusega operatsioonisüsteemi ressurssiks. Paljud manussüsteemid ja reaalaja operatsioonisüsteemid, lubavad kõigil programmidel [[Tuum (informaatika)|tuum]]a õigustes töötada, et tagada suurem süsteemikutse efektiivsus, ning lubada suuremat kontrolli riistvara üle.
 
Kui tegum töötab tuuma õigustes ühe protsessoriga süsteemis ja omab õigust katkestusi keelata, on nende välja lülitamine tihti parim(väikseima kuluga) lahendus takistamaks samaaegseid ligipääsemisi jagatud ressursile. Keelatud katkestustega ajal on protsessil eksklusiivne õigus protsessorile, sest mitte ükski teine tegum ega katkestus ei saa käivituda, seeläbi on kriitiline osa kaitstud. Kui tegum lõpetab kriitilise töö, peab ta katkesusedkatkestused tagasi sisse lülitama. Kui ootel oli katkestusi siis need käivituvad seejärel. Ajutiselt katkestuste keelamist peaks kasutama ainult siis kui kõige pikem tee läbi kriitilise osa võtab vähem aega kui maksimaalne katkestuse latents. Seda viisi kasutatakse enamasti siis kui kriitiline kood on mõned masinkäsud pikk ja ei sisalda [[Tsükkel (programmeerimine)|tsükleid]]. Näiteks on see ideaalne kaitsmaks riistvara seadeid muutvaid [[Register_(arvutitehnika)|registreid]] nende muutmise ajal.
 
 
==Binaarne semafor==
==Sõnumite saatmine==
 
Veel üks viis ressursside jagamiseks tegumite vahel, on organiseeritud sõnumite saatmise skeem. Sellises raamistikus omab ainult üks tegum otseselt ressurssi. Kui teine protsess tahab juurdepääsu ressurssileressursile saadab ta sõnumi haldavale protsessile. Kuigi nende reaalajaline käitumine on halvem kui semafori süsteemidel, õnnestub lihtsatel sõnumeid saatvatel süsteemidel võidelda paremini ummikute vastu.
 
=Katkestuste juhtija ja plaanur=
 
Kuna katestuste juhtija plokkidplokid on kõige kõrgema prioriteediga jooksev tegum ja reaalajasüsteemide lõime[[lõim]]e vahetuse aega hoitakse minimaalsena on katkestuste kood võimalikult lühike. Enamasti katkestuse kood lihtsalt teadvustab katkestuse toimumist ja paneb vastava riistvaralise töö madalama prioriteediga juhtprogrammile, näiteks lukustades semafoorisemafori lahti või saates teate. Tavaliselt pakuvad plaanurid viisi kuidas katkestuse seest tegumeid lahti lukustada.
 
=Mäluhaldus=
 
=Viited=
{{viited}}
 
<references/>
 
 
 
[[Kategooria:Operatsioonisüsteemid]]
 
 
 
[[be:Аперацыйная сістэма рэальнага часу]]
223

muudatust