МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ Саратовский государственный университет имени Н.Г. Чернышевского

advertisement
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ
РОССИЙСКОЙ ФЕДЕРАЦИИ
Саратовский государственный университет имени Н.Г. Чернышевского
факультет компьютерных наук и информационных технологий
УТВЕРЖДАЮ
___________________________
"__" __________________20__ г.
Рабочая программа дисциплины
Системы реального времени
Направление подготовки
010500 Математическое обеспечение и администрирование
информационных систем
Профиль подготовки
Параллельное программирование
Квалификация выпускника
Бакалавр
Форма обучения очная
Саратов,
2011
1. Цели освоения дисциплины
Целью дисциплины «Системы реального времени» является
формирование общекультурных и профессиональных компетенций в области
разработки и создания программного обеспечения систем реального времени.
Для достижения данной цели разработка приложений осуществляется в среде
графического программирования LabVIEW, позволяющей создавать за
короткие сроки программное обеспечение для автоматизированных систем
измерения и управления, а также осуществлять их моделирование.
Дисциплина «Системы реального времени» рассчитана на один семестр и
направлена на решение следующих задач:
 изучение особенностей архитектур операционных систем реального
времени;
 освоение аппаратно-программных средств LabVIEW для разработки и
создания приложений реального времени.
2. Место дисциплины в структуре ООП бакалавриата
Данная учебная дисциплина входит в раздел «Профессиональный цикл.
Вариативная часть» ФГОС-3.
Для изучения дисциплины необходимы компетенции, сформированные в
результате освоения дисциплин ООП подготовки бакалавра данного
направления «Архитектура вычислительных систем и компьютерных сетей»,
«Операционные системы и оболочки», «Технология разработки программного
обеспечения».
Дисциплина «Системы реального времени» формирует компетенции,
востребованные при выполнении выпускной квалификационной работы.
3. Компетенции обучающегося, формируемые в результате освоения
дисциплины
Данная
дисциплина
способствует
формированию
следующих
компетенций, предусмотренных ФГОС-3 по направлению подготовки ВПО
«010500 Математическое обеспечение и администрирование информационных
систем»:
1) общекультурные компетенции (ОК):
 способность применять знания на практике (ОК-5);
 базовые знания в различных областях (ОК-13);
2) профессиональные компетенции (ПК):
должен демонстрировать:
 определение общих форм, закономерностей, инструментальных средств для
данной дисциплины (ПК-1);
 умение понять поставленную задачу (ПК-2);
 умение формулировать результат (ПК-3);
2
 умение грамотно пользоваться языком предметной области (ПК-7);
 умение ориентироваться в постановках задач (ПК-8);
 знание проблемы и направления развития технологий программирования
(ПК-23);
 знание архитектуры, алгоритмов функционирования систем реального
времени и методы проектирования их программного обеспечения (ПК-30).
В результате освоения дисциплины обучающийся должен:
Знать:
 архитектуру операционных систем реального времени;
 алгоритмы функционирования систем, обеспечивающие требования
реального времени;
 методы проектирования операционных систем реального времени и
применяемые технологии программирования;
 характеристики и функции современных операционных систем
реального времени, проблемы и направления их развития.
Уметь:
 ориентироваться в постановках задач, решаемых с помощью систем
реального времени;
 применять на практике системные средства операционных систем при
разработке программ систем реального времени;
 определять оптимальные инструментальные средства разработки для
автоматизированных систем измерения, управления и сбора данных;
 формулировать выводы по результатам работы приложений,
предназначенных для сбора данных, измерения и управления.
Владеть:
 навыками разработки программного обеспечения для систем реального
времени в среде графического программирования LabVIEW компании
National Instruments;
 навыками работы с аппаратными средствами National Instruments,
