K-INFO
HU
EN
Belépés

Beágyazott információs rendszerek

Embedded Information Systems
A tantárgyleírás hatályossága
Hatályosság kezdete:
2026. March 21.
Hatályosság vége:
Tantárgy neve (magyarul, angolul)
Beágyazott információs rendszerek
Embedded Information Systems
Tantárgykód BMEVIMIAD04
Tantárgyjelleg
Képzési szint
Kurzustípusok és óraszámok (heti/féléves)
Kurzustípus elmélet gyakorlat laboratóriumi gyakorlat
óraszám (heti) 2 0 2
jelleg (kapcsolt/önálló) kapcsolt
Tanulmányi teljesítmény/értékelés típusa félévközi érdemjegy
Tantárgy kreditértéke 5
Tantárgyfelelős
DR. Kovácsházy Tamás
beosztás: egyetemi docens
Tantárgyat gondozó oktatási szervezeti egység
Mesterséges Intelligencia és Rendszertervezés Tanszék
Kar Villamosmérnöki és Informatikai Kar
Tantárgy weboldala https://www.mit.bme.hu/oktatas/targyak/vimiad04
Tantárgy elsődleges mintatantervi jellege
Közvetlen előkövetelmények – Erős előkövetelmény nincs
Közvetlen előkövetelmények – Gyenge előkövetelmény nincs
Közvetlen előkövetelmények – Párhuzamos előkövetelmény nincs
Közvetlen előkövetelmények – Mérföldkő előkövetelmény nincs
Közvetlen előkövetelmények – Kizáró feltétel nincs

Célkitűzés

Tantárgyprogram

1. hét: Bevezetés. A beágyazott rendszerek alkalmazásai, alkalmazási példák. A beágyazó fizikai környezet jellegzetes tulajdonságai, az azokból származó speciális követelmények. Valós-idejű (real-time) rendszer és biztonságkritikus rendszer fogalmak bevezetése, és az azokkal kapcsolatos HW és SW elvárások, következmények. Kiberfizikai rendszer koncepció. A beágyazott rendszer, mint erőforrás korlátozott környezet, erőforrásokkal történő hatékony gazdálkodás, beleértve az energiát (low-power). 

2. hét: A beágyazott információs rendszerek jellegzetes rendszerarchitektúrái, komponensek, elosztott beágyazott rendszerek. Fizikai kapcsolat a külvilággal (interdiszciplináris, multidomén, pl. mechanika, fizika, kémia, biológia, stb.), szenzorok és beavatkozók, humán interfész (user interface, szerviz interfész, stb.). Kapcsolat a fizikai beágyazó környezettel rendszerszinten, ANSI/IEC 60529-2004 és MIL-STD-810. Fizikai beágyazó környezetből származó információ jellegzetes tulajdonságainak elemzése. 

3. hét: A beágyazott rendszerekben alkalmazott végrehajtó egységek. Mikrovezérlők, alkalmazás processzorok, azok összehasonlítása a mobil, asztali (desktop) és szerver processzorokkal. Homogén és heterogén többprocesszoros rendszerek és SW támogatásuk, rendszerchipek (System on a Chip, SoC). Memória alrendszer, fizikai memória és virtuális tárkezelés, cache szerepe beágyazott környezetben, Linux példákkal. Spekulatív végrehajtás és a memória alrendszer hatása a végrehajtási időre, worst-case végrehajtás fontosságának kiemelése.  

4. hét: Jellegzetes beágyazott perifériák és azok alkalmazásai. GPIO, A/D és D/A, I2C/SPI/I2S buszok, timerek. GPIO alkalmazásai, jelszint-illesztési megoldások nagyteljesítményű perifériák vezérlésére. Jel-integritás és elektromágneses-interferencia elkerülésének a fontossága. 

5. A beágyazott rendszerek tipikus szoftver komponensei, periféria könyvtárak és Board Support Package (BSP), beágyazott operációs rendszer (típusaik, típusra jellegzetes felépítésük), köztes rétegek (middleware). Beágyazott Linux és FreeRTOS összehasonlítása, használati-esetek. Beágyazott virtualizáció különböző formái és megvalósítása Linux példákkal. 

