Szkolenia The Linux Foundation

Cel szkolenia

kod: LFD401

Ten czterodniowy kurs ma na celu pomóc doświadczonym programistom w szybkim przygotowaniu aplikacji w środowisku Linux. Podczas tego kursu zdobędziesz praktyczne doświadczenie z niezbędnymi narzędziami i metodami tworzenia aplikacji dla systemu Linux oraz poznasz funkcje i techniki unikalne dla systemu Linux.

Podczas tego kursu:

  • Poznasz narzędzia i metody tworzenia programów w C i programowania systemów pod Linuxa.
  • Nauczysz się techniki debugowania i zarządzania procesami.
  • Poznasz wywołania systemowe specyficzne dla systemu Linux.
  • I więcej.

Informacje zawarte w tym kursie będą kompatybilne z każdą główną dystrybucją Linux.

Plan szkolenia Rozwiń listę

  1. Wprowadzenie
    • Cele
    • Kim jesteś
    • Linux Foundation
    • Linux Foundation Training
    • Dystrybucje Linux
    • Platformy
    • Przygotowanie system
    • Pobieranie i używanie maszyny wirtualnej
    • Rzeczy zmieniają się w Linux
    • Rejestracja kursu
  2. Czynności wstępne
    • Procedury
    • Standardy i LSB
  3. Jak pracować w projektach OSS **
    • Omówienie wniesienia prawidłowego udziału
    • Pozostań blisko głównej linii bezpieczeństwa i jakości
    • Badanie i zrozumienie DNA projektu
    • Określ czym chcesz się zająć
    • Zidentyfikowanie osób odpowiedzialnych, ich przepływu pracy i metod
    • Uzyskaj wczesne wejście i pracę w otwartym środowisku
    • Przekazuj przyrostowe bity, zamiast dużych fragmentów kodu
    • Zostaw swoje ego przed drzwiami: nie bądź wrażliwy
    • Bądź cierpliwy, rozwijaj relacje długoterminowe, bądź pomocny
  4. Kompilatory
    • GCC
    • Inne kompilatory
    • Główne opcje GCC
    • Preprocesor
    • Zintegrowane środowiska programistyczne (IDE)
    • Laboratorium
  5. Biblioteki
    • Biblioteki statyczne
    • Wspólne biblioteki
    • Łączenie z bibliotekami
    • Dynamiczny program ładujący
    • Laboratorium
  6. Make
    • Używanie Make i Makefile
    • Budowanie dużych projektów
    • Bardziej skomplikowane zasady
    • Wbudowane reguły
    • Laboratorium
  7. Kontrola źródła
    • Kontrola źródła
    • RCS i CVS
    • Subversion
    • Git
    • Laboratorium
  8. Debugowanie i Core Dumps
    • Gdb
    • Co to jest Core Dump Files?
    • Produkcja Core Dumps
    • Badanie Core Dumps
    • Laboratorium
  9. Narzędzia debugowania
    • Electric Fence
    • Zdobywanie czasu
    • Profilowanie i wydajność
    • Valgrind
    • Laboratorium
  10. Wywołania systemowe
    • Wywołania systemowe, a funkcje biblioteki
    • Jak wykonywane są wywołania systemowe
    • Wartości zwrotne i numery błędów
    • Laboratorium
  11. Zarządzanie pamięcią i alokacją
    • Zarządzanie pamięcią
    • Dynamiczna alokacja
    • Tuning malloc()
    • Blokowanie stron
    • Laboratorium
  12. Pliki i systemy plików w Linux **
    • Pliki, katalogi i urządzenia
    • Wirtualny system plików
    • System plików ext2/ext3
    • Systemy plików dziennika
    • System plików ext4/
    • Laboratorium
  13. File I/O
    • UNIX File I/O
    • Otwieranie i zamykanie
    • Czytanie, pisanie i szukanie
    • Pozycyjne i wektorowe I/O
    • Standardowa biblioteka I/O
    • Obsługa dużych plików (LFS)
    • Laboratorium
  14. Zaawansowane operacje na plikach
    • Funkcje statystyczne
    • Funkcje katalogu
    • Inotify
    • Mapowanie pamięci
    • Flock() i fcntl()
    • Tworzenie plików tymczasowych
    • Inne wywołania systemowe
    • Laboratorium
  15. Procesy – I
    • Co to jest proces?
    • Limity procesowe
    • Grupy procesowe
    • System plików proc
    • Metody komunikacji między procesami
    • Laboratorium
  16. Procesy – II
    • Używanie system() do tworzenia procesu
    • Używanie fork() do tworzenia procesu
    • Używanie exec() do utworzenia procesu
    • Korzystanie z polecenia clone()
    • Wyjście
    • Konstruktorzy i destruktory
    • Oczekiwanie
    • Procesy demon
    • Laboratorium
  17. Pipes i Fifos
    • Pipes i komunikacja między procesami
    • Popen() i pclose()
    • Pipe()
    • Nazwane powłoki (FIFO)
    • Splice(), vmsplice() i tee()
    • Laboratorium
  18. Asynchroniczne I/O **
    • Co to jest Asynchroniczne I/O?
    • API Asynchronicznego I/O POSIX
    • Implementacja Linux
    • Laboratorium
  19. Sygnały – I
    • Co to są sygnały?
    • Dostępne sygnały
    • Wysyłanie sygnałów
    • Alarmy, pauzy i uśpienie
    • Konfiguracja Signal Handler
    • Zestawy sygnałów
    • Sigaction()
    • Laboratorium
  20. Sygnały – II
    • Reentrancy i Signal Handler
    • Skoki i zwroty nielokalne
    • Siginfo i sigqueue()
    • Sygnały w czasie rzeczywistym
    • Laboratorium
  21. Wątki POSIX – I
    • Wielowątkowość w Linux
    • Podstawowa struktura programu
    • Tworzenie i niszczenie wątków
    • Sygnały i wątki
    • Forking a Threading
    • Laboratorium
  22. Wątki POSIX – II
    • Deadlocks i Race Conditions
    • Operacje Mutex
    • Semafory
    • Futexy
    • Operacje warunkowe
    • Laboratorium
  23. Sieci i gniazda
    • Warstwy sieciowe
    • Co to są gniazda?
    • Gniazda strumieniowe
    • Gniazda datagramowe
    • Surowe gniazda
    • Kolejność bajtów
    • Laboratorium
  24. Gniazda – adresy i hosty
    • Struktura adresów gniazd
    • Konwersja adresów IP
    • Informacje o gospodarzu
    • Laboratorium
  25. Gniazda – porty i protokoły
    • Informacje o porcie usług
    • Informacje o protokole
    • Laboratorium
  26. Gniazda – klienci
    • Podstawowa sekwencja klientów
    • Socket()
    • Connect()
    • Close() i shutdown()
    • Klient UNIX
    • Klient internetowy
    • Laboratorium
  27. Gniazda – serwery
    • Podstawowa sekwencja serwerów
    • Bind()
    • Listen()
    • Accept()
    • Serwer UNIX
    • Serwer internetowy
    • Laboratorium
  28. Gniazda – operacje wejścia/wyjścia
    • Write(), read()
    • Send(), recv()
    • Sendto(), recvfrom()
    • Sendmsg(), recvmsg()
    • Sendfile()
    • Socketpair()
    • Laboratorium
  29. Gniazda – opcje
    • Pobieranie i ustawianie opcji gniazd
    • Fcntl()
    • Loctl()
    • Getsockopt() i setsockopt()
    • Laboratorium
  30. Gniazda Netlink **
    • Co to są gniazda Netlink?
    • Otwieranie gniazd Netlink
    • Wiadomości Netlink
    • Laboratorium
  31. Gniazda – multipleksowanie i serwery współbieżne
    • Gniazda multipleksowe i asynhroniczne I/O
    • Select()
    • Poll()
    • Pselect() i ppoll()
    • Epoll
    • Sygnałowe I asynchroniczne I/O
    • Serwery współbieżne
    • Laboratorium
  32. Komunikacja między procesami
    • Metody IPC
    • POSIX IPC
    • System V IPC **
    • Laboratorium
  33. Pamięć współdzielona
    • Co to jest pamięć współdzielona?
    • Pamięć współdzielona POSIX
    • Pamięć współdzielona System V **
    • Laboratorium
  34. Semafory
    • Co to jest semafor?
    • Semafory POSIX
    • Semafory systemowe V **
    • Laboratorium
  35. Kolejki komunikatów
    • Czym są kolejki komunikatów?
    • Kolejki komunikatów POSIX
    • Kolejki komunikatów systemu V **
    • Laboratorium
  36. Ankieta zamknięcia i oceny

