Обсуждение:Операционная система реального времени/Архив/1

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску

Мягкое реальное время

[править код]

Строго говоря, такого понятия как «мягкое реальное время» не существует. Если систма не успевает отреагировать в заданное время, то она не является ОС РВ. Насколько я помню, появление термина «мягкое реальное время» связано с выходом MS Windows NT 4.0 и маркетинговыми усилиями про продвижению этой ОС на рынок ОС РВ. Softy 11:24, 6 ноября 2006 (UTC)[ответить]

Думаю, это понятно, что характеристики реального времени есть лишь статистические, то есть нет ОС, которые бы работали на 100 % в жестком реальном времени. Например, если в 99 % случаях система успевает реагировать на события, то нё можно назвать ОСРВ жёсткого реального времени. Так что разделение ОСРВ на системы жёсткого и мягкого реального времени зависит скорее от степени критичности к сбоям системы. ED-tech 16:15, 6 ноября 2006 (UTC)[ответить]
Возможно и так, хотя доджно же существовать чёткое определние. Стандартные тесты какие-нить вроде тех что проводит Dedicated Systems… В любом случае термин «мягое реальное время» уже достаточно устоялся, чтобы с ним бороться. Ну и статью надо дописывать и расширять. Неплохо бы показать откуда исторически возникли ОС РВ. Softy 16:30, 6 ноября 2006 (UTC)[ответить]
212.41.32.107 23:43, 2 февраля 2014 (UTC) Рассуждать о "мягком реальном времени" может лишь тот, кто никогда не видел ТЗ на разработку системы реального времени. Либо - пан, либо - пропал. Устно поясняют возможные последствия "мягкой реакции осрв", затем ты представляешь себе расстрел за халатность, повлёкшую многочисленные жертвы... Ну уж нет. Вдрызг разобьюсь, но, берясь за работу, либо гарантирую 100% реакции по ТЗ, либо сразу расстреливайте, если невозможно сделать. Естественно, я не говорю о надёжности аппаратного обеспечения, возможности и необходимости его дублирования, в том числе - и многократного, а только лишь о реализации алгоритмов управлении в заданные интервалы времени при наличном материальном обеспечении. Бог милостив. Одну ОСРВ я разрабатывал сотоварищи. Три другие - один. Все четыре работают.[ответить]

"Системы жёсткого и мягкого реального времени"

- Тихий ужас. Читал и "плакал". Вероятнее всего - старые мозги из России утекли, а новых нет. Спасибо партии за это. Завтра - лето. Ужас настолько ужас, как и тогда, когда кухарка начинает измерять информацию в часах, просиженных ею у телевизора. Можно предложить полумягкий вагон для полублудливого мужа, или полугулящей жены.

Системой реального времени можно называть ту и только ту систему, которая способна выполнять предназначенную ей функцию в заданный интервал времени (в том числе - и периодически, и с переменной частотой...). Операционной системой реального времени можно называть любую ОС, которая позволяет реализовать программными средствами в рамках программного интерфейса данной конкретной ОС на некотором специфицированном аппаратном оборудовании функционирование некой конкретной СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИ. Каждая конкретная ОСРВ может быть заточена под определенное множество задач реального времени.

Всё остальное словоблудие о жёстких и мягких местах - от лукавого. И наказуемо.

Для примера. Мне удалось под лицензионной Windows XP на стандартном писюке с двухядерным процем измерять временные интервалы с предельно возможной для архитектуры частотой - 0.5 МГц, одновременно протоколировать данные и отображать 4 сигнала на мониторе. Вся эта фигня работала не менее 8 часов, не дав ни одного сбоя. Уметь нужно. Как я сумел считывать данные с указанной выше частой, точно также я и изображал импульсы по 8-ми каналам в цифре. И пусть мне пропоют песню о мягком реальном времени с частотой 500 КГц. 212.41.32.100 08:08, 17 марта 2014 (UTC)[ответить]

Свободный QNX

[править код]

Когда это QNX стал свободной ОС? Открытие исходного кода не освободило систему от пропиетарности.

Спасибо, исправил. --A.I. 17:35, 6 апреля 2008 (UTC)[ответить]

Свободная ос2000

[править код]

Извните, но эта система вроде не была никогда свободной. Они даже своим исходники отказываются давать, и уж точно не бесплатно раздают 12:02, 28 апреля 2008 (UTC)

Операционная система реального времени

[править код]

А почему в списке операционных систем реального времени присутствует Symbian, но ни в категории Осей РВ её нету, ни в совственно статье о Symbian не указано что она является ОС РВ? Прошу меня извинить за вмешательство - я не особенно силен в этом, но так получилось, что наткнулся на несоответствие. Shmaltorhbooks 15:33, 24 июля 2008 (UTC)

Действительно. Добавьте пожалуйста. --A.I. 00:35, 25 июля 2008 (UTC)[ответить]

Как связаны ссылки в конце страницы с поднятой темой?

[править код]

Diff 07:18, 10 декабря 2008 (UTC)[ответить]

Ядро ОСРВ

[править код]

Ядро ОСРВ обеспечивает функционирование промежуточного абстрактного уровня ОС, который скрывает от прикладного ПО специфику технического устройства процессора (нескольких процессоров) и связанного с ним аппаратного обеспечения.

Разве нельзя тоже самое сказать о ядре не ОСРВ? По моему убеждению любая ОС делает то, что выделено в цитате курсивом. Я считаю, что надо этот текст убрать.
--Lit-uriy 15:16, 23 января 2009 (UTC)[ответить]

