Как стать автором
Обновить
13
0
Сергей Половников @ladle

Разработчик

Отправить сообщение

Клиент хотел обрабатывать XML файл, полученный из «Мой склад» — убрать стартовые нули в тегах КодТов:

Итого менее чем за час 1с-ник, который раньше никогда не работал с питоном, смог адаптировать полезный скрипт на Python. Не боги горшки обжигают.

Да уж, не боги нули убирают ...

И с каких это пор ОС РВ стало "новой сущностью"?

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

http://smbdb.ru/products/12/23/

Против атакующего квадрат расстояния.

Следует отметить, что в отличие от интенсивности и от поля в статическом случае, амплитуда напряжённости электрического поля и магнитной индукции в электромагнитной волне от точечного источника падает обратно пропорционально первой степени расстояния:

Википедия, "Закон обратных квадратов"

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

этот самый квант времени жесткой ОС РВ обычно довольно велик, для базовой версии скажем QNX это 10 мксек. 

Ещё раз извините, Вы тут на три порядка не ошиблись?

Ну и Вы меня извините, про минимально возможное время я нигде не писал. Речь шла о гарантированном максимальном времени реакции.

Пример:

системный тик - 1 сек (специально утрирую),

по внешнему прерыванию запускается высокоприоритетный таск, который гарантированно отрабатывает за 0.35сек

Гарантированное максимальное время реакции - 0.35сек.

Другой пример (из жизни, под FreeRTOS на Cortex M4): системный тик - 1мсек,

по внешнему прерыванию запускается высокоприоритетный таск, который гарантированно отрабатывает за 0.35сек (делает преобразование Фурье).

Гарантированное максимальное время реакции - 0.35сек.

Вывод: Гарантированное максимальное время реакции никак (ну никак!) не зависит от периода системного таймера ("кванта времени ").

В ОС РВ есть понятие "квант времени", все реакции системы гарантируются только с точностью до кванта времени. 

Не совсем так. Это верно для прерываний от системного таймера. Для других прерываний (в частности от других таймеров) в нормальной ОС РВ управление передаётся в диспетчер немедленно, ну если оно не заблокировано по той или иной причине. Можно, конечно, просыпаться раз в системный тик и смотреть вокруг себя - а вдруг что-то происходило пока мы спали, но это прямая дорожка к "мягкому" реальному времени.

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

Ну Вы даёте! Это утверждение из серии "'электрическую лампочку придумал Ильич" или "партия изобрела самолёты". Посмотрите на PDP8 (1965г.), IBM1800 (1964г.), PDP11(1970г.). Многозадачность имел даже флагман советской вычислительной техники БЭСМ6 (1967г.). Язык С в упомянутые времена только разрабатывался (1969-1973) и применения в народном хозяйстве ещё не получил.

Компьютер HP2100 (1971г.) имел вполне функциональный диспетчер реального времени с приоритетами и вытесняющей многозадачностью, некоторыми средствами коммуникации между задачами, системными вызовами, доступными из FORTRANа. Задачи могли быть как резидентными в оперативной памяти, так и загружаемые с диска (и свопируемыми на диск). Размер и количество задач ограничивались в основном оперативной памятью (32К 16-битных слов). Так как точности системного таймера (10мсек) для решаемых задач хватало, циклы никто не считал. По временной привязке наиболее критичной задачей была та, которая посылала в самодельный синтезатор очередную ноту, Мелодии проигрывались без искажений. Кроме музыки система использовалась для непрерывного приёма данных физического эксперимента, их записи на магнитую ленту, on-line мониторинга аппаратуры и выборочной обработки физической информации, для простого UI c графическим дисплеем и кнопочной клавиатурой, а также дя решения шахматных задач. Всё это крутилось одновременно на одном 16-битном процессоре с циклом 980нсек.

Производитель (Hewlett-Packard) поставлял диспетчер, компилятор с FORTRANа и загрузчик (линкер). Остальное (файловая система на диске, командный интерпретатор, текстовый редактор и др. утилиты) бало самописным (вестимо на FORTRANе) по мотивам многозадачной многопользовательской системы GEORGE4 для компютеров ICL1906A (1970г.).

