Sisteme de operare real-time
Download
Report
Transcript Sisteme de operare real-time
Universitatea Politehnica Bucuresti
Facultatea de Electronica, Telecomunicatii si Tehnologia Informatiei
Sisteme de operare real-time
Masterand:
Cergau Alexandru
- 2010 -
Introducere SORT
• folosite în general pentru computere de tip embedded
• Real time = abilitatea sistemului de operare de a oferi
nivelul necesar de service într-un timp de răspuns
predefinit scurt (POSIX 1003.1 )
• raspunde unor stimuli externi receptionati prin intrarile
sale
time-triggered - sistemul testeaza periodic intrarile
event triggered - prin întreruperi
• Folosite pentru capacitatea lor de răspuns rapid, nu
pentru volumul total de muncă (calcule) pe care îl pot
efectua
Caracteristici SORT
Un SORT trebuie sa ofere:
un model care sa permita specificarea constrângerilor
temporare pentru toate tipurile de procese
un limbaj care sa permita specificarea clara a sistemului si care
sa permita luarea în considerare a comunicatiilor asincrone cu
exteriorul
politici de planificare si gestionare a resurselor care sa confere
sistemului proprietatile de garantie si predictibilitate
protocoale de comunicatie care sa ia în considerare aspectele
temporare
protocoale speciale pentru gestiunea memoriei
mecanisme de sincronizare inter-taskuri si de sincronizare de
ceas.
Caracteristici SORT (II)
• se ia în considerare notiunea timp la toate nivelele
• echilibru intre flexibilitate si predictibilitate
• Planificarea - garanteaza respectarea constrângerilor
temporale. Nerespectarea constrângerilor conduce la:
conflictele datorate disputarii procesoarelor
conflictele datorate disputarii resurselor
• Preemptibilitatea = posibilitatea taskurilor de a fi
întrerupte, suspendate temporar
complet preemptive - pot fi întrerupte în orice punct
nepreemptive - în nici un punct al executiei
partial preemptive – cu exceptia zonelor critice
Caracteristici SORT (III)
• Prioritatea
taskuri TR critice - hard real-time tasks
depasirea limitei de timp nu poate fi tolerata ducand la efecte
catastrofale;
au prioritatea cea mai mare;
li se rezerva static resursele, aceasta fiind o garantie necesara, dar
nu suficienta pentru a trata toate situatiile dinamice ce ar putea
aparea;
numar redus de taskuri critice
taskuri TR esentiale - soft real-time tasks
importante, dar depasirea limitei poate fi tolerata
taskuri neesentiale - non-real-time tasks
nu sunt direct asociate activitatilor TR ale aplicatiei;
se executa ultimele
Arhitectura Qnx
•microkernelul Neutrino
administreaza un grup de procese
cooperante
•Ofera:
multitasking
multiuser
retea
transmitere de mesaje,
planificare preemtiva
schimbare rapida de context
•foloseste standardul POSIX
Arhitectura Qnx (II)
• exista un modul numit procnto ,format din
microkernelul Neutrino si process manager
• Microkernelul Neutrino = implementare a coreului POSIX impreuna cu serviciile fundamentale
de transmitere a mesajelor.
• caracteristicile POSIX care nu sunt implementate
in microkernel sunt asigurate de procesele
optionale si librariile partajate.
• process managerul este capabil sa creeze procese
POSIX multiple
• comunicare interproces bazata pe mesaj
Arhitectura RTLinux
•sistem de operare mic si rapid,
•bazat pe standardul POSIX
1003.13
•nivel de virtualizare hardware
intre kernelul Linux standard si
partea hardware
•RTLinux este sistemul de
operare “oaspete” al kernelului
Linuxului (detine controlul deplin
al memoriei)
Arhitectura RTLinux (II)
• Domeniul prioritatilor : 0 – 1000000
• Fara numar limita de threaduri, costul planificarii este
proportional cu numarul acestora
• Planificare
SCHED_FIFO - planificare cu prioritate fixa
threadurile cu aceeasi prioritate sunt executate in ordinea FIFO
SCHED_SPORADIC - ruleaza actiuni aperiodice
SCHED_EDF implementeaza EDF ( Earliest Deadline First), o
politica de planificare dinamica a prioritatilor.
Firele de executie sunt ordonate in functie de prioritate,
dar firele cu aceeasi prioritate sunt planificate tinand cont de politica
EDF.
• toate firele de executie ale aplicatiilor si kernelul RTLinux
ruleaza in acelasi spatiu de adrese
Arhitectura VxWorks
•microkernelul wind
•trasaturi real-time :
multi-tasking
planificare
comunicare si sincronizare
intre taskuri,
administrarea memoriei
celelalte functionalitati sunt
implementate sub forma unor
procese.
Arhitectura VxWorks (II)
• foarte scalabil prin includerea sau excluderea
unor module
• toate sistemele si aplicatiile au acelasi spatiu de
adrese
• pentru obtinerea unui raspuns rapid intreruperile
externe, rutinele de serviciu ale intreruperilor
(ISR – interrupt service routines) din VxWorks
ruleaza intr-un context special in afara contextului
threadurilor
• Adresa ISR-ului este stocata intr-o tabela de
intreruperi si este apelata direct de hardware
Exemple de SOTR si folosirea lor
Comparatie SOTR
MULŢUMESC!
14