Szkolenia dla Firm

The 3mdeb Embedded Firmware Training Program został opracowany w oparciu o wieloletnią wiedzę i doświadczenie w inżynierii oprogramowania wbudowanego.


coreboot for embedded linux developers

Program szkolenia

  • nowoczesna architektura x86
  • zasady tworzenia firmware’u na przykładach
  • proces bootowania, od włączenia zasilania do rozruchu systemu
  • przegląd coreboota
  • proces budowania firmware’u oparty na coreboot
  • schemat pracy developera coreboota
  • RTE (remote testing environment)
  • zasady działania i obsługi SPI flash
  • narzędzia do flashowania i debbugowania
  • warsztaty z pisania payloadów
  • FSP – od podstaw do integracji
  • podstawy bezpieczeństwa firmware’u w ekosystemie coreboota
  • MinnowBoard – warsztaty z wykorzystaniem nabytej wiedzy

Uczestnicy

Dla programistów obeznanych z Embedded Linux i budowaniem BSP oraz maintainerów platform wspieranych przez coreboota.

Czas szkolenia

5 dni
40 godzin (8h dziennie)
70% wykładów
30% warsztatów

Materiały

Wszystkie materiały szkoleniowe i kod źródłowy będą dostępne dla klientów do użytku wewnętrznego

Język

Angielski


Building and Development of Embedded Linux Systems

Program szkolenia

  • Omówienie rozwoju open source
  • Krótka historia Linuksa
  • Wprowadzenie do jądra Linuksa
  • Wykorzystanie Gita w zarządzaniu kodem źródłowym
  • Linuks w systemach wbudowanych (osadzonych). Wprowadzenie
  • Pobieranie kodu źródłowego jądra
  • Konfiguracja i kompilacja jądra Linuksa
  • Cross development
  • Moduły jądra Linuks
  • Sterowniki urządzeń znakowych
  • Debugowanie jądra Linuks
  • Pliki Device Tree
  • Standardowe programy rozruchowe systemu Linuks
  • Wprowadzenie do systemów budowania
  • Budowa dedykowanego systemu linuks pod standardowy cel sprzętowy Narzędzia dedykowane systemom wbudowanym Linkusa
  • Rozwój i debugowanie aplikacji opartej na systemie wbudowanym dystrybucji Linuksa

Uczestnicy

Dla programistów, którzy chcą zapoznać się z programowaniem Embedded Linux i budowaniem BSP. Nie jest wymagane wcześniejsze doświadczenie w tej dziedzinie. Zalecana jest podstawowa obsługa pulpitu Linux (interfejs wiersza poleceń).

Czas szkolenia

4 dni
32 godzin (8h dziennie)
50% wykładów
50% warsztatów

Materiały

Wszystkie materiały szkoleniowe i kod źródłowy będą dostępne dla klientów do użytku wewnętrznego

Język

Angielski


Yocto Project development

Program szkolenia

  • Omówienie architektury systemów wbudowanych dystrybucji Linux
  • Przegląd projektu Yocto i ekosystemu OpenEmbedded
  • Wykorzystanie dokumentacji projektu Yocto
  • Utworzenie obrazu emulacji
  • Utworzenie obrazu dla płyty rozwojowej/deweloperskiej
  • Pakiety Board Support i metadane projektu Yocto
  • Dostosowywanie kompilacji z warstwami (layers) Yocto
  • Personalizacja obrazu
  • Rozszerzanie istniejących recept
  • Przegląd niektórych istniejących systemów kompilacji (Autotools, CMake, Meson)
  • Tworzenie dedykowanego przepisu
  • Tworzenie dedykowanego obrazu
  • Tworzenie dedykowanej konfiguracji urządzenia
  • Rozwój jądra Linux w projekcie Yocto
  • Przegląd dostępnych mechanizmów aktualizacji systemu
  • Wzmacnianie zabezpieczeń systemowych
  • Zarządzanie pakietami Runtime
  • Rozwiązywanie problemów z kompilacją
  • Wykorzystanie SDK projektu Yocto
  • Wykorzystanie interfejsu internetowego Toaster
  • Praca z licencjami
  • Optymalizacja obrazu systemu

Uczestnicy

Programiści zapoznani z rozwijaniem systemów wbudowanych Linux i budowaniem BSP. Zalecane jest przejście naszego szkolenia z zakresu budowy i rozwoju systemów Linux.

Czas szkolenia

4 dni
32 godzin (8h dziennie)
40% wykładów
60% warsztatów

Materiały

Wszystkie materiały szkoleniowe i kod źródłowy będą dostępne dla klientów do użytku wewnętrznego

Język

Angielski