-Замечание правильное, но я бы оставил с исправлением вроде: "Ядро ОСРВ как и другие ядра обеспечивает...". Мне при чтении этот текст был полезен. PaRaDoXaD 06:02, 29 сентября 2012 (UTC)[ответить]

Рецензия с 18 по 19 января 2009 года

[править код]
Здесь находятся завершившиеся обсуждения. Просьба не вносить изменений.

Первоначально статья была недостаточно проработана и изобиловала фактами сомнительного происхождения. Материал был переработан, добавлена новая информация. Часть сведений была переведена из англоязычной аналогичной статьи. В перспективе статью планируется номинировать в хорошие. Буду благодарен любой конструктивной критике.JohnnyBox 18:06, 18 января 2009 (UTC)[ответить]

Не в порядке замечания собственно к статье, но всё же. В PDP-11#Операционные системы утверждается, что советский «клон» (а, на самом деле, просто копия ☺) системы RSX-11 называлась ОС-РВ. Хотя я не припоминаю, чтобы там писался дефис, а goolge так больше сообщает написание ОС РВ. Но расшифровывалось это, в любом случае, именно так — «операционная система реального времени», хотя речь шла конкретно об RSX-11. Где в статье следует упомянуть про подвиги советских пиратовинженеров? Incnis Mrsi 20:51, 18 января 2009 (UTC)[ответить]
Подправил список операционных систем согласно Вашему замечанию. Дефис сохранил, чтобы не путать название конкретной ОС с классом операционных систем реального вреени (ОСРВ) как таковых. JohnnyBox 18:43, 19 января 2009 (UTC)[ответить]

Достоверность фактов

[править код]

