- •Обработка прерываний на уровне технических средств компьютера. Основные понятия и определения. Поддержка прерываний командами процессора.
- •Процесс обработки прерывания в системе с единственным прерыванием.
- •Программируемый контроллер прерываний.
- •Обработка нескольких прерываний с использованием внешнего контроллера прерываний. Фрагмент кода обслуживания на псевдоассемблере для 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
- •Обработка прерываний на уровне технических средств компьютера
- •Теоретические основы операционных систем рв
- •Основы разработки встроенных систем
17. Псевдокод программы обслуживания стековой модели, описание функционирования.
Рассмотрим следующий псевдокод для системы частично реального времени^ написанный на Си и состоящий из простого бесконечного цикла ожидания и трех обработчиков прерываний. Каждый сохраняет контекст, используя стековую модель. Стартовые адреса обработчиков прерываний должны быть загружены по соответствующим адресам вектора прерывания во время инициализации. В противном случае, эта процедура должна быть выполнена во время компоновки (линковки) программного модуля с использованием редактора-компоновщика либо управляющего файла компоновщика.
void main(void)
/* инициализация системы, загрузка обработчиков прерываний */
{
init() ;
while(TRUE); /* бесконечный цикл ожидания */
}
void int1 (void) /* обработчик прерывания 1 */
{
save(context); /* сохранение контекста в стеке */
task1(); /* выполнение задачи 1 */
restore(context); /* восстановление контекста из стека*/
}
void int2(void) /* обработчик прерывания 2*/
{
save(context);task2(); /* сохранение контекста в стеке *//* выполнение задачи 2 */
restore(context); /* восстановление контекста из стека*/
}
void int3(void) /* обработчик прерывания 3
{
save(context);task3(); /* сохранение контекста в стеке */ /* выполнение задачи 3 */
restore(context); /*восстановление контекста из стека*/
}
Процедура save сохраняет содержимое некоторых регистров в области стека, а restore восстанавливает эти регистры из стека. На практике, save и restore должны иметь два аргумента: указатель на структуру, представляющую информацию контекста и указатель на стековую структуру данных. В случае структуры данных контекста, компилятор языка программирования должен обеспечить механизм извлечения текущего содержимого регистров общего назначения, программного счетчика (счетчика команд) и т.п.
18. Системы с вытесняющим приоритетом
Говорится, что высокоприоритетная задача вытесняет низкоприоритетную задачу, если она прерывает низкоприоритетную задачу. Системы, которые используют схемы вытеснения вместо циклического планирования (round-robin) или планирования первый-пришел-первый-обслужен, называются системами с вытесняющим приоритетом. Приоритеты, присвоенные каждому прерыванию, основаны на срочности (безотлагательности) выполнения задачи, связанной с прерыванием.
Прерывания с установленным приоритетом могут быть как с фиксированным (закрепленным) приоритетом, так и с динамическим приоритетом.
Системы с фиксированным приоритетом являются менее гибкими, поскольку приоритеты задач не могут быть изменены. Системы с динамическим приоритетом могут допускать настройку приоритета задач во время их выполнения, для обеспечения обработки изменяющихся требований к задачам.
На схемы с вытесняющим приоритетом отрицательно воздействуют более высокоприоритетные задачи со значительным потреблением ресурсов. Это может приводить к недостатку потребных ресурсов для низкоприоритетных задач. В этом случае говорится, что низкоприоритетные задачи сталкиваются с проблемой, называемой зависанием прогресса {starvation).
Отдельный класс управляемых прерываниями систем с фиксированной частотой вытеснения приоритета, называемых частотно-монотонными системами, включает системы реального времени, в которых приоритеты присвоены таким образом, что чем выше частота их выполнения, тем выше их приоритет.
Такая схема является обычной для встроенных приложений, особенно для систем авионики. Например, задача сбора данных акселерометра каждые 10 миллисекунд является наиболее приоритетной. Задача, которая осуществляет сбор данных от гироскопа и корректирует эти данные и данные акселерометра каждые 40 миллисекунд, имеет второй уровень приоритета- И, наконец, задача, которая обновляет дисплей летчика каждую секунду, имеет самый низкий приоритет.
19. Приоритетные/фоновые системы. Рисунок, пояснения.
Пояснения нету.((