RTOS: ce este un sistem de operare în timp real

circuite PCB încorporate

Acum câteva zile am făcut o introducere despre STR-uri, un sistem de operare pentru roboți, deși nu este tocmai un sistem de operare așa cum se înțelege în calcul, ci mai degrabă un cadru pentru dezvoltatori de robotică. Acum este rândul extensia RTOS, care nu este nici un sistem de operare, ci mai degrabă un tip foarte particular de sistem de operare.

Aceste sisteme de operare sunt foarte importante pentru dispozitive încorporate sau încorporate de capacitate mică, deoarece sunt de obicei gestionate de ei. În plus, sunt importante și în aplicațiile industriale, pentru controlul multor procese.

Ce este un RTOS?

Un RTOS (sistem de operare în timp real) Este, după cum sugerează și numele, un sistem de operare în timp real. Acest lucru diferă de sistemele de operare cu timp partajat prin faptul că lucrați într-un mediu în care rezultatele de ieșire sunt cunoscute pe baza intrărilor sistemului și apar la un moment cunoscut. Prin urmare, acestea sunt mai previzibile și mai stabile pentru a controla sarcini specifice, iar procesele rezidă, de obicei, permanent în memorie (în procesele de partajare a timpului, planificatorul se încarcă și se descarcă din memoria principală după cum este necesar).

De exemplu, imaginați-vă un RTOS folosit pentru o mașină industrială pe o linie de asamblare. Ar fi însărcinat cu executarea unui software pentru a găuri din când în când piese. Daca planificatorul sistemului de operare nu ar functiona in timp real, este probabil ca acesta sa ruleze la ore impare, ceea ce ar face ca forarea sa nu fie facuta la timp... Fiind in timp real, RTOS poate termina executia programului. în timp X și repetați execuția acestuia pentru a efectua toate forajele la timp.

Desigur, fiind un sistem de operare, împărtășește și elementele fundamentale ale oricărui alt sistem de operare, adică este un sistem capabil să gestionează hardware-ul și oferă o serie de servicii la aplicații.

Tipuri de RTOS

Câteva tip sisteme de operare în timp real sau RTOS:

  • Hard Real-Time: este un sistem de operare strict în timp real, în care procesele sale trebuie executate la un moment dat.
  • Soft RealTime: un timp real flexibil, unde la executarea proceselor se pot pierde uneori instante aproape neglijabile, adică nu este la fel de strict ca precedentul. În plus, sunt concepute astfel încât aceste cursuri de timp să fie din ce în ce mai mici.
  • În timp real ferm: SSOO ferme în timp real sunt un alt tip în care timpul poate fi pierdut, dar răspunsurile întârziate nu ar fi valabile.

Aplicații ale unui RTOS

Un RTOS este un sistem simplu, ușor, utilizat pentru sisteme limitate sau simple, cum ar fi dispozitivele încorporate. Acest lucru le face perfecte pentru aplicații ca:

  • control industrial.
  • Comutarea telefonului.
  • Controlul zborului.
  • Simulări în timp real.
  • aplicatii militare.
  • Electrocasnice.
  • Dispozitive electronice de consum de bază.
  • Roboți.
  • Etc

Caracteristicile RTOS

RTOS au un număr de particularități care sunt cele care le oferă acele avantaje față de restul pentru acele sarcini simple de management. Pentru a le înțelege mai bine, este necesar să cunoașteți o serie de concepte de bază:

  • proces sau sarcină: este un subprogram care rulează în paralel cu RTOS. Acest proces poate îndeplini multe sarcini, de la controlul unui periferic până la efectuarea altor acțiuni.
  • Muncă: Acesta este numele dat timpului necesar pentru a executa un proces.
  • Planificator: planificatorul RTOS vă permite să gestionați prioritățile și timpii proceselor executate. Și există două tipuri principale:
    • De cooperare: apelează mai întâi procesele cu cea mai mare prioritate și când procesul se termină apelează pe altul sau, dacă procesul durează mai mult decât se aștepta, îl oprește și îl apelează pe următorul.
    • expropriativ: Din când în când apelează automat un proces, dar acest lucru poate duce la erori din cauza priorității slabe în procese sau dependențe. Pentru a evita aceste probleme se introduce conceptul de semafore.
  • Semafor: functioneaza asemanator celor de trafic, controland cand un proces este in proces si paralizand intrarea in restul proceselor si, cand lasa resursele libere, da „unda verde” urmatorului. introduce. Unele RTOS-uri au mai multe semafore, fiecare specific unei resurse partajate.
  • Colas: sunt folosite pentru a comunica între procese, ca un buffer, de exemplu pentru stocarea temporară a datelor sau când există mai multe elemente care returnează date unui singur receptor.
  • întreruperi: funcționează ca cele ale sistemelor de operare cu time-sharing, dar într-un RTOS există unele particularități. Aceste tipuri de întreruperi sunt utilizate pentru gestionarea timpului de către un controler.