** Te sekcje mogą być uznane za częściowo lub w całości opcjonalne. Zawierają materiały źródłowe, tematy specjalistyczne lub przedmioty zaawansowane. Instruktor może zdecydować się na ich omówienie lub nie, w zależności od doświadczenia grupy i ograniczeń czasowych.

Pobierz konspekt szkolenia w formacie PDF

Dodatkowe informacje

Wymagania wstępne

Ten kurs przeznaczony jest dla doświadczonych programistów. Uczestnicy powinni być biegli w programowaniu w języku C i zaznajomieni z podstawowymi narzędziami Linux oraz edytorami tekstu.

Poziom trudności
Czas trwania 4 dni
Certyfikat

Uczestnicy otrzymają certyfikaty podpisane przez The Linux Foundation.

Prowadzący

Certyfikowany trener The Linux Foundation.

Pozostałe szkolenia The Linux Foundation | Linux

Szkolenia powiązane tematycznie

Programowanie

Linux

Open Source

Systemy operacyjne

  • konspekt szkolenia: CompTIA A+ Prep Course

    CompTIA A+ Prep Course szkolenie CompTIA

    dostępne terminy szkolenia
    cena od: 7700 PLN
    czas: 5 dni
    poziom trudności: 2 z 6
    kod: CT-A
    wersja: 220-1101 & 220-1102
    2025-04-28 | Warszawa / Wirtualna sala HYBRID: szkolenie dostępne w wersji stacjonarnej we wskazanej lokalizacji lub w trybie zdalnym, w zależności od preferencji uczestnika zarezerwuj
    2025-05-19 | Kraków / Wirtualna sala HYBRID: szkolenie dostępne w wersji stacjonarnej we wskazanej lokalizacji lub w trybie zdalnym, w zależności od preferencji uczestnika zarezerwuj
    2025-06-16 | Warszawa / Wirtualna sala HYBRID: szkolenie dostępne w wersji stacjonarnej we wskazanej lokalizacji lub w trybie zdalnym, w zależności od preferencji uczestnika zarezerwuj
  • konspekt szkolenia: CompTIA Server+ Prep Course

    CompTIA Server+ Prep Course szkolenie CompTIA

    dostępne terminy szkolenia
    cena od: 7000 PLN
    czas: 5 dni
    poziom trudności: 3 z 6
    kod: CT-SERVER
    wersja: SK0-005
    2025-04-28 | Warszawa / Wirtualna sala HYBRID: szkolenie dostępne w wersji stacjonarnej we wskazanej lokalizacji lub w trybie zdalnym, w zależności od preferencji uczestnika zarezerwuj
    2025-05-26 | Kraków / Wirtualna sala HYBRID: szkolenie dostępne w wersji stacjonarnej we wskazanej lokalizacji lub w trybie zdalnym, w zależności od preferencji uczestnika zarezerwuj
    2025-06-30 | Warszawa / Wirtualna sala HYBRID: szkolenie dostępne w wersji stacjonarnej we wskazanej lokalizacji lub w trybie zdalnym, w zależności od preferencji uczestnika zarezerwuj
