Операционные системы
<<  Знакомство интерфейсом программы конструктор мультимедийных ОС реального времени QNX и интегрированный комплект разработчика QNX Momentics  >>
Разработка операционной системы жесткого режима реального масштаба
Разработка операционной системы жесткого режима реального масштаба
Требования к режиму реального времени
Требования к режиму реального времени
Выбор направления для создания ОС РВ
Выбор направления для создания ОС РВ
Постановка задачи
Постановка задачи
Методы и средства анализа временных характеристик
Методы и средства анализа временных характеристик
Ячейка MTST
Ячейка MTST
Измерение времени реакции на прерывание
Измерение времени реакции на прерывание
Измерение времени переключения задач
Измерение времени переключения задач
Анализ существующих реализаций ОС E90 в качестве систем реального
Анализ существующих реализаций ОС E90 в качестве систем реального
Проблемы
Проблемы
Механизмы планирования
Механизмы планирования
Отключения процессоров от обработки прерываний
Отключения процессоров от обработки прерываний
Миграция процессов
Миграция процессов
Отключение на процессоре выполнение задач к нему не привязанных
Отключение на процессоре выполнение задач к нему не привязанных
Обслуживание двух уровневого прерывания в «Эльбрус – 90 микро»
Обслуживание двух уровневого прерывания в «Эльбрус – 90 микро»
Реализована другая схема
Реализована другая схема
Классические этапы обработки прерывания
Классические этапы обработки прерывания
Причины возможных задержек при входе в прерывание
Причины возможных задержек при входе в прерывание
Выбор режима обработки прерываний
Выбор режима обработки прерываний
Прерывание высокого уровня
Прерывание высокого уровня
Доработка драйверов
Доработка драйверов
Работа с памятью
Работа с памятью
Экспериментальные результаты
Экспериментальные результаты
Новое ядро
Новое ядро
Новое ядро
Новое ядро
Результаты
Результаты
Q&A
Q&A

Презентация на тему: «Разработка операционной системы жесткого режима реального масштаба времени на базе ОС Solaris (E90) для ВК Эльбрус-90микро». Автор: . Файл: «Разработка операционной системы жесткого режима реального масштаба времени на базе ОС Solaris (E90) для ВК Эльбрус-90микро.ppt». Размер zip-архива: 323 КБ.

Разработка операционной системы жесткого режима реального масштаба времени на базе ОС Solaris (E90) для ВК Эльбрус-90микро

содержание презентации «Разработка операционной системы жесткого режима реального масштаба времени на базе ОС Solaris (E90) для ВК Эльбрус-90микро.ppt»
СлайдТекст
1 Разработка операционной системы жесткого режима реального масштаба

Разработка операционной системы жесткого режима реального масштаба

времени на базе ОС Solaris (E90) для ВК Эльбрус-90микро

Денис Федотов, 218 группа

Научный руководитель: Тухватуллин Гумер Мингатович

Москва 2008

Московский Физико-Технический Институт (государственный университет)

2 Требования к режиму реального времени

Требования к режиму реального времени

Время входа в процедуру прерывания не более 20 микросекунд. Время переключения процесса из процедуры прерывания на другой процесс не должна превышать 100 микросекунд. Время передачи управления не должна превышать 300 микросекунд. Вся деятельность системы должна быть основана на приоритетном планировании всех процессов, обработчиков внешних прерываний и семафорной синхронизации с возможностью управления приоритетами из ФПО. Должна быть предоставлена возможность резидентации ресурсов ВК: резидентация оперативной памяти. назначение одного или нескольких процессоров для исполнения конкретного процесса.

3 Выбор направления для создания ОС РВ

Выбор направления для создания ОС РВ

МСВС – нет поддержки режима РМВ. Solaris 2.5.1 – поддержка МРРМВ. VxWorks – не поддерживает многопроцессорные симметричные системы, вся работа в контексте ядра. Linux – плохая система синхронизации и обработки прерываний. Система МРРВ. LynxOS – дорого стоит. Необходимость портировать на новую архитектуру.

4 Постановка задачи

Постановка задачи

