Feladatok időalapú elosztott ütemezése beágyazott Linux környezetben

OData támogatás
Konzulens:
Dr. Kovácsházy Tamás
Méréstechnika és Információs Rendszerek Tanszék

Napjaink trendjeit megvizsgálva azt figyelhetjük meg, hogy egyre több, a környezetével valamilyen módon kommunikálni képest eszközt használunk, amit a technológia fejlődése és a számítási kapacitás árának és fogyasztásának csökkenése tesz lehetővé. Ezek a berendezések jellemzően nem elszigetelve működnek egymástól, hanem valamilyen közös hálózatra kapcsolódva elosztott rendszereket hoznak létre. A külvilághoz való szorosabb kapcsolódás (távoli elérés, adat lekérdezés, tárolás) előnyei miatt sokszor cél az is, hogy az eszközök az Internetre fel tudjanak csatlakozni, ez az alapja az IoT nevű fogalomnak is. Fontos kérdés, hogy az összekapcsolást milyen fizikai interfész és protokoll segítségével tegyük meg. Ezzel szemben elvárás, hogy legyen sokoldalúan felhasználható, támogassa több féle tartalom továbbítását (real-time vezérlő csomagok, audio/video, egyszerű fájltranszfer stb.), melyek életre hívták a jelenleg is szabványosítás alatt álló Time Sensitive Networking-et (TSN), ami normál Ethernet hálózaton teszi lehetővé az időkritikus adatok továbbítását normál adatátvitel mellett. A TSN működésének egyik központi komponense az óraszinkronizáció, hiszen ez az alapja annak, hogy több eszköz tervezetten és biztonságosan valós időben legyen képes kommunikálni. Erre a kérdéskörre az IEEE 802.1AS-REV vagy elődje az IEEE 1588-as szabvány kínál megoldást, ami egy jellemzően hardveresen támogatott, Etherneten keresztüli szinkronizációs protokollt definiál. Az eszközökben lévő órák együttfutásának biztosítása után a következő lépés az egyes végrehajtandó feladatok közös idő szerint történő ütemezése, ami során már a használt platformot és szoftver rétegeket is ismernünk kell. A diplomatervem során ehhez kapcsolódóan azt vizsgálom meg, hogy milyen módon, milyen eredménnyel és milyen korlátozások mellett valósítható meg beágyazott platformon üzemelő Linux operációs rendszer alatt a feladatok globális időhöz kötött végrehajtása. Ennek kapcsán bemutatom az óraszinkronizációra használt protokollt, a felhasznált hardver platformot, a szabványt megvalósító szoftvert, és a felhasznált Linux kernel releváns funkcióit, felépítését. A bevezetés után vázolom a hardver hiányosságait (PPS jel előállítás, időbélyegzés), majd kifejtem az általam adott megoldási javaslatot. Ezt követően megvizsgálom, milyen lehetőségeink vannak a kernel valósidejű tulajdonságainak javítására, melyek teljesítményét mérések segítségével hasonlítom össze. Ehhez kapcsolódóan felvázolok egy idő alapú taszk ütemezési módszert is, majd végül egy egyszerű példa alkalmazással demonstrálom az óraszinkronizáció használatát.

Letölthető fájlok

A témához tartozó fájlokat csak bejelentkezett felhasználók tölthetik le.