„Oferiți un produs gratuit care depășește calitatea și serviciile cerute de utilizatorii alternativelor comerciale”
Dezvoltatorii dedicați ai FreeRTOS au lucrat în parteneriat strâns cu companiile de cipuri de vârf din lume timp de peste 15 ani pentru a vă oferi unRTOS și instrumente de înaltă calitate, lider de piață, de nivel comercial și complet gratuite….dar ce este un RTOS?
Această pagină începe prin a defini un sistem de operare, apoi rafinează acest lucru pentru a defini un sistem de operare în timp real (RTOS), apoi mai rafinează încă o dată pentru a defini un nucleu de timp real (sau executiv în timp real).
Vezi, de asemenea, articolul din FAQ „de ce un RTOS” pentru informații despre când și de ce poate fi utilă utilizarea unui RTOS în proiectarea software-ului pentru sistemele încorporate.
Ce este un sistem de operare generalist?
Un sistem de operare este un program de calculator care suportă funcțiile de bază ale unui calculator și oferă servicii altor programe (sau aplicații) care rulează pe calculator.Aplicațiile oferă funcționalitatea pe care utilizatorul calculatorului o dorește sau de care are nevoie. Serviciile furnizate de sistemul de operare fac ca scrierea aplicațiilor să fie mai rapidă, mai simplă și mai ușor de întreținut.Dacă citiți această pagină web, atunci folosiți un browser web (programul de aplicație care furnizează funcționalitatea care vă interesează), care la rândul său rulează într-un mediu furnizat de un sistem de operare.
Ce este un RTOS?
Majoritatea sistemelor de operare par să permită executarea mai multor programe în același timp. Acest lucru se numește multitasking. În realitate, fiecare nucleu de procesor nu poate rula decât un singur fir de execuție la un moment dat.O parte a sistemului de operare numită planificator este responsabilă pentru a decide ce program să ruleze când și oferă iluzia unei execuții simultane prin comutarea rapidă între fiecare program.
Tipul unui sistem de operare este definit de modul în care planificatorul decide ce program să ruleze când. De exemplu, planificatorul utilizat într-un sistem de operare multiutilizator (cum ar fiUnix) se va asigura că fiecare utilizator primește o parte echitabilă din timpul de procesare. Ca un alt exemplu, planificatorul dintr-un sistem de operare de birou (cum ar fi Windows) va încerca să se asigure că computerul rămâne receptiv la utilizator.
Programatorul dintr-un sistem de operare în timp real (Real Time Operating System – RTOS) este conceput pentru a oferi un model de execuție previzibil (descris în mod normal ca fiind determinist).Acest lucru prezintă un interes deosebit pentru sistemele integrate, deoarece sistemele integrate au adesea cerințe în timp real. O cerință în timp real este una care specifică faptul că sistemul încorporat trebuie să răspundă la un anumit eveniment într-un interval de timp strict definit (termenul limită).Se poate garanta respectarea cerințelor în timp real numai dacă comportamentul planificatorului sistemului de operare poate fi prezis (și, prin urmare, este determinist).
Planurile tradiționale de planificare în timp real, cum ar fi planificatorul utilizat în FreeRTOS, realizează determinismul permițând utilizatorului să atribuie o prioritate fiecărui fir de execuție. Planificatorul utilizează apoi prioritatea pentru a ști ce fir de execuție trebuie să ruleze în continuare. În FreeRTOS, un fir de execuție se numește sarcină.
Ce este FreeRTOS?
FreeRTOS este o clasă de RTOS care este proiectată pentru a fi suficient de mică pentru a fi rulată pe un microcontroler – deși utilizarea sa nu este limitată la aplicații de microcontroler.
Un microcontroler este un procesor de mici dimensiuni și cu resurse limitate care încorporează, pe un singur cip, procesorul propriu-zis, memoria numai pentru citire (ROM sau Flash) pentru a conține programul care urmează să fie executat și memoria de acces aleatoriu (RAM) necesară programelor pe care le execută. De obicei, programul este executat direct din memoria numai pentru citire.
Microcontrolerele sunt utilizate în aplicații strict încorporate (acele aplicații în care nu se văd niciodată procesoarele în sine sau software-ul pe care îl rulează) care, în mod normal, au o sarcină de lucru foarte specifică și dedicată. Constrângerile de dimensiune și natura specifică a aplicației finale rareori justifică utilizarea unei implementări RTOS complete – sau chiar fac posibilă utilizarea unei implementări RTOS complete.Prin urmare, FreeRTOS oferă doar funcționalitatea de bază de programare în timp real, comunicarea între sarcini, sincronizarea și primitivele de sincronizare. Acest lucru înseamnă că este descris mai exact ca un nucleu în timp real sau un executiv în timp real. Funcționalități suplimentare, cum ar fi o interfață de consolă de comandă sau stive de rețele, pot fi apoi incluse cu ajutorul unor componente suplimentare.
Următorul: Fundamentele RTOS
.