- •Содержание Введение
- •Введение общая характеристика курса
- •Тематический план курса
- •Содержание курса Модуль 1. Системное программное обеспечение
- •1.1. Введение. Понятие и классификация операционных систем. Виды архитектурных решений.
- •1.2. Управление процессами. Уровни управления, учет процессов, организация доступа к разделяемым ресурсам, дисциплины диспетчеризации.
- •1.3. Управление памятью. Задачи управления, методы распределения памяти, виртуальная память и механизмы страничной и сегментной организации памяти.
- •1.4. Организация ввода-вывода. Виртуализация устройств, драйверы, диспетчеризация операций.
- •1.5. Файловые системы. Классификация, основные характеристики. Распределение дискового пространства. Локальные и распределенные файловые системы.
- •Модуль 2. Системы реального времени
- •Модуль 3. Языки и нотации описания программных систем
- •3.1. Введение. Цели и способы описания сложных программных систем. Эволюция нотаций и языков описания.
- •3.2. Универсальный язык моделирования uml.
- •3.3. Структурный язык описания систем sdl.
- •Контрольные вопросы к модулю 3. Языки и нотации описания программных систем
- •Модуль 4. Программируемые логические контроллеры
- •4.1. Введение. Назначение плк. Типы плк и их производители. Принципы действия плк.
- •4.2. Методы программирования плк. Стандарты. Графические и текстовые языки программирования.
- •4.3. Программирование плк на связке языков ld и il. Практические приемы программирования.
- •Контрольные вопросы к модулю 4. Программируемые логические контроллеры
- •Модуль 5. Системы числового программного управления
- •Самостоятельная и индивидуальная работа студентов
- •Перечень практических занятий
- •Перечень лабораторных работ Модуль 1. Операционные системы
- •Тематика курсовых проектов
- •Вопросы к экзамену Модуль 1. Операционные системы
- •Понятийно-терминологический словарь курса (глоссарий)
- •Литература
- •9.1 Основная литература по лекционному курсу, а также для практических и лабораторных занятий
- •9.2 Дополнительная литература
- •10 Материально-техническое обеспечение дисциплины
Модуль 2. Системы реального времени
2.1. Введение. Основные характеристики и классификация систем реального времени.
Область применения систем реального времени. Основные характеристики систем реального времени (RT). Системы жесткого RT и мягкие RT системы.
2.2. Операционные системы реального времени. Архитектурные решения. Характеристики и примеры.
Операционные системы и среды реального времени. Область применения. Аппаратные платформы операционных систем RT. Классификация RT операционных систем. Варианты построения ядер RT. Примеры и характеристики операционных систем реального времени.
2.3. Выполнение системных операций в режиме реального времени. Диспетчеризация процессов. Распределение памяти.
Понятие сложности операций, примеры. Особенности реализации мультипрограммного режиме работы RT операционных систем. Дисциплины диспетчеризации процессов в операционных системах реального времени. Распределение памяти в системах реального времени. Методы распределения памяти с константной сложностью системных операций.
2.4. Структура и проектирование управляющих программ реального времени.
Идентификация процессов при проектировании RT систем. Представление управляющих программ в виде конечных автоматов. Обеспечение надежности и безопасности управляющих программ.
Основная литература к модулю 2: [1]
Дополнительная литература к модулю 2: [12], [13].
Контрольные вопросы к модулю 2. Системы реального времени
По какому признаку можно разделить «мягкие» и «жесткие» системы реального времени?
Какие методы диспетчеризации процессов допустимы для использования в системых реального времени?
Приведите примеры и характеристики операционных систем реального времени.
В чем заключается особенность монолитных систем реального времени?
Оправдано ли использование многонитевой структуры процессов в системах реального времени? Почему?
Перечислите основные параметры, отличающие системы реального времени от «обычных» программных систем.
В чем заключаются особенности выполнения системных вызовов в операционных системах реального времени?
Какие методы распределения памяти применяются в операционных системах реального времени?
В чем заключается отличие ядер реального времени от монолитных ОС реального времени?
Что обозначает термин «кросс-разработка» (cross-development)?
Может ли управляющая программа рассматриваться в виде конечного автомата?
В чем заключается событийная модель управления и как это сказывается на структуре управляющих программ?
Объясните термины «самотестируемая программа» и «самопроверяемая программа».
На конкретных примерах продемонстрируйте приемы, приводящие к созданию самопроверяемых программ.
Что подразумевается под термином «безопасность» в контексте управляющих программ?
Что называется «состоянием защитного отказа»? Какие действия или события приводят к переходу программы в это состояние?
Опишите методы создания безопасного программного обеспечения на базе небезопасных компонентов.
Как используется дублирование функций в управляющих система?
Что называется «принятием решения по мажоритарному принципу»? Как может такой прием использоваться в управляющих системах?
Опишите методы, позволяющие организовать диагностику предотказных состояний программного обеспечения.