6. hét: Periféria kezelés tipikus SW megoldásai, GPIO, A/D és D/A átalakító, I2C/SPI/I2S chipek közötti kommunikációs megoldások SW alrendszerei beágyazott Linux-ban. Jellegzetes beágyazott perifériák bemutatása és kezelése magas szinten (user-space). A user-space és kernel-space beágyazott periféria kezelése összehasonlítása, elemzése. A kernel programozás előnyei és hátrányai, kerülésének indokai.  

7. hét: Polling és interrupt alapú perifériakezelés, és azok összehasonlítása, jellegzetességeik ezek megjelenése a beágyazott Linux-ban. Valós-idejű periféria kezelés megoldásai, elemzése és vizsgálata. Esemény-vezérelt szoftver architektúrák, és azok megjelenése a Linux operációs rendszerben. Esemény-vezérelt és többszálú programozás mintái (select, poll rendszerhívások), szálak közötti szinkronizáció a gyakorlatban, közös erőforrások kezelése. 

8. hét: Ütemező, ütemező választás, ütemező befolyásolása, valós-idejű ütemezés. Folyamatok és szálak használata és alkalmazásának a következményei. Rendszerindítás és folyamatmenedzsment alapjai (systemd és alternatívái, hosszú távú ütemezés). 

9. hét: Hálózatba kapcsolt beágyazott rendszerek, szenzorhálózatok, biztonságkritikus és valós-idejű működés nehézségei elosztott rendszerekben. Elosztott rendszerek idő-vezérelt működése, az idő-vezérelt működés összehasonlítása az esemény-vezérelt megközelítéssel. Valós-idejű kommunikációs megoldások beágyazott rendszerekben. 

10. hét: Idő kezelése elosztott rendszerben, óra- és frekvencia szinkronizáció problémái, szükségessége és megoldásai. Globális óraszinkronizáció (GNSS). Network Time Protocol (NTP) működése és korlátai. Óraszinkronizáció a telephelyen (pl. lokális hálózatban), IRIG és IEEE 1588, valamint annak a profiljai. 

11. hét: Időérzékeny hálózatok (Time-Sensitive Networks, TSN), alapműködés, szolgáltatások. Valós-idejű köztesrétegek, alkalmazási réteg protokollok beágyazott információs rendszerekben. Publish-Subscribe megoldások és azok vizsgálata biztonságkritikus, valós-idejű beágyazott rendszerekben. MQTT és a valós-idejűség, OPC-UA és annak a TSN leképzése, Data Distribution Service (DDS). 

12. hét: Heterogén többprocesszoros rendszerek alkalmazástechnikája, aszimmetrikus többprocesszoros rendszerek ütemezése. Edge rendszerek, edge és cloud kapcsolata. Edge compute HW és SW lehetőségei, számábrázolás hatása a számítási teljesítményre és a fogyasztásra. MI Edge Compute esettanulmány. 

13. hét: Beágyazott rendszerek fejlesztése, hibakeresés beágyazott rendszerekben. Keresztplatformos fejlesztés, programletöltés és program nyomkövetése beágyazott rendszerekben. Oszcilloszkóp és logikai analizátor alkalmazása szoftver hibakeresés során, műszere programozott elérése esettanulmány.

 

A laborok részletes tematikája

1. hét: A laborok során használt fejlesztőkörnyezettel történő ismerkedés. 

2. hét: Ismerkedés a valós-idejűség fogalmával Linux alatt egyszerű példaprogramokon keresztül, teljesítmény vizsgálat. 

3. hét: Tárkezelés, és azon belül is a virtuális tárkezelés tulajdonságaival történő ismerkedés Linux alatt, memória alrendszer hatása a valós-idejűségre, teljesítmény vizsgálat. 

