Цитата(Владимир Е. Зюбин @ Jun 7 2006, 14:14)

а еще есть кэширование и спекулятивные вычисления... источники всякой непредсказуемости...
кстати, работы с кэш-памятью очень сильно напоминают диск-своппинг.
Есть

.
Только вот в чём дело, когда вы выполняете операцию с адресуемой в RAM областью, типа оператора:
int i;
i = 0;
- то в зависимости от того, попадает она в кэш или нет, вы имеете разницу во времени операции отличающуюся в лучшем случае в 2-3 раза (я реально это смотрел), и операцию (если x86) на 5-8 машинных тактов (десяток-другой нсек.), если вы последовательно выполняете операции над наукад 1000 переменными, скажем, если очень грубо считать что 50% их попадает в кэш, а 50% - нет, то разброс у вас (по сравнению с оптимумом) будет 1.5-2 раза.
Физческие операции загрузки-выгрузки на диск - на 2-3 порядка медленнее...
Но и это не самое худшее, когда вы выполняете ту же операцию, которую я выписал выше, и i находится на выгруженной странице, то загрузка-выгрузка производится
страницами RAM, в x86 - 4K "туда" + 4К "обратно" - вот вам ещё 1 порядок непредсказуемости на времени тривиальной операции - до 4-х порядков.
Неопределённость (дисперсия) времён 50-100% - это одно, а 4 порядка - это, согласитесь, несколько другое... Это не я придумал

, и именно из подобных соображений на кэширование и другие подобные "ускорители" (те же спекулятивные вычисление, опережающее конвейерное выполнение etc.) смотрят в обсуждениях и публикациях об РВ "сквозь пальцы", а такие возможности как виртуализация страниц RAM - отвергаются категорически.
Цитата(Владимир Е. Зюбин @ Jun 7 2006, 14:14)

Просто тут (у представителей QNX-сообщества) налицо какая-то предвзятость. Это непонятно (пока).
Ну и что что, медленнее? Ну и что, что там больше транзисторов задействовано? Зато система живет, а не рушится.
"Медленнее/быстрее" - вообще к РВ не имеет касательства, общепризнанно и с этим уже, кажется, смирились

, что система (ОС или целевая система вообще), удовлетворяющая требованиям РВ будет, при прочих равных, несколько медленнее, чем аналогичная, к которой такие требования не предъявлялись (GPOS, например).
А вот то, что "зато система живет, а не рушится" ... это достаточно сомнительное достоинство в системах, требующих критической по времени реакции ... Goroshko Egor затронул это...
Ну представьте, к примеру, РЛС системы ПВО/ПРО, как одну из систем РВ ... в чём разница между тем, что она пропустит отметку цели, или обнаружит её с сильно превышенным подлётным временем?
Разве только в том, что в 1-м случае система "накроется" в полностью благодушном неведении, а во 2-м - в стоп-кадре "паническое разбегание персонала кто-куда"...
Цитата(Владимир Е. Зюбин @ Jun 7 2006, 14:14)

Я понимаю, что год от года Виндовоз становится все надежнее и надежнее, ничего страшного в этом нет.
"Жизнь становится лучше, товарищи. Жизнь становится веселее"(с) - автор известен...
Ничего страшного в том, что "Виндовоз становится все надежнее и надежнее", конечно, нет ... несколько настораживает, правда, то, что он "становится надежнее" уже порядка 20-ти лет, и ... "завтра вот-вот ...".
А, в принципе, Виндовоз - хорошая офисная система ... каждая вещь разрабатывается под свои техусловия ... мне только совершенно непонятно желание обязательно притулить не делавшуюся для этого вещь "на все случаи жизни"... как-то малоуместно пытаться ездить на "Шевроле" по пахоте, ровно так же, как БТР странно смотрится перед "навороченным" офисом в центре города...
Цитата(Владимир Е. Зюбин @ Jun 7 2006, 14:14)

Лучше уж трезво смотреть в глаза фактам. Ну и по временному разрешению 10 мс - это вполне приличное время. Для большинства (подавляющего большинства) задач автоматизации - меньше и не надо.
Конечно не надо

- если бы это было время реакции, время ответа ... и т.д. - но это
единица шкалы, неточность определения, а минимальные разрешимые интервалы будут в несколько раз больше единицы шкалы ... а это уже "не не надо"

.
Цитата(Владимир Е. Зюбин @ Jun 7 2006, 14:14)

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

...
Цитата(Владимир Е. Зюбин @ Jun 7 2006, 14:14)

Просто QNX больше нечего предоставить в качестве отличительного свойства своего продукта, кроме мифического "РТ".
Почему же нет? Есть - безупречная success story более 25-лет - всегда безотказной работы, годами в необслуживаемом режиме... (это 25 лет - ~ столько, сколько вся история MS DOS + Windows с уговорами, что "завтра будет лучше чем вчера").
Цитата(Владимир Е. Зюбин @ Jun 7 2006, 14:14)

Самые мудрые слова, которые мне встретились по поводу РВ были:
Цитата
"Режим работы ЭВМ, при котором порядок обработки информации предопределяется ходом процессов вне ЭВМ, называется работой в реальном масштабе времени (РМВ)"
Хорошее определение ... только "масло маслянное": а что, в IBM 360 60-х годов - порядок обработки информации не предопределялся ходом процессов вне ЭВМ? начиная с того, как пользователь вложил коложу перфокарт?, и как он правильно их вложил? ... и до того места, провернулся ли уже барабан АЦПУ до положения, когда следует печатать следующую строчку "простыни"? ...
Цитата(Владимир Е. Зюбин @ Jun 7 2006, 14:14)

В этом смысле языки, типа Рефлекс, это и есть средства описания режимов работы в реальном масштабе времени.
Да пожалуйста ... описывайте. Кто ж возбраняет?
Только, по возможности, воздержитесь от непреодолимого желания его
продавать как "средства описания режимов работы в реальном масштабе времени" - тем, кому может прийти в голову начать описывать такие режимы

...
Цитата(Владимир Е. Зюбин @ Jun 7 2006, 14:14)

По-моему к таким выводам эксперты пришли на основании трех фактов:
1. Си более прозрачен, чем Си++, и 2. Операции с тем же ОЗУ там скорее исключение, чем правило, в отличие от Си++. 3. статистика.
1.
- Так выпьем же за то, что грузины лучше чем армяне...
- Ну чем, чем лучше?
- ... чем армяне.
(с).
С "более прозрачен" для тех, кто не знает С++, так же как и наоборот.
2. "операции с тем же ОЗУ" ... ? (я не заню какое это "то же" ОЗУ - это С & C++ работают с одним и тем же ОЗУ

) ... наверное имелись в виду динамические операции? - так их "плотность" определяется желаниями пишущего использовать или не использовать, а не то, на чём он выражает свои желания...
А кстати - как на счёт strdup()?

- многие ли задумываются что они при этом делают?
А если так

:
Код
void func( char* S1 ) {
char* S2 = S1;
...
return( strdup( S2) );
};
3. где она - эта статистика? и уровень её адекватности? - URL в студию!
P.S. сравнивать С/С++ по критерию "плотности ошибок" вообще неблагодарное занятие - слишком близкие эти 2 клона, и оба предрпсположенные к ошибкам... а хотите принципиально другую защищённость от ошибок - учите Ada

!
Ну ладно ...
Повеселились, покуражились - и будя!