Где проходит грань между счетной машинкой и компьютером? И кому же все-таки принадлежат лавры создателей первого в истории человечества «настоящего» компьютера? Дискуссии вокруг этих вопросов возникают на редкость регулярно, едва появляется подходящий повод, и отражают они очевидное стремление людей проранжировать и упорядочить все, что их окружает. Хотя в то же время любой здравомыслящий человек обычно понимает, что ответить на поставленные вопросы однозначно просто невозможно, поскольку серьезнейшие расхождения, как правило, начинаются уже на уровне определения базовых понятий предмета спора.
К 1996 году группа энтузиастов при национальном криптомузее Блечли Парк воссоздала копию уникального компьютера.
Совсем свежим поводом для новых дискуссий стало примечательное событие в Великобритании, где власти решились, наконец, в 2000-м году опубликовать подробное техническое описание суперсекретных вычислительных машин, специально созданных в 1943-1944 гг. для вскрытия шифров фашистской Германии. В первых числах октября ведающая криптографией британская спецслужба GCHQ (Штаб-квартира правительственной связи) передала в общедоступный Государственный архив (Public Record Office, г. Кью) 500-страничное техническое описание компьютера Colossus. По мнению многих специалистов, эта машина является не только непосредственным предшественником послевоенных цифровых компьютеров, но и первым практическим приложением крупномасштабных и программно управляемых вычислений.
Colossus – это вообще своеобразный «секрет, известный всем». Хотя официальной информации об этой машине не было, обрывки сведений о ней стали появляться еще в 70-х годах, когда истек стандартный для Британии 30-летний срок хранения государственных тайн. К 1996 году группе энтузиастов при национальном криптомузее Блечли Парк даже удалось воссоздать работающую копию этой машины, когда накопилось достаточное количество подробностей, сохранившихся фрагментов и приватных воспоминаний оставшихся в живых участников проекта.
В одной из посвященных машине статей приводились любопытные результаты сравнительного тестирования воссозданной модели и нынешних компьютеров: «Colossus настолько быстр и распараллелен, что и современному ПК, запрограммированному на выполнение той же самой задачи, требуется времени не меньше для достижения тех же самых результатов!» Если же говорить более точно, то восстановленный в Блечли Парк «Колоссус» решал свои задачи в два раза быстрее, чем машина класса Pentium (в версии 1996 года), работавшая с аналогичной программой на языке Си.
Один из проницательных участников обсуждения данного результата отметил, насколько же удивительно хороши оказываются вычислительные машины, созданные для решения конкретной задачи. Взирая на это (тут же добавляет он), можно лишь предполагать, насколько быстро работают сегодняшние компьютеры, специально созданные для вскрытия шифров.
Один из реальных «Колоссу сов». Снимок 1940-х годов.
Отчасти данное наблюдение объясняет и то, почему доскональная информация об устройстве машины Colossus появляется более чем с полувековой задержкой, почти вдвое перекрыв даже обычные сроки рассекречивания. Такие компьютеры – это узко специализированные вычислительные устройства, «заточенные» под вскрытие шифров весьма определенного рода. Раскрытие информации о подробностях конструкции такого компьютера может давать специалистам вполне отчетливое представление о криптоаналитических методах, использовавшихся для вскрытия шифра. Иными словами – давать «потенциальным неприятелям» информацию о наиболее сокровенных тайнах криптографических спецслужб. И если уж, наконец, решение о рассекречивании принято, то можно быть уверенным – применявшиеся в компьютере методы вскрытия стали широко известны и опубликованы в общедоступной литературе.
Ныне историкам компьютерной науки и криптографии действительно уже очень хорошо известно, что первые компьютеры Colossus были созданы англичанами в 1943 году для вскрытия сообщений, засекреченных самым мощным немецким шифратором «Lorenz Schlusselzusatz 40», закрывавшим переписку между ставкой Гитлера и штабами 10 основных армейских группировок Германии. Это была так называемая «роторная» или «дисковая» машина, для засекречивания сообщения накладывавшая на открытый текст одноразовую псевдослучайную шифрующую последовательность.
Из-за ошибки германского шифровальщика, дважды использовавшего один и тот же ключ в августе 1941 года, английским криптографам удалось восстановить около 4000 знаков шифрпоследовательности, что в конечном итоге привело их к полному обратному восстановлению криптосхемы шифратора, разработке первого «Колоссуса» и весьма успешному чтению немецкой переписки.
Однако в рассекреченном ныне документе содержится также описание и неизвестной доселе машины Colossus II, весьма существенно модифицированной версии компьютера, начавшей работу в первых числах июня 1944 года. Характеристики именно этой модели позволяют некоторым экспертам утверждать, что теперь общепринятая история компьютеров нуждается в серьезной корректировке.
Как говорится в большинстве нынешних источников по истории вычислительной техники, первым электронным цифровым компьютером являлся американский ENIAC, начавший работать в 1946 году. Однако модифицированный Colossus уже «обладал функциональностью, достигнутой в значительно более поздней машине ENIAC, и имел несравнимо более значительную производительность в обработке данных». Так говорит 76-летний профессор Эдинбургского университета Дональд Мичи, ветеран-криптограф и один из авторов рассекреченного ныне отчета, подготовленного в 1945 году сразу после победы над Германией.
По словам Мичи, которому наконец позволено широко поделиться воспоминаниями о своей сверхсекретной работе в годы войны, «возможно, кто-то будет поражен, узнав, что ко Дню победы Британия уже обладала машинным парком из 10 высокоскоростных электронных компьютеров, работавших круглые сутки в трехсменном режиме».
Компьютер Colossus II, в отличие от его предшественника Colossus I, уже можно было до определенной степени перепрограммировать, что, безусловно, являлось важнейшим достижением для того времени. Отсюда же некоторыми и был сделан вывод, что именно «Колоссус» проложил мост к созданию полностью программируемых машин несколько лет спустя. И именно это заключение всколыхнуло новую дискуссию «о предках».
Ко Дню победы Британия уже обладала машинным парком из 10 высокоскоростных электронных компьютеров.
Знающие люди тут же напомнили, что определенные основания претендовать на роль создателей компьютерного предка имеют, к примеру, поляки, разработавшие в ЗО-е годы вычислитель под названием «Бомба» для вскрытия германского шифратора Enigma. Да и СССР, как известно, тоже занимал в области вычислительной техники далеко не последнее место. Но, с другой стороны, в более корректной постановке обсуждаемый ныне вопрос звучит примерно так: кто построил первый цифровой компьютер с программой, хранимой в электронном виде? В такой постановке у англичан, вероятно, значительно больше оснований на первенство, поскольку в отличие от «Колоссуса» другие машины той эпохи не имели хранимых программ.
Естественно, ответ на вопрос «Что являлось первым компьютером?» зависит от критериев, этот компьютер определяющих. Первые американские машины 30-х годов, вроде построенной в Университете Айовы машины ABC (Atanasoff-Berry Computer), достаточно легко реконфигурировались для решения разных задач, выполняли вычисления с помощью электронной памяти, однако в рамках концепции машины Тьюринга их набор выполняемых инструкций (состояний) был неполным. Германские машины Конрада Цузе «Z1» имели уже полный набор инструкций, обладая и большими основаниями на первенство. Но вот размещать код программы и обрабатываемые данные в одно и то же пространство памяти начали в английских машинах Colossus, а это один из важнейших аспектов современных компьютерных архитектур.
Правда, в английской истории есть другой чрезвычайно впечатляющий предок – разработанная около 150 лет назад знаменитая вычислительная машина Чарльза Бэббиджа. В свое время недостроенное, но воссозданное несколько лет назад лондонским Музеем науки в точности по чертежам конструктора, трехтонное вычислительное устройство «Difference Engine No 2» демонстрирует публике безупречную работу. А также и то, что не пойди финансовые дела Бэббиджа под откос, человечество вполне могло вступить в компьютерную эру лет эдак на сто раньше.
Но, если вглядеться глубже в историю, миновав тысячелетний мрак средневековья, то можно увидеть, что понятие об автоматах имели еще древние греки. Известно, например, что в I веке до н. э. Герон Александрийский изготовил автомат, за деньги продававший воду из святого источника. Монета падала на рычаг, тот вытаскивал из сосуда пробку, и отмеренная доза воды струйкой бежала в подставленный кувшин паломника. Как можно видеть, автомат Герона имел набор определенных состояний, вход и выход, так что в формальном описании сей аппарат вполне тянет на «неполную машину Тьюринга», а заодно и на лавры предка всех нынешних компьютеров.
Самые отъявленные радикалы вообще утверждают, что все компьютеры на самом деле пошли от счетной доски-абаки, изобретенной неизвестным гением за несколько тысячелетий до новой эры. Аргументация в поддержку этой позиции звучит по-своему тоже убедительно, так что и подобная точка зрения вполне имеет право на существование. А заодно и лишний раз доказывает – ну нельзя сводить мир к общему знаменателю.