От MARK-I до ENIAC

Очевидные преимущества и перспективность автоматизированных вычислительных систем, "воевавших" во время Второй мировой на стороне Германии, не могли остаться незамеченными бывшими странами-союзниками, уже заметно подотставшими от немцев в этой сфере технологий. Однако в Советском Союзе дальнейшее развитие ЭВМ было фактически остановлено по политическим соображениям: правительство СССР зачислило кибернетику в разряд псевдонаучных ересей, вследствие чего эволюция компьютеров в данной отдельно взятой стране на некоторое время стала неосуществимой. И пальму первенства в области высоких технологий подхватили американцы.

Американский ученый Говард Гатуэй Айкен (Howard Hathaway Aiken, 1900 - 1973), человек, обладавший чрезвычайно широким кругозором и интересовавшийся большим числом различных научных направлений, в круг которых входили и физика, и математика, и целый ряд других естественных наук, родился в городе Хобокен, штат Hью-Джерси, в 1900 году. Закончив военно-инженерную школу города Индианаполис, он получил степень бакалавра, защитив диплом по направлению "электротехника" в университете штата Висконсин. Однако Говард решил продолжить свое обучение, поступив в 1931 году в магистратуру Чикагского университета. Вскоре он переезжает в Гарвард, где заканчивает свое обучение и приступает к работе над диссертацией, теоретическая часть которой была посвящена методикам решения нелинейных дифференциальных уравнений. Именно тогда у него родилась мысль о создании автоматического вычислительного устройства, которое могло бы значительно облегчить проведение подобных математических расчетов. Раздумывая первоначально о конструкции нескольких простых вычислителей, каждый из которых мог бы решать какую-либо "узкоспециализированную" задачу, Айкен постепенно пришел к выводу о необходимости постройки универсального устройства, способного осуществлять любые математические расчеты. Загоревшись этой идеей, он заручился поддержкой Гарвардского университета и одной из крупнейших в те времена американских коммерческих компаний, занимавшихся производством механических пишущих машинок и арифмометров - International Business Machines, Inc. (IBM) и приступил к практической реализации своих замыслов.

Построенная в 1944 году группой из четырех инженеров под руководством Айкена "Вычислительная машина с автоматическим управлением последовательностью операций MARK-I" по современным меркам вряд ли могла называться полноценным компьютером: в то время как энтузиаст Конрад Цузе ввел в эксплуатацию полностью электронную ЭВМ "Z2" еще в 1940 году, созданный Айкеном четырьмя годами позже MARK-I был наполовину механическим, реле применялось лишь для автоматизации управления элементами его конструкции.

Это электронно-механическое чудовище имело длину в 17 метров и было 2,5 м. высотой (габаритные размеры "Z2" Конрада Цузе оказались компактнее на несколько порядков), конструкция MARK-I включала в себя 750 000 различных элементов, соединенных проводами общей протяженностью более 800 метров; электронная начинка включала в себя 3304 реле, которые в процессе своей работы издавали ужасный шум и нередко выходили из строя. Числа, обрабатываемые MARK-I, хранились в специальных регистрах, реализованных в виде металлических зубчатых колес, приводившихся в движение специальным механизмом. Каждый регистр включал 24 колеса, 23 из которых использовались для представления самих разрядов числа, а 24-е - его знака. Кроме того, каждый регистр имел устройство, позволявшее сохранять значения десятков и передавать результат вычислений в другой регистр. Всего архитектура MARK-I насчитывала 72 регистра для обработки цифровых значений и 60 дополнительных регистров для хранения математических постоянных - в них при помощи системы переключателей вручную записывались неизменные в процессе вычислений константы. Помимо основного математического блока, в составе MARK-I имелось несколько отдельных модулей, предназначенных для выполнения операций умножения, деления, подсчета степени числа, значения синуса и вычисления логарифма. Операторский пульт представлял собой панель, содержащую 420 механических переключателей, не считая нескольких контрольных панелей, позволявших оператору управлять режимами работы машины. В процессе своей работы аппарат потреблял 160 киловатт мощности.

