Литмир - Электронная Библиотека
Содержание  
A
A

— Тебе и мне за тридцать, подруга. Не путай сцену и улицу. Она иностранка. Что простят ей, не простят нам.

Или простят?

Заметно, как многие оглядываются на ту. Она и в театр в этих… «джинсовых брючках» приходила.

— Мало ли у нас на представлениях и в ватниках и в тулупах бывает? Помнишь, когда отопление из строя на три дня вышло? Только горячим чаем и спасались.

Отличное и интригующее знакомство. Но скоро — возвращение в родной Ленинград..

Глава 14 — Заря эпохи

Конец июня 1943. Молотов/Пермь. Из воспоминаний работавшего в то время заместителем начальника отдела разработки прикладного ПО НИИВТ Семендяева К.А.

(Цитируется по главе за его авторством в изданной в 1960-м на русском в Москве и на английском в Нью-Йорке, энциклопедии «Заря цифровой эры»)

..Новый «генеральный курс» — парадигму про то, что «компактный, надёжный и мощный персональный вычислитель» будет стоять на столе у многих (позже — всех) инженеров… лет через 15–20 (оптимистично) или 30 (пессимистично), однозначно высказанную нам нашим руководством, сотрудники НИИВТ уже усвоили.

Хотя и поверили, очевидно, тогда не все.

Грандиозность задачи впечатляла. И если соображение насчёт инженеров принималось многими как естественное и логичное, то насчёт условных «секретарш, бухгалтеров и сотрудников сберкасс(банков)» утверждение выглядело чрезмерно фантастичным… но всё же — теоретически верным. Как и идея той же замены традиционной пишущей машинки на «текстовой редактор» выглядела пусть и революционной, но вполне реализуемой при «стеклянном листе» характрона.

Но не было ли такое предположение и его возможная реализация, далеко опередившим своё время гениальным проблеском, который невозможно массово реализовать в ближайшие 15–20 лет, как настаивал главный двигатель подобных идей второй зам Рожков?

Тем более, вслух были озвучены замыслы о возможном, в будущем, широком распространении вычислителей среди населения… с возможностью элементов досуга в виде программ — соперников человека при игре в шахматы, шашки и, как предложил один из наших сотрудников, увлекавшихся китайским го, и этой интеллектуальной игрой. Разумеется, у нас, сразу же появилась идея создания на вычислителе программ для разнообразных карточных игр.

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

Удивительным для нас всех был и провозглашённый летом 1943-го начальством новый подход к «программированию будущего». За почти два года работы с новой вычислительной техникой я как-то приноровился к ней. Сначала освоение, вникание и привыкание к предлагавшейся нам сразу, в сопроводительной документации, логике работы на новой вычислительной технике — описывающей стадии того, как поставленная расчётная задача подвергается алгоритмизации и переносу в машинный код, с возможной промежуточной стадией автокода/ассемблера, на которой так настаивало «наше трио» само в руководстве по программированию, прилагавшемся ещё к первой модели дискретных вычислителей.

Планы товарища Рожкова про автоматизацию автокода/ассемблера, с идеей программы-транслятора мнемоник в машинный код, вместо наших привычных «таблиц соответствия», конечно же, пленили всех нас. Но замыслы то были сразу намного более обширные!

Главное доказательство новых идей насчёт «операционной системы», «транслятора автокода» и, тем более, «языка программирования высокого уровня», конечно же основывалось на том факте, что с 256 байт ОЗУ базовой модели М-1, считанных килобайтов второй и третьей, мы ныне рассчитывали иметь десятки килобайт в модели М-4.

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

Однако многих у нас смущала сложность создания и отладки программ подобных объёмов!

Но и тут решение, предлагаемое Рожковым, выглядело единственно возможным вариантом для таких размеров программ. Как и возможности их разрабатывать коллективами программистов, с соответствующим строгим разделением их участков работы.

Идея была красива: основной цикл — с вызовом, по потребности, процедур и функций (которые, в отличие от процедур, возвращают основному циклу какие-то значения).

Именно с подобной организацией внутреннего устройства ПО становилось возможным разрабатывать его, в случае необходимости, очень больших размеров. И, соответственно, возможностей..

Тот самый «передний край»! Никто в мире не делал подобного. Начав с революционной М-1, сейчас пробовали сделать следующий шаг — с новым, комплексным способом разработки программного обеспечения для неё целым научно-трудовым коллективом. Второе поколение дискретных вычислителей на новой элементной базе и новый подход — под стать их возможностям, в разработке ПО для них.

Вкупе с возможностью создания нового ПО — на имеющейся пока технике первых трёх моделей. Теперь становится очевидным заложенное изначально преимущество «совместимости» машинных кодов. Расширение набора машинных команд, которое закладывается в АЛУ М-4, будет использоваться только в ПО, которое будет разрабатываться на самой четвёртой модели… когда она будет создана.

Мы же работали в машинных кодах «базового набора» АЛУ М-1/2/3, что и позволяло отлаживать процедуры и функции в ПО по отдельности, на имеющемся «машинном парке». Собственного говоря, подобный подход и позволил нам тогда, в 1943-м, на существующей технике начать работу по созданию всего того огромного объёма ПО, которое желало получить от нас руководство.

* * *

Стены каждого из наших отделов были завешаны огромными структурными блок-схемами, отображающими внутреннее строение всех программных блоков «операционки», «языка программирования высокого уровня» и первых набросков программы — транслятора для автоматического, а не ручного перевода текста автокода/ассемблера в машинные коды.

Разумеется, всё это «жило своей жизнью», дорабатывалось по ходу дела, переделывалось и обсуждалось.

И крайне жёстко регулировалось нашим вторым заместителем. Очевидно, и как позже немного нехотя было признано им самим — у Рожкова имелось видение предполагаемого результата и он безжалостно отсекал в первой версии всё, не укладывающееся в образ, сложившийся в его голове, оставляя «необходимый минимум», ибо научный коллектив, осознавший потенциальные возможности М-4, желал сотворить «всё и сразу» в ПО для нового вычислителя. Впрочем, в пределах отведённых отдельным программистам блоков от них требовался только результат — стабильная и верная работа подпрограмм, их компактность и лучшее быстродействие.

Пожалуй, в ходе работы мы все вскоре поняли, что именно такое разбиение работы и позволило нам двигаться вперёд в разработке невиданных по сложности, объёму и возможностям программ совершенно нового типа. Сейчас, когда пишутся эти строки, к исходу шестого десятилетия нашего сумасшедшего века, нам кажется естественным, что операционные системы и/или встроенное в ПЗУ ПО «были всегда», как и наличие нескольких десятков современных реализаций нынешних языков программирования для множества как совместимых, так и нет вычислительных платформ разнообразного назначения. Но тогда, в 1943-м, такое будущее поначалу было очевидным только очень немногим. И все они работали в нашем НИИВТ!

Каждая из программ нового типа — согласно новому воззрению трио наших начальников, вкупе с планируемым объёмом ОЗУ и внешней памяти, была представлена в виде основного блока и множества подпрограмм, которые вызывались из него.

1203
{"b":"904641","o":1}