Я понимаю, конечно, что инфа взята из ссылок [8], но все равно - раздел про работу планировщика выглядит слишком фантастично. :( То ли перевод кривой, то ли буржуинский автор с Луны упал. Планировщик получается - просто волшебник какой-то, который живет вне процессора, получает какие-то магические сообщения и может позволить или не позволить текущей программе выполнять очередную ассемблерную команду. На самом деле, все гораздо проще и релистичней. Планировщик просто обрабатывает прерывания от таймера (ну, заодно и от других дивайсов и источников), и каждый раз проверяет: нет ли в очереди более приоритетной задачи. Если есть, то управление обычным JMP-ом передается не на прерванную задачу, а на новую, более привелегированную. Если нет, то обычным IRET-ом возвращает в прерванную задачу. А про ассемблерные команды - вообще не имеет отношения к операционным системам. Просто такова особенность аппаратной системы прерываний (в отличие от исключений): обработка начинается после выполнения текущей машинной команды. И все, и никакой магии! По крайней мере, в QNX и OS-9 (а так же в DOS, Windows и Linux) все выглядит именно так. Или я ошибаюсь и чудеса случаются? Может, поправим раздельчик? 46.0.137.152 21:07, 10 февраля 2011 (UTC)drmad[ответить]

Определение ОСРВ

[править код]

Операционная система, реагирующая в предсказуемое время на непредсказуемое появление внешних событий. - это единственное верное определение. Даже если не единственное, и под РВ разные понятия, то рассмотрим определение "«Реальное время в операционных системах — это способность операционной системы обеспечить требуемый уровень сервиса в определённый промежуток времени»" Пусть будет так. Пусть это тоже истинное определение. Возьмём две оc: Windows XP и Qnx4.25. Ни кто не будет спорить что Windows XP не является ОСРВ, а Qnx является. Ставим задачу - обеспечить требуемый уровень сервиса в определённый промежуток времени, пусть это будет матанализ который нужно выполнить за 0,20 секунды. Запускаем Windows XP на процессоре i7. Запускаем наш анализ..., винда справилась за 25 мс. Ммммдаа... действительно ХР не РТОС. А изменим требуемые условия, заставим уложиться с расчетом в 1 сек. Хр выполнила за 25 мс. Нагрузим ос по максимуму другими задачами.... и винда сделала расчет за 575 мс. Уложилась в определённый промежуток времени? Уложилась! Значит Windows XP это ОСРВ.
Запускаем туже задачу на Qnx не том же i7, ждём.... за 15 мс справилась. Хорошо. Тоже ОСРВ.
Запускаем туже задачу на Qnx на процессоре Intel 80286, ждём.... за 1500 мс задачу выполнилась. А требуется за 1000 мс. Неуложилась. Значит это не ОСРВ.
Т.е. в зависимости от вычислительной мощности и от требуемого времени будет или не будет обеспечиваться требуемый уровень сервиса в этот определённый промежуток времени. Получается что от условий предъявленных ос она может быть и ОСРВ и не ОСРВ. Это не правильно. Если всё таки по cтандарту POSIX 1003.1 давать определение, то абсолютно все ос могут быть ОСРВ и ненужно выделять какую-то ОС КАК ОСРВ, т.к. они все ОСРВ. — Эта реплика добавлена участником Juvf (ов) 16:55, 8 августа 2014 (UTC)[ответить]

Откатил Ваше правку: Пожалуйста, не убирайте материал, который не с неба свалился, а имеет приведенные источники. Например, Вы можете поместить предлагаемое Вами определение, но оставьте другие. Это позволит не нарушить правила нейтральности. РоманСузи 06:10, 13 августа 2014 (UTC)[ответить]

А кто дал эти определения? Как раз этот материал в вики с неба свалился и не имеет источников. Ваши приведённые источники на самом деле не проверенные: источник 1 - это не источник на POSIX, а источник на некую авторскую статью. Вы читали этот POSIX? Там есть это определение? На англоязычной версии нет упоминания про этот посикс. Перелистал вики на остальных языках про осрв - нет там ни слова про посикс 1003. И это определение по PISIX само себе противоречит. Под это определение подходит абсолютно любая ОС, также как и не подходит.
источник 3 - Перечитал всю статью - там тоже не ISO и не ГОСТ, какая-то статья авторская в которой ни слово не говориться о ОСРВ.

Источник 4 вообще не работает. требует какого-то вступления в какой-то клуб. Вики разве пишется для членов клуба qnxclub.net? Зачем мусором захламлять статью? Предлагаемое мною определение уже есть на вики. Это определение 2. И я с ним согласен. --Juvf 12:29, 13 августа 2014 (UTC)juvf[ответить]

  • Немного почистил. Определение номер 4 стало номером 3, оно в духе определения системы реального времени. Статья Горошко в принципе была бы авторитетным источником (автор книги по QNX), но не нашел. Что касается POSIX - так вполне гуглится, например, http://pubs.opengroup.org/onlinepubs/7908799/xsh/realtime.html , но возможно требует уточнения. Русская версия не обязательно должна быть идентична английской. РоманСузи 18:41, 13 августа 2014 (UTC) Определение POSIX.1b повторено в книге Programming with POSIX Threads By David R. Butenhof. Правда, строго говоря, там говорится о реальном времени в ОС (и приложении), а не об ОС реального времени... РоманСузи 18:44, 13 августа 2014 (UTC)[ответить]


Да, рускоязычная версия не должна быть идентична англо версии. Но и англоверсию, и версии на др языках писали люди, знающие что такое ОСРВ, и ни в одной версии нет ссыкли на POSIX. Тем более, что POSIX не дает определения ОСРВ, а дает определение РВ с ОС. Не нужно путать мягкое с тёплым.
По поводу 1-го определения в духе РВ.... это определение точно с неба. Оно во первых не имеет проверенного источника, во вторых про него уже писали что это Шедевр определения ОСРВ. В третих оно не имеет смысла. Вы работали с ОСРВ? Я уже говорил, что можно любой ОСРВ поставить задачу и потребовать время выполнения этой задачи что она не уложится при любом раскладе. А можно поставить такую задачу любой ОС, что она её выполнит в отведённое время. Например рассчитать факториал 10 за 1 час: любая Windows это сделает, это не значит что всё Windows-ы ОСРВ. Запустите например FreeRTOS на процессоре stm32 на 72МГц и она вам с легкостью будет выполнять какойнить расчет в РВ, допустим ЦОС. Запустите туже задачу на той же FreeRTOS на процессоре ATmega128 на тактовой частоте 2Мгц (или на том же stm32 но на 2МГц), и ваши обсчеты не будут успевать обсчитывать в нужные интервалы. Получается что от тактовой частоты процессора ОС может быть РТОС и не РТОС. А это не правильно. ОС не может быть реалтаймовой или не реалтаймовой в зависимости от тактовой частоты процессора.
Предлагаю убрать лишние, взятые с неба определения и оставить только верное Операционная система, реагирующая в предсказуемое время на непредсказуемое появление внешних событий.  — Эта реплика добавлена участником Juvf (о · в) 04:07, 24 августа 2014‎

Нужен перевод этой статьи http://sv.wikipedia.org/wiki/DICOS. Относится к обсуждаемой тематике. 95.79.49.191 14:28, 14 октября 2014 (UTC)[ответить]

Шедевр определения ОСРВ.

[править код]

"Операционная система, реагирующая в предсказуемое время на непредсказуемое появление внешних событий.[2]"

Никакая ОСРВ не может реагировать на все возможные события. Она всего лишь программный интерфейс с аппаратурой, обеспечивающий разработку и функционирование СИСТЕМ РЕАЛЬНОГО ВРЕМЕНИ. См. стандарт международный, и "неча со свиным рылом в калашный ряд". 212.41.32.103 05:42, 1 сентября 2014 (UTC)[ответить]

"Операционная система, в которой успешность работы любой программы зависит не только от её логической правильности, но и от времени, за которое она получила этот результат. Если система не может удовлетворить временным ограничениям, должен быть зафиксирован сбой в её работе.[1]"

Если система не удовлетворяет заказчика, то её и её разработчиков меняют на другое, удовлетворяющее. Убытки покрывает исполнитель, допустивший халатность при проектировании, разработке и реализации проекта. Одной фиксацией сбоя не должно обходиться - суд, обвинение.

Я категорически настаиваю на том, что не каждый опубликованный манускрипт может служить Авторитетным Источником. Если что-то опубликовано - вовсе не значит, что там светоч мысли изверг истину в последней инстанции.

Вышепроцитированное - апофеоз заумья. Типа, экономика должна быть экономной, а масло - масленым. И никто ни за что не отвечает. 212.41.32.105 00:28, 8 апреля 2014 (UTC)[ответить]

Подзабыли, что краткость - сестра таланта.

А я добавлю - не следует множить сущности.

  • На всякий случай, отделяю нижеследующий абзац от вышесказанного. Ина, может показаться, что я продолжаю размышлять. А это не так. Мне было бы очень неприятно, если кто-то, или кто-нибудь, смог ассоциировать меня с мнением "РоманСузи". С удовольствием уберу в основной статье второе определение, когда смогу на чистом русском языке, чётко и ясно объяснить всем своё мнение. 212.41.32.98 20:40, 19 ноября 2014 (UTC)[ответить]

Определение, видимо, было составлено из двух Е. Горошко, а оригинал одного из них:

  • Система называется системой реального времени, если правильность её функционирования зависит не только от логической корректности вычислений, но и от времени, за которое эти вычисления производятся. То есть для событий, происходящих в такой системе, то, КОГДА эти события происходят, так же важно, как логическая корректность самих событий[1].РоманСузи (обс) 18:40, 4 сентября 2014 (UTC)[ответить]

Противоречия в данной цитате - очевидны. Функция СРВ в качестве одного из своих параметров имеет время. И именно этим системы реального времени отличаются от любых других. Логическая правильность программы, реализующей СРВ, просто обязана быть основанной на проверке соответствия временным ограничениям. Мне это казалось настолько очевидным, что я даже не сразу понял, что хочет сказать С.Сорокин. 212.41.32.108 21:04, 7 сентября 2014 (UTC)[ответить]


Всёж-таки - ОСРВ - это одно, СРВ - немного другое, а программа, реализующая СРВ, с помощью ОС РВ - совсем третье. Если я не могу понять однозначно определение, при том, что сам разработчик СРВ и ОС РВ частного применения в течении более 30-ти лет, извините. Неприемлю. 212.41.32.105 14:08, 6 сентября 2014 (UTC)[ответить]

Моему разуму не противоречит только одно определение, первое. Много десятилетий в прошлом я напоролся на тупость, жадность и жестокость присосавшихся к технической диагностике. Я предпочёл жить в нищете, чем быть мертвым и распятым на кресте. 212.41.32.105 22:38, 6 сентября 2014 (UTC)[ответить]

Зачем вернули определение с POSIX? Из всех предложенных определений на вики верное только одно "Операционная система, реагирующая в предсказуемое время на непредсказуемое появление внешних событий.". POSIX не дает определение ОСРВ. Внизу есть тема про определение ОСРВ, там уже это обсуждали. Мд может слить эти две темы в одну и отсортировать по времени, а то не понятно, кто когда что говорит. Повторюсь, что если ОС может дать в определённый промежуток времени нужный уровень сервиса это не ОСРВ и вообще не РВ. Могу продублировать свои доводы: Я уже говорил, что можно любой ОСРВ поставить задачу и потребовать время выполнения этой задачи что она не уложится при любом раскладе. А можно поставить такую задачу любой ОС, что она её выполнит в отведённое время. Например рассчитать факториал 10 за 1 час: любая Windows это сделает, это не значит что всё Windows-ы ОСРВ. Запустите например FreeRTOS на процессоре stm32 на 72МГц и она вам с легкостью будет выполнять какойнить расчет в РВ, допустим ЦОС. Запустите туже задачу на той же FreeRTOS на процессоре ATmega128 на тактовой частоте 2Мгц (или на том же stm32 но на 2МГц), и ваши обсчеты не будут успевать обсчитывать в нужные интервалы. Получается что от тактовой частоты процессора ОС может быть РТОС и не РТОС. А это не правильно. ОС не может быть реалтаймовой или не реалтаймовой в зависимости от тактовой частоты процессора.
Предлагаю убрать лишние, взятые с неба определения и оставить только верное Операционная система, реагирующая в предсказуемое время на непредсказуемое появление внешних событий. --95.167.164.22 10:05, 9 сентября 2014 (UTC)juvf[ответить]

Ваше утверждение неверно по следующим причинам:

  • никакая ОС не реагирует ни на какие события, кроме тех, которые обеспечивают её собственную целостность и непротиворечивость. Либо по команде управления драйвером, разрешающей реакцию на внешние события. И если прикладная программа не в состоянии реагировать на сообщения драйвера, то тогда один из трёх не отвечает требованиям к разработке СРВ.
  • любая ОС называется так только потому, что - предоставляет программный интерфейс разработчикам самых разнообразных программ.
  • ОС РВ не обязана, но может предоставить разработчикам различных СРВ сервисы, упрощающие (читай - удешевляющие), разработку.
  • если у Вас в компьютере (контроллере, это не суть важно) несколько интерфейсных плат, портов ввода-вывода, обеспечивающих интерфейс с внешней средой, и Вам вдруг взбредёт в голову одной программой гарантировать обслуживание 100 миллионов событий в секунду - пожизненный срок заключения Вам гарантирован (в психушке).
  • никакая ОС, не позволяющая реализовать в рамках своего программного интерфейса конкретную СРВ - для данной конкретной СРВ не является ОС РВ, как негодное, непригодное средство для изготовления СРВ данного конкретного типа. Обратное настолько же верно.
  • можно написать программу, вычисляющую некоторую функцию на одном из языков программирования высокого уровня. Вот только разработчик СРВ должен ещё несколько факторов учитывать: как компилятор переводит текст его фривольных фантазий в машинный код, сколько времени железяка переваривать будет его творение. Так что, если ты написал на заборе что-то красивое, никто, кроме тебя, за эту красоту не отвечает. И, более того, ты и именно ты должен доказать, в т.ч. и экспериментально, что при любых возможных входных параметрах результат будет получен вовремя. А так как, верить всем подряд - нельзя, человечество изобрело многоуровневую систему контроля, которая перестаёт работать только в одном случае - когда проверяющий глупее проверяемого. 212.41.32.99 20:31, 10 сентября 2014 (UTC)[ответить]

А что? BeOS разве ОСРВ?

Порыскав в инете, нашёл как минимум 2 достоверных подтверждения этому: на сайте Университета Беркли, а также со слов самих разработчиков. Возможности ОС вполне позволяют назвать её ОСРВ. ED-tech 16:28, 7 февраля 2006 (UTC)[ответить]
А почему бы и нет :) При известной изворотливости и DOSю можно назвать ОС РВ, только первого поколения... ;))) --Yuriy Lapitskiy 17:49, 31 мая 2006 (UTC)

