- Hvad er RTOS?
- Hvorfor RTOS ??
- Forskel mellem realtidsoperativsystem og operativsystem
- Typer af RTOS
- Fordele ved at bruge gratis RTOS
- Nogle vigtige problemer relateret til RTOS
- Sådan bruges RTOS
Indlejrede systemer har en bred vifte af applikationer i alle de elektroniske enheder omkring os, et tydeligt eksempel er den mini-bærbare computer, som vi har med os hele tiden, ja jeg henviser til vores mobiltelefoner.
Når integreret system kommer i billedet, er det altid en kombination af hardware som mikrocontrollere eller mikroprocessorer og software som en firmware eller et operativsystem. Et operativsystem danner basen for alle elektroniske enheder og styrer både hardwaren og softwaren inden for enhver elektronisk enhed. Udtrykket operativsystem er ikke kun begrænset til Unix og Windows til computere, men kan også omfatte mikrokontrollere. Et sådant operativsystem, der kan køre på Microcontrollers kaldes som operativsystem i realtid. Her vil vi lære om RTOS og applikationer i realtidsoperativsystem.
Hvad er RTOS?
Realtids-operativsystem, populært kendt som RTOS, giver controlleren mulighed for at reagere på input og udføre opgaver inden for en bestemt tidsperiode baseret på prioritet. Ved det første blik kan en RTOS måske lyde som ethvert andet integreret program eller firmware, men den er bygget på arkitekturen i et operativsystem. Derfor kan RTOS som ethvert operativsystem tillade, at flere programmer udføres på samme tid, der understøtter multiplexing. Som vi ved, kan kernen i en processor eller controller kun udføre en enkelt instruktion ad gangen, men RTOS har noget, der kaldes planlæggerender bestemmer hvilken instruktion der skal udføres først og således udfører instruktionerne fra flere programmer efter hinanden. Teknisk set skaber en RTOS kun en illusion af multitagning ved at udføre parallelle instruktioner en ad gangen.
Dette gør RTOS velegnet til forskellige applikationer i den virkelige verden. I RTOS til ethvert input, hver gang en logik er blevet evalueret, som giver det tilsvarende output. Denne logik måles på baggrund af ikke kun den logiske kreativitet, men også på den tidsvarighed, hvor den specifikke opgave er udført. Hvis et system ikke klarer at udføre opgaven i den specifikke varighed, kaldes det systemfejl.
Hvorfor RTOS ??
- Tilgængelighed af drivere: Der er mange drivere til rådighed inden for RTOS, hvilket giver os mulighed for at bruge dem direkte til forskellige applikationer.
- Planlagte filer: RTOS tager sig af planlægning, så i stedet for at fokusere på planlægning af ethvert system kan vi simpelthen fokusere på at udvikle applikationer. For eksempel bruges opgaveplanlægningsfiler til at definere bestemte handlinger, når et sæt betingelser er opfyldt. RTOS bruger visse avancerede algoritmer til planlægning, der typisk kører, klar og blokerede tilstande, som mens RTOS kører holder mere fokus på at udvikle applikationer i stedet for planlægning.
- Fleksibilitet ved at tilføje funktioner: Inden for RTOS, selvom du er villig til at tilføje nye funktioner, kan du blot tilføje den uden at forstyrre de eksisterende funktioner
Forskel mellem realtidsoperativsystem og operativsystem
Der er forskellige forskelle mellem realtidsoperativsystem og operativsystemer som Windows, Linux osv. Lad os se på dem en efter en ved hjælp af tabelformat:
S. nr | Operativ system | System i realtid |
1 | Tidsdeling er grundlaget for udførelse af processer i operativsystemet | Processer udføres på baggrund af rækkefølgen af deres prioritet |
2 | Operativsystemet fungerer som en grænseflade mellem hardware og software i et system | Realtidssystem er designet til at have sin udførelse for de virkelige verdens problemer |
3 | Administration af hukommelse er ikke et kritisk problem, når det kommer til udførelse af operativsystemet | Hukommelsesadministration er vanskelig, da det er baseret på realtidsproblemet, at hukommelsen tildeles, hvilket i sig selv er kritisk |
4 | Anvendelser: Kontor, datacentre, system til hjemmet osv | Anvendelser: Styring af fly eller atomreaktor, udstyr til videnskabelig forskning |
5 | Eksempler: Microsoft Windows, Linux, OS | Eksempler: Vx Works, QNX, Windows CE |
Typer af RTOS
Vi kan kategorisere realtidsoperativsystem hovedsageligt i tre dele, nemlig
- Hårdt realtids operativsystem
- Blødt operativsystem i realtid
- Fast realtids operativsystem
1. Hårdt realtids operativsystem
Lad os begynde at forstå denne type operativsystem ved hjælp af et eksempel, det levende eksempel på det er flykontrolsystem. Inden for flyvekontrolsystemet, uanset hvilke opgaver der gives af piloten i form af et input, skal det udføres til tiden. I et hårdt realtidsoperativsystem kan systemfejl tolereres. Funktionerne ved hård RTOS er:
- At udføre opgaver til tiden
- Manglende overholdelse af deadline er fatalt
- Garanteret svartid i dårligere tilfælde
- Kan føre til systemfejl
2. Blødt operativsystem i realtid
Det nemmeste eksempel på brug af soft RTOS er online-database, da parameteren vi er mere bekymrede for inden for soft RTOS er hastighed. Derfor er funktionerne i blød RTOS:
- Opgaver skal udføres så hurtigt som muligt
- Sen udførelse af opgaver er uønsket, men ikke dødelig
- Der er en mulighed for forringelse af ydeevnen
- Kan ikke føre til systemfejl
3. Fast realtidsoperativsystem
Robotarm, der bruges til at plukke genstande, kan betragtes som et af eksemplerne på firma RTOS. Her inden for dette firma RTOS tolereres det, selvom processen er forsinket.
Fordele ved at bruge gratis RTOS
Følgende er fordelene ved at bruge RTOS i dine applikationer.
- Ingen firewall-problemer
- Lav båndbredde for forbedret ydeevne
- Forbedret sikkerhed og privatliv
- Lave omkostninger på grund af reduktion i hardware- og softwarekomponenter, der bruges til udvikling
Nogle vigtige problemer relateret til RTOS
Nu, på trods af at det har mange fordele for RTOS i den virkelige verdensapplikation, har det også forskellige ulemper. Nogle af de spørgsmål, der er relateret til det, diskuteres her.
- Afbrydelser bruges normalt i programmer til at standse eksekveringsprogrammet for at omdirigere strømmen til en anden vigtig del af koden. Her, inden for RTOS, da der kræves hurtig responstid; det anbefales, at afbrydelser deaktiveres i mindst mulig tid.
- Da kernen også skal reagere på forskellige begivenheder, er det nødvendigt at have mindre størrelse på kernen, så den skal passe korrekt inden for ROM
- Sofistikerede funktioner i RTOS bør fjernes, da der ikke er noget koncept som sådan virtuel hukommelse i det.
Sådan bruges RTOS
Nu hvor du ved, hvad der er RTOS, og hvor du kan bruge det, skal du normalt bruge Tornado eller FreeRTOS-udviklingsmiljøet for at komme i gang med RTOS. Lad os tage et kort kig på begge disse udviklingsmiljøer.
Tornado - VxWorks
Tornado er et integreret miljø til at udvikle realtidsrelaterede indlejrede RTOS- applikationer på målsystemet. Tornado består af tre grundlæggende elementer, der er anført nedenfor.
1) VxWorks
2) Applikationsbygningsværktøjer (kompilator og tilknyttede programmer)
3) Integreret udviklingsmiljø, som kan styre, fejlfinde og overvåge VxWorks-applikationen
VxWorks er et netværk i realtid operativsystem. Til at begynde med VxWorks skal vi have et udviklingssæt (mål) sammen med en arbejdsstation. Her er udviklingssæt ikke andet end målværten eller komponenten, der kommunikerer med målserveren på arbejdsstationen. Målet her forbinder tornado-værktøjer som shell og debugger. Derfor bruger vi VxWorks og konfigurerer systemerne, mens Tornado giver os en grafisk brugergrænseflade og kommandolinjeværktøjer til konfiguration og build.
Meget vigtigt punkt, der kommer ind i billedet her, er at installationskataloget skal bruge
stienavne som: installDir / target, mens du installerer tornado i dit system. Hvis du f.eks. Vil gemme din tornado i C: \ tornado på en Windows-vært, skal det fulde stienavn i så fald identificeres som installDir / target / h / vxworks.h.
Her vil vi ikke diskutere detaljeret vedrørende funktionerne i Vx-værker (vi vil lade det være til næste tutorial), men vi vil diskutere, hvordan udviklingen kan gøres ved hjælp af C ++ i Vxworks ved hjælp af WindRiver GNU. WindRiver GNU hjælper os med at levere en grafisk analyse af den afbrydelse, der er involveret under udførelsen, samt rapporten om hukommelsesforbrug.
For eksempel forklarer den ovennævnte opfattelse af WindRiver det tilknyttede processornummer sammen med opgavernes prioritet (tLowPri & tHighPri). Inaktiv tilstand, dvs. grøn farvelinje, angav den tidsperiode, for hvilken processor ikke er i sin arbejdstilstand, hvilket observeres at være efter hvert par sekunders sekund. t1, t7, t8 & t9 er intet andet end de forskellige processorer, der bruges. Her vælger vi kun t7-processor.
Derfor er denne Windriver i stand til at påberåbe sig både VxWorks- og applikationsmodulets underrutiner. Du kan starte Windriver-applikationen enten fra tornado-startværktøjslinjen (-> i-knappen) senere klikke på menuen og derefter klikke på shell. Endelig skal du fra kommandoprompten skrive “> windsh target server”.
For at programmere ved hjælp af C ++ er det vigtigt at medtage INCLUDE_CPLUS_DEMANGLER-komponent. Denne demangler-komponent tillader målskalssymboler at returnere menneskelige læsbare former for C ++ symbolnavne. Før du downloader C ++ - modulet til Vxworks-målet, skal du følge processen kendt som munching. Her refererer munching til yderligere værtsbehandlingstrin.
Kompilér C ++ applikationskildeprogram og få for eksempel hello.cpp-fil. Senere køres det for at gumle på.o og kompilere den genererede ctdt.c-fil. Endvidere skal du knytte applikationen til ctdt.o for at generere downloadbart modul, hello.out inden for VxWorks. Outputtet efter udførelse af dette VxWorks vil være en make-fil, der skal bruges på et eller andet mål.
Gratis RTOS
Generelt, når vi begynder med RTOS, foretrækker vi generelt Vx Works RTOS. Men lad os her kort diskutere Free RTOS, som også kan bruges af begyndere til at gennemgå konceptet med realtidsoperativsystem. Gratis RTOS er udviklet af Richard Barry og FreeRTOS-teamet, og det ejes også af real time engineers ltd, men det er gratis at bruge og kan simpelthen downloades ved at klikke på nedenstående link
Download gratis ROTS
Den nyeste version af gratis RTOS, der bruges på tidspunktet for denne artikel, er version 10, angivet som FreeRTOS V10.
Den største fordel ved gratis RTOS, som gør den overlegen med hensyn til den anden RTOS, er dens platformuafhængige opførsel med hensyn til hardware, dvs. c-koden, som vi vil bruge til at udføre et operativsystem, kan køre på forskellige platforme med forskellig arkitektur. Derfor uanset om du bruger 8051 mikrokontroller eller en nyeste ARM mikrokontroller, vil koden, som du skrev sammen med udførelsesprocessen, være ens for begge.
Der er mange andre fordele ved at bruge gratis RTOS over Vx-værker og andre RTOS-betjeningsværktøjer. Nogle af dem kan angives som:
- Giver lettere test
- Fremmer begrebet kode genanvendelighed
- Mindre inaktiv tid
- Let vedligeholdelsesevne
- Sammendrag information om timing
Også den grundlæggende kerne, hvor kerne refererer til den centrale komponent i et operativsystem, der findes i den gratis RTOS, gør den tilgængelig til brug til forskellige applikationer. Da det er let at vedhæfte udvidede moduler på operativsystemer for at få flere applikationer, bliver RTOS mere kraftfuld.
Et af eksemplerne på brug af gratis RTOS kan forklares ved at bruge begrebet at kombinere gratis RTOS med Nabto. Nabto er en gratis webenhed, der bruges til at overføre oplysningerne fra enheden til browseren.
Derfor kombinerer Free RTOS med Nabto det til et lille stykke C-kode som forklaret i figur a. Nu om dage er Internet of Things (IOT) i trend, og hver IOT-enhed, vi får adgang til, har en unik URL over internettet, og teknologien giver mulighed for sikker og ekstremt lav båndbreddepunkt-til-punkt-forbindelse. I mangel af internetforbindelse kan denne kombination være nyttig. Derfor er gratis RTOS et populært valg, når det gælder implementering af IOT.