80 likes | 221 Views
Operacijski sistem i za delo v realnem času. Matjaž Colnarič colnaric@uni-mb.si. Izvajanje opravil v vgrajenih sistemih. Pogosto v VS ni potrebe po “pravem” operacijskem sistemu. Aplikacijski program se sproži ob resetu. Polled loop systems: sistem v zanki čaka na dogodke in jih postreže.
E N D
Operacijski sistemi za delo v realnem času Matjaž Colnaričcolnaric@uni-mb.si Real-Time Systems Laboratory, Institute of Informatics
Izvajanje opravil v vgrajenih sistemih • Pogosto v VS ni potrebe po “pravem” operacijskem sistemu. Aplikacijski program se sproži ob resetu. • Polled loop systems: sistem v zanki čaka na dogodke in jih postreže. • Round-robin (nonpreemptable, time-slicing) • Ko-rutine (cooperative multitasking systems): program po vsaki fazi vrne kontrolo dispečerju, ki zažene naslednje “ready” opravilo • Cyclic executive: eno opravilo se ciklično ponavlja (PLC) • Prekinitveni sistem (context switching, sklad) • Foreground-background – kombinacije HRT/SRT Real-Time Systems Laboratory, Institute of Informatics
Operacijski sistem(DIN 44300, No. 59): • Operacijski sistem je program, ki skupaj s funkcionalnostjo računalnika zagotavlja osnovne načine delovanja ter krmili in nadzoruje potek programov. • Glavne zahteve za RTOS: časovno nadzorovano izvajanje asinhronih opravil za zagotavljanje napovedljivosti in varnosti. • Manj pomembno: optimalno izkoriščanje razpoložljivih sredstev Real-Time Systems Laboratory, Institute of Informatics
Naloge RTOS • Task management: alokacija procesorskih resursov opravilom (dodeljevanje pomnilnika in procesorskega časa) – scheduling, dispatching • Memory management: nadzorovanje alokacije pomnilnika na nižjem nivoju (z vidika pomnilnika kot resursa) • Resource control: upravljanje z drugimi sredstvi razen procesorja in pomnilnika (dostop do periferije, komunikacij itd.) • Intertask communication and synchronisation: zagotavljanje varnega načina komuniciranja med opravili na istem ali različnih procesorjih in mehanizmov za sinhronizacijo njihovega delovanja Real-Time Systems Laboratory, Institute of Informatics
Programi RTOS kot procesi • VDI/VDE 3554 • Tudi programi OS so opravila – sistemska opravila ali procesi. • Sistemski procesi 1. reda: aktivirajo jih dogodki (HW signal- -prekinitev, klic nadzornega sistema) • Sistemski procesi 2. reda: krmili proces manager, ki je del operacijskega sistema • Procesi 1. reda tvorijo jedro RTOS (kernel, nucleus). So stalno naloženi v pomnilniku. Ko se startajo, opravilo končajo oz. lahko procesor le za krajši čas oddajo (se ne suspendirajo v celoti) • Procesi 2. reda tvorijo lupino RTOS in so na podobnem nivoju kot aplikacijska opravila. Real-Time Systems Laboratory, Institute of Informatics
Processes of 1st Kind • Memory resident • Run in a hardware supported priviledged mode for safety reasons • May only be postponed by higher priority interrupts • Are conditionally interruptable to prevent interrupt cascades during access to common system data --- processes must therefore be short • Have no explicit waiting positions: a process never gives up the processor on its own initiative • Extendability, e.g. to incorporate special device drivers • Observe a model of 3 states: dormant <-> running <-> interrupted Real-Time Systems Laboratory, Institute of Informatics
Distributed Operating System • Client-server model in distributed operating systems: • ·system tasks are servers • ·clients can be application or other system tasks Real-Time Systems Laboratory, Institute of Informatics
Izvedba večopravilnosti (TCB) Real-Time Systems Laboratory, Institute of Informatics