UEFI offensive security

Program szkolenia

  • nowoczesna architektura x86
  • proces bootowania, od włączenia zasilania do rozruchu systemu
  • zrozumienie zabezpieczeń Intela
  • atakowanie zabezpieczeń Intela
  • przegląd najpopularniejszych narzędzi detektywistycznych UEFI
  • znane ataki SMM – teoria i praktyka
  • TPM
  • Intel TXT i SGX
  • zmienne UEFI i ataki S3
  • ataki nie UEFI – poprzez WiFi/BT/3G/4G lub USB
  • FSP – od podstaw do integracji
  • DMA jako wektor ataku
  • aktualne słabe punkty w Lenovo i Dell

Uczestnicy

Wymagana minimalna znajomość Pythona.

Czas szkolenia

5 dni
40 godzin (8h dziennie)
70% wykładów
30% warsztatów

Materiały

Wszystkie materiały szkoleniowe i kod źródłowy będą dostępne dla klientów do użytku wewnętrznego

Język

Angielski


UEFI advanced concepts

Program szkolenia

  • Mechanizmy ochrony pamięci w UEFI
  • Praktyczne zastosowanie procesu bootowania, od włączenia zasilania do rozruchu systemu
  • Zmienne uwierzytelnione UEFI
  • Wirtualizacja w oprogramowaniu i jego przypadki użycia
  • Głębokie nurkowanie w trybie zarządzania systemem
  • Projekt SMI Transfer Monitor i praktyczne przypadki użycia
  • ACPI w UEFI
  • Przypadki użycia SecurityPkg i CryptoPkg

Uczestnicy

Programiści z bardzo dobrą znajomością Linuksa, C i Pythona. Wymagana jest dobra znajomość architektury systemów komputerowych. Preferowane uprzednie ukończenie podstawowego szkolenia UEFI 3mdeb lub podobnego.

Czas szkolenia

5 dni
40 godzin (8h dziennie)
50% wykładów
50% warsztatów

Materiały

Wszystkie materiały szkoleniowe i kod źródłowy będą dostępne dla klientów do użytku wewnętrznego

Język

Angielski


UEFI fundamentals

Program szkolenia

  • Przegląd specyfikacji UEFI i PI
  • Przepływ pracy programistycznej UEFI i interakcja sprzętowa
  • Infrastruktura kodu EDK2 i proces kompilacji
  • Szczegółowa analiza przepływu rozruchowego UEFI i PI
  • Praktyczne doświadczenie we wszystkich fazach rozruchu
  • Metody debugowania
  • Rozwój sterowników PEIM i DXE
  • Przegląd protokołów UEFI i praktyczne doświadczenie
  • SMM w teorii działania UEFI i ćwiczeniach praktycznych
  • Interfejsy ludzkie i konfiguracja sterowników
  • Manipulowanie procesem rozruchowym
  • Starsza integracja z systemem BIOS za pośrednictwem modułu wsparcia zgodności (CSM)

Uczestnicy

Programiści z podstawową wiedzą na temat budowy Linuksa, C i Pythona. Wymagana jest minimalna znajomość architektury systemów komputerowych.

Czas szkolenia

5 dni
40 godzin (8h dziennie)
50% wykładów
50% warsztatów

Materiały

Wszystkie materiały szkoleniowe i kod źródłowy będą dostępne dla klientów do użytku wewnętrznego

Język

Angielski


UEFI practical firmware development

Program szkolenia

  • Struktura i komponenty Tianocore
  • Głębokie nurkowanie w procesie budowania EDK2
  • FSP od podstaw do zaawansowanych koncepcji
  • Procedury integracji i budowy FSP
  • Nowa platforma umożliwiająca i przenosząca procedury
  • Infrastruktura debugowania EDK2
  • OVMF jako środowisko programistyczne
  • Środowisko zdalnego testowania 3mdeb
  • Testowanie zgodności UEFI
  • Walidacja bezpieczeństwa UEFI
  • Podpisywanie obrazu
  • Wykorzystanie powłoki UEFI

Uczestnicy

Programiści z bardzo dobrą znajomością Linuksa, C i Pythona. Wymagana jest dobra znajomość architektury systemów komputerowych. Zalecane wcześniejsze ukończenie podstawowego szkolenia UEFI 3mdeb lub podobnego.

Czas szkolenia

5 dni
40 godzin (8h dziennie)
30% wykładów
70% warsztatów

Materiały

Wszystkie materiały szkoleniowe i kod źródłowy będą dostępne dla klientów do użytku wewnętrznego

Język

Angielski

Language

English

Kontakt z nami

Jeśli masz jakieś pytania skontaktuj się z nami.