4. hét: GPIO és A/D periféria villamos tulajdonságainak a vizsgálata kész szoftver felhasználásával. 

5. hét: I2C periféria villamos működésének a vizsgálata kész szoftverrel. 

6. hét: GPIO periféria interfész programozása beágyazott Linux alatt, a különböző megoldások időzítési viszonyainak vizsgálata. 

7. hét: Eseménykezelés (pl. poll() rendszerhívás) és többszálú programozás mintáinak vizsgálata beágyazott alkalmazásban. 

8. hét: Linux ütemezés befolyásolása, a valós-idejű ütemezési osztályok használata, és azok alkalmazásának hatása GPIO kezelés esetén. 

9. hét: Rendszerindítási folyamat vizsgálata, egyszerű systemd script készítése beágyazott Linux program indítására. 

10. hét: Beágyazott alkalmazási-réteg protokollok vizsgálata valós-idejűség szempontjából (MQTT és DDS összehasonlítása), késleltetés mérés az alkalmazási rétegben. 

11. hét: Időkezelés Linux alatt, Linux rendszerórák és timerek használata. Időbélyegek kezelése. 

12. hét: NTP és IEEE 1588 óraszinkronizációs megoldások a gyakorlatban. 

13. hét: RemoteProc és RPMsg alkalmazása heterogén többprocesszoros környezetben egyszerű példával.

A tantárgy célja a fizikai, biológiai, kémiai környezetükkel aktív, valós-idejű információs kapcsolatban álló beágyazott rendszerek létrehozásához és működtetéséhez szükséges, az informatikai alapműveltségen túlmutató speciális tudás és készségek fejlesztése gyakorlati példákon keresztül. A tantárgy elsősorban azokra a vonatkozásokra mutat rá, amelyek - a környezetünk folytonos és párhuzamos jelenségei, valamint az azt befolyásolni igyekvő számítástechnika kifejezetten szekvenciális jellegéből adódóan - fokozott odafigyelést és alaposabb felkészültséget igényelnek. Ennek érdekében kiemelten szerepel a valós-idejű működés, valamint kisebb mértékben a szolgáltatásbiztonság követelményeit figyelembe vevő tervezési elvek bemutatása.  A tantárgy az ismereteket egykártyás számítógépes platformon, beágyazott Linux környezetben demonstrálja, és ebben a környezetben rendszer- és szoftverfejlesztési ismereteket is nyújt. Ugyanakkor a tárgy kitér a mikrovezérlőket alkalmazó egyszerűbb beágyazott rendszerek jellegzetességeire is, beleértve a szoftver aspektusokra is, mint pl. az MCU-on futtatható beágyazott operációs rendszerek (pl. FreeRTOS) és a Linux különbségeire, a HW platform és OS választás részleteire stb.

Tanulmányi eredmények

Ez a tantárgy a KKK rendeletben meghatározott, következő kompetenciák fejlesztését szolgálja:

Tudás

Nincsenek rögzített tanulási eredmények.

Képességek

Nincsenek rögzített tanulási eredmények.

Attitűd

Nincsenek rögzített tanulási eredmények.

Autonómia és felelősség

Nincsenek rögzített tanulási eredmények.

Oktatási módszertan

Előadás és az előadásokhoz szorosan kapcsolódó, egykártyás beágyazott számítógépen zajló laborgyakorlatok.

Tanulástámogató anyagok

Online források
Tanszéki elektronikus jegyzet

A tantárgy teljesítéséhez ajánlott előzetes ismeretek

