Программа интенсива
Тема 1. Linux Kernel
Принципы разработки ядра:
•Жизненный цикл Linux Kernel
•Подготовка патчей к публикации
•Best practices работы с Linux Kernel Community
•Опционально: модуль ядра + LAB: пример сборки
Тема 2. Исходный код
Работа с исходным кодом мобильных и встраиваемых ОС
•Системы сборки (Ninja, Autotools, CMake)
•Структура хранения сборников в ОС:
• Yocto: LAB: Пример сборки образов, добавления рецепта для пользовательского приложения (с Makefile и CMake), рецепта для модуля ядра
• Buildroot
• AOSP
Тема 3. Kernel Configuration
Сборка ядра, окружение, адаптация под платформу
•Работа с kconfig & defconfig
•Типы образов ядра
•LAB: добавление своего модуля с запуском в qemu
•Работа с cmdline: все варианты генерации, основные параметры
Тема 4. Загрузка ОС
Брингап платформы
•Типы запуска и загрузки, nfs, tftpboot; LAB: сборка uboot и загрузка в qemu, по сети
•Передача управления в userspace, initd, system; LAB: добавление systemd сервиса
•LAB: основы отладки kgdb, earlyprintk, dynamic debugfs
Тема 5. Безопасность и уязвимости
Необходимые условия для аттестации ОС
•Основные типы уязвимостей
•Источники данных о CVE
•Верификация, SBOM
•Поиск и исправление уязвимостей. LAB: Сканер уязвимостей
Продолжительность: 2 дня
Программа тренинга
Тема 1. Ядро Linux. Модули ядра. Символьный драйвер
Тема 2. Процесс загрузки
Тема 3. Отладка компонентов ядра
Тема 4. Модель драйверов. Device Tree. PCI. Ввод-вывод. Прерывания
•PCI драйвер. Связь PCI-драйвера с моделью драйверов Linux.
• Обработка прерываний в Linux.
Тема 5. Параллельное выполнение и методы синхронизации
Тема 6. Работа с устройства ввода-вывода GPIO. SPI. I2C
•Подсистема GPIO. Шина SPI. Шина I2C.
Тема 7. Блочные устройства
Тема 8. USB-подсистема
Тема 9. Графическая и сетевая подсистемы
Продолжительность: 5 дней
Программа тренинга
Тема 1. Обзор архитектуры AOSP
Тема 2. Работа с загрузчиками
Тема 3. Особенности ядра Linux для AOSP
Тема 4. Жизненный цикл дистрибутива
Тема 5. Разработка системного ПО. Процесс загрузки и отладки. Оптимизация времени загрузки, мультимедиа, сетевой стек.
Тема 6. Безопасность и уязвимости
Продолжительность: 3 дня
Программа тренинга
Продолжительность: 2 дня
Программа тренинга
1. Обзор функций CI/CD pipeline для встраеваемых системПродолжительность: 2 дня
Программа тренинга
1. Обзор 4diac и ForteПродолжительность: 2 дня
Программа тренинга
1. Программа скоро появитсяПродолжительность: 2 дня
Обучение проводится в Центре Программных Разработок РТСофт по адресу ул. Верхняя Первомайская, стр. 51, Москва, 105264