Байки 80-х
От: кт  
Дата: 02.02.17 12:53
Оценка: 27 (16) -2 :)
Байки 80-х
Крах операции «Инкогнито»

Время действия – начало 80-х.
Место действия НПО «Энергия». Конкретно ВЦ его окрестности.
Техническое оснащение – три БЭСМ-6 и десятков шесть удаленных терминалов Videoton-340 венгерского производства. Это то самое таинственное устройство, которое засветилось в кабинете директора в фильме «Служебный роман» и принимаемое современными зрителями за какую-то экзотическую ЭВМ. Знатоки даже отметят, что в фильме мелькнул терминал первых выпусков с квадратными колпачками лампочек (в следующих моделях они были круглыми). Эти терминалы соединялись с БЭСМ-6 по телефонной линии 1200 бод.
Программное оснащение –ДОС ДИСПАК, транслятор БЭСМ-Алгол (версии 1976 года), диалоговая программа «Пульт».

Несмотря на прогресс вычислительной техники, множество расчетов идет по-старинке – колода перфокарт и заказываемое время счета (обычно не более 2 часов). Счет проходит ночью (дежурят девочки-операторы). Утром (с 8:00) закрывается возможность работать с терминалов и начинается так называемая «профилактика» часов до 10. Затем можно работать и с терминалов, но там выделенное время ЦП не более 2 минут. Для редактирования текста – это даже много, за пару часов редактирования и набора текстов за этим самым «Видеотоном» тратится секунд 20 времени ЦП, но вот для расчета – этого мало. Не забывайте, что производительность БЭСМ-6 соизмерима с IBM-PC/XT. И это при наличии одновременно 50-60 страждущих.
Для таких расчетов и заказывается время ночью. Утром приходишь и забираешь свою колоду с распечаткой проведенного расчета. Для этого в предбаннике ВЦ даже был стеллаж, похожий на вокзальную камеру хранения с ячейками и номерами отделов.

Наши расчеты довольно серьёзные и ответственные. Идет разработка «Энергии-Буран» и нужно обоснование количества гарантированных остатков топлива. Поясню в чем тут дело. В конце вывода ракеты на орбиту и при выключении двигателей должно еще быть немного топлива, чтобы в двигатель не попал газовый пузырь из баков иначе может быть взрыв. Нужно, чтобы топливо гарантированно не закончилось. Но с другой стороны – лишнее топливо на орбите – это только мертвый груз, снижающий пользу. А сценарии полетов – разные. Есть даже такой, где из-за отказа один из боковых блоков выключается и полет идет на центральном блоке и трех оставшихся (из неисправного прямо в полете сливается керосин, чтобы центровка не сильно уходила).
В общем, сложно все это. И не будешь же 1000 раз ракету пускать, чтобы понять, сколько гарантированно топлива заливать, чтобы ничего не взорвалось. Поэтому что? Правильно, моделирование. У нас модель блока, размноженная четыре раза для всех блоков. На входе – случайный разброс некоторых заданных параметров. На выходе – случайный разброс остатка топлива. По куче прогонов строится «Гауссиана». А далее – не наша забота, далее пусть академики из какого-нибудь ИПУ по «трем сигмам» что-то там определят. Наша задача – график вероятности построить, а дело это не быстрое. После (условно) 100 модельных пусков вместо плавной кривой все еще только бесформенная кучка точек на графике. Времени нужно много, а БЭСМ – она не резиновая. И тут как назло приходит начальник и говорит, что кровь из носу нужен расчет по уточненной модели, поскольку завтра очередное совещание на эту тему. А у нас всего два часа счета на ночь заказано. Не получится при таком времени полезный график. И перезаказать время на ночь уже поздно, оно все расписано и не поделится никто — каждый считает свой расчет самым важным.

