RU/2: Форум. Общение пользователей и разработчиков OS/2 (eCS). : Ответить на сообщение
Имя:
e-mail:
FIDO:
Home page:
сохранить данные о вас
Тема:
> > Преамбула: в нашей конторе разрабатывается софт для управления технологическим процессом на жд транспорте. В качестве ОСРВ полуось не рассматривалась. Хочется выяснить, насколько возможно применение оси для наших задач. > Встречный вопрос - а что такое "технологический процесс" ? Перекладывание бумажек из одного ящика в другой - тоже в некотором роде технологический процесс и делается он конкретным человеком (обычно теткой) в реальном времени. > Если это управление оборудованием, железками - это одно, если это система поддержки решений и/или АРМ диспетчеров - это несколько другое... > > > Вопросы: > > 1. Как понималось понятие "операционная система реального времени" при использовании оси? > Ответ - при проектировании оси это никак не понималось, делалась многозадачная система с ориентацией на максимально быструю реакцию на действия пользователя, отсюда и динамические приоритеты. > > >Известное мне определение: ОС с предсказуемым (расчитываемым) временем реакции системы на событие с определенной погрешностью. В зависимости от величины погрешности реал-тайм считается хард или софт. > > что такое событие на уровне миллисекунд - это ХЗ... > и как все это рассчитать в реально работающей системе - тоже хз..., Реально на PC есть несколько [свободных] хардверных прерываний, которые обрабатываются на уровне драйверов и для которых более-менее можно подсчитать время реакции на одиночное событие, все остальное - от лукавого. > Более того, требование жесткого реайл-тайма от системы с туевой хучей кэшей, буферов, конвейеров и прочего на разных уровнях - это ИМХО глупость разработчика. Жесткий реалтайм должен обеспечиваться на уровне железок (контроллеров, внешних устройств), ос должен общаться в мягком времени общаться с ними... > > > 2. Требуется ли для использования оси, как ОСРВ накладывание патча (как например для Линукса и NT)? > > все задается в конфигсисе. - динамические или абсолютные приоритеты, приоритет дисковых операций... > > > 3. Как определяется конфигурации системы для обеспечения реал-тайма. Есть ли методика конфигурирования построения такой системы? > > Экпериментальным путем - если под загрузкой на полную катушку можно еще что-то делать - значит > работает..., если чему-то не хватает - значит, этому чему-то нужно повышать приоритет, но это скорее вопрос не конфигурации системы, а дизайна программы... > > Например, в случае с шаговым двигателем - шаговый двигатель работает нормально при нормальном приоритете и без нагрузки системы, при нагрузке системы с дисковыми операциями - начинает заикаться... с этим заиканием можно бороться 2 путями - либо поставить PII350/64RAM вместо P166/32RAM, либо поднять приоритет нитке, управляющей шаговым двигателем. Причем оказалось достаточным оставить нормальный класс приоритетов. > >
__, _, __, _,_ _, _
|_ / \ |_) | | |\/|
| \ / | \ | | | |
~ ~ ~ ~ `~' ~ ~
Programmed by
Dmitri Maximovich
,
Dmitry I. Platonoff
,
Eugen Kuleshov
.
25.09.99 (c) 1999,
RU/2
. All rights reserved.
Rewritten by
Dmitry Ban
. All rights ignored.