Тем не менее, в преамбуле фактически определения не дано. Может говориться о СРВ или о самом РВ (на основе POSIX), но в определении стоит «тип операционной системы». Такой опыт у Вас чисто собственный или все-таки были некоторые книги, журналы, учебные пособия, в которых было бы подходящее определение? Конечно, для практики определения может быть и вообще не нужно, но все-таки. ОС РВ помимо РВ содержит еще и ОС. То есть, функции по управлению вычислениями, аппаратурой и т. п. Какая часть этих функций позволяют быть достаточно синхронными по времени с управляемым устройством, по-видимому и определяет принадлежность к ОСРВ, не так ли. Слабо верится, что чтобы называться ОСРВ, ОС должна выполнять все функции в реальном времени — наверное, только такую часть, которая достаточна для работы приложений реального времени (которое в совокупности с управляемыми устройствами и дает СРВ). Но это все мои размышления. Хорошего определения я, как и Вы, пока не видел. РоманСузи (обс) 16:15, 6 сентября 2014 (UTC)[ответить]

Буду признателен Вам, если Вы научитесь не выдавать своё личное мнение = за моё. Я с Вами не согласен. И именно поэтому, я отменил Вашу правку в основной статье. 212.41.48.35 15:41, 8 сентября 2014 (UTC) Если, не дай бог, у Вас, РоманСузи, возникнет желание защищать свой дипломный проект, или кандидатскую, или докторскую, и если эта катастрофа будет происходить не очень далеко от меня, т.е., в пределах Московской области, чтож, так и быть. Я готов выступить оппонентом. Забесплатно. 212.41.48.35 17:37, 8 сентября 2014 (UTC)[ответить]

  • Хорошо, значит, я Вас неправильно понял. Но тем не менее я до сих пор не вижу в статье определения. Вот что там в настоящий момент: «Операционная система реального времени, ОСРВ (англ. real-time operating system, RTOS) — тип операционной системы.» И только затем говорится о «реальном времени», и следующим пунктом — отвергнутое Вами определение «о реагировании». Если бы статья была о каком-то фундаментальном понятии, я бы возражать против такого косвенного определения не стал. Но данная статья о классе операционных систем, и для него должен существовать определяющий признак, а само определение быть в виде (несколько утрируя) «ОСРВ — это ОС, которая имеет признак X». Кстати, я не защищаю определение, которое я выносил из списка в начало — по нему, очевидно, нет консенсуса. Но ситуация с отсутствием определения тоже нехороша. По поводу же обращения на личности — пожалуйста, почитайте ВП:ЭП и ВП:НО. РоманСузи (обс) 19:27, 8 сентября 2014 (UTC)[ответить]
    • Недопустимо оскорблять вашего собеседника. Не имеющий ни имени, ни отчества, ни фамилии, ни звания, ни должности - не имеет права никому указывать на закон. 212.41.32.98 20:07, 23 сентября 2014 (UTC)[ответить]