Революционным с технологической точки зрения было предложенное Айкеном устройство для программирования выполняемой счетной машиной последовательности операций. В качестве носителя информации использовалась перфолента из диэлектрического целлулоида, в которой пробивались отверстия, расположенные в 24 параллельных рядах. Данные делились на две категории: операционные команды, описывавшие, что должна делать машина в данный момент времени, и команды вычислений, управлявшие самими математическими операциями. Таким образом, в вычислительном комплексе MARK-I был впервые реализован принцип независимо хранимой программы - перфоленту, содержащую описание последовательности операций, можно было хранить отдельно от самого математического устройства, и многократно использовать по мере необходимости. Данные с перфоленты считывались специальными контактными щетками, при попадании в отверстие замыкавшими электрическую цепь. После выполнения операции перфолента смещалась на одну позицию и подставляла под щетки новый ряд отверстий.

Разработанная Айкеном вычислительная машина показалась американским специалистам в области кибернетики настолько перспективной, что вскоре он получил несколько новых заказов от Министерства обороны США. Следующий компьютер, MARK-II, построенный Айкеном в 1947 году специально для военно-морского флота, стал первым на нашей планете многозадачным вычислительным устройством: предусмотренные в его конструкции параллельные сумматоры позволяли одновременно выполнять несколько математических операций и передавать результат из одного модуля машины в другой.

Кстати, популярный в современной компьютерной среде термин "баг" (от английского "bug" - "жучок"), обозначающий ошибку или сбой в программе, имел в те времена буквальное значение. В процессе своей работы вычислительные машины MARK-I и MARK-II достаточно сильно нагревались, а некоторые их узлы испускали неяркое свечение. Свет и тепло привлекали многочисленных мотыльков и мелких бабочек, которые, забираясь внутрь компьютеров, зачастую вызывали короткое замыкание электрических схем. Термин ввела в обиход работавшая с MARK-II сотрудница вычислительного центра береговой службы ВМФ США Грейс Хоппер, ставшая позже всемирно известным компьютерным аналитиком и программистом, а также получившая за свои заслуги почетное звание контр-адмирала военно-морского флота. Hа ее совести также лежит изобретение термина "debugging" ("отладка"), обозначающего в современном языке процесс исправления допущенных программистом в процессе написания программного кода ошибок. Сама Грейс Хоппер описывала этот эпизод следующим образом: "однажды, летом 1945 года в помещениях лаборатории стояла ужасная жара, как вдруг неожиданно произошла аварийная остановка компьютера. Когда мы стали разбираться с проблемой, выяснилось, что сбой был вызван очередным мотыльком, замкнувшим накоротко контакты одного из тысяч реле. В этот момент к нам зашел офицер, чтобы узнать, чем мы занимаемся. Мы ответили, что очищаем компьютер от насекомых (debuging). Этот термин прижился и с тех пор используется для обозначения поиска неисправностей в компьютере, в частности, в программном обеспечении".

В то время, как полумеханические вычислительные машины медленно доживали свой век, технологии не стояли на месте: постепенный переход от релейных схем и зубчатых колес к более прогрессивным вакуумным лампам был неотвратим. В 1943 году Главное управление артиллерии США заключило с университетом Пенсильвании контракт на разработку и постройку специальной электронно-вычислительной машины, предназначенной для автоматического расчета баллистических таблиц. Руководителем проекта был назначен профессор факультета электротехники Пенсильванского универсистета Джон Маучли, а главным инженером - молодой ученый и настоящий энтузиаст от электроники Джон Преспер Эккерт. Официальное же представление построенного ими при содействии 10 инженеров и 200 техников "Электронно-цифрового интегратора и вычислителя" (Electronical Numerical Integrator and Calculator, сокращенно - ENIAC) состоялось 15 февраля 1946 года. В конструкции ENIAC'а использовалось более 18 тыс. вакуумных ламп и порядка 1500 реле, машина занимала отдельное помещение площадью в 85 квадратных метров, весила 30 тонн и потребляла 150 киловатт энергии, которой, даже несмотря на то, что это составляло на 10 киловатт меньше "потребностей" MARK-I, все равно хватило бы на удовлетворение нужд небольшого производственного предприятия. Вместо зубчатых колес для хранения числовых значений в ENIAC'e были предусмотрены замкнутые цепи из 10 специальных электронных переключателей - триггеров, 12 таких цепей, 10 для хранения самого значения числа, и 2 - для представления его знака, образовывали один регистр памяти машины. Всего разработчики предусмотрели 20 таких регистров, использовавших для выполнения операций суммирования и вычитания (компьютер выполнял такую операцию за 0,2 микросекунды), умножение и деление производилось в отдельных блоках машины.

