Bądźmy w kontakcie

Plan Szkolenia

Wprowadzenie

  • Historia Unix/Linux
  • Wolne Oprogramowanie
  • Filozofia Unix

HOST PLAYGROUND

  • Zabawa z GNU/Linux
    • architektura
    • powłoka
    • uprawnienia
    • FHS (standard hierarchii plików)
    • linki twarde/miękkie
    • rzeczywiste/efektywne uid/gid
    • harmonogram
    • proces/zadanie/wątek
    • IPC proste/zaawansowane
      • potoki
      • sygnały
      • kolejki komunikatów
      • semafor
      • pamięć współdzielona
      • gniazda
      • select/poll
    • Techniki IPC do unikania
  • Konfiguracja hosta Linux
    • Yocto/ELDK (narzędzia cross/target, biblioteki, pakiety)
    • Emulacja terminala
    • Serwery (DHCP, tftp, NFS)

TARGET PLAYGROUND

  • pliki potrzebne do uruchomienia czegoś na płytce
    • Konfiguracja JTAG/BDI
    • u-boot (checkout, config, build)
    • kernel (checkout, config, build)
    • rootfs
    • płaska tablica urządzeń
  • zbuduj/uruchom to, co dotyczy powyższego na płytce docelowej
  • różne rootfs
    • CRAMFS
    • ramdisk
    • MTD
    • JFFS2
    • roEXT2
    • ubi
  • zbuduj/uruchom to, co dotyczy powyższego na płytce docelowej
  • porównanie systemów plików root
  • debugowanie
    • proste narzędzia
    • lokalne/zdalne
    • użytkownik/jądro
    • gdb
    • gdbserver
    • JTAG/BDI (opcjonalnie)
  • profilowanie
    • gprof
    • gcov
    • oprofile

SYSTEMY CZASU RZECZYWISTEGO

  • wymagania wstępne
    • przerwania
    • kod wielokrotnego użycia
  • system czasu rzeczywistego Linux
    • jawne/niejawne punkty wywłaszczenia
    • łatka preempt-RT
    • w pełni wywłaszczalne jądro
    • rozszerzenia czasu rzeczywistego
  • Adeos/Xenomai
    • łatka Adeos
    • Xenomai
    • łatka/konfiguracja/budowa jądra
    • uruchomienie na płytce

WYDANIE OPROGRAMOWANIA

  • administracja
  • rozwój
  • jak odtworzyć wydanie oprogramowania?

RÓŻNE

  • getopt
  • endianess
  • ściągawki

O ile nie zaznaczono inaczej, treść tego planu kursu jest dostępna na licencji Uznanie autorstwa-Użycie niekomercyjne-Na tych samych warunkach 4.0 Międzynarodowe (CC BY-NC-SA 4.0).

Wymagania

  • Podstawowa znajomość korzystania z systemu GNU/Linux (np. Ubuntu) jako użytkownik końcowy w przestrzeni użytkownika 
  • Podstawowa znajomość pracy z powłoką wiersza poleceń 
  • Podstawowa wiedza na temat rozwoju aplikacji w przestrzeni użytkownika z wykorzystaniem GNU/Linux 
  • Podstawowa wiedza na temat procesorów embedded i płyt deweloperskich 
  • Podstawowa znajomość programowania w C 
  • …i/lub chęć nauki powyższych… 
 35 godzin

Liczba uczestników


Cena za uczestnika (netto)

Opinie uczestników (3)

Propozycje terminów

Powiązane Kategorie