Один флуд. "В то время когда космические корабли бороздят просторы космоса .... бла бла бла", и ни чего путнего вы не сказали.
Давайте по пунктам. * никакая ОС не реагирует ни на какие события, кроме тех, которые обеспечивают её собственную целостность и непротиворечивость. Либо по команде управления драйвером, разрешающей реакцию на внешние события. И если прикладная программа не в состоянии реагировать на сообщения драйвера, то тогда один из трёх не отвечает требованиям к разработке СРВ. - что вы этим хотели сказать?
ОС реагирует на события. Например: есть АЦП, каждые 100 мкс происходит преобразования и АЦП генерирует прерывание процессору. На процессоре крутиться ОСРВ с вытесняющей многозадачностью. В процессоре обработчик прерывания формирует для ОС событие, например выставляет флаг ( или посылает event) для задачи-обработчика (прикладная программа) этого события у которой самый высокий приоритет. Так вот.... в ОСРВ можно предсказать с точностью чуть-ли не до такта сколько понадобиться времени процессору, чтобы забрать данные из АЦП, пропустить через цифровой фильтр. Считаем: вход/выход в прерывание - по 16 тактов, послать флаг (т.е. вызвать API ОС из прерывания) - 20 тактов, в конце прерывания вызов планировщика и переключение контекста - ещё 60 тактов. Итого: 16+20+60+16 = 112. Через 112 тактов после возникновения прерывания на ноге процессора начнется вычитка и обработка данных. Вычитка и обработка допустим занимают 3000 тактов. Значит на всю обработку данных с АЦП, т.е. на предоставляемый сервис программы под ОСРВ уйдет 3112 тактов. При тактовой частоте процессора 50 МГц это займёт примерно 62 мкс. данные поступают, семплируются с периодом 100 мкс, т.е. 62 мкс укладываются в 100. Система работает. всё хорошо. Или как вы говорите, (или как POSIX говорит) есть "способность операционной системы обеспечить требуемый уровень сервиса в определённый промежуток времени". Т.е. за 100 мкс успеваем вычитать и обработать данные. Если снизить частоту квантования до 1 МГц (например в целях экономии питания), то.... программа работать быстрее не будет, обработка сигнала быстрее не будет, и вход/выход из прерывания будет всё те же 16/16 тактов. На этот сервис по прежнему будет уходить 3112 тактов процессора. Но время будет уже другое, а именно 3112 тактов на 1 МГц будет составлять 3112 мкс. Получается что тут уже не успеваем "обеспечить требуемый уровень сервиса в определённый промежуток времени". Согласно вашему определению одна и та же ОС, с одним и тем же ПО (ПО задачи), на одном и том же железе с одной и той же архитектурой, но с разным тактовым генератором в одном случае будет являться ОСРВ, а в другом нет. А это не правильно. Я говорю, что ОСРВ - это та ОС, где можно предсказать её реакцию, т.е. можно просчитать, что на определённом железе обработка события займёт столько-то времени.
Взять не ОСРВ, например LINUX (из коробки без модуля РТ) или Windows - вы не можете просчитать время обработки, т.е. вы не сможете просчитать успеет ли ОС предоставить требуемый сервис в отведённый промежуток времени. Может в винде в общем на всю обработку уйдет 2000 тактов, при частоте 600МГц, но винда может прервать любую задачу и выполнить какие нибудь служебные действия, какойнить своп..... и к этим 2000 тактам может добавиться ещё 100000 тактов.

