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.