
Полная версия
История электронных компьютеров

Леонид Черняк
История электронных компьютеров
Часть I. История электронных компьютеров
Введение
Когда люди были компьютерами
В 1613 году впервые в английском языке было зафиксировано употребление слова computer, тогда оно значило «человек считающий». Так много лет назвали человека, выполнявшего вычисления, эта профессия имеет богатую историю. Передо мной лежит объемистая книга с неожиданным для современников названием «When computers were human», в ней более 400 страниц. Ее автор – профессор Университета Джорджа Вашингтона Дэвид Гриер. Он раскрывает эту историю с глубокой древности до середины прошлого века.
С появлением электронных компьютеров в 1950-х профессия человека-компьютера естественным образом исчезла, но ее наследие никуда не делось. Именно эти люди выработали культуру точности и ответственности, документирования и проверки – основы будущего программирования. Первые программисты во многом унаследовали мышление своих предшественников: они тоже управляли вычислительными процессами, но на другом уровне.
Сегодня мы видим в людях-компьютерах не только предшественников машин, но и участников глубокой культурной трансформации. Они превратили вычисление из индивидуального умения в технологический процесс и тем самым подготовили появление того вычислительного мира, в котором мы живем.
Еще в Древнем Египте и Месопотамии существовала особая категория писцов, чьей обязанностью был счет: они учитывали урожай, следили за налогами, контролировали производство каменных блоков для пирамид. Их труд был основой государственного управления. В античной науке мы встречаем ту же практику. Птолемей и другие астрономы не работали в одиночку: рядом с ними находились ученики и помощники, которые сводили наблюдения в таблицы, складывали и вычитали углы, проводили рутинные операции. Тогда-то и возникла форма коллективного счета, сохранившаяся надолго – ученый задавал формулу, а его «компьютеры» выполняли ее механически.
Развитие науки и мореплавания в эпоху Возрождения многократно увеличило потребности в вычислениях. В ответ возникли такие «предприятия» как, например, обсерватория Тихо Браге в Ураниборге на острове Вен, она работала как настоящая вычислительная мастерская. Несколько десятков ассистентов, студентов и практикантов занимались наблюдениями и сводили результаты в таблицы. У них было свое разделение труда – один переводил углы в градусы, другой складывал и вычитал величины, третий заносил итог в журнал. Обстановка напоминала ремесленную мануфактуру, где каждый выполнял свою часть работы, и только вместе они могли получить готовый результат.
К концу XVIII века организация вычислительного труда стала еще более похожей на фабрику. Знаменитый пример – «мануфактура логарифмов» барона де Прони. Она стала ответом на запрос администрации императора Наполеона I, которой требовались новые таблицы прежде всего в связи с переходом на метрическую систему. Прони организовал труд расчетчиков наподобие пирамиды, на ее вершине находилась небольшая группа математиков, которые выводили формулы. Средний слой «мастеров» превращал формулы в пошаговые инструкции. А в основании пирамиды трудились десятки женщин, отличавшихся в прошлом низкой социальной ответственностью, им доставались только операции сложения и вычитания. Их тетради были заполнены колонками чисел с простыми указаниями: «возьмите значение из столбца А, прибавьте к столбцу B, результат занесите в C». Никто из бывших жриц любви не понимал всей картины в целом, но их усилиями рождались самые разнообразные математические таблицы. Это был первый в истории опыт индустриализации математического труда.
В XIX веке такие практики стали нормой. Государства и университеты создавали вычислительные бюро, где десятки и сотни «людей-компьютеров» трудились над морскими эфемеридами, астрономическими и навигационными таблицами. В рабочих залах британской Королевской обсерватории многочисленные сотрудники сидели за длинными столами, выполняя однотипные операции. Каждый результат проверялся дважды или даже трижды: если числа не совпадали, вычисление делали снова. В США данные о переписи населения с середины XIX века обрабатывались целыми армиями счетчиков. До появления табуляторов и перфокарт Холлерита тысячи людей с бумагой и карандашами складывали и сводили данные воедино.
Особую страницу в этой истории открыли женщины-компьютеры. В конце XIX века директор Гарвардской обсерватории Эдвард Пикеринг нанял группу женщин, вошедших в историю как «гарвардские компьютеры». Работа была рутинной – они сидели среди ящиков с фотопластинами, пользуясь лупами и линейками, измеряли расстояния, переводили их в числа, складывали колонки, записывали результаты в журналы. Ошибки отмечались красным карандашом, каждый шаг проверялся. За скромную зарплату они выполняли механическую работу – и при этом именно их труд привел к открытиям, изменившим астрономию.
Первая мировая война потребовала создания баллистических таблиц для артиллерии и для инженерных расчетов. Были организованы специальные бюро, где студенты и клерки неделями решали одни и те же уравнения сотни раз. Во Вторую мировую войну таких людей стали привлекать тысячами. В США при армии и флоте создавались женские вычислительные группы. Большие залы напоминали экзаменационные аудитории: десятки женщин сидели за рядами столов с карандашами, бумагой и арифмометрами. Каждая выполняла один шаг численного решения дифференциального уравнения, затем лист передавала дальше. Работа была не только медленной, но и чреватой ошибками. Чтобы их исключить, одна и та же задача решалась параллельно и в другой группе, а полученные результаты сравнивались. Многие вспоминали этот труд как монотонный и изматывающий, но сознание важности – «мы делаем это для фронта» – придавало силы.
Даже в Лос-Аламосе расчеты, связанные с первыми атомными бомбами, выполнялись вручную. Математики, в основном женщины, сутками считали уравнения диффузии и цепные реакции. Единственная ошибка могла перечеркнуть недели работы. В воспоминаниях участников встречаются истории, как результатов многодневных расчетов шли насмарку из-за одной пропущенной цифры.
К середине XX века пределы ручных вычислений стали очевидны. Армии людей-компьютеров, сидевшие в залах с карандашами и тетрадями, не успевали за требованиями со стороны войны и науки. При этом вероятность ошибки росла вместе с объемом данных, а скорость оставалась ограниченной человеческими руками, что стало импульсом к созданию электронных машин. Первый ENIAC в США и первая МЭСМ в СССР задумывались именно как «замена тысячам человеческих компьютеров», и в этом не было метафоры – устройства освобождали рабочие залы от людей с их бумагой и калькуляторами. Их труд остался недооцененным, но именно он стал фундаментом науки и техники XIX–XX веков. И когда вычисления переселились в машины, они унаследовали не только методы, но и организацию, созданную невидимыми миру тружеников от египетских писцов и учеников Птолемея до гарвардских компьютеров и участников Манхэттенского проекта.
Люди-компьютеры в России и СССР
Россия и СССР имеют собственную богатую историю людей-компьютеров. В XVIII–XIX веках в Петербургской Академии наук и Пулковской обсерватории трудились группы вычислителей, которые составляли астрономические каталоги и таблицы. Пулково, открытое в 1839 году, быстро стало «астрономической столицей мира», и его слава опиралась не только на телескопы, но и на десятки людей, которые часами сводили наблюдения в аккуратные ряды чисел. В XIX веке вычислительный труд требовался и в инженерии: выпускники Института корпуса инженеров путей сообщения выполняли рутинные расчеты для строительства мостов и железных дорог.
При статистических комитетах в губерниях и в Министерстве финансов работали так называемые «числовики», которые занимались сводом и обработкой данных для бюрократической машины. В Военно-морском ведомстве и Артиллерийском комитете существовали группы, которые рассчитывали таблицы для стрельбы и навигации.
С 1920-х годов в СССР с внедрением централизованного управления экономикой потребность в вычислениях резко возросла. Госплан, Центральное статистическое управление и другие органы содержали целые отделы счетчиков, которые вручную сводили экономические показатели пятилеток. В университетах и научных институтах создавались вычислительные лаборатории: там студенты и сотрудники решали уравнения на бумаге или с помощью арифмометров. В СССР механический арифмометр «Феликс» выпускался серийно с 1929 по 1978 год, порядка 3 000 000 штук).
Во время Великой Отечественной войны труд вычислителей стал критически важным. В артиллерийских академиях и оборонных НИИ работали группы, составлявшие баллистические таблицы и решавшие задачи аэродинамики для авиации. В авиационных КБ коллективы «компьютеров» просчитывали профили крыльев и нагрузки конструкций. В этих залах царила та же атмосфера, что и в американских или британских центрах: длинные ряды столов, листы бумаги, калькуляторы, бесконечные проверки и перекрестные сверки.
В послевоенные годы, во время атомного проекта, потребность в ручных вычислениях достигли пика. В закрытых городах Арзамас-16 и Челябинск-70 трудились сотни молодых женщин-математиков. Их задачей было решать уравнения диффузии, нейтронного переноса, теплопередачи. Использовались арифмометры, логарифмические линейки и разного рода электромеханические калькуляторы. Ошибка одного человека могла перечеркнуть недели работы, и потому каждый шаг дублировался несколькими группами. В воспоминаниях участников сохранилась картина огромных залов, где люди сутками исполняли роль живых алгоритмов.
К середине XX века пределы ручного труда стали очевидны и в СССР. Именно это стало толчком к созданию электронных машин. МЭСМ Сергея Лебедева (1951) задумывалась как замена «армии вычислителей», трудившихся на оборонные и научные задачи.
Таким образом, история человеческих компьютеров в России и СССР – это развитие от астрономических бюро XVIII–XIX веков, через статистические и инженерные коллективы начала XX века, до оборонных и атомных проектов 1940–50-х годов. Их труд, рутинный и тяжелый, но организованный фабрично и коллективно, был фундаментом науки, техники и обороны, и подготовил почву для перехода вычислений в электронные машины.
Компьютинг как основа цифровой цивилизации
До 1970-х годов компьютер оставался редким, уникальным и дорогостоящим объектом. Он воспринимался прежде всего как машина, как инженерный артефакт, созданный для выполнения сложных расчетов. На этом раннем этапе комплексное явление, которое сегодня мы называем computing, еще не существовало. Хотя в статьях создатели первых электронных компьютеров Джон Мокли и Преспер Эккерт использовали термины electronic computing или digital computing, но они понимали под этим именно саму машину как физический объект, вокруг которого формировалась соответствующая сфера деятельности.
С компьютеров третьего поколения и особенно с появлением персональных компьютеров второй половины 1970-х годов понятие computing стало пониматься шире – как деятельность, осуществляемая в самых разных контекстах. Но в массовом сознании того времени главным оставался сам компьютер – настольная машина, символ технологической независимости и нового образа жизни.
Следующий перелом связан с сетями. В 1990-е годы персональный компьютер стал лишь узлом в глобальной системе, а вычисления и работа с данными вышли за пределы локального устройства. Computing стал рассматриваться как распределенный процесс и инфраструктура, соединяющая людей и организации. В этот период появляются такие направления, как distributed computing, где множество машин объединяются для совместного решения задач (примером служит проект SETI@home, использовавший вычислительные мощности добровольцев для анализа радиосигналов из космоса), и parallel computing, позволяющий выполнять сложные операции одновременно на нескольких процессорах, что использовалось в суперкомпьютерах IBM серии Blue Gene для биоинформатики и климатического моделирования.
С началом XXI века computing окончательно освобождается от привязки к отдельному устройству. С распространением облачных сервисов (cloud computing, например, Amazon Web Services, запущенные в 2006 году) и мобильных технологий (mobile computing, смартфоны и планшеты) компьютер перестает быть центром. Он становится терминалом, а вычисления превращаются в услугу. Можно хранить данные и обрабатывать их без собственного сервера, используя глобальную инфраструктуру. Computing становится ресурсом – невидимым, но необходимым, как электричество, которое пронизывает все аспекты современного общества.
Сегодня computing существует во множестве форм и сфер применения. Среди них Scientific computing, применяемый для моделирования и анализа данных в науке и инженерии; Business computing, обеспечивающее управление бизнес-процессами и экономическую аналитику; Cognitive computing, имитирующее процессы человеческого мышления и принятия решений; а также Social computing, формирующее новые способы взаимодействия и коммуникации через платформы и социальные сети. В последние годы активно развиваются edge computing, когда обработка данных происходит ближе к источнику, снижая задержки и нагрузку на сеть, и ubiquitous computing, когда встроенные процессоры и сенсоры пронизывают повседневную жизнь – от «умных» домов до носимых устройств.
Особое значение имеет вопрос взаимодействия человека и машины. В ранние эпохи вычисления осуществлялись в пакетном режиме (batch computing), когда задачи подавались на вход, а результаты выдавались спустя определенное время. Персональные компьютеры открыли эру интерактивных вычислений (interactive computing), позволяя пользователю управлять процессом в реальном времени. Реальные системы управления, от авиации до медицины, потребовали real-time computing, где скорость реакции критична. Сегодня на повестке дня автономные вычисления (autonomous computing): автомобили с автопилотом, интеллектуальные ассистенты и роботы принимают решения без постоянного контроля человека. Computing постепенно становится партнером человека в деятельности, а не просто инструментом.
Таким образом, за несколько десятилетий произошел переход от «компьютера» как отдельного устройства к computing как универсальному явлению общечеловеческой значимости. В нем собственно компьютер утратил центральную роль; главным стало не устройство, а процесс – способность преобразовывать данные в информацию, знания и решения в различных контекстах.
Поэтому важно различать computing и информационные технологии. Эти понятия принадлежат к разным порядкам явлений. Computing – фундаментальное, почти философское понятие, связанное со способностью общества обрабатывать информацию, моделировать реальность и создавать новые знания. Оно охватывает все формы вычислений, от первых мейнфреймов и распределенных систем до облаков, квантовых машин и pervasive computing (всепроникающий, встраиваемый в повседневные устройства). Computing существует как явление, формирующее культуру, инфраструктуру и способы взаимодействия человека с окружающим миром.
Информационные технологии (IT), напротив, относятся к конкретным прикладным решениям. Это организации, сервисы, программные продукты и сети, которые используют вычислительные возможности для поддержки деятельности компаний, учреждений и пользователей. IT – это индустрия, инфраструктура, операционные процессы; оно существует внутри явления computing, как конкретная реализация его возможностей. Можно провести аналогию: если computing – это электрификация как природно-технический феномен, то IT – это лампочки, электросети и бытовые приборы, которые позволяют людям пользоваться электричеством. Computing задает потенциал и направление развития, IT – прикладное воплощение, используемое для решения конкретных задач.
Фокус на IT и его видимых проявлениях иногда искажает восприятие эволюции вычислительной сферы. Люди чаще замечают новые программы, приложения и сервисы, воспринимая их как «движущую силу прогресса», в то время как само явление computing развивается на более фундаментальном уровне – через новые архитектуры, методы обработки информации, распределенные системы, внедрение pervasive (всепроникающий) и cognitive (способный к мышлению) computing. IT отражает лишь прикладную, наиболее заметную часть этого процесса, и без осознания разницы между уровнем прикладного инструмента и фундаментальной среды легко потерять понимание истинной эволюции от компьютера как отдельного устройства к computing как универсальной инфраструктуре и культурной практике.
Таким образом, computing сегодня – это универсальный язык цифровой эпохи. Он определяет то, как мы думаем, общаемся и создаем технологические и культурные системы. IT остается важным прикладным воплощением этого языка, но явление computing гораздо шире: оно задает фундаментальные возможности и направления, в которых отдельные компьютеры и информационные технологии – лишь инструменты. Понимание этой разницы важно для корректной оценки современной цифровой эволюции: computing формирует фундамент, на котором строятся видимые информационные технологии.
Компьютинг и пирамида DIKW: эволюция от данных к здравому смыслу и принятию решений
Для глубокого понимания эволюции компьютинга стоит обратиться к концепции пирамиды DIKW, описывающей четыре уровня обработки данных: Data (Данные), Information (Информация), Knowledge (Знания) и Wisdom (Здравый смысл и принятие решений). Эта модель показывающая, как сырые факты превращаются в информацию, знания и в способность принимать обоснованные решения сложилась в конце восьмидесятых годов XX века. В оригинале он состоит из четырех компонентов:
• Данные, получаемые из внешнего мира в результате человеческой деятельности или от различных датчиков и других устройств.
• Информация, создаваемая посредством анализа отношений и взаимосвязей между фрагментами данных в результате ответа на вопросы: Кто? Что? Где? Сколько? Когда? Почему?
• Знания получаются в результате синтеза полученной информации и человеческого разума, а в последние годы и ИИ.
• Глубокое понимание или здравый смысл служит основой для принятия решений.
Ретроспективно глядя, идеи, лежащие в основе DIKW, можно приложить к эволюции компьютинга.
• 1940–1950-е годы – зарождение понятий «данные» и «информация». Клод Шеннон формализовал теорию информации как меру неопределенности. В это время Джон Моукли и Преспер Эккерт создают машины, работающие исключительно с данными.
• 1960–1970-е годы – переход к уровню информации. Компьютеры третьего поколения и ПК позволили структурировать данные, создавать отчеты, базы данных и визуализировать результаты. Computing превращается из работы с данными в деятельность, позволяющую извлекать полезную информацию.
• 1990-е годы – переход на уровень знаний. Распространение сетей и появление распределенных и параллельных систем (distributed computing, parallel computing) дают возможность объединять ресурсы множества машин, выявлять закономерности и строить модели. Computing на этом уровне превращает информацию в знания, используемые для прогнозирования и поддержки решений.
• 2000-е – 2010-е годы – уровень здравого смысла и принятия решений. Зарождение ИИ.
Компьютинг в повседневной жизни
Современный компьютинг наличествует не только в лабораториях, исследовательских центрах или офисах – он уже прочно вошел в нашу повседневную жизнь. Смартфон, по сути, является миниатюрным компьютером, который всегда с нами. Он собирает данные о наших действиях, анализирует их, предоставляет информацию и помогает принимать решения. В определенном смысле смартфон уже частично выступает в роли интеллектуального партнера, способного предлагать рекомендации и оптимальные варианты действий.
Компьютинг стал обязательным атрибутом жизни, а смартфон – его осязаемое и доступное воплощение. Каждый день мы взаимодействуем с данными, информацией, знаниями и элементами цифровой мудрости, часто почти не замечая этого. Наши устройства аккумулируют и интерпретируют информацию, помогают нам принимать решения быстрее и точнее, а порой даже подсказывают, что делать в ситуациях, когда у нас нет времени или ресурсов на полноценный анализ.
В итоге можно сказать, что современный компьютинг стал частью человеческого опыта: мы не только пользуемся технологиями, но и встраиваем их в собственное мышление, делая процесс взаимодействия с данными и знаниями естественной и почти непрерывной частью повседневной жизни.
.
Глава 1. Аппаратная и программная основы компьютинга
Компьютер не имеет аналогов в истории техники. Он сочетает в себе два начала: аппаратную платформу и программное обеспечение (ПО). Железо обеспечивает счет и работу с данными, а ПО превращает эти ресурсы в инструменты для анализа, управления и даже творчества. Без программного обеспечения самый совершенный процессор остается лишь набором транзисторов и схем, а без железа самые изощренные алгоритмы не смогут воплотиться в действия.
На первый взгляд все кажется простым и очевидным. Но если отвлечься от привычного взгляда, перед нами открывается парадокс: компьютер соединяет материальное и нематериальное, вещь и идею, тело и программу. Железо само по себе мертво, софт сам по себе бесплотен. Только вместе они образуют целостность – особую машину, которой в истории техники не было. У книги есть текст, но он не управляет бумагой; у станка может быть программа, по ней он выполняет заданные операции. В культуре и природе можно найти аналогии – мозг и сознание, генотип и фенотип, вещество и энергия, – но в артефактах два начла – техника и мысль никогда еще не соединялись столь органично.
Эта взаимодополняемость формирует особый союз: аппаратное обеспечивает «мышцы», программное – «разум», и вместе они создают универсальный инструмент, превращающий данные в знания, вычисления – в понимание, а инструкции – в действия. Двойственность делает компьютер не просто машиной, а феноменом культуры.
В этой главе мы проследим эволюцию обоих начал, чтобы понять, как их развитие шло рука об руку и почему современный компьютер стал тем, чем мы его знаем. А вся книга в целом будет сосредоточена прежде всего на аппаратной основе компьютинга – на его «теле», без которого никакая программа не может обрести жизнь.
Об электронике
У многих из нас еще со школьной скамьи сохранились обрывочные воспоминания об истории электричества. Греческое слово «электрон» – «янтарь», который при трении начинал притягивать легкие предметы. Таинственная электрофорная машина со стеклянными вращающимися дисками, стоявшая в школьном кабинете. Опыт с воздушным змеем, устремленным к грозовым облакам. Лейденская банка, первые гальванические элементы. И, конечно, целая плеяда великих физиков – Алессандро Вольта, Луиджи Гальвани, Андре-Мари Ампер, Джеймс Джоуль, Георг Ом, Майкл Фарадей и многие другие. Их имена навсегда закрепились не только в истории науки, но и в языке самой физики: они стали названиями единиц измерения и законов, которые мы по привычке используем в повседневной жизни.
На этом фоне история электроники более молодой отрасли физики и инженерии, изучающей поведение электронов и создающей устройства на их основе, известна куда хуже. И это при том, что в современном мире мы сталкиваемся с электронными приборами, пожалуй, даже чаще, чем с чисто электрическими. Поэтому, чтобы говорить об истории электронных компьютеров, нужно начать с истории самой электроники. Ее развитие можно условно разделить на несколько этапов:
• первые шаги, когда электроника еще только отделялась от «большой электротехники»;
• эпоха вакуумных ламп;
• изобретение полупроводниковых приборов;
• появление интегральных схем и микропроцессоров;
• развитие магнитной и полупроводниковой памяти.
Именно эта цепочка открытий и инженерных решений есть путь, который привел к современному «железу» компьютера.
Эпоха ламп
От первых шагов до вакуумных приборов – диода и триода
В электронике, как и в любой отрасли науки и технологий, к открытиям и изобретениям причастно гораздо больше людей, чем можно включить в исторический экскурс. Родоначальниками работ, приведших к появлению электроники, были немецкие физики-экспериментаторы Генрих Гейслер и Юлиус Плюккер. В 1857 году они совместно изобрели первый электронный прибор – «трубку Гейслера». Прообраз современных газоразрядных приборов представлял собой частично вакуумированную стеклянную трубку с двумя металлическими электродами – катодом и анодом. При подаче высокого напряжения поток ионов вызывал свечение, названное флуоресценцией. Дальнейшие исследования флуоресценции привели к появлению неонового освещения в начале XX века.



