Dziękujemy za wysłanie zapytania! Jeden z członków naszego zespołu skontaktuje się z Państwem wkrótce.
Dziękujemy za wysłanie rezerwacji! Jeden z członków naszego zespołu skontaktuje się z Państwem wkrótce.
Czas trwania 14 godzin
Plan Szkolenia
Wprowadzenie do Rusta w systemach wbudowanych
- Przegląd no_std, core i ekosystemu Rusta dla systemów wbudowanych
- Wybór platformy docelowej i zrozumienie trójek docelowych
- Konfiguracja rustup, cargo i łańcuchów narzędziowych dla platform docelowych
Narzędzia, budowanie i przepływ pracy debugowania
- Korzystanie z przepływów pracy cargo, cargo-embed, probe-run i OpenOCD
- Programowanie i debugowanie przy użyciu sond sprzętowych (ST-Link, JLink)
- Zagadnienia CI przy budowaniu oprogramowania układowego w Ruście
Abstrakcja sprzętowa i dostęp do urządzeń peryferyjnych
- Zrozumienie cech embedded-hal i wzorców sterowników
- Skrzynie dostępu do urządzeń peryferyjnych (PAC) i skrzynie urządzeń (svd2rust)
- Pisanie i używanie sterowników HAL oraz skrzyń wsparcia dla płytek (BSC)
Bezpieczeństwo pamięci, współbieżność i czas rzeczywisty
- Bezpieczne wzorce dla współdzielonego stanu i mutowalnych referencji w przerwaniach
- RTIC i inne modele współbieżności dla systemów czasu rzeczywistego
- Wykorzystanie sterty a stosu, alokatory i unikanie dynamicznej alokacji
Obsługa błędów, testowanie i niezawodność
- Wzorce obsługi błędów w środowiskach o ograniczonych zasobach
- Testy jednostkowe na hoście a testy integracyjne na sprzęcie
- Analiza usterek, logowanie i strategie analizy pośmiertnej
Wydajność, zużycie energii i optymalizacja zasobów
- Testowanie wydajności, pomiary i optymalizacja ścieżek krytycznych
- Techniki redukcji rozmiaru kodu i skrypty linkera
- Strategie zarządzania energią i wzorce projektowe niskiego poboru mocy
Wdrażanie, bezpieczeństwo i najlepsze praktyki ekosystemu
- Bezpieczny rozruch, podpisywanie oprogramowania układowego i strategie aktualizacji
- Zagadnienia łańcucha dostaw i zarządzanie zależnościami
- Plan migracji oprogramowania układowego z C do Rusta oraz zasoby społeczności
Podsumowanie i dalsze kroki
Wymagania
- Zrozumienie podstawowych pojęć Rusta: własność, pożyczanie, czasy życia
- Doświadczenie w pisaniu nietrywialnych programów w Ruście (poziom średnio zaawansowany)
- Znajomość zagadnień systemów wbudowanych: wejście/wyjście mapowane w pamięci, przerwania, urządzenia peryferyjne
Grupa docelowa
- Inżynierowie oprogramowania układowego chcący wdrożyć Rusta
- Inżynierowie oprogramowania z doświadczeniem w Ruście przechodzący do systemów niskopoziomowych
- Liderzy techniczni oceniający Rusta pod kątem rozwoju produktów wbudowanych
Opinie uczestników (1)
Możliwość zadawania pytań na temat zaawansowanych przedmiotów, nawet jeśli nie były one początkowo planowane.
Gabriel Chouinard - Spark Microsystems
Szkolenie - FreeRTOS: Programming for Real Time Operating Systems
Przetłumaczone przez sztuczną inteligencję