И тут мне приходит в голову, что можно провернуть операцию, рассчитанную на слабые знания дежурной смены ВЦ. Несмотря на то, что программу я храню на диске (диск аж 7 Мбайт!) а результаты очередного моделирования дописываю на магнитную ленту, я все равно ношу в ВЦ маленькую колоду-«пускач». Состоит эта колода из «паспорта» (стандартных перфокарт) и нескольких команд запуска программы с диска. Внешне все также как и у других программ – вечером даю колоду, утром забираю ее с распечаткой. На распечатке – только «посмертная» выдача, ведь программа никогда не заканчивается, ее снимают операторы. Как только они ее сняли – ОС печатает эту маленькую распечатку и программа завершает работу. Операторам наплевать, чем закончилась работа: вот колода, вот распечатка – прогон выполнен.

Я докладываю в паспорт карту с директивой «Инкогнито». На этой карте набит значок «ромбик» и слово ИНКО. Эта директива ОС отменяет «посмертную» выдачу. Расчет на то, что вот запустят ночью программу, пройдет два часа – снимут ее – и тишина. Никаких следов, что программа вообще запускалась. Девчонки испугаются, что что-то сделали не так, а спросить некого – ночь же! Инструкция по эксплуатации с подробным описанием всех этих директив на странице №25 лежит здесь же, на столе. Но они никогда ее не читают и прочитать нужную страницу ни за что не догадаются.
Поэтому, что они сделают? Правильно – запустят еще раз. Программа проведет следующие 100 модельных «полетов» и график станет более полным. Прекрасная мысль – одобряют все. Проводи свою операцию.


Утром как-то даже боязно на ВЦ идти. А вдруг скандал? Говорю своим: да черт с ней с колодой, не пойду туда. Откроют работу с терминалов – посмотрю, сколько отработала.
Начальник в ответ: нет, нехорошо. Все должно быть официально. Иди, забери колоду. Там же и журнал замечаний ведется. Прихожу. Смена буквально в слезах. Такие добросовестные операторши попались, стыдно даже стало. «А Ваша программа ничего не выдает! Мы уж и так и этак». В общем, гоняли они ее всю ночь на трех машинах и мы получили около 25 часов чистого счета и очень чистенькие графики. Хотел для виду повозмущаться: дескать как так? Я записывался на счет, где моя распечатка? Но смотрю, начальница их на работу пришла. Работала такая Кира Федоровна Семенюк. Она бы быстро определила, почему нет распечатки. Поэтому быстренько я колоду схватил, в журнале замечаний ничего не написал (операторши сразу повеселели) и ушел.


Увы, плавные графики оказались скособоченными. А из смысла формул модели – они должны были быть строго симметричными относительно оси ординат. Быстро провели анализ и нашли ошибку в модели. И хоть потом и утешали себя, что если бы не провели такой длинный расчет, то ошибку никогда бы не заметили, все же следует признать, что блестяще задуманная операция «Инкогнито» закончилась провалом.
Re: Байки 80-х
От: Андрей Ушаков Финляндия  
Дата: 03.02.17 10:24
Оценка:
Здравствуйте, кт, Вы писали:

кт>Байки 80-х


В ФТИ им.Иоффе было проще. Берешь выпивку и закуску и к девочкам. Они спать, а ты за пульт (там ЕС-1055М была и VM/SP, так что на виртуальной машине можно было прямо "не отходя от кассы" работать, изредка переключаясь на системную консоль и прибавляя себе приоритет к утру поближе). Зато приобрел неоценимый опыт выдергивания блоков головок из дисководов при сбоях питания. Пока они не остановились и не легли на блины. Если сами не выдернулись, что бывало при неудачном раскладе (когда питание пропадало в момент движения головок к оси пакета).
Re[2]: Байки 80-х
От: Andrew.W Worobow https://github.com/Worobow
Дата: 03.02.17 12:55
Оценка:
Здравствуйте, Андрей Ушаков, Вы писали:

