Системы реального времени Лекция 2: Стандарты и расширения. Алгоритмы реального времени.

Презентация:



Advertisements
Похожие презентации
Системы реального времени Лекция 4: процессы. Понятие процесса Процесс - фундаментальное понятие любой операционной системы С помощью процессов происходит.
Advertisements

Структуры и алгоритмы компьютерной обработки данных Петухин Вячеслав Алексеевич 1 семестр, 17 часов лекций, 17 часов лабораторных.
Системы реального времени Лекция 1: вводная. Понятие реального времени Работа в реальном времени подразумевает возможность обработки событий так, чтобы.
Троицкий Д.И. Лингвистическое и программное обеспечение САПР 1 Классификация грамматик и языков Лекция 9 Кафедра «Автоматизированные станочные системы»
1 ТОМСКИЙ ПОЛИТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ (ТПУ) КАФЕДРА ПРИКЛАДНОЙ МАТЕМАТИКИ (ПМ) ИНФОРМАТИКА Лектор: к.т.н., доцент кафедры ПМ, Зимин Вячеслав Прокопьевич.
СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИ Real-time operating system.
Классификация задач по классам сложности Классификация задач по классам сложности – (P-сложные, NP-сложные, экспоненциально сложные и др.).P-сложныеNP-сложные.
Разработка библиотеки нитей POSIX реального времени Магистерская диссертация Студент: Фёдоров Александр, 418 гр. Научный руководитель: Гилязов С.С.
Анализ вычислительной сложности алгоритмов Теория сложности вычислений.
Лекция 6 Понятие операционных систем Учебные вопросы: 1. Характеристики ОС 2. Свободные и проприетарные ОС.
АЛГОРИТМЫ И СТРУКТУРЫ ДАННЫХ АЛГОРИТМЫ И СТРУКТУРЫ ДАННЫХ Лекции для студентов-заочников 2 курса, специальность (Прикладная информатика)
Понятие сложности алгоритма Для практики недостаточно знать, что задача алгоритмически разрешима. Т. к. ресурсы ЭВМ (ОП и время процессора) ограничены,
1. Теоретические основы операционных систем (планирование заданий и использования процессора, обеспечение программ средствами коммуникации и синхронизации,
Разработка пользовательских интерфейсов Выполнил: Бредихин Юрий Вячеславович студент 3 курса, 31-И группы Старый Оскол, 2015.
Операционные системы Проект ученика 8 А класса Юрченко Василия.
1 Сложность, сортировка, поиск Работа по дисциплине «Алгоритмы и структуры данных» Выполнена Садукевич А.В., 271ПИ.
Анализ трудоёмкости алгоритмов Анализ трудоёмкости алгоритмов позволяет найти оптимальный алгоритм для решения данной задачи. трудоемкость алгоритма количество.
Лекция 5 Спектральный анализ непериодических сигналов Между сигналом и его спектральной плотностью существует однозначное соответствие. Для практических.
Информационный маркетинг Лекция 5 Основы формирования спроса и предложения на рынке ИПУ. Оценка конкурентоспособности ИПУ.
Системы реального времени Лекция 5: взаимодействие процессов.
Транксрипт:

Системы реального времени Лекция 2: Стандарты и расширения. Алгоритмы реального времени.

ОСРВ и обычные ОС: различия В ОСРВ делается горазд больший упор на организацию работы процессов в системе (более развитая система приоритетов, средства межпроцессного взаимодействия, синхронизации и т. п.)

ОСРВ и ВОС очень много… …наиболее распространенные: VxWorks, QNX, RTEMS, eCos, threadX, различные варианты embedded Linux (uClinux, LynxOS, HardHat, busybox)… И у каждой из них свои средства реализации многозадачности, синхронизации, межпроцессного взаимодействия…

Все они должны следовать некоему стандарту Чтобы обеспечить переносимость хотя бы программ высокого уровня для различных ОСРВ, ОСРВ должны следовать общему стандарту все распространенные ОСРВ следуют стандарту IEEE POSIX.1 (от Portable Operating System Interface) и (частично) расширению POSIX.1b (real-time extensions) Этот стандарт определяет все важнейшие параметры программного интерфейса операционной системы

Однако у каждой есть свои специальные средства …которые обычно являются расширением стандарта POSIX Стандарты не стоят на месте, и постепенно эти специальные средства также оказываются стандартизованными в том или ином виде Расширения стандарта POSIX.1 – POSIX.1a (POSIX core services, напр., fork()), POSIX.1b, POSIX.1c (thread extensions)

Характеристики времени выполнения алгоритма Для любого алгоритма есть две основные характеристики времени выполнения – среднее и максимальное время выполнения В обычных системах чаще всего оптимизируется среднее время выполнения алгоритма Для real-time алгоритмов важнее всего максимальное время выполнения

Максимальное время выполнения Важнейшим для ОСРВ является свойство алгоритма иметь конечное максимальное время выполнения Этим свойством обладают далеко не все алгоритмы Только такие алгоритмы могут использоваться в программном обеспечении систем реального времени

Временная сложность алгоритма основной параметр, характеризующий алгоритм; определяется как число шагов, выполняемых алгоритмом в худшем случае, обычно рассматривается как функция размера задачи, представленной входными данными Этот параметр не коррелирует с максимальным временем выполнения!

Временная сложность – от логарифмической до экспоненциальной Сложность: логарифмическая, линейная и полиномиальная, экспоненциальная… Пример 1: различные варианты сортировки списка (~n·log(n) vs ~n 2 ) Пример 2: поиск элемента в сбалансированному дереву (~sqrt(n)) Пример 3: поиск элемента в списке и хэш- таблице (~n) Пример 4: вычисление n! с помощью цикла (~n) и с помощью рекурсии (~ (n/e) n ).

NB: Реальное время выполнения Пусть у алгоритма А временная сложность больше, чем у алгоритма Б Не всегда и не при всех условиях реальное время выполнения у А выше, чем у Б… Пример: списки и хэш-таблицы vs деревья

NB: Реальное время выполнения - 2 …Поэтому в обычных программных системах часто используются теоретически более сложные, но в большинстве случаев более быстрые алгоритмы Но не в СРВ! – потому что для РВ важно максимальное время выполнения