
- •1.Система реального времени (срв). Определение. Основные виды событийных воздействий. Временные параметры задачи.
- •2.Различие систем мягкого и жесткого реального времени. Встроенная система. Области применения осрв.
- •3.Процесс разработки программных модулей (написание кода – компиляция – компоновка – запуск. Программные секции в исполняемом файле.
- •4. Реализация срв без использования ос. Машины состояний.
- •5.Операционные системы реального времени (осрв). Определение, история возникновения, отличия от ос общего назначения.
- •6. Обзор осрв. Стоимость, доступность, набор компонентов,…..
- •7. Основные компоненты ядра ос. Многозадачность. Понятие монолитного ядра и микроядра.
- •8. Состав монолитного ядра ос.
- •9. Состав микроядра ос.
- •10. Планировщик: задача, основные составляющие блока контроля задачи(tcb). Алгоритм планирования Round Robin.
- •11. Планировщик: задача, основные составляющие блока контроля задачи(tcb). Алгоритм планирования вытесняющей многозадачности.
- •12.Планировщик: задача, основные составляющие блока контроля задачи(tcb). Алгоритм планирования fifo
- •13. Контекст задачи. Процесс переключения контекста.
- •14. Задача. Машина состояния задачи, особенности перехода из состояния в состояние.
- •15. Бинарный семафор. Назначение, составляющие блока контроля (scb), машина состояний, пример использования. Особенности использования задания временных параметров на захват занятого семафора.
- •16. Семафор-счетчик. Назначение, составляющие блока контроля (scb), машина состояний, пример использования. Особенности использования задания временных параметров на захват занятого семафора.
- •17. Mutex. Назначение, составляющие блока контроля (scb), машина состояний, пример использования. Особенности использования задания временных параметров на захват занятого muteх.
- •19. Прерывания, общая схема обработки прерываний.
- •20.Прерывания, схема обработки мультиплексированных (разделяемых) прерываний.
- •21. Прерывания, схема обработки вытесняемых прерываний.
- •22.Прерывания, схема обработки прямых и отложенных обработчиков прерываний.
- •23. Время. Основные понятия и характеристики. Необходимость точного измерения и четкой синхронизации для срв. Системный таймер. Часы реального времени.
- •24.Время. Сторожевой таймер. Gps. Ntp.
- •25. Система ввода-вывода. Символьные и блочные типы устройств. Драйвера. Общая структура драйвера. Точки входа, принцип инициализации и работы.
- •26. Таблица драйверов и таблица устройств. Принцип работы и назначение функции ioctl.
- •27. Программные циклы, используемые при проектировании срв. Этап моделирования. Совместный аппаратно-программный цикл разработки.
10. Планировщик: задача, основные составляющие блока контроля задачи(tcb). Алгоритм планирования Round Robin.
Как правило, вся важная, с точки зрения операционной системы, информация о задаче хранится в унифицированной структуре данных управляющем блоке (Task Control Block, TCB). В блоке хранятся такие параметры, как имя и номер задачи, верхняя и нижняя границы стека, ссылка на очередь сообщений, статус задачи, приоритет и т. п.
Round-robin (от англ. round-robin — циклический) — алгоритм распределения нагрузки распределённой вычислительной системы методом перебора и упорядочения её элементов по круговому циклу.
Процессы выстраиваются в очереди готовых процессов в виде карусели. Карусель вращается так, что рядом с процессором находится каждый процесс небольшой квант времени(10-100 млсек). Пока процесс находится рядом с процессором, он получает его в свое распоряжение и может выполняться. Планировщик выбирает для очередного исполнения процесс, расположенный в начале очереди и устанавливает таймер для генерации прерывания по истечению определенного кванта времени. При выполнении процесса возможны 2 варианта:
- время непрерывного использования процессора необходимое процессу <= продолжительности кванта времени. Тогда процесс по своей воле освобождает процессор, на исполнение поступает новый процесс из начала очереди, таймер начинает отчет времени заново;
- продолжительность остатка текущего времени процесса > кванта времени. Тогда по истечении этого кванта процесс прерывается таймером и помещается в конец очереди готовых к исполнению, а процессор выделяется для использования процессу, находящемуся в начале очереди.
11. Планировщик: задача, основные составляющие блока контроля задачи(tcb). Алгоритм планирования вытесняющей многозадачности.
Как правило, вся важная, с точки зрения операционной системы, информация о задаче хранится в унифицированной структуре данных управляющем блоке (Task Control Block, TCB). В блоке хранятся такие параметры, как имя и номер задачи, верхняя и нижняя границы стека, ссылка на очередь сообщений, статус задачи, приоритет и т. п.
Каждому процессу присваивается определенное числовое значение – приоритет, в соответствии с кот ему выделяется процессор. Процессы с одинаковыми приоритетами планируются в порядке FIFO. Процесс с более высоким приоритетом, появившийся в очереди готовых процессов вытесняет исполняющийся процесс с более низким приоритетом.
Preemptive multitasking - вытесняющая многозадачность - это такой способ, при котором решение о переключении процессора с выполнения одного процесса на выполнение другого процесса принимается планировщиком операционной системы, а не самой активной задачей.
При вытесняющей многозадачности механизм планирования задач целиком сосредоточен в операционной системе, и программист пишет свое приложение, не заботясь о том, что оно будет выполняться параллельно с другими задачами. При этом операционная система выполняет следующие функции: определяет момент снятия с выполнения активной задачи, запоминает ее контекст, выбирает из очереди готовых задач следующую и запускает ее на выполнение, загружая ее контекст.