АУ>В ФТИ им.Иоффе было проще. Берешь выпивку и закуску и к девочкам. Они спать, а ты за пульт (там ЕС-1055М....


Интересное описание. http://www.computer-museum.ru/histussr/es1055.htm
Не все кто уехал, предал Россию.
Re[3]: Байки 80-х
От: Андрей Ушаков Финляндия  
Дата: 04.02.17 20:11
Оценка:
Здравствуйте, Andrew.W Worobow, Вы писали:

AWW>Интересное описание. http://www.computer-museum.ru/histussr/es1055.htm


Там еще не написано, что вся документация к машине была строго на немецком языке Всякие дрюкеры и пр.
Re: Байки 80-х
От: Pavel Dvorkin Россия  
Дата: 05.02.17 14:52
Оценка: +1
Здравствуйте, кт, Вы писали:

Я в 80-е годы работал на ЕС-1022 в одном институте АН СССР. ОС ЕС ЭВМ. В ней штатно снятия задачи по времени не было, но наш сисадмин то ли раздобыл, то ли сам написал какой-то модуль, который это ограничение ставил. Что-то вроде TIME = x
И обнаружил я в его программе баг. А именно, если поставить TIME = 0, то ограничение снималось вообще.
Использовать не стал — на этой машине нас было человек 10, все друг друга хорошо знали, непорядочно.
Со временем сказал админу.
With best regards
Pavel Dvorkin
Re[2]: Байки 80-х
От: pagid Россия  
Дата: 05.02.17 16:52
Оценка: +1
Здравствуйте, Pavel Dvorkin, Вы писали:

PD>И обнаружил я в его программе баг. А именно, если поставить TIME = 0, то ограничение снималось вообще.

Возможно так и задумано было. Довольно таки распространенный прием.
... << RSDN@Home 1.2.0 alpha 5 rev. 1495>>
Re[2]: Байки 80-х
От: Privalov  
Дата: 06.02.17 06:17
Оценка: +1
Здравствуйте, Pavel Dvorkin, Вы писали:

PD>Я в 80-е годы работал на ЕС-1022 в одном институте АН СССР. ОС ЕС ЭВМ. В ней штатно снятия задачи по времени не было, но наш сисадмин то ли раздобыл, то ли сам написал какой-то модуль, который это ограничение ставил. Что-то вроде TIME = x


А разве нельзя было использовать параметр TIME в JOB или EXEC? ЕМНИП, значение 1440 снимало ограничение по времени в ОС ЕС. По умолчанию, опять же ЕМНИП, было 30 минут. По истечении отведенного времени задание (или шаг) снималось с ABEND 522 (ЕМНИП).
Re[3]: Байки 80-х
От: Pavel Dvorkin Россия  
Дата: 06.02.17 12:06
Оценка:
Здравствуйте, Privalov, Вы писали:


P>А разве нельзя было использовать параметр TIME в JOB или EXEC? ЕМНИП, значение 1440 снимало ограничение по времени в ОС ЕС.



Админ это значение заблокировал, максимум был вроде как 1 час.
With best regards
Pavel Dvorkin
Re[4]: Байки 80-х
От: Privalov  
Дата: 06.02.17 13:03
Оценка:
Здравствуйте, Pavel Dvorkin, Вы писали:

PD>Админ это значение заблокировал, максимум был вроде как 1 час.


Не сталкивался.

Более того, был у меня случай в самом начале моей карьеры. Я работал в отделе эксплуатации ЭВМ.
В новой версии одного пакета программ появилось новое задание. Никто не знал, сколько оно будет выполняться, поэтому выделили мне час на ЕС 1033.
Пришел я в назначенное время в зал, скормил пакет перфокарт ридеру, смотрю, заработало. Сижу, жду.
Обращения к дискам нет. На печать ничего не выводится. На операторской консоли все чисто. Ни вопросов, ни сообщений. Но видно, что оно чего-то делает. Лампочки на передней панели помигивают.
Проходит час. Забегает в зал следующий на очереди и пытается меня заставить снять задание и уступить ему машину. Я, разумеется, уперся. Подумаешь, начальник соседнего отдела. Да кто он мне такой вообще!
Пошел он к системщикам. Кричит, проверьте, оно висит. Те пришли, посмотрели. Нет, говорят, оно работает. Отстояли меня они. Да еще мой начальник отдела пришел. В общем, жду дальше.
Прошло еще часа два, пока на печать вывелись несколько страниц.
И никто ничего не снимал.

P.S. Эту штуку потом соптимизировали так, что она стала выполняться несколько секунд. Потом выяснилось, что написана она была на ассемблере.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.