Exemple de RTOS

Dacă vă întrebați ce sisteme de operare RTOS există, adevărul este că există un număr mare, atât proprietar, cât și open source:

  • Arm OS: un sistem de operare conceput pentru Cortex-M, Cortex-R, Cortex-A și licențiat sub licența Apache 2.0.
  • eCos: sub licență GNU GPL modificată, este un alt sistem de operare open source pentru ARM-XScale-Cortex-M, CalmRISC, 680×0-ColdFire, fr30, FR-V, H8, IA-32, MIPS, MN10300, OpenRISC, PowerPC , SPARC, SuperH și V8xx.
  • grava: este un sistem RTOS proprietar, pentru IoT și aplicații încorporate cu arhitecturi ARM7/9/11, ARM Cortex-A/R/M, AVR, AVR32, C16x, CR16C, ColdFire, H8, HCS12, M16C, M32C, MSP430, NIOS2 , PIC18/24/32, R32C, R8C, RISC-V, RL78, RH850, RX100/200/600/700, RZ, SH2A, STM8, ST7, V850, 78K0 și 8051.
  • FreeRTOS: sub licență open-source MIT, este destinat pentru încorporat cu ARM, AVR, AVR32, ColdFire, ESP32, HCS12, IA-32, Cortex-M3-M4-M7, Infineon XMC4000, MicroBlaze, MSP430, PIC, PIC32, Renesas arhitecturi H8/S, RISC-V, RX100-200-600-700, 8052, STM32, TriCore și EFM32.
  • Fucsie: Este faimosul sistem open source creat de Google și conceput să funcționeze atât pe x86-64, cât și pe ARM64.
  • colibri: un sistem RTOS pentru x86 sub licența GNU GPL gratuită.
  • lynxOS: un alt RTOS, dar acesta proprietar și pentru arhitecturi la fel de disparate precum Motorola 68010, x86/IA-32, ARM, Freescale PowerPC, PowerPC 970 și LEON. În plus, este certificat POSIX.
  • Neutrino: un sistem proprietar în timp real pentru ARM, MIPS, PPC, SH, x86 și XScale.
  • Phoenix-RTOS: sub o licență BSD permisivă, cu suport pentru arhitecturile ARMv7 Cortex-M, ARMv7 Cortex-A, IA-32 și RISC-V.
  • QNX: deține și a fost foarte popular. Este proiectat să accepte x86-64, ARM32, ARM64 și MIPS anterioare, PowerPC, SH-4, StrongARM, XScale.
  • Linux: Deși este utilizat în general în modul de partajare a timpului, nucleul poate funcționa și ca o aproximare a unui RTOS pentru încorporat.
  • Windows CE y Windows 10 IoT: Microsoft are și aceste versiuni în timp real ale sistemului său de operare proprietar.
  • zefir: sub licența Apache 2.0 există și acest alt RTOS open source pentru ARM (Seria Cortex-M, Cortex-R și Cortex-A), x86, x86-64, ARC, RISC-V, Nios II, Xtensa și SPARC .

Fii primul care comenteaza

Lasă comentariul tău

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

*

*

  1. Responsabil pentru date: Miguel Ángel Gatón
  2. Scopul datelor: Control SPAM, gestionarea comentariilor.
  3. Legitimare: consimțământul dvs.
  4. Comunicarea datelor: datele nu vor fi comunicate terților decât prin obligație legală.
  5. Stocarea datelor: bază de date găzduită de Occentus Networks (UE)
  6. Drepturi: în orice moment vă puteți limita, recupera și șterge informațiile.