Vissza a főoldalra
Asztalos Márk, Bányász Gábor, Levendovszky Tihamér
Linux programozás
Második, átdolgozott kiadás
B5, kartonált ♦ 616 oldal ♦ 7800 Ft áfával ♦ ISBN 978-963-9863-29-3
Linux programozás 2

A Linux a közelmúltban volt húszéves. Ez a húsz év egyben sikertörténet is: a Linux-alapú szerverek népszerűsége töretlen, nagyon sok beágyazott eszköz futtat Linuxot, köztük a legnépszerűbb okostelefonok. A Linux-disztribúciók egyre közelebb kerülnek a felhasználókhoz, használatuk egyre egyszerűbbé válik.

Jóllehet számos magas szintű programozási nyelv és környezet áll rendelkezésre, sok olyan feladat létezik, amelyet az operációs rendszer programozási felületén elérhető funkciókkal lehet csak megoldani. Ilyenkor szükség van az operációs rendszer működésének mélyebb ismeretére, ez beágyazott környezetben egyenesen elengedhetetlenné válik. Ezekhez a feladatokhoz kíván segítséget nyújtani a könyv. Az operációs rendszer C/C++-ban elérhető programozási felületének ismertetése során részletesen bemutatjuk a megvalósítási alapelveket, ennek tükrében érthetővé válik az egyes funkciók használata is. Egy sokkal teljesebb kép birtokában a magas szintű környezetek felhasználói is hatékonyabban tudják kihasználni környezetük lehetőségeit. Mivel a Linux a Unix operációs rendszerek családjának tagja, ezért a Linuxról elmondottak nagy része igaz a Unixra is. Mindezek alapján ajánljuk a könyvet mindenkinek, aki Linux/Unix környezetben tervezői, illetve programozói munkát végez, valamint azoknak, akik el szeretnék sajátítani az ehhez szükséges ismereteket.

A szerzők könyvüket annak első kiadása óta szinte teljesen átdolgozták, és számos új fejezettel bővítették. A főbb témakörök a következők:

  • Bevezetés a Linux-kernel működésébe
  • Programkönyvtárak fejlesztése
  • Párhuzamos programozás
  • Állománykezelés
  • Hálózati alkalmazások
  • Programozás Qt-környezetben
  • Adatbázis-kezelés Qt-alapokon
  • Fejlesztőeszközök, hibakeresés

Letölthető anyagok

  Tartalomjegyzék
  Előszó

A könyvhöz kapcsolódó példák az alábbi hivatkozásokról tölthetőek le:

Az összes példa egyben innen tölthető le. A kitömörítés során létrejövő "linux_programozas_peldak" könyvtár a fejezetek sorszámának megfelelő alkönyvtárakban tartalmazza a példákat.

A példák Ubuntu 12.04 LTS disztribúció alatt voltak tesztelve. Az egyes fejezetek példái, a Qt fejezet kivételével az alkönyvtárakban kiadott "make" paranccsal készíthetőek el. A fordításhoz szükséges a gcc, g++, és make programok telepítése. Továbbá a Qt fejezet példáihoz a Qt fejlesztői könyvtárakra és eszközökre is szükség lesz.

  1. Bevezetés
  2. Betekintés a Linux-kernelbe
  3. Programkönyvtárak készítése
  4. A statikus, a megosztott és a C++ programkönyvtárakhoz kapcsolódó példák külön alkönyvtárakban találhatóak. Ha megtekinti a Makefile állományokat, akkor a fejezetben olvasott fordítási lépések köszönnek vissza.

  5. Állomány- és I/O kezelés
  6. Párhuzamos programozás
  7. A főkönyvtár tartalmazza a folyamatokhoz kapcsolódó példákat. A System V IPC, a szálak és a jelzések példái külön alkönyvtárakban kaptak helyet.

  8. Hálózati kommunikáció
  9. A könyvtár csoportosítva tartalmazza a Unix domain socket, az IP, és az RPC protokollok, illetve külön a névfeloldás példáit.

  10. Fejlesztés a Linux-kernelben
  11. A kernel modulok fordításához szükséges a Linux kernel header állományainak, vagy a kernel forrásának telepítése. Ez disztribúciónként eltérő csomagokat jelent. Ubuntu esetén a "linux-headers" csomagot kell telepítenünk. Ha az Ubuntu/Debian-tól eltérő disztribúciót használ a kedves olvasó, akkor a példák Makefile állományának szerkesztése is szükséges. Az állomány elején található "KERNELDIR" változóban a kernel header állományainak elérhetőségét kell megadni. Ezt követően a kernel modulok a "make" parancs kiadásával fordíthatóak, majd az insmod/rmmod parancsokkal tesztelhetőek.

  12. A Qt keretrendszer programozása
  13. Az egyes példák állományai külön alkönyvtárakban találhatóak. A példák fordításához telepítenünk kell a Qt4 fejlesztői könyvtárakat és a qmake programot. Ubuntu disztribúció esetén ez a "libqt4-dev" és a "qt4-qmake" csomagok telepítését jelenti. Ezt követően a példák a könyvtárukban kiadott "qmake", majd "make" parancsokkal fordíthatóak.

  14. A függelék: Fejlesztőeszközök
  15. A fejezet példáját lefordító Makefile állomány önmagában a fejezethez tartozó példa.

  16. B függelék: Hibakeresés
  17. A fejezet példái szándékosan hibásak, hogy a hibakeresést lehessen gyakorolni rajtuk.