Merci d'avoir envoyé votre demande ! Un membre de notre équipe vous contactera sous peu.
Merci d'avoir envoyé votre réservation ! Un membre de notre équipe vous contactera sous peu.
Plan du cours
Démarrage avec Rust embarqué
- Aperçu de l'écosystème Rust embarqué, no_std et core
- Choix de la cible et compréhension des triplets de cible
- Configuration de rustup, cargo et des chaînes d'outils de cible
Outils, flux de compilation et de débogage
- Utilisation des flux de travail cargo, cargo-embed, probe-run et OpenOCD
- Flashez et déboguez avec des sondes matérielles (ST-Link, JLink)
- Considérations CI pour la construction du micrologiciel Rust embarqué
Abstraction du matériel et accès aux périphériques
- Compréhension des traits embedded-hal et des motifs de pilote
- Crates d'accès aux périphériques (PAC) et crates de dispositifs (svd2rust)
- Écriture et utilisation des pilotes HAL et des crates de support de carte (BSC)
Sûreté de la mémoire, concurrence et temps réel
- Modèles sûrs pour les états partagés et les références mutables dans les interruptions
- RTIC et autres modèles de concurrence pour les systèmes temps réel
- Utilisation de la pile vs tas, allocateurs et évitement de l'allocation dynamique
Gestion des erreurs, tests et fiabilité
- Modèles de gestion des erreurs dans les environnements contraints
- Tests unitaires sur l'hôte vs tests d'intégration sur le matériel
- Analyse des défauts, journalisation et stratégies post-mortem
Performance, consommation et optimisation des ressources
- Évaluation des performances, mesure et optimisation des chemins critiques
- Techniques de réduction de la taille du code et scripts d'éditeur de liens
- Stratégies de gestion de l'alimentation et motifs de conception basse consommation
Déploiement, sécurité et meilleures pratiques de l'écosystème
- Démarrage sécurisé, signature du micrologiciel et stratégies de mise à jour
- Considérations sur la chaîne d'approvisionnement et gestion des dépendances
- Feuille de route pour la migration du micrologiciel C vers Rust et ressources communautaires
Résumé et prochaines étapes
Pré requis
- Compréhension des concepts fondamentaux de Rust : propriété, emprunt, durée de vie
- Expérience dans l'écriture de programmes Rust non trivial (Rust intermédiaire)
- Connaissance des concepts embarqués : E/S mappées en mémoire, interruptions, périphériques
Public cible
- Ingénieurs en micrologiciel embarqué souhaitant adopter Rust
- Ingénieurs logiciels avec de l'expérience en Rust qui souhaitent passer aux systèmes bas niveau
- Chefs techniques évaluant Rust pour le développement de produits embarqués
14 Heures
Nos clients témoignent (1)
Pouvoir demander des sujets avancés même s'ils n'étaient pas prévus initialement.
Gabriel Chouinard - Spark Microsystems
Formation - FreeRTOS: Programming for Real Time Operating Systems
Traduction automatique