- •Обработка прерываний на уровне технических средств компьютера. Основные понятия и определения. Поддержка прерываний командами процессора.
- •Процесс обработки прерывания в системе с единственным прерыванием.
- •Программируемый контроллер прерываний.
- •Обработка нескольких прерываний с использованием внешнего контроллера прерываний. Фрагмент кода обслуживания на псевдоассемблере для 2-х адресной архитектуры.
- •Срв. Некоторые определения в соответствии с Oxford Dictionary of Computing, Янгом и проектом pdcs.
- •Срв. Жесткие (hard), мягкие (soft) системы и системы квази-реального времени (firm).
- •Некоторые характерные области применения срв. Инерциальная система измерения параметров пространственного движения самолета.
- •Типы воздействий в срв. Обобщенная модель срв.
- •Типы воздействий в срв. Система управления процессами датчик/привод.
- •Некоторые характерные области применения срв. Связь дисциплины «срв» с другими инженерными дисциплинами.
- •5. Согласование устройств и цп с помощью прерываний. Контроллер единственного периферийного устройства. Рисунок, пояснение.
- •6. Согласование устройств и цп с помощью прерываний. Несколько контроллеров соединенные с цп через пкп (программируемый контроллер прерываний)
- •8. Теоретические основы операционных систем реального времени. Основные понятия и определения.
- •8. Операционные системы реального времени (ос рв). Роль ядер и псевдоядер в операционных системах.
- •9. Теоретические основы осрв
- •10. Процесс планирования
- •11. Характеристики задачи. Фактическая рабочая нагрузка.
- •12. Типичная модель задачи
- •13. Циклическое планирование. Смешанное планирование трех задач. Рисунок, пояснения.
- •14. Циклическая исполняющая система. Понятие кадра и основного цикла. Ограничения на размер кадра. Рисунок, пояснения.
- •15. Приоритетное фиксированное планирование с монотонной частотой. Основные результаты применения политики алгоритма монотонной частоты.
- •16. Основы разработки встроенных систем. Типовая среда разработки с использованием кросс- платформы. Рисунок, пояснения.
- •15. Системы, управляемые прерываниями. Программы обработки прерываний.
- •17. Псевдокод программы обслуживания стековой модели, описание функционирования.
- •18. Системы с вытесняющим приоритетом
- •20. Фоновая обработка. Программируемый сторожевой таймер (software watchdog timer).
- •21. Инициализация приоритетной/фоновой системы. Описание.
- •17. Обзор Компоновщиков и процесса компоновки. Создание файла образа для целевой системы. Рисунок, пояснения.
- •18. Таблица символов. Взаимосвязь между таблицей символов и таблицей перемещений (переадресации). Рисунок, пояснения.
- •19. Размещение исполняемых образов в памяти целевой встроенной системы. Командный файл компоновщика. Общее описание и примеры директив.
- •20. Упрощенная схема и карта памяти целевой системы. Листинги использования директив Memory и Section на примере карты памяти целевой системы.
- •21. Объеденение входных секций в исполняемом образе , пример (рисунок), код листинга примера.
- •22. Размещение исполняемого образа в памяти целевой системы. Рисунок, пояснение
- •23. Инициализация встроенной системы. Основные понятия и задачи.
- •24. Инструменты целевой системы и передача образа. Способы загрузки образа в целевую систему.
- •Прямой доступ к памяти (пдп/dma)
- •Ввод-вывод с использованием выделенной памяти
- •Побитное отображение устройств
- •26 Встроенный загрузчик
- •Вбудовані системи та системи реального часу
- •1::Введение. Основные концепции встроеных систем (вс) и систем реального времени (рв)::07.09.2010
- •2::Системы рального времени: некоторые определения, примеры и краткая история::14.09.2010
- •3::Операционные системы реального времени::21.09.2010
- •4::Системы управляемые прерываниями::28.09.2010
- •Обработка прерываний на уровне технических средств компьютера
- •Теоретические основы операционных систем рв
- •Основы разработки встроенных систем
20. Упрощенная схема и карта памяти целевой системы. Листинги использования директив Memory и Section на примере карты памяти целевой системы.
Рис.12.1. Упрощенная схема и карта памяти целевой системы
В примере, показанном на Рисунке 12.1, существуют адресные пространства трех физических блоков памяти:
- адресное пространство чипа ПЗУ (ROM), настроенное с нулевого адреса, размером в 32 байта,
- адресное пространство флеш-памяти (FLASH), настроенное с адреса 0x40, размером в 4,096 байт, и
- блок ОЗУ (RAM) объемом 65,536 байт, адреса которого начинаются с 0x10000.
Листинг 12.1 Карта памяти
MEMORY {
ROM: origin = OxOOOOh, length = 0x0020h
FLASH: origin = 0x0040h, length = OxlOOOh
RAM: origin = OxlOOOh, length = OxlOOOOh
}
Листинг 12.2 Директива SECTION.
SECTION {
output-section-name : { contents } > area-name
…
GROUP {
[ALIGN(expression)]
section-definition
} > area-name
…
}
21. Объеденение входных секций в исполняемом образе , пример (рисунок), код листинга примера.
Директива SECTION задает компоновщику следующую информацию: какие входные секции должны быть объединены, в какую выходную секцию; какие выходные секции должны быть сгруппированы вместе и размещены последовательно в памяти; где поместить каждую секцию; а также другую информацию. Общий формат директивы SECTION показан в Листинге 12.2.
Листинг 12.2 Директива SECTION.
SECTION {
output-section-name : { contents } > area-name
GROUP {
[ALIGN(expression)] section-definition
} > area-name }
22. Размещение исполняемого образа в памяти целевой системы. Рисунок, пояснение
Секция . rodata содержит параметры инициализации системы. Скорее всего, эти значения по умолчанию никогда не изменяются, следовательно, эту секцию можно разместить в ПЗУ.
Загрузчик - это обычно та часть программы, которая выполняется при загрузке. Поскольку код загрузчика может быть обновлен на более новые версии, которые различают больше форматов объектных файлов, секции loader и wflash размещены во флеш-памяти. Для обновления понадобится программатор флеш-памяти, который также может быть обновлен. Следовательно, секцию wflash тоже следует разместить во флеш-памяти.
Программист встроенной системы взаимодействует с монитором для получения данных о состоянии работы системы и облегчения отладки кода приложения; следовательно, монитор должен реагировать на команды пользователя. SDRAM быстрее DRAM, у нее меньшее время доступа. Поэтому секцию monitor следует разместить в RAMB0.
В RAMB0 по-прежнему достаточно места, чтобы разместить обе секции . sbss и . sdata. Стратегия размещения для этих двух секций - использовать оставшуюся память полностью.
Оставшиеся секции (.text, .bss и .data) размещаются в RAMB1, единственную память, в которой могут разместиться все эти большие секции.
23. Инициализация встроенной системы. Основные понятия и задачи.
Компоновщик выполняет разрешение символов и перемещение адресов символов в памяти.
• Программист встроенной системы должен понимать точную структуру памяти целевой системы, для которой ведется разработка.
• Целевой исполняемый образ состоит из нескольких программных секций.
• Программист может задать компоновщику параметры физической памяти, такие как ее размер и адреса размещений, используя командный файл компоновщика. Также используя командный файл компоновщика, программист может указать, каким образом объединять входные секции в выходные и как размещать в памяти выходные секции.
• Программная секция может размещаться в различных типах физической памяти, в зависимости от того, как эта секция используется. Код программы (или секция . text) может находиться в ПЗУ, флеш-памяти или ОЗУ во время выполнения. Данные программы (или .data section) должны находиться в ОЗУ во время выполнения.