Formularz kontaktowy

Prosimy o wypełnienie poniższego formularza, jeśli chcą Państwo uzyskać więcej informacji o powyższym szkoleniu.






* pola oznaczone (*) są wymagane

Informacje o przetwarzaniu danych przez Compendium – Centrum Edukacyjne Spółka z o.o.

CENA 8000 PLN NETTO

FORMA SZKOLENIA ?

 

MATERIAŁY SZKOLENIOWE ?

 

WYBIERZ TERMIN SZKOLENIA

  • szkolenie dostępne w wersji stacjonarnej we wskazanej lokalizacji lub w trybie zdalnym, w zależności od preferencji uczestnika: HYBRID
    • Informacje ogólne
    • Termin gwarantowany
    • Last minute (-10%)
    • Język obowiązujący na szkoleniu
    • Polski
  • szkolenie dostępne w wersji stacjonarnej we wskazanej lokalizacji lub w trybie zdalnym, w zależności od preferencji uczestnika: HYBRID
    • Informacje ogólne
    • Termin gwarantowany
    • Last minute (-10%)
    • Język obowiązujący na szkoleniu
    • Polski
Zarezerwuj termin szkolenia
zamknij

Szkolenie stacjonarne

Szkolenia stacjonarne w Compendium CE odbywają się najczęściej w naszych lokalizacjach w Krakowie i Warszawie, ale także w miejscu ustalonym przez klienta. Grupa uczestnicząca w szkoleniu spotyka się w danym miejscu o określonym czasie i wraz z trenerem aktywnie uczestniczy w laboratoriach.

Szkolenie dlearning

W szkoleniach Compendium Distance Learning możesz uczestniczyć z dowolnego miejsca na świecie. Kursanci, dzięki zaawansowanej technologii, którą dostarcza Compendium CE, stale widzą i słyszą trenera, mogą mu zadawać pytania poprzez chat i mikrofon, a także uczestniczą w ćwiczeniach i laboratoriach, które rozwiązują wraz z prowadzącym. Po więcej informacji zajrzyj na stronę dlearning.eu

zamknij

Materiały papierowe

Materiały tradycyjne: cena zawiera standardowe materiały wydawane w postaci książek papierowych, drukowanych lub innej, w zależności od ustaleń z producentem.

Materiały elektroniczne

Materiały elektroniczne: są to materiały szkoleniowe w wersji elektronicznej, które w zależności od dostawcy udostępniane są za pomocą dedykowanych aplikacji: Skillpipe, eVantage itd. lub w postaci dokumentów PDF.

Materiały ctab

Materiały ctab: cena zawiera tablet ctab oraz materiały szkoleniowe w formie elektronicznej bądź tradycyjne materiały szkoleniowe i materiały dodatkowe dostarczone w wersji elektronicznej w zależności od ustaleń z producentem (w postaci dokumentów PDF lub EPUB). Tak dostarczone materiały są przystosowane pod kątem wyświetlania ich na tablecie ctab. Po więcej informacji zajrzyj na stronę ctab.

Najbliższe szkolenia The Linux Foundation

Harmonogram szkoleń
The Linux Foundation