Извините за много букв, приятно вспомнить молодость.

Извините, но реальное время это именно точно вовремя, управляя механизмами сработать раньше ничуть не лучше чем сработать позже. 

Как раз часто, управляя механизмами, сработать раньше - намного лучше, чем сработать позже.  Во многих случаях реакция системы происходит немедленно по наступлению события. Например было бы странно привязывать срабатывание пожарной сигнализации в школе ко времени окончания урока или при обнаружении пусков со стороны партнёров медлить с ударом возмездия. Здесь как раз важно максимальное время реакции, чтобы успеть провести эвакуацию или уложиться в подлётное время.

Что касается зависаний, то не должна зависать любая система (я думаю со мной согласятся многие пользователи). Для этого совсем не обязательно объявлять её системой реального времени, хотя бы и "мягкого".

Вообще-то я работаю с системами реального времени с начала 70-х годов прошлого века (компьютеры HP2100, ОС - RTE(Real Time Executive), языки программирования - FORTRAN и ассемблер). В те дремучие времена предложенных Вами систем и близко не было, а вот реальное время - да, было и без всякой мягкости и жёсткости. Выражение "мягкое реальное время" (не могу назвать это термином, так как не понимаю, что оно означает, вернее понимаю, что не означает ничего) появилось намного-намного позднее как маркетинговый ход, когда реального времени нет, а для продвижения продукта нужно, чтобы как бы было. Меня от этого выражения слегка тошнит (как от осетрины второй свежести :).

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

Насчёт "самое важное - это отсутствие зависания" - согласен, но к рельному времени это отношения не имеет.

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

Когда слышу про "мягкое реальное время", сразу вспоминается М.А.Булгаков:

«— Осетрину прислали второй свежести, — сообщил буфетчик.
Голубчик, это вздор!
Чего вздор?
Вторая свежесть — вот что вздор! Свежесть бывает только одна — первая, она же и последняя. А если осетрина второй свежести, то это означает, что она тухлая!»

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

Извините, кривая ссылка

https://ru.wikipedia.org/wiki/Беклемишев,%D0%94%D0%BC%D0%B8%D1%82%D1%80%D0%B8%D0%B9%D0%92%D0%BB%D0%B0%D0%B4%D0%B8%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B8%D1%87

Кстати рекомендую, трактат о логике Берклемишева:

Фамилия Дмитрия Владимировича - Беклемишев.

https://ru.wikipedia.org/wiki/Беклемишев

В старые советские времена, когда на работе подходил какой-нибудь общественный деятель и и говорил "нам надо ...", я всегда уточнял "нам, вам или им?".

Извините, случайно нажал минус. В компенсацию добавил плюс в карму.

Некоторое время назад мне понадобилось процитировать известное письмо Дейкстры 1968 года, и я воспользовался случаем, чтобы таки внимательно прочитать его. 

Когда мы пишем код, мы видим его как текст, занимающий некое пространство экрана. 

Вы уж извините, о тексте на каком таком экране могла идти речь в 1968 году?

По моим смутным воспоминаниям космонавт Леонов рассказывал такую историю, которая могла существенным образом повлиять на его карьеру. В молодости, во время службы на севере, он со товарищи охранял военный склад с боеприпасами где-то в тундре. Со скуки развлекались так - в тундре ловили спящую сову, привязывали толовую шашку, поджигали и запускали. И однажды сова влетела в ангар и там уселась. Был выбор - быстро убегать или пытаться выгнать до взрыва. К счастью успели выгнать. За надежность моей памяти и достоверность истории не поручусь.

Спасибо за замечание. Именно так - с ударением на первом слоге. Каюсь - всю жизнь произносил эту фамилию неправильно - и ведь никто, зараза, не поправил. И не подскажете ли - как правильно, Рерих или Рёрих?

А мы я вижу от скромности не страдаем :)

Это так. Оставим скромность неудачникам - она их здорово украшает.

Из словаря Ожёгова

СКРО́МНЫЙ ...

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

Информация

В рейтинге
Не участвует
Откуда
Протвино (Московская обл.), Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность