4.7.2 Требования, предъявляемые к операционным системам реального времени при проектировании
Требование 1. ОС должна быть многопоточной (multi-threaded) и прерываемой.
Как указывалось выше, ОСРВ должна быть предсказуемой, что означает максимальное время выполнения того или иного действия, которое должно быть известно заранее и должно соответствовать требованиям приложения.
Первое требование состоит в том, что ОС должна быть многопоточной по принципу абсолютного приоритета (прерываемой). Планировщик должен иметь возможность прервать любой поток и предоставить ресурс тому потоку, которому он более необходим. ОС (и аппаратура) должны также обеспечивать прерывание на уровне обработки прерываний.
Требование 2. Должно существовать понятие приоритета потока.
Проблема в том, чтобы определить, какой задаче требуется ресурс. В идеальной ситуации ОСРВ отдаёт ресурс потоку или драйверу с ближайшим крайним сроком (так называемые ОС, управляемые временным ограничением (deadline driven OS)).
Чтобы реализовать это, ОС должна знать время, требуемое каждому из выполняющихся потоков для завершения (до сих пор не существует ОС, построенной по этому принципу, так как он слишком сложен для реализации), поэтому разработчики ОС принимают иную точку зрения: вводится понятие уровня приоритета задачи, и временные ограничения сводят к приоритетам. Так как умозрительные решения чреваты ошибками, показатели СРВ при этом снижаются. Чтобы более эффективно осуществить указанные преобразования ограничений, проектировщик может воспользоваться теорией расписаний или имитационным моделированием, хотя и это может оказаться бесполезным. На сегодняшний день не имеется иного решения, поэтому понятие приоритета потока необходимо.
Требование 3. ОС должна обеспечивать предсказуемые механизмы синхронизации задач.
Задачи разделяют данные (ресурсы) и должны сообщаться друг с другом, следовательно, должны существовать механизмы блокирования и коммуникации.
Требование 4. Должна существовать система наследования приоритетов.
На самом деле, именно этот механизм синхронизации и тот факт, что различные потоки используют одно и то же пространство памяти, отличают потоки от процессов. Процессы не разделяют одно и то же пространство памяти. Так, например, старые версии UNIX не являются многопоточными. Старый UNIX –многозадачная ОС, где задачами являются процессы, которые сообщаются через потоки (PIPEZ) и разделяемую память. Оба эти механизма используют файловую систему, а её поведение непредсказуемо.
Комбинация приоритета потока и разделение ресурсов между ними приводит к другому явлению: классической проблеме инверсии и приоритетов. Это можно проиллюстрировать на примере, где есть как минимум три нити. Когда нить низшего приоритета заняла ресурс, разделяемый с нитью высшего приоритета, а сначала выполняется нить среднего приоритета, выполнение нити высшего приоритета будет приостановлено, пока не освободится ресурс и не отработает нить среднего приоритета. В этой ситуации время, необходимое для завершения нити высшего приоритета, зависит от нижних приоритетных уровней, – это и есть инверсия приоритетов. Ясно, что в такой ситуации трудно выдержать ограничения на время исполнения.
Чтобы устранить такие инверсии, ОСРВ должна допускать наследования приоритета, т.е. повышение приоритета до уровня вызывающего потока. Наследование означает, что блокирующий ресурс поток наследует приоритет блокируемого потока (справедливо лишь в том случае, если блокируемая нить имеет более высокий приоритет).
Иногда утверждают, что в грамотно спроектированной системе такая проблема не возникает. В случае сложных систем с этим нельзя согласиться. Единственный способ решения этой проблемы состоит в увеличении приоритета нити вручную прежде, чем ресурс окажется заблокированным – это возможно в случае, когда две нити разных приоритетов претендуют на один ресурс. В общем случае решения не существует.
Требование 5. Поведение ОС должно быть известно.
Наконец, следует рассмотреть временные ограничения. Время выполнения системных вызовов и временные характеристики поведения системы в различных обстоятельствах должны быть известны разработчику, поэтому производитель ОСРВ должен приводить следующие характеристики:
Латентную задержку прерывания (т.е. время от момента прерывания до момента запуска задачи): она должна быть предсказуема и согласована с требованиями приложения. Эта величина зависит от числа одновременно «висящих» прерываний.
Максимальное время выполнения каждого системного вызова (должно быть предсказуемым и независимым от числа объектов в системе).
Максимальное время маскирования прерываний драйверами и ОС.
Системные уровни прерываний.
Уровни прерываний драйверов устройств, их временные характеристики и так далее.
Когда все указанные характеристики ОС известны, можно представить разработку СРВ на её базе с учётом возможностей выбранной ОСРВ и аппаратуры.
- Глава 1. Основные понятия интегрированной системы 14
- Глава 2. Функции и структуры интегрированных систем 20
- Глава 3. Взаимосвязь процессов проектирования, подготовки производства и управления производством 45
- Глава 4. Математическое, методическое и организационное обеспечение, программно-технические средства для построения интегрированных систем проектирования и управления 73
- Глава 5. Scada-системы, их функции и использование для проектирования автоматизированных систем управления, документирования, контроля и управления сложными производствами отрасли 217
- Глава 6. Примеры применяемых в отрасли scada-систем 335
- Глава 7. Пример проекта системы управления в trace mode 6 346
- Список сокращений
- Введение
- Глава 5. Scada-системы, их функции и использование для проектирования автоматизированных систем управления, документирования, контроля и управления сложными производствами отрасли
- Глава 6. Примеры применяемых в отрасли scada-систем
- Глава 1. Основные понятия интегрированной системы
- 1.1 Управление производством на основе интегрированных систем проектирования и управления
- 1.1.1 Определение интегрированной системы проектирования и управления
- 1.1.2 Принципы построения современных интегрированных систем
- Удобство использования
- Наличие и качество технической поддержки
- Оценка стоимости инструментальных систем
- Открытость систем
- Технологии орс
- Аппаратная реализация связи с устройствами ввода-вывода
- Технологии ActiveX
- 2.1.2 Жесткое реальное время для Windows nt
- 2.1.3 Интеграция многоуровневых систем автоматизации
- 2.1.4 Сравнительный анализ и тестирование scada-систем
- 2.1.5 Выводы
- 2.2 Этапы создания и функциональные характеристики систем управления
- 2.2.1 Этапы создания системы диспетчерского контроля и управления
- 2.2.2 Функциональные характеристики scada-систем
- 2.2.3 Функциональные возможности
- 2.2.4 Программно-аппаратные платформы scada-систем
- 2.2.5 Средства сетевой поддержки
- 2.2.6 Встроенные командные языки
- 2.2.7 Поддерживаемые базы данных
- 2.2.8 Графические возможности
- 2.2.9 Тренды и архивы в scada-системах
- 2.2.10 Алармы и события в scada-системах
- Глава 3. Взаимосвязь процессов проектирования, подготовки производства и управления производством
- 3.1 Стандарты управления предприятием: mrp, mrp II, erp, csrp
- 3.2 Семейство стандартов на системы качества
- 3.2.2 Тезисное выражение требований iso-9000
- 3.2.3 Общие положения
- 3.2.4 Проблемы внедрения и развития систем качества
- Разработка процедур
- 3.3 Модули для автоматизации финансово-экономических процессов производства: mes, eam, hrm
- Необходимость внедрения mes
- Обзор функций t-factory mes – модуля для управления производством в реальном времени
- Обзор функций t-factory eam – модуля для управления основными фондами, техническим обслуживанием и ремонтами в реальном времени
- Глава 4. Математическое, методическое и организационное обеспечение, программно-технические средства для построения интегрированных систем проектирования и управления
- 4.1 Нижний уровень интегрированных систем управления
- 4.1.1 Классификация устройств нижнего уровня
- 4.1.2 Концевой выключатель Концевой выключатель двухпозиционный квд-600
- Автоматический концевой выключатель vb,vba
- Концевой выключатель ку-701 у1
- 4.1.3 Интеллектуальный датчик
- Коммуникационный протокол hart
- Датчики давления серии «Метран-100»
- 4.1.4 Устройства hart-коммуникации
- Hart-коммуникатор «Метран-650»
- Hart-модем «Метран-681»
- Конфигурационная программа h-master
- Многопараметрический датчик 3095mv
- 4.1.5 Бесконтактный датчик
- Датчики измерения уровня
- Оптические датчики
- Датчик контроля скорости
- 4.1.6 Исполнительные устройства Привода постоянного тока
- Клапаны электромагнитные для автоматики подогревателей
- Реле защиты трансформаторов
- 4.2 Основные технические характеристики контроллеров и программно-технических комплексов
- 4.2.1 Характеристика процессора
- 4.2.2 Характеристика каналов ввода-вывода контроллеров
- 4.2.3 Коммуникационные возможности контроллеров
- 4.2.4 Эксплуатационные характеристики
- 4.2.5 Программное обеспечение
- 4.3 Стандартные языки программирования контроллеров
- 4.3.1 Общие сведения по языкам программирования контроллеров
- 4.3.2 Инструментальные системы программирования контроллеров
- 4.3.3 Этапы программирования плк в среде Unity Pro xl V.4.0
- 4.3.4 Примеры программы на языках fbd, ld, sfc, st, il Описание условия задачи
- Создание программы на языке fbd
- 4.4 Контроллер modicon m340
- 4.4.1 Общие сведения
- 4.4.2 Процессорные модули
- Структура памяти
- 4.4.3 Модули питания
- 4.4.4 Модули дискретного ввода/вывода
- 4.4.5 Модули аналогового ввода/вывода
- 4.4.6 Счетные модули
- 4.4.7 Модули управления перемещением
- 4.4.8 Сеть Ethernet Modbus/tcp
- 4.4.9 Сетевые модули Ethernet Modbus/tcp
- 4.5 Частотный преобразователь altivar 31h
- 4.6 Протоколы, сети и шины
- Описание
- 4.7 Общее описание операционных систем реального времени
- 4.7.1 Основные понятия
- 4.7.2 Требования, предъявляемые к операционным системам реального времени при проектировании
- 4.7.3 Особенности операционных систем реального времени Процессы, потоки, задачи
- Планирование, приоритеты
- 4.7.4 Прерывания
- 4.7.5 Часы и таймеры
- 4.7.6 Стандарты осрв
- Стандарты безопасности
- 4.7.7 Настраиваемость операционных систем
- 4.8 Характеристики наиболее распространенных операционных систем реального времени
- 4.8.6 Расширения реального времени для Windows nt
- 4.9 Базы данных реального времени
- 4.9.1 Введение
- 4.9.2 Поддержка целостности в классических субд
- Пессимистический подход
- Оптимистический подход
- Сравнение подходов
- 4.9.3 Протоколы управления транзакциями в субд реального времени
- Пессимистический подход
- Оптимистический подход
- Сравнение подходов
- 4.9.4 Системы с устаревшими данными
- 4.9.5 Корректность транзакций
- 4.9.6 Выбор периода для сенсорных транзакций
- 4.9.7 Выбор версии непрерывного объекта
- 4.9.8 Как бороться с перегрузкой системы из-за обилия сенсорных транзакций?
- 4.9.9 Когда обновлять выводимые объекты?
- 4.9.10 Как понизить количество анормальных завершений?
- 4.9.11 Диспетчеризация транзакций
- 4.9.12 Оптимизация под конкретную систему
- Классификация пользовательских транзакций
- Субд реального времени в оперативной памяти
- 4.9.13 Использование сложных моделей транзакций
- Активные базы данных
- Активные базы данных реального времени
- 4.9.14 Атрибуты транзакции
- 4.9.15 Приоритет «непосредственной» транзакции
- 4.9.16 Приоритет «отложенной» транзакции
- 4.9.17 Заключение
- 4.10 Серверы Введение
- 4.10.1 Виды серверов
- Серверы приложений
- Серверы баз данных
- Файл-серверы
- «Беспроводной» сервер
- Прокси-серверы
- Брандмауэры
- Почтовые серверы
- Серверы dhcp
- Серверы ftp
- Принт-серверы
- Серверы удаленного доступа
- Факс-серверы
- Серверные приставки
- 4.10.2 Особенности современных серверов
- Основные требования
- Масштабируемость
- Готовность
- Надежность
- 4.10.3 Особенности архитектуры
- Оценка производительности
- 4.10.4 Серверы ведущих мировых производителей
- Серверы ibm
- 4.10.5 Серверы российского производства
- 4.10.6 Проекты с участием серверов Структуры власти
- Энергетика
- Энергоснабжение
- Образование
- Промышленность
- Деловые услуги
- Глава 5. Scada-системы, их функции и использование для проектирования автоматизированных систем управления, документирования, контроля и управления сложными производствами отрасли
- 5.1 Функции интегрированных систем проектирования и управления
- 5.1.1 Trace mode 6: Интегрированная среда разработки
- Scada-система
- Softlogic: программирование контроллеров
- Eam: средства разработки eam-приложений
- Mes: средства разработки mes-приложений
- Hrm: средства разработки hrm-приложений
- 5.1.3 Исполнительные модули ис trace mode® 6 Монитор реального времени
- Горячее резервирование
- Сервером документирования
- Сервер архива Регистраторы: серверы субд реального времени siad/sql 6
- Серверы документирования trace mode и t-Factory
- Графическая консоль NetLink Light
- Micro trace mode 6: исполнительный модуль для промышленных контроллеров
- Для mes/eam/hrm-приложений
- 5.2 Математическое обеспечение в программном комплексе Trace Mode 6
- 5.2.1 Принцип работы монитора. Канал trace mode 6
- 5.2.2 Обеспечение работы распределенных асу
- 5.2.3 Резервирование
- 5.2.4 Автопостроение
- 5.2.5 Математическая обработка данных
- 5.2.6 Архивирование каналов узла
- 5.2.7 Архивирование каналов проекта
- 5.2.8 Отчет тревог и генерация сообщений
- 5.2.9 Файл восстановления
- 5.2.10 Графический интерфейс оператора
- 5.2.11 Генерация документов (отчетов)
- 5.2.12 Защита проекта, его конвертирование из предыдущих версий trace mode
- 5.3.1 Технология разработки проекта в ис
- 5.3.2 Пример создания проекта
- Создание нового проекта в ис
- Создание структуры проекта в навигаторе
- Конфигурирование и разработка структурных составляющих
- Конфигурирование информационных потоков
- Выбор аппаратных средств асу
- Создание и конфигурирование узлов в слое «Система»
- Распределение каналов по узлам
- Автопостроение каналов
- Сохранение проекта в файл
- Экспорт узлов
- Запуск проекта
- 5.4 Организационное обеспечение: Классификация объектов структуры проекта в Trace Mode 6
- 5.4.1 Классификация компонентов
- Шаблоны
- Источники/Приемники
- Наборы ресурсов и графические объекты
- Последовательные порты
- Словари сообщений
- 5.4.2 Классификация слоев
- 5.4.3 Классификация узлов
- 5.4.4 Назначение групп источников (приемников)
- Группа «pc-based контроллеры»
- Группа «Распределенные усо»
- Группа «Платы ввода-вывода»
- Платы ввода-вывода
- Группа «Терминалы»
- Группа «plc»
- Группа «Диагностика и сервис»
- Группа «Генераторы»
- Группа «Модели»
- 5.4.5 Назначение группы «com-порты»
- 5.4.6 Назначение группы «Словари сообщений»
- 5.4.7 Назначение групп слоя «Библиотеки компонентов»
- 5.4.8 Назначение групп клемм
- 5.4.9 Назначение прочих групп
- Группы ресурсов
- Группы шаблонов
- Группы каналов
- Дополнительные группы структурирования
- 5.5 Структура проекта Trace Mode 6
- 5.5.1 Редактирование структуры проекта
- Меню и главная панель инструментов навигатора проекта
- Управление внешним видом навигатора проекта
- Создание объектов структуры
- Имена и идентификаторы объектов структуры
- Изменение класса канала после его создания
- Выделение объекта структуры
- Удаление объекта структуры
- Копирование и вставка объекта структуры
- Перепривязка каналов и аргументов при копировании, вставке и перемещении объекта базы каналов
- Взаимодействие с технологической бд
- Примеры синхронизации с бд
- Отображение свойств объектов структуры
- 5.5.2 Окно свойств объекта структуры проекта
- Вкладка «Информация»
- Вкладка «Флаги»
- Вкладка «Аргументы»
- Вкладка «Атрибуты»
- 5.6 Описание редакторов trace mode 6
- 5.6.1 Редакторы объектов структуры проекта
- Редакторы каналов
- Редактор словарей сообщений
- Редактор клемм
- 5.6.2 Редакторы источников (приемников)
- Редактор системных переменных trace mode
- Редактор переменной opc
- Редактор переменной opc hda
- Редактор переменной dde
- 5.6.3 Редактор группы шаблонов экранов
- Базовый редактор группы компонентов
- Групповое редактирование строковых атрибутов с инкрементированием
- Групповое редактирование числовых атрибутов с инкрементированием
- Редактор группы «opc-сервер»
- Редактор группы «opc hda сервер»
- Редактор группы каналов слоев «Технология» и «Топология»
- 5.6.4 Вкладки редактора узла
- Задание параметров узла:
- Вкладка «Основные» редактора узла
- Вкладка «Архивы» редактора узла
- Вкладка «Отчет тревог/Дамп/Параметры» редактора узла
- Вкладка «Таймауты» редактора узла
- Вкладка «Дополнительно» редактора узла
- Глава 6. Примеры применяемых в отрасли scada-систем
- 6.1 Vijeo look – система класса «человеко-машинный интерфейс» (hmi)
- 6.1.1 Представление hmi
- 6.1.2 Совместимость приложений Vijeo Look
- 6.1.3 Установка продукта Vijeo Look Установка Vijeo Look и его различных компонентов
- 6.1.4 Основные инструменты Vijeo Look
- 6.1.5 Панели инструментов в Vijeo Look
- 6.1.6 Описание основных функций меню «Вставка»
- 6.1.8 Настройки ofs Конфигуратора
- Глава 7. Пример проекта системы управления в trace mode 6
- 7.1 Проект «автоматизированный участок получения пара с применением электропарогенератора»
- 7.1.1 Описание технологического процесса
- 7.1.2 Создание проекта
- 7.1.2.1 Описание параметров
- 7.1.2.2 Описание графических экранов и программ
- 7.1.2.3 Заполнение базы данных
- 7.1.2.4 Составление схемы переходов
- Список литературы
- 450062, Республика Башкортостан, г. Уфа, ул. Космонавтов, 1
- 453, Республика Башкортостан, г. Стерлитамак,