Kurzusleírás

Bevezetés

  • Célok
  • Ki vagy
  • Az Linux Alapítvány
  • Linux Alapítványi képzés
  • Minősítési programok és digitális jelvény
  • Linux Elosztások
  • Platformok
  • A rendszer előkészítése
  • Virtuális gép használata és letöltése
  • A dolgok megváltoznak itt: Linux

Előzetesek

  • Eljárások
  • Szabványok és az LSB

Hogyan dolgozz az OSS projektekben**

  • Áttekintés a megfelelő hozzájárulásról
  • A biztonság és a minőség érdekében maradjon a fővonal közelében
  • Tanulmányozza és értse meg a projekt DNS-ét
  • Találja ki, milyen viszketést szeretne Scratch
  • Azonosítsa a fenntartókat és munkafolyamataikat és módszereiket
  • Szerezzen korai hozzájárulást és dolgozzon a szabadban
  • Inkrementális bitek, nem nagy kódkiíratok
  • Hagyd az egódat az ajtóban: Ne légy vékonybőrű
  • Legyen türelmes, alakítson ki hosszú távú kapcsolatokat, legyen segítőkész

Fordítók

  • GCC
  • Egyéb fordítók
  • Főbb gcc opciók
  • Előfeldolgozó
  • Integrált fejlesztői környezetek (IDE)
  • Labs

Könyvtárak

  • Statikus könyvtárak
  • Megosztott könyvtárak
  • Összekapcsolás a könyvtárakkal
  • Dynamic Linking Loader
  • Labs

Készíts

  • Make és Makefiles használata
  • Nagy projektek építése
  • Bonyolultabb szabályok
  • Beépített szabályok
  • Labs

Forrásvezérlés

  • Forrásvezérlés
  • RCS és CVS
  • Felforgatás
  • git
  • Labs

Hibakeresés és Core Dump

  • gdb
  • Mik azok a Core Dump fájlok?
  • Maglerakók gyártása
  • A maglerakók vizsgálata
  • Labs

Hibakereső eszközök

  • Az idő megszerzése
  • Profilalkotás és teljesítmény
  • valgrind
  • Labs

Rendszerhívások

  • Rendszerhívások vs. könyvtári funkciók
  • Hogyan történik a rendszerhívások lebonyolítása
  • Visszatérési értékek és hibaszámok
  • Labs

Memória Management és kiosztás

  • Memória Management
  • Dinamikus elosztás
  • malloc() hangolása
  • Oldalak zárolása
  • Labs

Fájlok és fájlrendszerek itt: Linux **

  • Fájlok, könyvtárak és eszközök
  • A virtuális fájlrendszer
  • Az ext2/ext3 fájlrendszer
  • Fájlrendszerek naplózása
  • Az ext4/ fájlrendszer
  • Labs

Fájl I/O

  • UNIX fájl I/O
  • Nyitás és zárás
  • Olvasás, írás és keresés
  • Pozíciós és vektoros I/O
  • Szabványos I/O könyvtár
  • Nagy fájlok támogatása (LFS)
  • Labs

Speciális fájlműveletek

  • Stat Funkciók
  • Címtár funkciók
  • értesíteni
  • Memória leképezés
  • flock() és fcntl()
  • Ideiglenes fájlok készítése
  • Egyéb rendszerhívások
  • Labs

Folyamatok I

  • Mi az a folyamat?
  • Folyamat korlátai
  • Folyamatcsoportok
  • A proc fájlrendszer
  • InterProcess Communication Methods
  • Labs

Folyamatok II

  • A system() használata folyamat létrehozásához
  • A fork() használata folyamat létrehozásához
  • Az exec() használata folyamat létrehozásához
  • A klón() használata
  • Kilépés
  • Konstruktorok és Destruktorok
  • Várakozás
  • Démon folyamatok
  • Labs

