La Conferinta Embedded Linux 2018, Julia Cartwright de la NI le-a spus autorilor de drivere pentru dispozitive cum sa se asigure ca driverele lor vor functiona fara nici o problema pe Real-Time Linux.
Cu toate ca Real-Time Linux (RT Linux) a fost de ani de zile la conferintele Embedded Linux - multi dezvoltatori au privit tehnologia ca fiind periferica pentru propriile proiecte incorporate. Totusi, ca RT, activat prin intermediul patch-urilor PREEMPT_RT, se pregateste sa fie complet integrat in kernelul principal, un cerc mai larg de dezvoltatori ar trebui sa acorde atentie. In special, autorii de drivere pentru dispozitivele Linux vor trebui sa se asigure ca driverele lor se integreza fara probleme cu kernel-urile cu tehnologie RT.
La ultima conferinta de la Embedded Linux din Portland , inginerul de software National Instruments, Julia Cartwright, un intretinator care actioneaza pe o versiune stabila a patch-ului RT, a oferit o prezentare numita "Ce trebuie sa stie fiecare dezvoltator de drivere despre RT". prezentare generala a RT, care ajuta la furnizarea de garantii pentru executarea sarcinilor utilizatorilor pentru aplicatiile incorporate care necesita un nivel ridicat de determinism.Una dintre provocarile oricaror sisteme de operare in timp real este faptul ca majoritatea aplicatiilor tinta au doua tipuri de sarcini:
- cele cu cerinte in timp real si sensibilitate latenta - cele pentru sarcini critice care nu sunt legate de timp, cum ar fi monitorizarea discului, O.
"Cele doua clase de sarcini trebuie sa se desfasoare impreuna si poate sa comunice una cu alta cu o critica mixta", a explicat Cartwright. "Trebuie sa rezolvati doua grade diferite de sensibilitate la timp".In RT, intervalul dintre momentul in care are loc un eveniment - cum ar fi un temporizator care declanseaza o intrerupere sau un dispozitiv de intrare / iesire care solicita un serviciu - si momentul in care executa sarcina in timp real se numeste delta.
Aceasta delta poate fi impartita in doua faze: - Prima faza este irq_dispatch, care este timpul necesar intre interogarea hardware-ului si expedierea care are loc pana in momentul in care planificatorul de fire este instruit ca firul trebuie sa ruleze. - A doua faza este programarea latentei, perioada dintre momentul in care planificatorul a fost constient ca o sarcina cu prioritate ridicata trebuie sa ruleze pana in momentul in care CPU-ului i se da sarcina de a executa.
Despre RTLinux: RTLinux ofera capacitatea de a executa sarcini speciale in timp real si de a intrerupe manipulatorii pe aceeasi masina ca si standardul Linux. Aceste sarcini si operatori executa atunci cand au nevoie sa execute indiferent de ceea ce face Linux. O sarcina periodica RTLinux ruleaza in interval de 35 de microsecunde din timpul programat pe acelasi hardware.
Aceasta a fost o prezentare exhaustiva a RTLinux. M-ai multe detalii in alte articole in viitor.