предназначенными для создания систем управления реального
времени.
3
4. Структура и содержание дисциплины
Общая трудоемкость дисциплины составляет 3 зачетных единицы, 108 часов.
4.1. Структура дисциплины
Раздел дисциплины
1. Введение в системы
реального времени.
2. Концепция процессов в
системах реального
времени.
3. Управление процессами в
системах реального
времени.
4. Взаимодействие процессов
в системах реального
времени.
5. Методы и средства
межпотоковой и
межпроцессной
синхронизации.
6. Системные средства
управления прерываниями
вычислительного процесса
в СРВ.
7. Организация очередей в
системах реального
времени.
8. Управление памятью в
системах реального
времени.
9. Особенности отладки
программного
обеспечения в системах
реального времени.
10. Оценка эффективности
систем реального времени.
Промежуточная
аттестация
ИТОГО
Семестр
Неделя
семестра
№
п/п
Виды учебной
Формы текущего
работы, включая контроля успеваемости
самостоятельную (по неделям семестра)
работу студентов Формы промежуточной
и трудоемкость (в
аттестации (по
часах)
семестрам)
Лек. Практ. Сам.
2
2
4 Проверка практических
заданий.
2
2
4 Проверка практических
заданий.
8
1
8
2
8
3-4
4
4
4
Проверка
заданий.
практических
8
5-6
4
4
4
Проверка
заданий.
практических
8
7
2
2
8
Контрольная работа №1.
8
8
2
2
4
Проверка
заданий.
практических
8 9-11
6
6
4
Проверка
заданий.
практических
8
2
2
4
Проверка
заданий.
практических
8 13-14
4
4
4
Проверка
заданий.
практических
8
2
2
8
Контрольная работа №2.
12
15
Зачет
8
30
30
48
4
4.2. Содержание дисциплины
Раздел 1. Введение в системы реального времени.
1.1. Операционные системы реального времени.
Основные этапы развития информационно-управляющих систем реального
времени (СРВ) от монолитной к многослойной структуре и далее к архитектуре
клиент-сервер. Объектно-ориентированный подход к построению СРВ. Типы
СРВ. Классификация СРВ.
Раздел 2. Концепция процессов в системах реального времени.
2.1. Понятие процесса.
Основные состояния процесса, переход процесса из состояния в состояние.
Операции над процессами. Основные управляющие структуры данных.
Контекст процесса, переключение контекста.
2.2. Понятие потока.
Потоки (задачи) в контексте процесса. Переключение между потоками. Блок
управления потоком.
Раздел 3. Управление процессами в системах реального времени.
3.1. Понятие об управлении процессами.
Статические алгоритмы планирования (RMS – Rate Monotonic Algorithm) и
динамические алгоритмы планирования (EDF – Earliest Deadline First) задач.
Приоритеты процессов. Система приоритетов.
3.2. Алгоритмы планирования и диспетчеризации.
Задачное
и
событийное
управление
вычислительным
процессом.
Невытесняющее и вытесняющее планирование, круговая (round-robin)
диспетчеризация. Диспетчеризация с привязкой ко времени (time-triggered).
Раздел 4. Взаимодействие процессов в системах реального времени.
4.1. Проблемы взаимодействия между процессами.
Взаимоисключения, синхронизация, блокировка, критические участки.
Особенности реализации в СРВ последовательных процессов: прерывания,
перезапуск, чередование, контрольные точки.
4.2. Способы взаимодействия.
Программные каналы: принципы функционирования, особенности реализации
в СРВ. Разделяемые ресурсы: поочередное использование, общая память,
кратные ресурсы. Планирование ресурсов.
Раздел 5. Методы и средства межпотоковой и межпроцессной синхронизации.
5.1. Основные средства синхронизации процессов и передачи данных между
ними.
Семафоры, мьютексы, события, сигналы, средства для работы с разделяемой
памятью, каналы данных, очереди сообщений.
Примеры построения программ внутрипроцессной и межпроцессной
синхронизации.
5
Раздел 6. Системные средства управления прерываниями вычислительного
процесса в СРВ.
6.1. Обработка прерываний в СРВ.
Правила использования синхронных и асинхронных прерываний. Основные
типы системных функций для управления прерываниями.
Особенности реализации ввода/вывода в СРВ.
6.2. Часы и таймеры.
Часы реального времени. Назначение таймеров. Реализация периодического
режима работы.
Раздел 7. Организация очередей в системах реального времени.
7.1. Понятия об управлении процессами как об организации и обслуживании
очередей.
Планирование загрузки процессов. Критерии эффективности дисциплины
планирования. Основные дисциплины организации очередей в СРВ и их
характеристики. Многоуровневые очереди с обратными связями.
Раздел 8. Управление памятью в системах реального времени.
8.1. Модели памяти.
Механизмы распределения памяти. Статическое распределение памяти.
Особенности динамического распределения памяти в СРВ. Страничный
механизм виртуальной памяти в СРВ. Отображение страниц на физические
адреса с помощью таблицы страниц.
Раздел 9. Особенности отладки программного обеспечения в системах
реального времени.
9.1. Этапность отладки.
Отладка процесса во взаимодействии с операционной системой, совместная
отладка вычислительных процессов внутри ЭВМ, отладка процессов
ввода/вывода с отдельными клиентами, комплексная отладка.
9.2. Технологическое обеспечение этапов отладки.
Встроенные программные имитаторы, использование технологической ЭВМ
для имитации внешних воздействий, динамический отладчик.
9.3. Проблемы комплексной отладки программного обеспечения (ПО) СРВ.
Невозможность обеспечения в процессе отладки внешних воздействий,
адекватных всем возможным условиям эксплуатации, необходимость
сохранения технологических средств отладки на весь период эксплуатации ПО
СРВ.
Раздел 10. Оценка эффективности систем реального времени.
10.1. Надежность ПО.
Неисправность и отказ ПО, время наработки на отказ. Возможность
модернизации. Время разработки ПО и время эксплуатации.
10.2. Трудоемкость разработки ПО.
Зависимость трудоемкости от требуемого времени наработки на отказ и
6
приспособленности разрабатываемого ПО к модернизации.
5. Образовательные технологии
В учебном процессе при реализации компетентностного подхода
используются активные и интерактивные формы проведения занятий:
метод проектов – распределение заданий между учащимися,
предполагающий сбор и анализ информации, а также представление
полученных результатов в виде реферата;
метод ситуационного анализа – разбор конкретных ситуаций
возникающих
при
выполнении
заданий
в
среде
графического
программирования LabVIEW с использованием компьютерных демонстраций.
В рамках курса предусмотрены встречи с представителями компаний,
специализирующихся на разработке программного обеспечения (в рамках
договора сотрудничества с факультетом КНиИТ).
7. Учебно-методическое и информационное обеспечение дисциплины
а) основная литература:
1. Таненбаум Э.С. Современные операционные системы. — М. ; СПб. [и др.] :
Питер, 2007.
Таненбаум Э.С. Современные операционные системы. — М. ; СПб. ; Н.
Новгород [и др.] : Питер, 2005.
б) дополнительная литература:
1. Тревис Д. LabVIEW для всех. — М. : ПриборКомплект, 2004.
2. Бутырин П.Ф., Васьковская Т.А., Каратаква В.В., Материкин С.В.
Автоматизация физических исследований и эксперимента: компьютерные
измерения и виртуальные приборы на основе LabVIEW 7. — М. : ДМК
Пресс, 2005.
в) программное обеспечение и Интернет-ресурсы:
1. Среда графического программирования NI LabVIEW Professional
Development System, Version 8.5 или более поздняя;
2. LabVIEW Basics1. Программное обеспечение курса «Основы LabVIEW
Часть 1».
3. LabVIEW Basics2. Программное обеспечение курса «Основы LabVIEW
Часть 2».
4. Веб-сайт компании National Instruments. — 2011. http://www.labview.ru/.
8. Материально-техническое обеспечение дисциплины
Компьютерный класс из 10-12 IBM - совместимых персональных
компьютеров, работающих под управлением операционной системы Windows.
Учебная лабораторная станция виртуальных приборов аппаратная
образовательная платформа NI ELVIS II (Educational Laboratory Virtual
Instrumentation Suite).
7
Проекционное оборудование для компьютерных демонстраций приемов
программирования в среде LabVIEW с использованием аппаратной
образовательной платформы NI ELVIS II.
Программа составлена в соответствии с требованиями ФГОС ВПО с
учетом рекомендаций и Примерной ООП ВПО по направлению «010500
Математическое обеспечение и администрирование информационных систем»
и профилю подготовки «Параллельное программирование».
Автор:
доцент кафедры
информатики и программирования
___________ К. П. Вахлаева
Программа одобрена на заседании кафедры информатики и программирования
от «14» февраля 2011 года, протокол № 9.
Заведующий кафедрой
информатики и программирования,
доцент
___________ А. Г. Федорова
Декан факультета КНиИТ,
доцент
___________ А. Г. Федорова
8
Download