Разработка метода анализа временных характеристик операционной системы. Анализ существующих реализаций ОС E90 в качестве систем реального маштаба времени. Разработка компонентов жесткого режима РМВ ОС E90 на основе произведенного анализа для достижения заданных характеристик. Анализ характеристик полученной системы.

5 Методы и средства анализа временных характеристик

Методы и средства анализа временных характеристик

Специализированная ячейка mtst. Набор тестовых программ. Трассировка ОС. Процессорный JTAG. Логический анализатор.

6 Ячейка MTST

Ячейка MTST

Генератор SBus прерываний. Счетчик времени с точностью до 40 наносекунд. Позволяет полностью замерить все временные характеристики от момента генерации прерывания до момента выхода на пользователя.

7 Измерение времени реакции на прерывание

Измерение времени реакции на прерывание

8 Измерение времени переключения задач

Измерение времени переключения задач

9 Анализ существующих реализаций ОС E90 в качестве систем реального

Анализ существующих реализаций ОС E90 в качестве систем реального

времени

Время входа в процедуру прерывания: 245 микросекунд. Время переключения процесса из процедуры прерывания на другой процесс: 3721 микросекунд. Время передачи управления: 3756 микросекунд. Время переключения процессов: 367 микросекунд.

10 Проблемы

Проблемы

Неправильная, для ОС жесткого режима РМВ, работа планировщика. Нет возможности отключения процессоров от обработки прерываний. Нет возможности отключить миграцию процессов. Нет возможности отключить на любом процессоре выполнение задач к нему не привязанных. Нет возможности привязывать процессы к процессорам. Нет возможности генерировать прерывания на заданном процессоре. Нет выбора режимов обработки прерываний. Длительная работа прерывания clock, блокирующая работу на ЦП.

11 Механизмы планирования

Механизмы планирования

Существуют очереди готовых к исполнению РТ процессов для каждого процессора и одна общая очередь процессов для исполнения на любом процессоре. Только система реального времени может привязать какой-то поток управления (thread) к определенному процессу. Только ФПО имеет право перемещать привязанные потоки управления с одного процессора на другой. Вся работа подчиняется правилам абсолютных приоритетов.

12 Отключения процессоров от обработки прерываний

Отключения процессоров от обработки прерываний

Строго необходимо. Так как это позволяет гарантировать время переключения, и непрерывность работы задачи ФПО. Все прерывания обрабатывает 1 или 2 процессора.

13 Миграция процессов

Миграция процессов

Миграция процессов может внести дополнительную задержку. Процессы ФПО должны быть привязаны к процессорам.

Idle User FP

14 Отключение на процессоре выполнение задач к нему не привязанных

Отключение на процессоре выполнение задач к нему не привязанных

Необходимо если существует поток или набор потоков задачи ФПО, для которых времена отклика наиболее критично. Позволяет ограничить круг задач исполняемых на данном процессоре.

15 Обслуживание двух уровневого прерывания в «Эльбрус – 90 микро»

Обслуживание двух уровневого прерывания в «Эльбрус – 90 микро»

В операционную систему приходит заявка на обработку прерывания высокого уровня. Это прерывание обрабатывается на любом процессоре, на котором разрешена обработка прерываний. Обработчик прерывания высокого уровня генерирует софтверное прерывание низкого уровня (1 или 4 уровня по MBus). Обработчик нижнего уровня запускается на любом процессоре, на котором разрешена обработка прерываний. И если он запустился не на том процессоре, на котором ожидает ФПО, а так и будет в силу того, что на нем отключена обработка внешних прерываний, то он посылает внутреннее прерывание 14 уровня чтобы запустить планировщик. Планировщик запускает на исполнение задачу ФПО, если нет ничего более приоритетного.

16 Реализована другая схема

Реализована другая схема

В операционную систему приходит заявка на обработку прерывания высокого уровня. Это прерывание обрабатывается на любом процессоре, на котором разрешена обработка прерываний. Обработчик прерывания высокого уровня генерирует софтверное прерывание низкого уровня (1,4,6,7,8 или 9 уровень по MBus). Обработчик нижнего уровня запускается на процессоре, на котором ФПО ждет приход этого прерывания. Запускается планировщик, который ставит задачу ФПО на исполнение.

