- Mikä on RTOS?
- Miksi RTOS?
- Ero reaaliaikaisen käyttöjärjestelmän ja käyttöjärjestelmän välillä
- RTOS-tyypit
- Ilmaisen RTOS: n käytön edut
- Joitakin tärkeitä RTOSiin liittyviä kysymyksiä
- RTOS: n käyttö
Sulautetuilla järjestelmillä on laaja soveltamisala kaikissa ympärillä olevissa elektronisissa laitteissa, ilmeinen esimerkki on minikannettava, jota pidämme aina mukanamme, kyllä viittaan matkapuhelimiin.
Aina kun sulautettu järjestelmä tulee kuvaan, se on aina yhdistelmä laitteita, kuten mikrokontrollerit tai mikroprosessorit, ja ohjelmistoja, kuten laiteohjelmisto tai käyttöjärjestelmä. Käyttöjärjestelmä muodostaa pohjan kaikki elektroniikan ja hallitsee sekä laitteiston ja ohjelmiston sisällä kaikkiin elektroniikkalaitteisiin. Termi käyttöjärjestelmä ei rajoitu pelkästään tietokoneiden Unixiin ja Windowsiin, vaan se voi ulottua myös mikro-ohjaimiin. Yksi tällainen käyttöjärjestelmä, joka voi toimia mikrokontrollereilla, kutsutaan reaaliaikaiseksi käyttöjärjestelmäksi. Täältä opit RTOS: sta ja reaaliaikaisen käyttöjärjestelmän sovelluksista.
Mikä on RTOS?
Reaaliaikainen käyttöjärjestelmä, joka tunnetaan yleisesti nimellä RTOS, tarjoaa ohjaimelle mahdollisuuden vastata syötteisiin ja suorittaa tehtäviä tietyn ajan kuluessa prioriteetin perusteella. Ensisilmäyksellä RTOS saattaa kuulostaa miltä tahansa muulta sulautetulta ohjelmalta tai laiteohjelmistolta, mutta se on rakennettu käyttöjärjestelmän arkkitehtuurille. Näin ollen, kuten mikä tahansa käyttöjärjestelmä, RTOS voi sallia useiden ohjelmien suorittamisen samanaikaisesti tukemalla multipleksointia. Kuten tiedämme, prosessorin tai ohjaimen ydin voi suorittaa vain yhden käskyn kerrallaan, mutta RTOS: lla on jotain nimeltään ajastinjoka päättää suoritettavan käskyn ensin ja suorittaa siten useiden ohjelmien ohjeet peräkkäin. Teknisesti RTOS luo vain illuusion monen ottamisesta suorittamalla rinnakkaiset ohjeet yksi kerrallaan.
Tämä tekee RTOS: sta sopivan erilaisiin sovelluksiin reaalimaailmassa. RTOS: ssa missä tahansa syötteessä aina kun on arvioitu logiikka, joka antaa vastaavan ulostulon. Tätä logiikkaa mitataan paitsi loogisen luovuuden lisäksi myös keston ajan, jona tietty tehtävä on suoritettu. Jos järjestelmä epäonnistuu tehtävän suorittamisessa kyseisenä ajanjaksona, se tunnetaan järjestelmän vikana.
Miksi RTOS?
- Ohjainten saatavuudesta: On olemassa monia kuljettajia saatavilla RTOS, jonka avulla voimme käyttää niitä suoraan eri sovelluksiin.
- Ajoitetut tiedostot: RTOS huolehtii ajoituksesta, joten keskitymme minkä tahansa järjestelmän ajoitukseen voimme yksinkertaisesti keskittyä sovellusten kehittämiseen. Esimerkiksi tehtävien ajoitustiedostoja käytetään määrittelemään tietyt toiminnot aina, kun tietyt ehdot täyttyvät. RTOS käyttää tiettyjä kehittyneitä algoritmeja tyypillisesti käynnissä olevien, valmiiden ja estettyjen tilojen aikatauluttamiseen, jotka RTOS: n suorittamisen aikana keskittyvät enemmän sovellusten kehittämiseen kuin ajoitukseen.
- Ominaisuuksien lisäämisen joustavuus: Vaikka olet halukas lisäämään uusia ominaisuuksia, RTOS: ssä voit yksinkertaisesti lisätä sen häiritsemättä olemassa olevia ominaisuuksia
Ero reaaliaikaisen käyttöjärjestelmän ja käyttöjärjestelmän välillä
Reaaliaikaisen käyttöjärjestelmän ja käyttöjärjestelmien, kuten Windows, Linux jne. Välillä on erilaisia eroja. Katsotaanpa niitä yksi kerrallaan taulukon muodon avulla:
S. ei | Käyttöjärjestelmä | Reaaliaikainen järjestelmä |
1 | Ajan jakaminen on perusta prosessien suorittamiselle käyttöjärjestelmässä | Prosessit suoritetaan niiden prioriteettijärjestyksen perusteella |
2 | Käyttöjärjestelmä toimii liitäntänä järjestelmän laitteiston ja ohjelmiston välillä | Reaaliaikainen järjestelmä on suunniteltu toimimaan reaalimaailman ongelmiin |
3 | Muistin hallinta ei ole kriittinen ongelma käyttöjärjestelmän suorittamisessa | Muistin hallinta on vaikeaa, koska reaaliaikaisen ongelman perusteella varataan muistia, mikä itsessään on kriittistä |
4 | Sovellukset: Toimisto, palvelinkeskukset, kotikäyttöjärjestelmä jne | Sovellukset: Ilma-alusten tai ydinreaktorien hallinta, tieteelliset tutkimuslaitteet |
5 | Esimerkkejä: Microsoft Windows, Linux, OS | Esimerkkejä: Vx Works, QNX, Windows CE |
RTOS-tyypit
Voimme luokitella reaaliaikaiset käyttöjärjestelmät pääosin kolmeen osaan, nimittäin
- Kova reaaliaikainen käyttöjärjestelmä
- Pehmeä reaaliaikainen käyttöjärjestelmä
- Kiinteä reaaliaikainen käyttöjärjestelmä
1. Kova reaaliaikainen käyttöjärjestelmä
Aloitetaan ymmärtämään tämän tyyppistä käyttöjärjestelmää esimerkin avulla, elävä esimerkki siitä on lennonohjausjärjestelmä. Lennonohjausjärjestelmässä kaikki ohjaajan antamat tehtävät syötteen muodossa, ne tulisi suorittaa ajoissa. Kovassa reaaliajassa käyttöjärjestelmässä järjestelmän viat voidaan sietää. Hard RTOS: n ominaisuudet ovat:
- Suorita tehtävät ajoissa
- Määräajan noudattamatta jättäminen on kohtalokasta
- Taattu huonomman tapauksen vasteaika
- Voi johtaa järjestelmän vikaantumiseen
2. Pehmeä reaaliaikainen käyttöjärjestelmä
Helpoin esimerkki pehmeän RTOS: n käytöstä on online-tietokanta, koska pehmeässä RTOS: ssa parametri, josta olemme enemmän huolissamme, on nopeus. Siksi pehmeän RTOS: n ominaisuudet ovat:
- Tehtävät tulisi suorittaa mahdollisimman nopeasti
- Tehtävien myöhäinen suorittaminen ei ole toivottavaa, mutta ei kohtalokasta
- Suorituskyvyn heikkeneminen on mahdollista
- Ei voi johtaa järjestelmän vikaantumiseen
3. Kiinteä reaaliaikainen käyttöjärjestelmä
Robottivarren, jota käytetään esineiden poimimiseen, voidaan katsoa olevan yksi esimerkistä kiinteästä RTOS: sta. Tässä yrityksen RTOS: ssa, vaikka prosessi viivästyisi, se siedetään.
Ilmaisen RTOS: n käytön edut
Seuraavassa on etuja RTOS: n käytöstä sovelluksissasi.
- Ei palomuuriongelmia
- Pieni kaistanleveys parantaa suorituskykyä
- Parempi turvallisuus ja yksityisyys
- Alhaiset kustannukset johtuen kehitykseen käytettävien laitteisto- ja ohjelmistokomponenttien vähenemisestä
Joitakin tärkeitä RTOSiin liittyviä kysymyksiä
Huolimatta siitä, että sillä on monia etuja RTOS: lle reaalimaailman sovelluksissa, sillä on myös useita haittoja. Joitakin siihen liittyviä asioita käsitellään täällä.
- Keskeytyksiä käytetään yleensä ohjelmissa pysäyttämään suoritettava ohjelma virtauksen ohjaamiseksi koodin johonkin muuhun tärkeään osaan. Tässä, RTOS: n sisällä, koska tarvitaan nopea vasteaika; On suositeltavaa, että keskeytykset poistetaan käytöstä mahdollisimman pieneksi ajaksi.
- Koska ytimen tulisi myös vastata erilaisiin tapahtumiin , ytimen on oltava pienempi, jotta se sopisi oikein ROM-levylle
- RTOS: n hienostuneet ominaisuudet on poistettava, koska siinä ei ole käsitystä tällaisesta virtuaalimuistista.
RTOS: n käyttö
Nyt kun tiedät mikä on RTOS ja missä voit käyttää sitä, aloittaaksesi RTOS: n sinun on yleensä käytettävä Tornado- tai FreeRTOS-kehitysympäristöä. Tarkastellaan lyhyesti molempia kehitysympäristöjä.
Tornado - VxWorks
Tornado on integroitu ympäristö, joka kehittää reaaliaikaisia sulautettuja RTOS- sovelluksia kohdejärjestelmään. Tornado koostuu kolmesta peruselementistä, jotka on lueteltu alla.
1) VxWorks
2) Sovellusten rakennustyökalut (kääntäjä ja siihen liittyvät ohjelmat)
3) Integroitu kehitysympäristö, joka voi hallita, virheenkorjausta ja valvoa VxWorks-sovellusta
VxWorks on verkotettu reaaliaikainen käyttöjärjestelmä. Aluksi VxWorksilla meillä pitäisi olla yksi kehityspaketti (kohde) yhdessä työaseman kanssa. Tässä kehityspaketti on vain kohde-isäntä tai komponentti, joka kommunikoi työaseman kohdepalvelimen kanssa. Kohde yhdistää tornado-työkalut, kuten kuoren ja virheenkorjaimen. Siksi konfiguroimme ja rakennamme VxWorksin avulla järjestelmät, kun taas Tornado tarjoaa graafisen käyttöliittymän ja komentorivityökalut kokoonpanoa ja koontia varten.
Erittäin tärkeä asia, joka tulee kuvaan, on, että samalla kun tornado asennetaan järjestelmään, asennushakemiston tulisi käyttää
polkuja: installDir / target. Esimerkiksi, jos haluat tallentaa tornadoosi C: \ tornadoon Windows-isännässä, koko polunimi tulisi tällöin tunnistaa nimellä installDir / target / h / vxworks.h.
Täällä emme keskustele yksityiskohtaisesti Vx-teosten ominaisuuksista (jätämme sen seuraavaan opetusohjelmaan), mutta keskustelemme siitä, miten kehitys voidaan tehdä käyttämällä C ++: ta Vxworksissa WindRiver GNU: n avulla. WindRiver GNU auttaa meitä toimittamaan graafisen analyysin suorituksen aikana tapahtuneesta keskeytyksestä sekä muistin käyttöraportin.
Esimerkiksi yllä mainitussa WindRiver-näkymässä selitetään siihen liittyvä prosessorin numero yhdessä tehtävien prioriteetin kanssa (tLowPri & tHighPri). Valmiustila eli vihreä väririvi ilmoitti ajanjakson, jona prosessori ei ole toimintatilassa, jonka havaitaan olevan muutaman sekunnin välein. t1, t7, t8 ja t9 ovat vain erilaisia käytettyjä prosessoreita. Tässä valitsemme vain t7-prosessorin.
Näin ollen tämä Windriver pystyy kutsumaan sekä VxWorksin että sovellusmoduulin aliohjelmat. Voit käynnistää Windriver-sovelluksen joko tornadon käynnistystyökalurivistä (-> i-painike) napsauttamalla myöhemmin valikkoa ja sitten kuori. Lopuksi kirjoita komentokehotteesta "> windsh target server".
Ohjelmoimiseksi C ++: n avulla on tärkeää sisällyttää INCLUDE_CPLUS_DEMANGLER-komponentti, tämä demangler-komponentti antaa kohdekuoren symboleille mahdollisuuden palauttaa ihmisille luettavissa olevat C ++ -symbolien nimet. Ennen kuin lataat C ++ -moduulin Vxworks-kohteeseen, seuraa prosessia, joka tunnetaan nimellä munching. Tässä munching viittaa isäntäkäsittelyn toiseen vaiheeseen.
Käännä C ++ -sovelluksen lähdeohjelma ja hanki esimerkiksi hello.cpp-tiedosto. Suorita se myöhemmin murskaamaan.o: ta ja kääntämään luotu ctdt.c-tiedosto. Yhdistä sovellus ctdt.o-sovellukseen, jotta voit luoda ladattavan moduulin, hello.out VxWorksissa. Tulos tämän VxWorksin suorittamisen jälkeen on make-tiedosto, jota käytetään joillakin kohteilla.
Ilmainen RTOS
Yleensä aina, kun aloitamme RTOS: lla, suosimme yleensä Vx Works RTOS: ia. Mutta nyt keskustellaan lyhyesti Free RTOS: sta, jota myös aloittelijat voivat käyttää läpi reaaliaikaisen käyttöjärjestelmän käsitteen. Ilmaisen RTOS: n ovat kehittäneet Richard Barry ja FreeRTOS-tiimi, ja sen omistaa myös reaaliaikaiset insinöörit Oy, mutta se on ilmainen käyttää ja se voidaan ladata yksinkertaisesti napsauttamalla alla olevaa linkkiä
Lataa ilmainen ROTS
Tämän artikkelin julkaisuhetkellä käytetty uusin ilmainen RTOS-versio on versio 10, ilmaistuna nimellä FreeRTOS V10.
Suurimman ilmaisen RTOS: n etu, joka tekee siitä ylivoimaisen toisen RTOS: n suhteen, on sen alustasta riippumaton käyttäytyminen laitteiston suhteen, ts. C-koodi, jota käytämme käyttöjärjestelmän suorittamiseen, voi toimia eri alustoilla, joilla on erilainen arkkitehtuuri. Siksi riippumatta siitä, käytätkö 8051-mikrokontrolleria vai jotakin uusinta ARM-mikrokontrolleria, kirjoittamasi koodi samoin kuin suorittamisprosessi, on molemmille samanlainen.
Ilmaisen RTOS: n käytöstä Vx-töissä ja muissa RTOS-käyttötyökaluissa on monia muita etuja. Jotkut niistä voidaan todeta seuraavasti:
- Tarjoaa helpomman testauksen
- Edistää koodin uudelleenkäytettävyyden käsitettä
- Vähemmän tyhjäkäynnillä
- Helppo ylläpitää
- Tiivistä ajoitustiedot
Myös, perus ytimen, jossa ydin viittaa keskeinen osa käyttöjärjestelmää, jonka sisällä on vapaasti RTOS tekee helposti käyttää eri sovelluksissa. Koska laajennettuja moduuleja on helppo liittää käyttöjärjestelmiin, jotta sen sovellukset saadaan enemmän, RTOS muuttuu tehokkaammaksi.
Yksi esimerkkejä ilmaisen RTOS: n käytöstä voidaan selittää käyttämällä ilmaisen RTOS: n yhdistämisen Nabto-konseptia. Nabto on ilmainen verkkolaite, jota käytetään tietojen siirtämiseen laitteesta selaimeen.
Siksi yhdistämällä ilmainen RTOS Nabton kanssa tekee siitä pienen palan C-koodia, kuten kuvassa a selitetään. Nyt päivien esineiden Internet (IOT) on trendi, ja jokaisella IOT-laitteella, jota käytämme, on ainutlaatuinen URL-osoite Internetissä, ja tekniikka mahdollistaa turvalliset ja erittäin alhaiset kaistanleveydet pisteestä pisteeseen -yhteydet. Internet-yhteyden puuttuessa tämä yhdistelmä voi olla hyödyllinen. Siksi ilmainen RTOS on suosittu valinta IOT: n käyttöönotossa.