Tudás típusú kompetenciák
(azon előzetes ismeretek összessége, amelyek megléte nem kötelező, de a tantárgy eredményes teljesítését nagyban elősegíti)
Operációs rendszerek, Szoftvertechnológia, C/C++ programozás, Számítógép hálózatok
Képesség típusú kompetenciák
(azon előzetes képességek és készségek összessége, amelyek megléte nem kötelező, de a tantárgy eredményes teljesítését nagyban elősegíti)
nincs
Ajánlott (nem kötelező) előzetesen megszerzendő kompetenciák
(azon ajánlott (nem kötelező) előzetesen megszerzendő kompetenciák összessége, amelyek jelentősen hozzájárulnak a tantárgy eredményes teljesítéséhez)
Operációs rendszerek, Szoftvertechnológia, C/C++ programozás, Számítógép hálózatok
Általános szabályok
Követelmények: A félév során két nagyzárthelyi írására kerül sor. A kredit megszerzésének feltétele külön-külön a nagyzárthelyikre a kapható pontok 40%-ának elérése. A félévvégi osztályzatot a nagyzárthelyik összpontszáma alapján állapítjuk meg. Az elért összpontszámot az elérhető maximális pontszámhoz viszonyítjuk, és az alábbiak szerint osztályozunk: 40% -tól, de 52.5% alatt: elégséges (2)  52.5%-tól, de 65% alatt: közepes (3)  65%-tól, de 80% alatt: jó (4)  80%-tól: jeles (5)  Részvétel a laborokon: A gyakorlatokon a részvételt ellenőrizzük, a megrendezésre kerülő laborokon minimum 2/3-án a részvétel kötelező a félév végi jegy megszerzéséhez. Pótlási lehetőségek: A nagyzárthelyik egyszeri pótlására a pótlási héten biztosítunk lehetőséget. Az 1. és a 2. ZH pótlására külön-külön, eltérő időpontban lesz lehetőség a pótlási héten.  A laborok nem pótolhatók, azoknak legalább a 2/3-án a megjelenés kötelező. Vagyis 13 gyakorlat esetén 9-en, 12 esetén 8 gyakorlaton kötelező a megjelenés, az aktuális szám a félév beosztásától függ.
Teljesítményértékelési módszerek
Szorgalmi időszakban végzett teljesítményértékelések részletes leírása

Nincs megadva részletes értékelés.

Szorgalmi időszakban végzett teljesítményértékelések részaránya

Nincs megadva részarány.

Vizsgaidőszakban végzett teljesítményértékelések részletes leírása

Nincs megadva részletes értékelés.

Vizsgarészek részaránya

Nincs megadva részarány.

Érdemjegy megállapítása

Nincs megadva érdemjegy határ.

Jelenléti és részvételi követelmények

Nincs megadva jelenléti követelmény.

Javítás, ismétlés és pótlás különös szabályai

Nincs megadva.

Rövid leírás

Nincs megadva.

Részletes leírás
IMSc program: Az IMSc program hallgatói számára emelt szintű, fakultatív házi feladatokat kínálunk, amelyekhez eszközt és konzultációt biztosítunk. Alapvető célunk az, hogy a hallgatókat a tananyag mélyebb, és egyben gyakorlati megismerésére ösztönözzük, ugyanakkor fakultatív feladatokkal választási lehetőségeket is kínáljunk számukra. IMSc pontok: A tantárgyból maximum 25 IMSc pont szerezhető:  A zárthelyiken maximum 5 IMSc pont szerezhető emelt szintű feladat megoldásáért, ha a zárthelyi magában legalább 80%-os eredményű.  Fakultatív házi feladatok emelt szintű megoldásáért összesen maximum 15 IMSc pont szerezhető.  Az IMSc pontok gyűjtése teljesen független a tantárgyban szerezhető ZH pontoktól. Ezen pontok megszerzése és a fakultatív feladatok megoldása nélkül is jeles szinten teljesíthetők a tantárgy követelményei. Az IMSc pontok megszerzése az IMSc programban nem résztvevő hallgatók számára is biztosított.
Ajánlott tantárgyak

Nincs megadva.

A tantárgy elvégzéséhez szükséges tanulmányi munka

Nincs megadva munkaidő bontás.

Tantárgykövetelmények hatályossága
Tantárgykövetelmények hatályosságának kezdete:
Tantárgykövetelmények hatályosságának vége:
Tantervi elhelyezés

Nincsenek rögzített tantervi elhelyezések ehhez a tárgyverzióhoz.