QNX, FreeRTOS, uC/OS - все эти ОС позиционируются как ОСРВ. Вы хоть раз видели чтоб где-нибудь было написано что uC/OS - это ОСРВ, при условии что процессор будет 50 МГц? Нет! Потому, что является ли ОС РВ или нет, зависит от того, можно ли спрогнозировать время её реакции на событие или нет, а не то, что она там что-то успеет или нет.
62.165.38.74 10:32, 30 января 2015 (UTC)[ответить]

  • "Взять не ОСРВ, например LINUX (из коробки без модуля РТ) или Windows - вы не можете просчитать время обработки" (c)62.165.38.74. Увы Вам - могу. Заказываю работодателю писюк, который нужен, форточку, не выше хапэ, плату АЦП с заданной частотой опроса датчиков и пожалуйста вам - система КПА, работающая сутки, как минимум, возможность спокойно просмотреть, что творит аппаратура сторонних разработчиков. И гарантия достоверности полученных данных. Или, например, руководствуясь теми же принципами, в той же КПА, но измеряя цифровые сигналы по сотням каналов могу измерять и протоколировать импульсы с точностью до нескольких микросекунд. Опыт - критерий истины. Ваша истерика - характеристика Вашего уровня знаний. 212.41.32.108 19:19, 31 января 2015 (UTC)[ответить]


И каков итог последнего вашего суждения? "Заказываю работодателю писюк, который нужен, форточку"... форточку - это Windows? Вы на Windows сделали опрос АЦП и у вас всё работает. Т.е. Windows может обеспечить требуемый уровень сервиса в определённый промежуток времени!!! Т.е. согласно вашим суждениям Windows является ОСРВ! гггг Я до вас пытался достучаться, что согласно вашей терминологии Windows (да и обсолютна любая ОС) является ОСРВ
"Увы Вам - могу". Ну так и сколько? Сколько тактов ЦПУ уходит на обработку одного канала? Лыбую вашу задачу может прервать винда служебными задачами. Ваш пример ни чего не показывает. То, что так какая-то КПА работает сутки с неизвестно какой частотой опроса датчиков.... Ни чего не говорит. Взяли ПК с "запасом прочности", который успевает просчитывать данные с АЦП. Это не значит что ОС есть РВ.
"могу измерять и протоколировать импульсы с точностью до нескольких микросекунд." - ну так я и говорю... и здесь вы не можете просчитать время реакции ОС на внешнее воздействие. Удел современной ОС, не являющейся ОСРВ - точность несколько мкс. На ОСРВ точность ±такт процессора.
77.222.102.104 05:47, 1 февраля 2015 (UTC)[ответить]

    • Иди ты! "На ОСРВ точность ±такт процессора.
      77.222.102.104 05:47, 1 февраля 2015 (UTC)". Можно предположить, что вполне реально аппаратно реализовать реакцию на событие на следующем такте от события. Но на предыдущем такте, до возникновения события - это ты считаешь себя выше бога - некрасиво и мерзко. Просто глупо. Время не течёт вспять, пока ты это не докажешь всем. Увы вам. А кто будет переключать контекст? Дядя Вася? И за один такт процессора - вы сошли с ума. Другое дело, если у тебя есть железяка с N процессорами, M из которых ждут, не дождутся, наступления события, находясь в анабиозе. M <= N. И, даже в этом случае, пробудившийся от сна процессор - читай поток, или нить, должен будет определить причину пробуждения, на что потребуются такты, чтобы не убить сразу разбудившего его. 212.41.32.104 00:00, 2 февраля 2015 (UTC)[ответить]
      • "Иди ты!" Ты сам иди! Какой вспять? Ты что бред несёшь? Я выше расписал всё до такта. И переключение контекста учел вход выход в прерывание. СПЕШАЛ ФО Ю.... или для тех кто в танке. Изменилось состояние на входе GPIO, возникло прерывание, вход в переывание 16 тактов. Послать флаг (т.е. вызвать API ОС из прерывания) - 20 тактов, в конце прерывания вызов планировщика и переключение контекста - ещё 60 тактов. Выход из прерывание 16 тактов. итого на обработчик прерывания 112 тактов. У задачи регистрирующей событие время работы тоже фиксировано в тактах, допустим читаем аппаратный таймер,.... после вычитки аппартного таймера с момента старта задачи (выхода и блокированного состояния по флагу из прерывания) проходит допустим 50 тактов. Итого: уровень на входе GPIO изменился "время_прочитанное_из аппаратного_таймера" - 112(тактов) - 50(тактов). Но изменение уровня на GPIO может попасть на фрот такта ЦПУ, поэтому точность будет ±такт. Делаем приоритет задачи максимальный и с точностью до ±такта регистрируем событие

