информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Портрет посетителяВсе любят медЗа кого нас держат?
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Microsoft обещает радикально усилить... 
 Ядро Linux избавляется от российских... 
 20 лет Ubuntu 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / theory
Имя Пароль
ФОРУМ
если вы видите этот текст, отключите в настройках форума использование JavaScript
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
NT и линух никак не могут быть реалтаймовыми, что бы там ни говорил пеар 20.08.07 15:46  Число просмотров: 4422
Автор: amirul <Serge> Статус: The Elderman
<"чистая" ссылка>
> ОСРВ многозадачны по определению, считать инструкции не
> очень имеет смысл... И ОСРВ не пишутся под конкретную
> платформу, что тоже умаляет смысл подсчёта времени
> исполнения каждой процедуры.
> Другое дело, что щедулер там весьма детерминированный, и
> можно немножко представлять, «что будет, если». В тех

Отличие здесь далеко не в шедулере, тем более что в ОСРВ и обычных алгоритмы шедулинга примерно одинаковые.

> > Так что позвольте с вами не согласиться. Да и вообще,
> по
> > моему правильным будет при наступлении события
> обработать
> > его, а не поставить в очередь, чтоб обработать
> как-нибудь
> > потом. В результате имеем то, что окошко появляется
> спустя
> > минуту, после того, как кликнешь по ярлычку :-).

Это не тебе (тут двойное цитирование), но отвечу здесь, чтобы не плодить ветки - это вообще ни к селу ни к городу :-)
Окошко появляется минуту спустя потому, что люди пишут на всяком отстое типа делфи, VB или в лучшем случае Java/.Net, а не потому, что ядро ОС плохое.

> Событий нет в компьютерах самих по себе, это абстракции ОС
> или программиста. А прерывания, что являются реальными
> событиями в компьютерах, не являются этими абстракциями,
> они лишь «заготовки» для них. Прерывания вообще-то претят
> общей идеологии процессов в ОС. И что обычная ОС, что ОСРВ
> стремятся обработать прерывания как можно быстрее,
> переложив дальнейшую обработку на «потом». Те же «события»
> могут ждать, к примеру, несколько процессов, а процессор
> один, как прикажете обработать событие «сразу»? ;-)

Отож бо й воно.

> Всё это к тому, что «потом» в обычной ОС менее
> детерминировано, чем в ОСРВ, о чём я написал чуть выше.
> Вокруг ОСРВ вообще много всякого странного пеара...
> К примеру, был патчи для NT4 сторонних производителей...
> Превращающие эту ОС в ОСРВ, т.е. поставил патч и
> пользуешься новыми реалтаймовыми функциями ядра на
> здоровье... Есть ещё всякие интересные понятия жёсткого и

Вот здесь собственно и сабж. Это сейчас модно подмазывать к какому нибудь раскрученному понятию, смысл которого все равно никто не понимает. Ни "реалтаймовая" NT ни RTLinux не являются реалтаймовыми ОС. Это системы с монолитным (что не мешает им быть модульными) ядром, значит все модули ядра (драйверы) работают в том же контексте безопасности, что и само ядро. А если любой third party драйвер может просто запретить все прерывания и войти в бесконечный цикл, то о каком гарантированном времени отлика может идти речь?

> мягкого риалтайма...
> В общем, мир снова не чёрно-белый, а цветной и всякоразный
> ;-)

Ага :-)
Даже в случае монолитных ядер не все так запущенно, как я написал :-)
Принекоторыхусловиях монолитное ядро может быть реалтаймовым. В частности, если запрещена загрузка любых third party драйверов. Однако, чем больше ядро (в ядро нужно включить не только непосредственно ядро, но и все драйвера, работающие на одном уровне безопасности с ним), тем выше вероятность ошибки в реализации (даже если архитектрура в принципе допускает реалтаймовость) при которой гарантированное время отклика ни фига не гарантируется.

Собственно именно поэтому ОС реального времени стоит искать только среди микроядерных ОС
<theory>
Что есть ОС c real-time и ОС без real-time? 13.08.07 09:39  
Автор: jun Статус: Незарегистрированный пользователь
<"чистая" ссылка>
Сильно не пинайте, просто объясните что значит операционна с real-time и без real-time.
Операционные системы реального времени способны реагировать... 13.08.07 09:44  
Автор: !mm <Ivan Ch.> Статус: Elderman
<"чистая" ссылка>
> Сильно не пинайте, просто объясните что значит операционна
> с real-time и без real-time.

