Dec 05, 2010 22:50
В молодости я была программистом. Не самым лучшим, но и не самым плохим. Нормальным советским программистом, закончившим университет, владевшим 3 или 4 языками программирования, знавшим DOS и ОС, на досуге почитывавшим книжки про структурное программирование и прочие специальные вещи, до которых университетские преподаватели как-то не дошли.
По распределению я попала в режимное авиационное КБ. После двух с лишним месяцев колхоза я попала в отдел и там мне, наконец, представили, с чем мне предстоит работать. Так вот, программировать мне предстояло для "первой советской электронно-вычислительной машины второго поколения "Наири-3". Эту машину я до этого видела только на картинке в книге по программированию, которую купила в 9 или 10 классе. Уже тогда она значилась в разделе "История вычислительной техники". Представляете?! А тут она не только уцелела и работала, но еще и оставалась основным инструментом инженерных расчетов.
Машина стояла в машинном зале без окон с фальш-полами (металлические плиты на каком-то основании, покрытые линолеумом), шумозащитным и волно-не-пропускающим покрытием на стенах и, кажется, потолке. По крайней мере, так нам говорили. Машина представляла собой небольшой металлический комод, к которому была присоединена немецкая электрическая пишущая машинка Consul, 5 или 6 накопителей на магнитных лентах (НМЛ), ленточный принтер - в него вставлялся узкий рулон бумаги, как в кассу в магазине, и большое АЦПУ - алфавитно-цифровое печатающее устройство. Такие девайсы я тоже видела на картинках в той же книге. Только там не был указан масштаб, поэтому принтеры выглядели одинаковыми, хотя ленточный был маленький, как касса в автобусе, а АЦПУ - как двухкамерный холодильник (нет, скорее, как двухстворчатый шифоньер).
Периферические устройства жили своей жизнью. Иногда, когда я сидела у машины и отлаживала свою программу, АЦПУ вдруг начинало что-то печатать (я им вообще не пользовалась, мне надо было выводить все на ленту), катушки в НМЛ - крутились, как будто неизвестный агрегат начинал считывать с них информацию. Самое страшное начиналось, когда приходила техничка. Это была не простая техничка, а с допуском секретности. То есть, она могла входить куда угодно когда угодно. Техничка приносила ведро с водой и швабру и начинало шуровать тряпкой, попутно задевая разные агрегаты. Несчастная старенькая "Наири" могла от неосторожного движения отключиться, ленты во всех накопителях от крепких ударов шваброй крутились туда-сюда как бешенные, АЦПУ начинало выплевывать метры дефицитной бумаги. Даже Consul не оставался безучастным и печатал информацию обо всем, что происходило с подключенной к машине периферией.
Для работ мне выдали персональную катушку - магнитную ленту. Когда я шла с ней и пачкой распечаток под мышкой по коридору, это было солидно. ЭВМ "Наири-3" была двухадресной. Объяснять не буду, но сама я долго была в шоке от того, чем мне приходилось заниматься. Для составления программы нужно было распределить по ячейкам памяти все константы и переменные, которые могли встретиться в расчете. Если учесть, что считать приходилось энтропию и энтальпию по огромным таблицам (наподобие Брадиса, только для термодинамики), то можно представить, сколько констант надо было ввести. Слава труду, предыдущие поколения программистов уже записали все эти таблицы на свои магнитные ленты, мне осталось их только скопировать. Свою первую программу я писала очень долго, потому что надо было создать структуру размещения информации в памяти ограниченного размера. Следующие программы пошли проще, а одна из последних программ была уже почти совершенством - на ней мы почти в режиме реального времени обрабатывали результаты испытаний, выполняли аппроксимацию и определяли параметры для следующих испытаний двигателя.
Если расчеты были секретными, со мной в зале находился сотрудник 1 отдела, поскольку вход в это помещение был доступен сотрудникам, не имеющим нужной формы допуска. И вот он сидел на стульчике у двери, читал что-то, а я сидела за машиной и тихо материлась, если что-то шло не так. А оно часто шло не так, потому что машина была все-таки старая, иногда она вообще оказывалась включаться. Можно было просидеть все отведенное время, пытаясь включить ее. Иногда не считывались нужные сектора магнитной ленты. Поэтому при завершении работы надо было сохранить программу и полученные данные в несколько секторов. Тогда, если даже машина промахнется и попадет не на то место ленты, она все равно прочитает нужное. Иногда ломался ленточный принтер. Тогда приходили электронщики (которые терпеть не могли, когда их так называю) и ремонтировали его.
В общем, каждый поход "на машину" был приключением. Тем более, что работать на ней мог только один человек за раз, а работы было много у всех отделов. Поэтому машинное время делилось, составлялись графики. В случае срочных секретных расчетов очередников выгоняли. Я быстро поняла, что на обеденное время претендентов немного и спокойно занимала его.
Еще у нас были ЕС-ки, но они всегда находились в состоянии ремонта. Мы ездили в другие организации, где КБ арендовало машинное время. Но это другая история.
КБ,
ЕС,
АЦПУ,
Наири-3,
Омск,
1 отдел,
ЭВМ