1) Я вам поводу не давал мне тыкать и хамить. Я пытаюсь с вами вести конструктивный диалог не тему что такое ОСРВ. С самого начала от вас идет агрессия и хамство. Чем я вам не угодил? То что показал, что автор статьи не состоятельный? Может и я не прав. Так давайте вместе выясним что не так, расставим точки над i, без хамства. 2) Я вам задаю вопросы, вы их игнорируете и сводите весь диалог в холивар. Покажите что вы состоятельный автор, ответе на вопросы (за свои слова)
а)"Увы Вам - могу" Вы сказали, что сможете просчитать на форточках сколько в тактах уходит на обработку задачи. Скажите каким образом вы это сделаете? Windows, как известно, может прервать любую задачу сервисными службами. Без модуля RTX ( а я писал "из коробки без модуля РТ") винда Вам не гарантирует непрерывность выполнения задачи. Каким образом вы просчитаете в тактах время выполнения обработки события?
б)Вы привели пример с неким КПА который крутиться на форточках.... И что все работает и ОС успевает обработать АЦП. Т.е. есть способность операционной системы обеспечить требуемый уровень сервиса в определённый промежуток времени. Вы хотите сказать, что в этом случает Windows есть ОСРВ?
в)Ниже в статье есть глава, причем очень правильная глава:
Отличия от операционных систем общего назначения

Многие операционные системы общего назначения также поддерживают указанные выше сервисы. Однако ключевым отличием сервисов ядра ОСРВ является детерминированный, основанный на строгом контроле времени, характер их работы. В данном случае под детерминированностью понимается то, что для выполнения одного сервиса операционной системы требуется временной интервал заведомо известной продолжительности. Теоретически это время может быть вычислено по математическим формулам, которые должны быть строго алгебраическими и не должны включать никаких временных параметров случайного характера. Любая случайная величина, определяющая время выполнения задачи в ОСРВ, может вызвать нежелательную задержку в работе приложения, тогда следующая задача не уложится в свой квант времени, что послужит причиной для ошибки[6].

В этом смысле операционные системы общего назначения не являются детерминированными. Их сервисы могут допускать случайные задержки в своей работе, что может привести к замедлению ответной реакции приложения на действия пользователя в заведомо неизвестный момент времени. При проектировании обычных операционных систем разработчики не акцентируют своё внимание на математическом аппарате вычисления времени выполнения конкретной задачи и сервиса. Это не является критичным для подобного рода систем[6].

Я вам это и пытаюсь донести. В ОСРВ время реакции можно спрогнозировать, т.е. просчитать, в ОС общего назначения - нет. Или вы с этой главой тоже не согласны?62.165.38.74 04:14, 2 февраля 2015 (UTC)[ответить]

      • " ОС успевает обработать АЦП" - Вы так и не смогли понять, что АЦП обслуживает моя программа в среде мелкомягких, при условии, что я предпринял множество мер предосторожности от нежелательных последствий. Технология - корпоративный секрет. Виндуса предоставляют мне (моей программе) множество сервисов, функций, без которых я не смог бы разработать КПА. Более того, у меня было некоторое количество модулей собственной разработки - результат моей профессиональной деятельности - без которых проектирование КПА было бы невозможным. И, следует учесть, что я потерял почти месяц на диагностирование драйверов, поставляемых с АЦП, чтобы доказать невозможность использования этих драйверов на частотах 100 кГц в среде форточек без потери данных. Что касаемо нервной реакции некоторых IP-адресов на мой возглас "Иди ты!", замечу, что данный оборот речи не выражает никакой личной ненависти или неприязни к какому-то ни-было конкретному человеку, а всего лишь возглас удивления по поводу непонимания... Как и "ИшьТы". Мне неизвестен ни один из авторов википедии, и некоторых из них знать не хочу. 212.41.32.106 22:16, 6 февраля 2015 (UTC)[ответить]
        • Я вам задаю вопросы - вы по прежнему их игнорируете и продолжаете доказывать мою правоту. Смешно. Последняя ваша реплика только подтверждает мои суждения. Вы на не ртосовой ос сделали КПА. Молодец! Что это доказывает? Ещё раз прочитайте и подумайте: на ОС, которая не является RTOS, сделать КПА..... и ещё раз: на ОС, которая не является RTOS, успеть обслужить АЦП на частоте 100 кГц. Прочитайте ещё N раз и попытайтесь понять, что вы хотите этим показать? Какой вывод от сюда? Вы хотите от сюда сделать вывод определения RTOS?