Операционные системы реального времени способны реагировать на внешние события в течение гарантированного промежутка времени, исчисляющегося долями секунды. Подобные программные платформы находят применение в специфичных областях, в том числе, в военной отрасли, медицине, а также финансовой сфере. Разработка SuSe Linux Enterprise Real Time осуществлялась компанией Novell совместно со специалистами Concurrent Computer. Тестирование операционной системы на базе данных Ingres показало, что время реакции Suse Linux Enterprise Real-Time составляет от 11 до 27 микросекунд. Первая версия SuSe Linux Enterprise Real Time была выпущена в конце прошлого года.

http://www.uinc.ru/news/sn8094.html
Есть еще одно определение. 13.08.07 18:12  
Автор: Fighter <Vladimir> Статус: Elderman
<"чистая" ссылка>
Расплычатое, но, иногда более понятное.
Системы реального времени обрабатывают события при их возникновении (данные при поступлении), обычные - когда появляется возможность их обработать. Т.е. в первом случае есть гарантированное время обработки (время отклика), а во втором его нет. Есть только надежда :)
Неважно как обрабатывает система реального времени данные, это её секрет. Гарантируется только время отклика. Если система не влезла в предел времени отклика, она генерирует ошибку, только и всего. 14.08.07 13:51  
Автор: HandleX <Александр М.> Статус: The Elderman
Отредактировано 14.08.07 13:57  Количество правок: 1
<"чистая" ссылка>
Микропроцессоры всё равно ставят поступающие прерывания в очередь (а ещё и игнорируют их, если очередь заполнена), так что...

Самое смешное, теоретически получается, что риалтаймовая система покажет меньшую производительность, чем обычная, на той же аппаратной платформе, поскольку в обычной системе нет контроля выполнения той или иной функции во времени.
Только вероятность, что прерывания потеряются в... 20.08.07 13:07  
Автор: DPP <Dmitry P. Pimenov> Статус: The Elderman
<"чистая" ссылка>
> Микропроцессоры всё равно ставят поступающие прерывания в
> очередь (а ещё и игнорируют их, если очередь заполнена),
> так что...

Только вероятность, что прерывания потеряются в нереалтаймовых ОС значительно выше. Точнее в реалтймовых она отсутствует, поскольку время обработки лимитировано как раз для этого тоже.

> Самое смешное, теоретически получается, что риалтаймовая
> система покажет меньшую производительность, чем обычная, на

Понятия "производительность" и "операционная система" не коррелируются. ОС это не процессор и не СУБД.

> той же аппаратной платформе, поскольку в обычной системе
> нет контроля выполнения той или иной функции во времени.

В ОСРВ контроль времени выполнения осуществляется на этапе программирования, а именно 1) написал обработчик, 2) посчитал инструкции и время их выполнения, 3) если не вложился в норматив то сократил количество инструкций и перешел ко второму пункту.

Так что позвольте с вами не согласиться. Да и вообще, по моему правильным будет при наступлении события обработать его, а не поставить в очередь, чтоб обработать как-нибудь потом. В результате имеем то, что окошко появляется спустя минуту, после того, как кликнешь по ярлычку :-).
События — программистская абстракция, В компьютерах нет «реальных событий» :-) 20.08.07 15:25  
Автор: HandleX <Александр М.> Статус: The Elderman
<"чистая" ссылка>
> В ОСРВ контроль времени выполнения осуществляется на этапе
> программирования, а именно 1) написал обработчик, 2)
> посчитал инструкции и время их выполнения, 3) если не
> вложился в норматив то сократил количество инструкций и
> перешел ко второму пункту.
ОСРВ многозадачны по определению, считать инструкции не очень имеет смысл... И ОСРВ не пишутся под конкретную платформу, что тоже умаляет смысл подсчёта времени исполнения каждой процедуры.
Другое дело, что щедулер там весьма детерминированный, и можно немножко представлять, «что будет, если». В тех применениях, где считают инструкции и время их исполнения, не используют ОСРВ, наверное потому, что они слишком громоздки для этих применений ;-)

