Технологии программирования сложных систем

Цели и задачи дисциплины
Предмет дисциплины «Технологии программирования сложных систем» – процесс разработки сложных управляющих программ реального времени. Цель дисциплины «Технологии программирования сложных систем» – формирование и развитие общекультурных и профессиональных компетенций магистров для успешной профессиональной деятельности, связанной с разработкой, отладкой и внедрением управляющих приложений реального времени для сложных технических систем на базе ОСРВ, используя встраиваемую аппаратную платформу. Задачами изучения дисциплины «Технологии программирования сложных систем» являются: - Углубить понимание: особенностей ОСРВ, архитектуры микроядра, механизмов реального времени в ОСРВ. - Отработать навыки: разработки многопоточных приложений с жесткими временными ограничениями, управления ресурсами, межзадачного взаимодействия (IPC). - Освоить практику: взаимодействия с аппаратурой на уровне регистров периферии (GPIO, PWM, ADC, UART) и через драйверы устройств. - Научиться применять: инструменты разработки, отладки и анализа производительности. - Сформировать умение: проектировать архитектуру управляющего ПО для типовых задач в технических системах управления.
Краткое содержание дисциплины
Архитектура ОСРВ. Микроядро. Менеджеры ресурсов. Принципы реального времени: детерминизм, приоритеты, прерывания. Отличия от монолитных и модульных ОС (Linux). Обзор инструментария. Аппаратная платформа встраиваемой системы управления. Обзор процессора и периферии (GPIO, UART, PWM, ADC, SPI, I2C). Схемотехника важных выводов. Особенности запуска ОСРВ (образ BSP, загрузчик). Потоки (Threads) в ОСРВ: создание, атрибуты, приоритеты, планировщик. Синхронизация: мьютексы, условные переменные, семафоры, спинлоки. Критические секции, инверсия приоритетов. Межпроцессное взаимодействие (IPC): Сообщения (MsgSend/Receive/Reply/Pulse) - основа микроядерной архитектуры. Каналы. Именование. Сравнение с IPC в Linux. Работа с сигналами. Таймеры и временные характеристики. Таймеры. Часы. Анализ временных характеристик: измерение времени выполнения, джиттер. Принципы написания детерминированного кода. Доступ к аппаратуре. Модель "ресурс-менеджер-клиент". Стандартные менеджеры устройств (devc-*, io-*). Прямой доступ к памяти (DMA). Обработка прерываний. Сигналы в контексте аппаратуры. Программирование периферии аппаратной платформы. Администратор ресурсов. Работа с регистрами через разделяемую память. Работа с GPIO, ШИМ. Использование UART, АЦП. Протоколы I2C/SPI. Инструменты отладки и анализа ОСРВ. Системный логгер. Трассировка. Профилировщик. Анализ производительности и временных характеристик. Кросс-отладка. Принципы проектирования надежных систем реального времени.
Компетенции обучающегося, формируемые в результате освоения дисциплины
Выпускник должен обладать:
  • ПК-2 Способен осуществлять разработку информационных систем с использованием интеллектуального анализа данных
Вы нашли ошибку в тексте:
Просто нажмите кнопку «Сообщить об ошибке» — этого достаточно. Также вы можете добавить комментарий.