Csövek és Fifos

  • Csövek és InterProcess Communication
  • popen() és pclose()
  • cső()
  • Nevezett csövek (FIFO-k)
  • splice(), vmsplice() és tee()
  • Labs

Aszinkron I/O**

  • Mi az aszinkron I/O?
  • A POSIX aszinkron I/O API
  • Linux Végrehajtás
  • Labs

Jelek I

  • Mik azok a jelek?
  • Elérhető jelek
  • Jelek küldése
  • Riasztások, szünet és alvás
  • Jelkezelő beállítása
  • Jelkészletek
  • sigaction()
  • Labs

Jelek II

  • Visszatérő és jelkezelők
  • Ugrás és nem helyi visszatérések
  • siginfo és sigqueue()
  • Valós idejű jelek
  • Labs

POSIX szálak I

  • Többszálú Linux alatt
  • Alapvető programstruktúra
  • Szálak létrehozása és megsemmisítése
  • Jelek és szálak
  • Villás vs. menet
  • Labs

POSIX szálak II

  • Holtpontok és versenyfeltételek
  • Mutex műveletek
  • Szemaforok
  • Futexes
  • Feltételes műveletek
  • Labs

Networking és Sockets

  • Networking Rétegek
  • Mik azok a foglalatok?
  • Stream Sockets
  • Datagram Sockets
  • Raw Sockets
  • Byte rendezés
  • Labs

Socket címek és gazdagépek

  • Socket címstruktúrák
  • IP-címek konvertálása
  • Gazdainformáció
  • Labs

Socket Portok és protokollok

  • Szervizport információ
  • Protokoll információk
  • Labs

Sockets ügyfelek

  • Alapvető ügyfélsorrend
  • foglalat()
  • connect()
  • close() és shutdown()
  • UNIX kliens
  • Internetes kliens
  • Labs

Socket szerverek

  • Basic Server Sequence
  • bind()
  • hallgat()
  • elfogad()
  • UNIX szerver
  • Internet szerver
  • Labs

Aljzatok bemeneti/kimeneti műveletei

  • írni olvasni()
  • küld(), recv()
  • sendto(), recvfrom()
  • sendmsg(), recvmsg()
  • sendfile()
  • socketpair()
  • Labs

Aljzatok opciók

  • Socket opciók lekérése és beállítása
  • fcntl()
  • ioctl()
  • getsockopt() és setsockopt()
  • Labs

Netlink Sockets**

  • Mik azok a netlink socketek?
  • Netlink Socket megnyitása
  • netlink üzenetek
  • Labs

Socket multiplexelés és párhuzamos szerverek

  • Multiplex és aszinkron aljzat I/O
  • select()
  • közvélemény kutatás()
  • pselect() és ppoll()
  • epoll
  • Jelvezérelt és aszinkron I/O
  • Párhuzamos szerverek
  • Labs

Folyamatközi Communication

  • Az IPC módszerei
  • POSIX IPC
  • System V IPC**
  • Labs

Megosztott memória

  • Mi az a megosztott memória?
  • POSIX megosztott memória
  • System V megosztott memória**
  • Labs

Szemaforok

  • Mi az a szemafor?
  • POSIX szemaforok
  • System V szemaforok**
  • Labs

Üzenetsorok

  • Mik azok az üzenetsorok?
  • POSIX üzenetsorok
  • System V üzenetsorok**
  • Labs

Követelmények

Ez a tanfolyam tapasztalt fejlesztőknek szól. A tanulóknak jártasnak kell lenniük a C programozásban, és ismerniük kell az alapvető Linux segédprogramokat és szövegszerkesztőket.

Közönség

Ez a tanfolyam tapasztalt fejlesztőknek szól. A tanulóknak jártasnak kell lenniük a C programozásban, és ismerniük kell az alapvető Linux segédprogramokat és szövegszerkesztőket.

Tapasztalat szint: középhaladó

 28 Hours

Résztvevők száma



Ár per résztvevő

Rokon tanfolyam

Rokon kategóriák