Именно в конструкции ENIAC'a впервые использовался принципиально новый вид носителя информации, на который можно было записать последовательность выполняемых компьютером операций - перфокарты: набор специальных диэлектрических пластин с пробитыми в них отверстиями, каждое из которых замыкало определенную электрическую цепь при попадании в него контактной щетки считывающего устройства. Достоинство перфокарт по сравнению с перфолентой было очевидным: в то время, как неожиданно порвавшуюся ленту приходилось либо тщательно и кропотливо склеивать, либо выбрасывать и готовить новую, в данном случае специалисты просто заменяли одну-единственную пришедшую в негодность пластину из нескольких сотен.

Однако несмотря на всю прогрессивность и революционность предложенного Маучли и Эккертом технического решения, ENIAC отнюдь не был лишен серьезнейших недостатков. Во-первых, ввод информации в машину осуществлялся посредством переключения контактных коммутаторов на 40 наборных досках, каждая из которых была оснащена несколькими тысячами проводов, а общее их число составляло 6 000. Для того чтобы перенастроить компьютер с выполнения одной последовательности математических операций на другую, приходилось переключать все эти провода вручную, на что порой уходило до нескольких дней. К тому же ENIAC отличался крайне низкой надежностью: стоило перегореть одной из 18 тысяч вакуумных трубок, а перегорали они постоянно, как вся работа останавливалась, и приписанные к компьютеру техники начинали кропотливый поиск неисправности, который мог затянуться на сутки и даже более.

Более поздние модификации релейно-ламповых ЭВМ, архитектура которых основывалась на разработках Маучли и Эккерта, оказывались все более и более совершенными с точки зрения применяемых в их составе технологий. В частности, "универсальный автоматический компьютер" (Universal Automatic Computer, UNIVAC), разработанный в 1951 году корпорацией Remington-Rand Corporation специально для намечавшейся в США переписи населения, был изначально нацелен на серийное производство, в связи с чем производители уделили особое внимание использующимся в составе этой машины устройствам ввода-вывода, которые должны были заметно облегчить работу операторов с ЭВМ. Именно технологическая задача упростить ввод данных в машину сподвигла инженеров из Remington-Rand совместить электронно-вычислительную систему с одним из интуитивно понятных любому человеку элементов пишущей машинки: так появилась первая на нашей планете компьютерная клавиатура.

Электронную начинку UNIVAC составляло более 5000 вакуумных ламп, память на ртутных колбах позволяла хранить информацию объемом до полутора килобайт. Hаиболее примечательным элементом в конструкции UNIVAC был специальный накопитель, который позволял записывать информацию и считывать ее с магнитной ленты. В том же самом 1951 году исследователи Джей Форрестер и Боб Эверетт из Массачусетского Технологического Университета (MIT) создали компьютер "The Whirlwind", в составе которого в качестве устройства для отображения информации была использована электронно-лучевая трубка Уильямса - прообраз современного монитора.

Однако насколько бы прогрессивными ни казались электронно-вычислительные машины первого поколения, все же они не могли потягаться с современными компьютерами по своей надежности и быстродействию. Добиться более высокой стабильности в работе ЭВМ и достичь большей производительности ученым удалось только с появлением первых транзисторных компьютеров.

Яндекс.Реклама
Hosted by uCoz