Linux alapú célrendszerek fejlesztése

A tantárgy angol neve: LINUX-based system development

Adatlap utolsó módosítása: 2009. november 20.

Tantárgy lejárati dátuma: 2013. január 31.

Budapesti Műszaki és Gazdaságtudományi Egyetem
Villamosmérnöki és Informatikai Kar

Mérnök informatikus szak
Rendszerintegráció mellékszakirány
MSc képzés

Tantárgykód Szemeszter Követelmények Kredit Tantárgyfélév
VIIIM339 3 2/1/0/v 4  
3. A tantárgyfelelős személy és tanszék Dr. Szeberényi Imre,
4. A tantárgy előadója

Dr. Szeberényi Imre egyetemi docens

5. A tantárgy az alábbi témakörök ismeretére épít Programozási ismeretek, számítógarchitektúrák, számítógép hálózatok
7. A tantárgy célkitűzése A tantárgy fő célja, hogy a hallgatókat felkészítse Linux platformra épülő ipari alkalmazásfejlesztésekre. A tárgy az általános témákat alkalmazásfejlesztési  kérdéseket Linux-specifikus környezetben tárgyalja, gyakorlati példákkal egészítve ki azokat. A hallgatóknak lehetőségük lesz az ismereteket valódi beágyazott eszközökön is kipróbálni a házi feladatok elkészítésénél. A tárgyat sikeresen elvégezve a hallgatók készség szintű ismereteket szereznek a Linux-platformra alapozott fejlesztési feladatok megoldásában, a hardver-szoftver konfigurációk kialakításában, összetett, elosztott rendszerek kialakításában, tesztelésében.
8. A tantárgy részletes tematikája
  •  A Linux platform fejlesztő eszközei: keresztfordítók, debuggerek, emulátorok, integrált fejlesztő környezetek
  •  A fejlesztőkörnyezet felállítása: a kernel és az alapkönyvtárak konfigurálása a célhardverhez és a szimulációs környezethez
  •  A célhardver használata: a hardver felélesztése, a rendszerbetöltő, háttértárak (flash memória), ki/bemeneti eszközök
  • Konfiguráció menedzsment: Verziókezelők, forráskód menedzsment, kollaborációs platformok, hibajegyek kezelése (Wiki, Subversion, Trac)
  • Defenzív programozás: hibalehetőségek kizárása, hibakezelési lehetőségek C / C++ nyelvű programokban, biztonságos és stabil programok készítésének alapelvei
  • Tesztelés: a „test-first” módszertan, automatikus tesztelési környezetek használata (dejagnu, CPPUnit)
  • Naplózás: naplózó rendszerek (syslog, klog, speciális célú naplók), a megfelelő naplózási módszerek megválasztása
  • Teljesítményelemzés: Profiler eszközök (gprof, oprofile) használata, teljesítménytesztek írása
  • Rendszerintegráció: Beágyazott Linux disztribúciók (OpenEmbedded, EmDebian, Montavista), a megfelelő komponensek kiválasztása a beágyazott rendszerhez.
  • A Qt/Embedded keretrendszer: Qt/Embedded alkalmazások fejlesztése, Qtopia alkalmazások, az Opie projekt
9. A tantárgy oktatásának módja (előadás, gyakorlat, laboratórium) A tárgy előadásból és az előadás anyagát illusztráló gyakorlatokból áll.
10. Követelmények

a. A szorgalmi időszakban:

  • A félév során 1 házi feladat kerül kiadásara.
  • Az aláírás megszerzésének feltétele a házi feladat elégséges szintű kidolgozása.

b. A vizsgaidőszakban: Írásbeli vizsga. 

c. Elővizsga: nincs.

11. Pótlási lehetőségek

A sikertelen vizsga ismétlő vizsgán javítható.

Házi feladat pótlása a pótlási héten, előre egyeztetett időpontban, de legkésőbb péntek 12:00-ig lehetséges.

12. Konzultációs lehetőségek Hallgatói igény szerint.
13. Jegyzet, tankönyv, felhasználható irodalom

Christopher Hallinan: Embedded Linux Primer: A Practical Real-World Approach, Prentice Hall, 2006.

Bányász Gábor, Levendovszky Tihamér: Linux programozás, SZAK, 2003

 

14. A tantárgy elvégzéséhez átlagosan szükséges tanulmányi munka
Kontakt óra 40
Félévközi készülés órákra 14
Felkészülés zárthelyire-
Házi feladat elkészítése18
Vizsgafelkészülés48
Összesen120
15. A tantárgy tematikáját kidolgozta Dr. Szeberényi Imre egyetemi docens