Вы так и не ответили на вопросы^
б)Вы привели пример с неким КПА который крутиться на форточках.... И что все работает и ОС успевает обработать АЦП. Т.е. есть способность операционной системы обеспечить требуемый уровень сервиса в определённый промежуток времени. Вы хотите сказать, что в этом случает Windows есть ОСРВ?
в)В ОСРВ время реакции можно спрогнозировать, т.е. просчитать, в ОС общего назначения - нет. Или вы с этой главой тоже не согласны?77.222.102.104 05:24, 7 февраля 2015 (UTC)[ответить]

  • Меня удивляет Ваша агрессивность. Опрос портов ввода/вывода на PC - затраты времени - порядка одной микросекунды. Использую FreeWare драйвер Givеio.sys. Система "линейного" времени - всего-навсего - команда процессоров Intel "RDTSC". Разработка СРВ - процесс, аналогичный изваянию статуи из глыбы камня: отсечь всё лишнее, оставить важное. Виндуса, с 98 до wxp - не препятствуют разработке СРВ. Любая форточка, при условии модификации ядра, например, при помощи "RTX", превращается в ОСРВ частного применения - для того круга задач, которые можно реализовать в рамках её API на некотором конкретном железяке. И на закуску: плата АЦП, частота опроса датчиков - 100 кГц, два обращения к портам В/В, время интеграции - 8 микросекунд. Программа написана за 1 день, в неё включена подсистема контроля отклонений от заданных интервалов времени замеров. Ни одно отклонение не превысило 5%. (Правду матку нужно резать - я лично следил за тем, чтобы ни одна дрянь не подошла к компу и не начала играть в её любимую игрушку, или музычку на работе слухать). 212.41.32.104 21:30, 1 февраля 2015 (UTC)[ответить]

212.41.32.108 23:01, 8 февраля 2015 (UTC)[ответить]

Критика статьи.

[править код]

Понятия ОСРВ и СРВ, хоть и родственны, но не тождественны. ОСРВ - иструментарий, СРВ - реализуемый объект. Множество СРВ, которые хотелось бы реализовать программными средствами, в мириады раз превышает как число ОСРВ (и железа, для которого есть соответствующие инструменты), так и число способных реализовать их специалистов по разработке СРВ.

Недопустимо в статье об инструменте (ОСРВ), разглагольствовать об объекте применения инструмента, т.е. СРВ. Есть ссылка на системы реального времени, и там, и только там, можно попытаться обосновывать личные мнения о типах реального времени.

Многократная моя критика в адрес "мягких и жестких" не была учтена, что наводит на грустные размышления об уровне компетенции цензоров. 77.247.134.231 02:10, 5 мая 2015 (UTC)[ответить]

  • Всё несколько проще. Википедия не пишется на основе личных рассуждений, а авторитетных источников (ВП:АИ). Есть ли для Вашей трактовки таковой? Тогда поправьте статью в нужном месте. Что касается разговора о СРВ, то для этого есть своя статья, поэтому в данной можно сосредоточиться на ОСРВ, сведя к достаточному для изложения минимуму разговоры об СРВ. РоманСузи 03:10, 5 мая 2015 (UTC)[ответить]
    • На таком русском языке, как у Вас, может изъясняться только китаец. Спасибо Вам за интерес к моим идеям, да вот только хрен Вам чё обломится. У меня в уважухе есть индус, да и тот печатался в IEEE в начале семидесятых годов, так что, общего языка мы с Вами не найдём. гуд бай. бэби. 77.247.134.223 03:59, 9 мая 2015 (UTC)[ответить]
77.247.142.250 21:06, 17 сентября 2015 (UTC)[ответить]

"Спецификация UNIX в редакции 2 даёт следующее определение: Реальное время в операционных системах — это способность операционной системы обеспечить требуемый уровень сервиса в определённый промежуток времени.[1]"

Может ли автор данной правки утверждать, что только в спецификации UNIX даются достоверные определения? 77.247.140.54 22:47, 17 сентября 2015 (UTC)[ответить]

А что означает это?: "Операционная система, реагирующая в предсказуемое время на непредсказуемое появление внешних событий." Каждому специалисту, инженеру, программисту известно, что существуют аппаратные средства обработки прерываний в той или иной среде. И всегда в спецификациях оборудования указывается максимальное число прерываний от внешних событий, которые способно обслужить оборудование в единицу времени. Со стороны программного обеспечения накладываются дополнительные ограничения: переключение контекста, время обслуживания события. Далее, если ОС берет на себя обслуживание прерываний, будучи обременённой множеством других функций, сможет ли она хотя бы предсказать время реакции на любое возможное событие? Очевидный ответ - не сможет. Как следствие - существуют ограничения на предельную частоту внешних событий, которые способна обрабатывать аппаратура. Ещё большие ограничения накладывает программное обеспечение, как операционной системы, так и прикладного ПО. Другими словами, любые программы на некоторых процессорах (компьютерах) могут реагировать только на те события, которые удовлетворяют известным ограничениям. Все остальные события - теряются, игнорируются. Следовательно, вышеприведённая цитата является ложной, противоречивой, несущей вред. И подлежит уничтожению. 77.247.140.54 23:37, 17 сентября 2015 (UTC)[ответить]

  • Далее, если ОС берет на себя обслуживание прерываний, будучи обременённой множеством других функций, сможет ли она хотя бы предсказать время реакции на любое возможное событие? Очевидный ответ - не сможет. - как раз сможет. Ниже в обсуждении приведён пример расчета реакции ОС на одиночное появление внешнего события. И именно способность предсказать время реакции накладывает ограничения на предельную частоту внешних событий, которые способна обрабатывать система. 87.249.213.70 03:48, 22 октября 2015 (UTC)[ответить]

Обеспечивает ли ОСРВ разработку или предоставляет функции для работы

[править код]

Отменил правку анонима, так как фактически он отменил обеспеченное источником дополнение. Пожалуйста, аккуратнее. По определению — давайте обсудим, обеспечивает ли ОСРВ разработку или предоставляет функции для работы приложений. РоманСузи 07:20, 25 ноября 2015 (UTC)[ответить]

  1. Сергей Сорокин. Системы Реального Времени.//СТА. – 1997. - No 2. – С. 22-29.