> Так что позвольте с вами не согласиться. Да и вообще, по
> моему правильным будет при наступлении события обработать
> его, а не поставить в очередь, чтоб обработать как-нибудь
> потом. В результате имеем то, что окошко появляется спустя
> минуту, после того, как кликнешь по ярлычку :-).
Событий нет в компьютерах самих по себе, это абстракции ОС или программиста. А прерывания, что являются реальными событиями в компьютерах, не являются этими абстракциями, они лишь «заготовки» для них. Прерывания вообще-то претят общей идеологии процессов в ОС. И что обычная ОС, что ОСРВ стремятся обработать прерывания как можно быстрее, переложив дальнейшую обработку на «потом». Те же «события» могут ждать, к примеру, несколько процессов, а процессор один, как прикажете обработать событие «сразу»? ;-)
Всё это к тому, что «потом» в обычной ОС менее детерминировано, чем в ОСРВ, о чём я написал чуть выше. Вокруг ОСРВ вообще много всякого странного пеара...
К примеру, был патчи для NT4 сторонних производителей... Превращающие эту ОС в ОСРВ, т.е. поставил патч и пользуешься новыми реалтаймовыми функциями ядра на здоровье... Есть ещё всякие интересные понятия жёсткого и мягкого риалтайма...
В общем, мир снова не чёрно-белый, а цветной и всякоразный ;-)
NT и линух никак не могут быть реалтаймовыми, что бы там ни говорил пеар 20.08.07 15:46  
Автор: amirul <Serge> Статус: The Elderman
<"чистая" ссылка>
> ОСРВ многозадачны по определению, считать инструкции не
> очень имеет смысл... И ОСРВ не пишутся под конкретную
> платформу, что тоже умаляет смысл подсчёта времени
> исполнения каждой процедуры.
> Другое дело, что щедулер там весьма детерминированный, и
> можно немножко представлять, «что будет, если». В тех

Отличие здесь далеко не в шедулере, тем более что в ОСРВ и обычных алгоритмы шедулинга примерно одинаковые.

> > Так что позвольте с вами не согласиться. Да и вообще,
> по
> > моему правильным будет при наступлении события
> обработать
> > его, а не поставить в очередь, чтоб обработать
> как-нибудь
> > потом. В результате имеем то, что окошко появляется
> спустя
> > минуту, после того, как кликнешь по ярлычку :-).

Это не тебе (тут двойное цитирование), но отвечу здесь, чтобы не плодить ветки - это вообще ни к селу ни к городу :-)
Окошко появляется минуту спустя потому, что люди пишут на всяком отстое типа делфи, VB или в лучшем случае Java/.Net, а не потому, что ядро ОС плохое.

> Событий нет в компьютерах самих по себе, это абстракции ОС
> или программиста. А прерывания, что являются реальными
> событиями в компьютерах, не являются этими абстракциями,
> они лишь «заготовки» для них. Прерывания вообще-то претят
> общей идеологии процессов в ОС. И что обычная ОС, что ОСРВ
> стремятся обработать прерывания как можно быстрее,
> переложив дальнейшую обработку на «потом». Те же «события»
> могут ждать, к примеру, несколько процессов, а процессор
> один, как прикажете обработать событие «сразу»? ;-)

Отож бо й воно.

> Всё это к тому, что «потом» в обычной ОС менее
> детерминировано, чем в ОСРВ, о чём я написал чуть выше.
> Вокруг ОСРВ вообще много всякого странного пеара...
> К примеру, был патчи для NT4 сторонних производителей...
> Превращающие эту ОС в ОСРВ, т.е. поставил патч и
> пользуешься новыми реалтаймовыми функциями ядра на
> здоровье... Есть ещё всякие интересные понятия жёсткого и

Вот здесь собственно и сабж. Это сейчас модно подмазывать к какому нибудь раскрученному понятию, смысл которого все равно никто не понимает. Ни "реалтаймовая" NT ни RTLinux не являются реалтаймовыми ОС. Это системы с монолитным (что не мешает им быть модульными) ядром, значит все модули ядра (драйверы) работают в том же контексте безопасности, что и само ядро. А если любой third party драйвер может просто запретить все прерывания и войти в бесконечный цикл, то о каком гарантированном времени отлика может идти речь?

> мягкого риалтайма...
> В общем, мир снова не чёрно-белый, а цветной и всякоразный
> ;-)

Ага :-)
Даже в случае монолитных ядер не все так запущенно, как я написал :-)
Принекоторыхусловиях монолитное ядро может быть реалтаймовым. В частности, если запрещена загрузка любых third party драйверов. Однако, чем больше ядро (в ядро нужно включить не только непосредственно ядро, но и все драйвера, работающие на одном уровне безопасности с ним), тем выше вероятность ошибки в реализации (даже если архитектрура в принципе допускает реалтаймовость) при которой гарантированное время отклика ни фига не гарантируется.

Собственно именно поэтому ОС реального времени стоит искать только среди микроядерных ОС
В последнем абзаце, после слова "при", как раз написана разница между ОСРВ и обычными ОС. 20.08.07 15:04  
Автор: Fighter <Vladimir> Статус: Elderman
<"чистая" ссылка>
1




Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2024 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach