“Olyan ingyenes terméket kínálunk, amely felülmúlja a kereskedelmi alternatívák felhasználói által elvárt minőséget és szolgáltatásokat”

A FreeRTOS elkötelezett fejlesztői több mint 15 éve dolgoznak szoros együttműködésben a világ vezető chipgyártó cégeivel, hogy piacvezető, kereskedelmi minőségű és teljesen ingyenes, kiváló minőségű RTOS-t és eszközöket nyújtsanak…de mi is az az RTOS?

Ez az oldal az operációs rendszer meghatározásával kezdődik, majd ezt finomítja a valós idejű operációs rendszer (RTOS) meghatározására, majd ezt még egyszer finomítja a valós idejű kernel (vagy valós idejű végrehajtó) meghatározására.

A “Miért egy RTOS” című GYIK-elemben talál információt arról, hogy mikor és miért lehet hasznos egy RTOS használata a beágyazott rendszerek szoftvertervezésében.

Mi az általános célú operációs rendszer?

Az operációs rendszer olyan számítógépes program, amely támogatja a számítógép alapvető funkcióit, és szolgáltatásokat nyújt a számítógépen futó más programok (vagy alkalmazások)számára.Az alkalmazások biztosítják a számítógép felhasználójának kívánt vagy szükséges funkciókat. Az operációs rendszer által nyújtott szolgáltatások gyorsabbá, egyszerűbbé és karbantarthatóbbá teszik az alkalmazások írását.Ha ezt a weboldalt olvassa, akkor egy webböngészőt használ (az alkalmazási program, amely az Önt érdeklő funkciókat biztosítja), amely maga is egy operációs rendszer által biztosított környezetben fut.

Mi az RTOS?

A legtöbb operációs rendszer úgy tűnik, hogy lehetővé teszi több program egyidejű végrehajtását. Ezt nevezik multi-taskingnak. A valóságban minden processzormag egy adott időpontban csak egyetlen végrehajtási szálat tud futtatni.Az operációs rendszer egy ütemezőnek nevezett része felelős annak eldöntéséért, hogy melyik program mikor fusson, és az egyes programok közötti gyors váltással az egyidejű végrehajtás illúzióját kelti.

Az operációs rendszer típusát az határozza meg, hogy az ütemező hogyan dönti el, hogy melyik program mikor fusson. Például egy többfelhasználós operációs rendszerben (mint például az Unix) használt ütemező biztosítja, hogy minden felhasználó megfelelő mennyiségű feldolgozási időt kapjon. Egy másik példa: egy asztali operációs rendszerben (például a Windowsban) az ütemező megpróbálja biztosítani, hogy a számítógép mindig reagáljon a felhasználóra.

A valós idejű operációs rendszer (RTOS) ütemezőjét úgy tervezték, hogy kiszámítható (általában determinisztikusnak nevezett) végrehajtási mintát biztosítson.Ez különösen a beágyazott rendszerek számára érdekes, mivel a beágyazott rendszereknek gyakran vannak valós idejű követelményei. A valós idejű követelmények olyan követelmények, amelyek meghatározzák, hogy a beágyazott rendszernek egy bizonyos eseményre szigorúan meghatározott időn belül (határidő) kell reagálnia.A valós idejű követelmények teljesítését csak akkor lehet garantálni, ha az operációs rendszer ütemezőjének viselkedése megjósolható (és ezért determinisztikus).

A hagyományos valós idejű ütemezők, mint például a FreeRTOS-ben használt ütemező, úgy érik el a determinizmust, hogy a felhasználó prioritást rendelhet a végrehajtás egyes szálaihoz. Az ütemező ezután a prioritást használja arra, hogy tudja, melyik futószálat futtassa le legközelebb. A FreeRTOS-ban egy végrehajtási szálat feladatnak neveznek.

Mi a FreeRTOS?

A FreeRTOS egy olyan RTOS osztály, amelyet úgy terveztek, hogy elég kicsi legyen ahhoz, hogy mikrokontrollereken fusson – bár használata nem korlátozódik a mikrokontroller alkalmazásokra.

A mikrokontroller egy kicsi és korlátozott erőforrásokkal rendelkező processzor, amely egyetlen chipen tartalmazza magát a processzort, a csak olvasható memóriát (ROM vagy Flash) a végrehajtandó program tárolására, valamint a véletlen hozzáférésű memóriát (RAM), amelyre a végrehajtott programok számára van szükség. A programot általában közvetlenül a csak olvasható memóriából hajtják végre.

A mikrokontrollereket olyan mélyen beágyazott alkalmazásokban használják (azok az alkalmazások, ahol valójában soha nem látjuk magukat a processzorokat vagy a futtatott szoftvert), amelyeknek általában nagyon specifikus és dedikált feladatuk van. A méretbeli korlátok és a dedikált végalkalmazás jellege ritkán indokolja egy teljes RTOS implementáció használatát – vagy egyáltalán lehetővé teszi egy teljes RTOS implementáció használatát.A FreeRTOS ezért csak az alapvető valós idejű ütemezési funkciókat, a feladatok közötti kommunikációt, az időzítést és a szinkronizációs primitíveket biztosítja. Ez azt jelenti, hogy pontosabban valós idejű rendszermagként vagy valós idejű végrehajtóként írható le. A további funkciók, mint például a parancskonzol-interfész vagy a hálózati stackek, kiegészítő komponensekkel illeszthetők be.

Következő: RTOS alapjai

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.