17 Классические этапы обработки прерывания

Классические этапы обработки прерывания

Т1 – время прихода прерывания в процессор. Т2 – время входа в ОС. Т3 – время входа в системный обработчик прерывания (процедура драйвера) для исполнения TopHalf . Т4 – окончание TopHalf. T5 – Начало BottomHalf. Т6 – окончание BottomHalf и активизация процесса ФПО (постановка процесса в очередь готовых к исполнению процессов). Т7 – начало работы планировщика для переключения процессора на процесс ФПО. Т8 – начало работы ФПО процесса для реакции на прерывание.

18 Причины возможных задержек при входе в прерывание

Причины возможных задержек при входе в прерывание

Т1-Т2 – задержка входа в ОС. Т2-Т3 – Это время работы ядра ОС. Т3-Т4 – время исполнения TopHalf. T4 – Т5 – задержка начала исполнения BottomHalf. T5-Т6 – время работы BottomHalf. Т6-Т7 – время задержки до начала работы планировщика. Т7-Т8. Время работы планировщика процессов.

19 Выбор режима обработки прерываний

Выбор режима обработки прерываний

Уровни

Обработчики

1. Последовательная 2. Оптимальная 3. Честная

1

2

3

14

15

20 Прерывание высокого уровня

Прерывание высокого уровня

Работа clock до 400 микросекунд. Решение Разбить на 2 части. Первая часть обрабатывается на том процессоре на который она придет. Вторая часть: Как отдельный thread с системным приоритетом. Как прерывание низкого уровня, на отдельно выделенном для этого процессоре, не обрабатывающем другие прерывания.

Длительная работа прерывания clock

21 Доработка драйверов

Доработка драйверов

Оптимизация работы драйверов. Доработка драйверов с учетом новых возможностей ядра.

22 Работа с памятью

Работа с памятью

выравнивать адреса по началу страницы памяти. регулировать размер структур таким образом, чтобы размер структуры был кратен длине страницы (4096 Байт).

23 Экспериментальные результаты

Экспериментальные результаты

Новое ядро

Старое ядро

25

47

27

95

28

367

Время переключения процессов

Время переключения процессов

Время переключения процессов

Минимум

В среднем

Максимум

24 Новое ядро

Новое ядро

Старое ядро

Время входа в процедуру прерывания

Время входа в процедуру прерывания

Время входа в процедуру прерывания

В среднем

11

23

Максимум

17

245

Время в прерывании

Время в прерывании

Время в прерывании

В среднем

18

38

Максимум

32

345

Время от прерывания до poll

Время от прерывания до poll

Время от прерывания до poll

В среднем

37

66

Максимум

57

3721

Время от poll до пользователя

Время от poll до пользователя

Время от poll до пользователя

В среднем

10

30

Максимум

12

45

25 Новое ядро

Новое ядро

Старое ядро

Итоговое время время переключения процесса из процедуры прерывания на другой процесс

Итоговое время время переключения процесса из процедуры прерывания на другой процесс

Итоговое время время переключения процесса из процедуры прерывания на другой процесс

48

95

62

3756

В среднем

Максимум

26 Результаты

Результаты

Реализовано и внедрено в программное обеспечение ВК «Эльбрус-90микро» новое ядро удовлетворяющее требованиям поставленной задачи и обеспечивающее эффективное время переключения процессов и обработки прерываний.

27 Q&A

Q&A

«Разработка операционной системы жесткого режима реального масштаба времени на базе ОС Solaris (E90) для ВК Эльбрус-90микро»
http://900igr.net/prezentacija/informatika/razrabotka-operatsionnoj-sistemy-zhestkogo-rezhima-realnogo-masshtaba-vremeni-na-baze-os-solaris-e90-dlja-vk-elbrus-90mikro-90768.html
cсылка на страницу
Урок

Информатика

130 тем
Слайды
900igr.net > Презентации по информатике > Операционные системы > Разработка операционной системы жесткого режима реального масштаба времени на базе ОС Solaris (E90) для ВК Эльбрус-90микро