Bedankt voor uw aanvraag! Een van onze medewerkers neemt binnenkort contact met u op
Bedankt voor uw boeking! Een van onze medewerkers neemt binnenkort contact met u op.
Duur 14 uren
Cursusaanbod
Starten met ingebouwde Rust
- Overzicht van no_std, core en het ecosysteem van ingebouwde Rust
- Kiezen van een target en het begrijpen van target triples
- Installeren en configureren van rustup, cargo en target toolchains
Tooling, bouw- en debugproces
- Gebruik maken van cargo, cargo-embed, probe-run en OpenOCD-workflows
- Firmware flashen en debuggen met hardware probes (ST-Link, JLink)
- Overwegingen voor CI/CD bij het bouwen van ingebouwde Rust-firmware
Hardware-abstractie en randapparatuurtoegang
- embedded-hal traits en driverpatronen begrijpen
- Randapparatuur-toegangs-crate (PACs) en device crates (svd2rust)
- Hal-drivers en boardsupport-crate (BSCs) schrijven en gebruiken
Geheugerveiligheid, concurrentie en real-time
- Veilige patronen voor gedeelde staat en muteerbare referenties in onderbrekingen
- RTIC en andere concurrentiemodellen voor real-time systemen
- Gebruik van heap vs. stack, allocatoren en het vermijden van dynamische allocatie
Foutafhandeling, testen en betrouwbaarheid
- Foutafhandeling in beperkte omgevingen
- Unit tests op de host vs. integratietests op de hardware
- Foutanalyse, logging en post-mortem strategieën
Prestaties, energie en optimalisatie van resources
- Benchmarken, meten en optimaliseren van kritieke paden (hot paths)
- Technieken voor het verkleinen van code-omvang en linker-scripts
- Strategieën voor energiebeheer en ontwerp patronen voor laagverbruik
Implementatie, beveiliging en beste praktijken in het ecosysteem
- Secure boot, firmware-ondertekening en update-strategieën
- Overwegingen voor de keten van toelevering en afhankelijkheidsbeheer
- Roadmap voor de migratie van C-firmware naar Rust en community-resources
Samenvatting en verdere stappen
Vereisten
- Een begrip van de kernconcepten van Rust: ownership (eigendom), borrowing (lening) en lifetimes (levensduur).
- Ervaring met het schrijven van niet-triviale Rust-programma's (intermediaire niveau).
- Bekendheid met concepten voor ingebouwde systemen: memory-mapped I/O, onderbrekingen (interrupts) en randapparatuur (peripherals).
Publiek
- Ontwikkelaars van ingebouwde firmware die overstappen naar Rust.
- Softwareontwikkelaars met ervaring in Rust die overstappen naar low-level systemen.
- Technische leiders die Rust overwegen voor de ontwikkeling van ingebouwde producten.
Getuigenissen (1)
In staat zijn om gevraagd te hebben naar geavanceerde onderwerpen, zelfs als deze aanvankelijk niet waren gepland.
Gabriel Chouinard - Spark Microsystems
Cursus - FreeRTOS: Programming for Real Time Operating Systems
Automatisch vertaald