План на курса

Начало с вградено Rust

  • Обзор на no_std, core и екосистемата на вградено Rust
  • Избор на цел и разбиране на тройни цели
  • Настройка на rustup, cargo и целеви инструментални вериги

Инструменти, Създаване и отстраняване на грешки в процес

  • Използване на cargo, cargo-embed, probe-run и OpenOCD процес
  • Записване и отстраняване на грешки с хардуерни проби (ST-Link, JLink)
  • Разглеждане на CI при създаването на вградено Rust firmware

Абстракция на хардуера и достъп до периферни устройства

  • Разбиране на свойствата на embedded-hal и шаблоните на драйверите
  • Пакетни библиотеки за периферни устройства (PACs) и устройствени пакети (svd2rust)
  • Писане и използване на HAL драйвери и пакети с поддръжка на платки (BSCs)

Безопасност на паметта, съвместна работа и реално време

  • Безопасни шаблони за споделено състояние и променими референции в прекъсвания
  • RTIC и други модели за съвместна работа за системи в реално време
  • Хеп срещу стек, алокатори и избегване на динамично алокация

Отстраняване на грешки, тестване и надежност

  • Шаблони за отстраняване на грешки в ограничени среди
  • Единично тестване на хост срещу интеграционно тестване на хардуер
  • Анализ на грешки, логване и постмортемни стратегии

Производителност, енергия и оптимизация на ресурси

  • Бенчмарк, измерване и оптимизация на топови пътища
  • Техники за намаляване на кодов размер и скриптове за линкер
  • Стратегии за управление на енергията и дизайн патрони с ниска енергия

Разпространение, сигурност и най-добри практики на екосистемата

  • Сигурен старт, подписване на firmware и стратегии за обновяване
  • Разглеждане на цепочката за доставка и управление на зависимости
  • Пътна карта за преход от C firmware към Rust и общински ресурси

Резюме и следващи стъпки

Изисквания

  • Разбиране на основните концепции на Rust: собственост, заемане, продължителност
  • Опит в писане на нетривиални Rust програми (интермедиален Rust)
  • Запознатство с концепции за вградени системи: памет, управлявана от I/O, прекъсвания, периферия

Целева аудитория

  • Инженери на вградени фърмуери, които искат да приемат Rust
  • Софтуерни инженери с опит в Rust, прехождащи към ниско ниво системи
  • Технически ръководители, оценяващи Rust за разработка на вградени продукти
 14 часа

Брой участници


Цена за участник

Отзиви от потребители (5)

Предстоящи Курсове

Свързани Kатегории