Почему раньше компьютеры были большими
Некоторое время назад меня попросили рассказать или дать ссылки на историю развития IT-разработки, в которой была бы видна внутренняя логика развития, а не просто факты и события. Казалось бы, об этом должны быть книги или обзорные курсы, ведь логика развития IT-разработки в значительной мере овеществлена в логике развития языков программирования, и только в последние лет двадцать к этому добавилась логика развития фреймворков, платформ и концептуальных подходов к проектированию. Но я не нашел хороших источников.
История оказалась интереснее, чем я ее себе представлял. Мне было интересно ее писать и, надеюсь, вам будет интересно ее читать. При этом в статье наверняка осталось много моих собственных интерпретаций, которые не будут совпадать с вашими представлениями, и я буду рад обсудить различия.
Первоначально компьютеры создавались для решения вычислительных задач. Они были исполнительным механизмом вместо человека и просто реализовывали вычисления на конечном рабочем месте.
Что интересно – массовые вычисления выполнялись задолго до компьютеров. Еще в конце 18 века во Франции была построена система, при которой большой коллектив людей разного уровня квалификации, в основном – владеющих только простыми действиями, вычисляли таблицы математических функций с высокой точностью – это было нужно для решения инженерных задач. Потом это система развивалась, и в 20 веке существовали большие счетные бюро, обеспечивающие нужды инженеров и конструкторов во многих отраслях промышленности – строительство, судостроение, авиация, военные и так далее. Но эту историю я рассказывать не готов, хотя и слышал ее в одной из Лекций Петра Щедровицкого по СРТ.
В любом случае, в конце был человек-счетчик, снабженный тем или иным арифмометром. Их-то и хотели заменить компьютером, задача была «сделать то же самое, но без человека как вычислителя».
Для разработки алгоритмов программ использовались Блок-схемы – визуальное графическое представление, показывающее последовательные шаги, циклы и ветвления алгоритма. Статья вики Flowchart говорит, что они были разработаны для представления алгоритмов еще в 1920-х, а 1940-х были использованы фон Нейманом для проектирования компьютерных программ: «Douglas Hartree in 1949 explained that Herman Goldstine and John von Neumann had developed a flowchart (originally, diagram) to plan computer programs». Таким образом, блок-схемы старше компьютеров.
Первые программы писали непосредственно в машинных кодах – командах процессору, который их обрабатывал. Коды отражали конкретную архитектуру машины и развивались вместе с ней. Команда в машинных кодах «прибита гвоздями» к конкретному месту в памяти, где размещается она и ее данные, и эта привязка – наиболее жесткая. Когда ты объединяешь несколько программ для совместной работы, и оказывается, что они занимают одно и то же место в памяти, то одну из них надо переместить. Желательно, без переписывания и проверки ошибок, которые при этом возникают.
Эти задачи решали аппаратно: через команды вызова процедур, регистры для стековой организации памяти и базовых адресов и так далее. А в 1949 появилось программное решение – ассемблер. В нем команды записываются символически с мнемоникой, а не цифрами, программы можно вызывать одну из другой, вместо адресов данных указываются имена переменных и т.п. Это понемногу развивалось и совершенствовалось.
Ассемблер привязывался к конкретной машине и ее архитектуре, и это – проблема: при появлении новых, более совершенных компьютеров наработанные программы перенести было невозможно. В 1954-1957 был разработан Fortran (IBM) – первый язык, отвязанный от железа конкретной ЭВМ.
Но это побочный, хотя и очень полезный эффект. Главная задача, которая была решена, – это то, что программы на Фортране можно достаточно комфортно переносить между компьютерами. Там есть сложности с различной точностью вычислений и объемами памяти, но по сравнению с ассемблером это значительный шаг вперед: созданное не пропадает с устареванием компьютера.
На Фортране написано громадное количество библиотек, реализующих различные вычисления, он живет, развивается и используется до сих пор. Отметим, что обобщение часто решаемых задач и реализация их в виде процедур, параметры которых задают вариативность реализации алгоритма и позволяют одну и ту же процедуру использовать в разных задачах, и формирование из этих процедур библиотек, которые полностью закрывают потребности какого-либо класса задач, родилось именно тогда. Это дало начало процедурной парадигме программирования.
При выделении процедур очень важна удачная параметризация. Например, при численном решении уравнений каким-либо методом возникает проблема с особыми точками и краевыми эффектами, для которых существуют вариации алгоритмов. И от того, какие вариации будут предусмотрены, зависит область применения процедуры. Фортран в этом смысле беден: в процедуру нельзя передать ссылку на другую процедуру для обработки особых ситуаций, нельзя добавить при доработке библиотеки параметры по умолчанию – все это появилось гораздо позднее, в продвинутых диалектах языка. Сейчас такие задачи решать легче, но удачное обобщение и параметризация по-прежнему остаются частью слабоформализованного искусства программирования.
Lisp дал начало функциональной парадигме программирования и декларативному подходу. Из этих подходов позднее выросли декларативные языки логического вывода Planner (1969), Prolog (1973) и другие, и функциональные языки Schema (1975), Haskell (1990) и Clojure (2007).
Фортран обеспечил разработку программ для чисто вычислительных задач, закрыв потребности самого главного заказчика – военных, а заодно и других инженеров-проектировщиков. Однако, у бизнеса были и другие задачи. А главное, они были у самих программистов, они не слишком хотели писать компиляторы и системное обеспечение на ассемблере. А для этого нужна работа со структурами данных, а не просто с числами, и развитая работа с текстами и файлами.
Как и сейчас, программисты не слишком хотели разбираться в бизнес-задачах, поэтому решили придумать универсальное решение – разработать универсальный алгоритмический язык. И сделать это силами всего международного сообщества. Так начал появляться язык Алгол, Algorithmic Language. История рассказана в русской и английской статьях, она прекрасна. Была недельная конференция в 1958, на которой создали стандарт языка, не слишком подумав про реализацию, и сформировали комитет по доработке IFIP. Этот комитет два года делал стандарт приемлемым для реализации, и в результате выпустил стандарт Algol-60.
Я, кстати, в институте обучался именно на Алголе Курочкина на БЭСМ-6, который наш преподаватель любил за чистоту и полную реализацию первоначального стандарта, в отличие от более поздней реализации Алгола-68.
Долгая работа над универсальным языком Алгол и полуживой первый стандарт вызвали альтернативную ветвь развития языка для разработки бизнес-приложений, которым стал Cobol. История описана в вики, инициатива была академическая, но реализация спонсирована военными из министерства обороны. Разрабатывала стандарт очень компактная рабочая группа, в которую входили производители компьютеров и заказчики. Поэтому получилось очень быстро: первая конференция, на которой высказана идея и получена поддержка была в мае 1959, к декабрю согласован стандарт Cobol-1960, а уже в августе 1960 показан первый работающий компилятор.
На Коболе наработаны большие библиотеки приложений и поэтому он местами используется до сих пор и даже развивается… Такая долгая жизнь Cobol при его многочисленных недостатках непонятна и печалит сторонников «правильных» подходов к разработке, начиная со структурного программирования, появившегося в конце 60-х. Википедия приводит цитату Дейкстры «Использование Кобола калечит ум. Его преподавание, следовательно, должно рассматриваться как уголовное преступление».
Но Кобол был ориентирован на бизнес-приложения, а программистам по-прежнему надо было писать компиляторы и системный софт. Дефицит языка общего назначения привел к появлению в 1964 году языка PL/I, его разработал IBM для своих компьютеров.
И в заключении интересно отметить язык BASIC. Он появился в 1964 как сокращенный диалект «для непрограммистов», который дает представление о работе компьютера на низком уровне для вычислительных задач, такой урезанный Fortran. Но его реальный расцвет пришелся на 1970-е, когда появились слабые компьютеры, для которых традиционные языки оказывались слишком тяжелыми, создать компиляторы было невозможно.
Параллельно с этим развивалась функциональная парадигма, о которой я уже говорил раньше, описывая язык Lisp. В основе функциональной парадигмы лежит некоторый математический аппарат, у ее применения есть своя ниша в части обработки тестов, графов и больших объемов данных. Этот математический аппарат позволяет очень эффективно распараллеливать вычисления, а это востребовано.
Работа над Алголом и дальнейшее развитие привели к формированию концепции структурного программирования (по-русски и по-английски). Авторы – Дейкстра и Вирт, идея – ясность логики выполнения алгоритма из кода программы, отсутствие необходимости в дополнительной документации в виде блок-схем. Начало отсчитывают от статьи Дейкстры 1968 года.
Логическим завершением этапа эволюции подходов к разработке софта, начатой Алголом и продолженной другими языками, надо считать работу Николаса Вирта «Алгоритмы + Структуры данных = Программы» (1976), которая фиксирует следующий после алгоритмики Кнута этап развития концепций разработки софта.
В 1974, с развитием обработки больших объемов данных, появилась модель реляционных баз данных и язык SQL, реализующий реляционную парадигму программирования. В ее основу лег специальный раздел математики – реляционная алгебра. Что интересно, реляционную алгебру необходимо понимать для реализации движков СУБД, но вот для использования SQL, включая построения сложных запросов, понимание реляционной алгебры вовсе не является необходимым, гораздо проще это объяснять другим образом. К этому я еще вернусь в следующих статьях.
Есть мнение, что во второй половине 1960-х зародился ООП, объектно-ориентированный подход. Однако, статья вики допускает много трактовок. В Алголе объектов (в современном смысле) точно не было, в 1967 скандинавы сделали язык Симула с замечательными концептами, но не слишком хорошей реализацией. Smalltalk с акторной моделью, который авторы статьи также отнесли к ООП, на мой взгляд, представляет собой отдельную ветвь развития. Так что я бы рассматривал все это как предысторию ООП, а историю отсчитывал с языка С++ (1979-1985) (история).
На рубеже 80-х появился не только ООП вместе с языком C++, произошло еще одно принципиальное событие – появились персональные компьютеры. И это принципиально изменило задачи, стоящие перед IT-разработкой. Главное изменение состояло не в том, что появились компьютеры для домашнего использования, и потребовался софт для работы на них: текстовые и графические редакторы, компиляторы и средства разработки, базы данных и игры – это все так или иначе перенесли с больших компьютеров. Вопрос был в оптимизации и адаптации под ограниченные ресурсы. Главное изменение в том, что персоналки сделали компьютеры доступными небольшим компаниям, и потребовались системы автоматизации бизнес-процессов, которые сильно отличаются в разных компаниях, и типовую систему сделать сложно. И как раз эту задачу помог решить ООП. Но об этом мы поговорим в следующей статье.
Я там занимался системным программированием, это было интересно. Одним из результатов был многопользовательский интерактивный текстовый редактор, который в одном процессе обслуживал до 8 пользователей, редактирующих свои файлы с подключенных терминалов. Потому что на уровне ОС было ограничение на 15 пользовательских процессов, из которых только 6 интерактивных с пользователями, а подключенных терминалов было много больше. Там было много интересных задач: эмуляция потоков и обработка прерываний, управление памятью и так далее. Аналогичные системы были, но ресурсоемкие и с проблемами в эргономике. Поэтому когда редактор написали, то его быстро внедрили и он завоевал популярность, а я ощутил, что такое сопровождение системы, которая иногда сбоит и падает, теряя или портя пользовательские файлы. Несколько лет все это жило, а потом пришли персоналки, и я с большим интересом окунулся в мир разработки на C++.
В этом году исполняется сорок лет со дня изобретения одного почти забытого устройства, ставшего впоследствии первым персональным компьютером. Удивительно, но события, описанные в статье, имели место вовсе не в Калифорнии.
Но на деле история чуть сложнее и интереснее. Во-первых, «биография» x86 началась на 4 года раньше, еще в 1968 году. Её основоположник — ныне почти забытый инженер Остин Рош из Сан-Антонио. Он горел идеей создания персонального компьютера.
Основатели CTC
Во-вторых, Intel приступила к производству процессоров крайне неохотно, а 8008 вовсе не является прямым потомком 4004. Это были два совершенно разных проекта.
Intel 4004
Мы поговорили с промышленным дизайнером Джоном «Джеком» Фрассанито, главой John Frassanito & Associates Inc. Когда Остин Рош набросал первые чертежи своего компьютера прямо на скатерти клуба в Сан-Антонио, Фрассанито был поражен. Дело было в 1968 году. Тогда Джон работал аккаунт-менеджером у легендарного дизайнера Рэймонда Лоуи (который помимо всего прочего придумал бутылку Coca-Cola и Studebaker Avanti).
Фрассанито пригласили в Computer Terminal Corp. (CTC) для помощи в разработке первого продукта компании. Планировалось создать электронную замену Teletype Model 33. CTC тогда только-только открылась, а её основателями были инженеры НАСА Фил Рэй и Остин Рош.
По прибытии в Сан-Антонио Фрассанито с удивлением узнал, что проект телетайпа — это всего лишь «легенда», чтобы получить от инвесторов деньги на создание персонального компьютера.
Как выглядел первый компьютер в мире
Американский «Марк 1» был огромен, занимая в длину свыше 17 метров, а в высоту - свыше 2.5 метра. Машина, в оболочке из стекла и нержавеющей стали, весила 4,5 тонны, а общая протяженность ее соединительных проводов чуть-чуть не дотягивала до 800 км. За синхронизацию основных вычислительных модулей отвечал пятнадцатиметровый вал, который приводил в движение электродвигатель мощностью 4 кВт.
Марк 1 в музее IBM
Еще тяжелее, чем «Марк 1», был «ЭНИАК». Он весил 27 тонн, и требовал 174 кВт электроэнергии. Когда его включали, городские огни тускнели. Машина не имела ни клавиатуры ни монитора, занимала площадь в 135 кв.м и была обвита километрами проводов. Чтобы получить представление о внешнем виде «ЭНИАКа» представьте себе длинный ряд металлических шкафов, которые сверху донизу заставлены лампочками. Поскольку качественного охлаждения у компьютера тогда еще не было, в помещении, где он находился, было очень жарко, и «ЭНИАК» давал сбои.
ENIAC
Первый советский компьютер
В СССР не желали отставать от Запада и вели свои разработки по созданию ЭВМ. Результатом усилий советских ученых стала «Малая электронная счетная машина» (МЭСМ). Ее первый запуск состоялся в 1950 году. В МЭСМ использовались 6 тысяч ламп, она занимала площадь в 60 кв. м и требовала для работы мощности до 25 кВт.
МЭСМ
Устройство могло выполнять до 3 тысяч операций в секунду. МЭСМ применялась для сложных научных вычислений, затем ее использовали как учебное пособие, а в 1959 году машину разобрали.
В 1952 году у МЭСМ появилась старшая сестра - «Большая электронная счетная машина» (БЭСМ). Количество электронных ламп в ней возросло до 5 тысяч, выросло и количество операций в секунду - от 8 до 10 тысяч.
БЭСМ
Первый домашний компьютер массового производства в СССР
С 80-х годов XX века в Болгарии начали выпускать компьютер под названием «Правец». Это был клон второй версии Apple. Еще одним клоном, входящим в линейку «Правец», был «советский» IBM PC, базировавшийся на процессорах Intel 8088 и 8086. Более поздним клоном Oric Atmos была «домашняя» модель «Правец 8D» в небольшом корпусе и со встроенной клавиатурой. Она выпускалась с 1985 по 1992 годы. Компьютеры «Правец» стояли во многих школах Советского Союза.
Правец
Желающие собрать себе домашний компьютер могли воспользоваться инструкциями в журнале «Радио» 1982-83 гг. и воспроизвести модель под названием «Микро-80». Она базировалась на микропроцессоре КР580ВМ80, аналогичном Intel i8080.
В 1984 году в Советском Союзе появился компьютер «Агат», достаточно мощный по сравнению с западными моделями. Объем ОЗУ составлял 128 КБ, что вдвое превышало объем оперативной памяти у моделей Apple начала 80-х годов двадцатого века. Компьютер выпускался в нескольких модификациях, имел внешнюю клавиатуру с 74 клавишами и черно-белый либо цветной экран.
Агат
Производство «Агатов» шло до 1993 года.
IBM PC 5150 (1981)
В 1981 году мир увидел первый персональный компьютер, потому что IBM выпустила устройство серии IBM PC 5150. Сердцем стал процессор Intel 8088 мощностью 4,77 МГц. Цена комплекта составляла $3005.
Самый первый персональный компьютер в мире
Впервые термин «персональный компьютер» был применен к творению итальянского инженера Пьера Джорджио Перотто под названием Programma 101. Выпустила его фирма Olivetti.
Programma 101
Стоило устройство 3200 долларов и разошлось тиражом около 44 000 экземпляров. Десять штук купило NASA, чтобы использовать для расчетов посадки Apollo 11 на Луну в 1969 году. Сеть ABC (American Broadcasting Company) использовала Programma 101 для прогнозирования президентских выборов 1968 года. Американские военные использовали его для планирования своих операций во время войны во Вьетнаме. Он также закупался для школ, больниц и правительственных учреждениях и отмечал начало эпохи быстрого развития и продаж ПК.
Кто создал самый первый компьютер в мире
В 40-е годы прошлого столетия существовали сразу несколько устройств, которые могут претендовать на звание первого компьютера.
Конрад Цузе
Ранний компьютер, созданный немецким инженером Конрадом Цузе, который работал в полной изоляции от разработок других ученых. Он имел отдельный блок памяти и отдельную консоль для ввода данных. А в качестве их носителя выступала восьмидорожечная перфокарта, изготовленная Цузе из 35 мм кинопленки.
В машине было 2600 телефонных реле и ее можно было свободно программировать в двоичном коде с плавающей точкой. Аппарат Z3 использовался для аэродинамических расчетов, но был уничтожен при бомбежке Берлина в конце 1943 года. Цузе руководил реконструкцией своего детища в 1960-х годах, и сейчас эта программируемая машина демонстрируется в музее Мюнхена.
Xerox Alto (1973)
Первый персональный компьютер с графической системой. Именно этот дизайн вдохновил Билла Гейтса и Стива Джобса на их собственные проекты — компьютеры Windows и Macintosh. Однако Xerox Alto так и не появился в продаже.
HP-75C (1982)
Всего через год после появления Osborne 1 вышел HP-75C, один из первых компьютеров, который можно было положить в карман. Устройство, запрограммированное на языке BASIC, имело 16 килобайт оперативной памяти, а также 48 килобайт системной памяти. Сегодня такой компьютер мог бы использоваться нами в качестве текстового редактора, календаря или будильника.
Дебют 2200
Настольный персональный компьютер CTC на базе TTL, получивший название Datapoint 2200, был представлен публике в 1970 году. В качестве устройства хранения в нем использовались кассеты. На них помещалось до 130 КБ данных. Еще 8 КБ были отведены под внутреннюю память. Первым покупателем ПК 25 мая 1970 года стала компания General Mills. В общей сложности они закупили 40 устройств.
Datapoint 2200
В лучших традициях маркетинговой модели IBM машины сдавались в аренду: 168 долларов в месяц за машину с 8КБ памяти и 148 долларов — за 2КБ. Модемы продавались отдельно и стоили 30 долларов в месяц. ОЗУ не было, поэтому для внутренней памяти устройство использовало рециркуляционную память MOS.
Аарон Голдберг, в 1970-х годах работавший в IDC, а ныне вице-президент Ziff Davis Media Market Experts, отзывается о Datapoint 2200 как об одном из первых однопользовательских миникомпьютеров того же класса, что и IBM 5320. По его словам, это были продукты промышленного уровня. Они могли потеснить на этом рынке мэйнфреймы.
Рекламный плакат Datapoint
Надо сказать, руководство CTC вело переговоры не только с Intel. Другая компания, Texas Instruments Inc, также разрабатывала для них чип 1201. Но поставленный в 1970-1971 году чип 1201 от TI был неработоспособен, и проект свернули. Это была роковая случайность. TI использовала раннюю спецификацию, разработанную для CTC корпорацией Intel, но не учла того, что в ней могут быть ошибки.
Рабочий чип Intel 1201 был представлен CTC в конце 1971 года. К тому времени CTC уже вовсю работала над Datapoint 2200 II, который был бы намного быстрее и поддерживал жесткий диск. Однако руководство CTC сочло, что 1201 морально устарел. Общим голосованием Роша отстранили от проекта. Фрассанито вспоминает, как Рош побледнел от ужаса, узнав об этом решении. Интеллектуальная собственность на 1201 полностью перешла к Intel.
Intel получает права на 1201
«Рош говорил, что идея напечатать целый компьютер на чипе поразительна и инновационна. Он был убежден, что нельзя никому отдавать права на эту разработку» — вспоминает Фрассанито. «Но они сказали: зачем тратить 50 000 долларов на продукт, который мы не будем использовать? Это было одно из худших бизнес-решений в компьютерной истории».
4004 попал в каталог Intel в ноябре 1971 года и стал первым в истории коммерческим микропроцессором. 1201, переименованный в 8008, появился на рынке в апреле 1972 и продавался по цене 120 долларов за штуку. В отличие от 4004, 8008 мог использовать стандартную оперативную память и ПЗУ. Поскольку чип не составлял конкуренции производителям компьютеров, санкций с их стороны не последовало. Руководство Intel выдохнуло с облегчением.
В том же 1972 году Рошу, Рэю и Фрассанито был выдан Патент №224,415 на создание Datapoint 2200. Фактически это позволяет считать их создателями первого в мире ПК.
В 1974 году Intel выпустила чип 8080, основанный на той же архитектуре, что и 8008. Инженеры CTC поделились с Intel экспертизой, полученной во время работы над Datapoint 2200 II. Новый 40-контактный корпус позволил сократить количество вспомогательных микросхем.
Последовавшие за 8080 процессоры «основали» династию x86, а окончательно утвердил их на троне IBM PC 1981 года. Таким образом, любой современный персональный компьютер может считаться потомком Datapoint 2200.
«Я смотрю на современные ПК и вижу в них призрак той самой первой машины. Он таится внутри, среди множества новых штучек и новых регистров», — Виктор Д. Пур, бывший исполнительный директор CTC.
Intel заработала на своей линейке x86 миллиарды долларов. Что касается CTC, в конце 1972 года она была переименована в Datapoint. Некоторые инженеры, работавшие над Datapoint 2200, позже участвовали в создании первой коммерческой локальной сети — ARCnet (1977 год). К 1980-ом Datapoint пришла в упадок. Как и многие другие компании, выпускающие мини-компьютеры, она оказалась не в состоянии конкурировать с более дешевыми производителями ПК — по иронии судьбы, прямыми потомками их детища. Компания Datapoint была окончательно упразднена в 2000 году.
Рош погиб в автомобильной катастрофе в 1975 году, Рэй скончался в 1987-ом, а Нойс — в 1990-ом. Фрассанито ушел из Datapoint и открыл собственную фирму в 1975-ом.
А Datapoint 2200 ни дня не использовался в качестве замены IBM 029.
Электронные вычислительные машины того времени представляли из себя массивные конструкции весом в несколько тонн. Каждый новый этап развития ЭВМ был связан не только с техническим прогрессом, но и с программным. Взять хотя бы Windows, который пришел на смену "бездушному" DOS.
Именно IBM, годом основания которой считается 1889 год, внесла огромный вклад в развитие компьютерной техники. Ее прародительница, корпорация CTR (Computing Tabulating Recording) включала в себя сразу три компании и выпускала самое различное электрическое оборудование: весы, сырорезки, приборы учета времени. После смены директора в 1914 году компания начала специализироваться на создании табуляционных машин (для обработки информации). Спустя 10 лет CTR поменяло свое название на International Business Machines или IBM.
Еще в 1888 году инженер Герман Холлерит, основатель IBM, создал первую электромеханическую счетную машину - табулятор, который мог считывать и сортировать данные, закодированные на перфокартах (бумажных карточках с отверстиями). Его даже использовали при переписи населения в 1890 году в США.
При этом история компьютеров IBM началась спустя более полувека, в 1941 году, когда был разработан и создан первый программируемый компьютер "Марк 1" весом порядка 4,5 тонн, 17 метров в длину, 2,5 метра – в высоту. Президент IBM вложил в него 500 тысяч долларов. Впервые "Марк 1" был запущен в Гарвардском университете в 1944 году. Чтобы понять, насколько сложна была конструкция машины, достаточно сказать, что общая длина проводов составила 800 км. При этом компьютер осуществлял три операции сложения и вычитания в секунду.
Первое поколение ЭВМ
Первая ЭВМ, основанная на ламповых усилителях, под названием "Эниак" была создана в США в 1946 году. По размерам она была больше, чем "Марк 1": 26 метров в длину, 6 метров в высоту, а ее вес составлял около 30 тонн. При этом по производительности "Эниак" в 1000 раз превышала "МАРК-1", а на ее создание ушло почти 500 тысяч долларов. Но у нее были существенные недостатки: очень мало памяти для хранения данных и долгое время перепрограммирования – от нескольких часов и до нескольких дней.
Кстати, среди создателей "Эниак" был ученый Джон фон Нейман, предложивший архитектуру ЭВМ, заложенную в компьютерах с конца 1940-х до середины 1950-х годов. Именно он осуществил переход к двоичной системе счисления и хранению полученной информации.
В 1951 году появился первый коммерческий компьютер UNIVAC, и уже в 1952 году вышел "IBM 701". Это был первый крупный ламповый научный коммерческий компьютер, причем создали его достаточно быстро – в течение двух лет. Его процессор работал значительно быстрее, чем у UNIVAC - 2200 операций в секунду против 455. В одну секунду процессор "IBM 701" мог выполнять почти 17 тысяч операций сложения и вычитания.
Второе поколение ЭВМ
Второе поколение ЭВМ использовало в своей основе транзисторы, созданные в 1947 году. Это была очередная революция, в результате которой существенно уменьшились размеры и энергопотребление компьютеров, так как сами биполярные транзисторы в разы меньше вакуумных ламп.
В 1959 году появились первые компьютеры IBM на транзисторах. Они были надежны, и ВВС США стали использовать их в системе раннего оповещения ПВО. А в 1960 году IBM разработала мощную систему Stretch или "IBM-7030". Она была и вправду сильна – создатели добились 100-кратного увеличения быстродействия. В течение трех лет он был самым быстрым компьютером в мире. Однако со временем IBM уменьшила его стоимость, а вскоре и вовсе сняла с производства.
Третье поколение ЭВМ
Третье поколение компьютеров связано с использованием интегральных схем (в которых используется от десятков до сотен миллионов транзисторов), впервые изготовленных в 1960 году американцем Робертом Нойсом.
В 1964 году IBM объявила о начале работы над целой линейкой IBM System/360.
System/360 хорошо продавалась даже спустя шесть лет после анонса системы. За 6 лет IBM выпустила более 30 тысяч машин. Однако затраты на разработку System/360 были очень велики - около пяти миллиардов долларов. Таким образом, System/360 заложила фундамент для следующих поколений, первым из которых был System/370.
Четвертое поколение ЭВМ
Четвертое поколение связано с использованием микропроцессоров. Первый такой микропроцессор под названием "Intel-4004" был создан в 1971 году компанией Intel, до сих пор остающейся в лидерах. Спустя 10 лет IBM выпустила первый персональный компьютер, который так и назывался IBM PC. Самая дорогая конфигурация стоила 3000 долларов и предназначалась для бизнеса, а конфигурация за 1500 долларов – для дома.
Процессор Intel 8088 работал на частоте 4,77 МГц (сейчас этот показатель в тысячи раз больше), а объем ОЗУ - 64 кбайта (сейчас – в миллионы раз больше). Для хранения информации использовались 5,25-дюймовые флоппи-дисководы. Жесткий диск нельзя было установить из-за недостаточной мощности блока питания.
Интересно, что разработкой компьютера занимались всего четыре человека. Причем IBM не запатентовала ни операционную систему DOS, ни BIOS, что породило огромное количество клонов. Уже в 1996 году IBM уступило первое место по продажам ПК на ею же основанном рынке.
Несмотря на то, что современные гаджеты сильно отличаются по характеристикам от своего предшественника, все они относятся к тому же поколению ЭВМ.
Основные толчки для развития компьютеров дала наука (появление ламп, а затем транзисторов). В настоящее время распространяется ввод информации с голоса, общения с машиной на человеческом языке (приложение Siri в iPhone) и активная работа над роботами. Основное мнение, что будущее – за квантовыми компьютерами, которые будут использовать в своей основе молекулы и нейрокомпьютерами, использующими центральную нервную систему человека и непосредственно его мозг. Однако для того, чтобы эти технологии появились, необходимо досконально изучить эти системы.
Сегодняшние персональные компьютеры сильно отличаются от массивных, неуклюжих устройств, возникших во время Второй мировой войны, и разница не только в их размерах. «Отцы» и «деды» современных десктопов и лэптопов не умели многое из того, с чем играючи справляются современные машины. Однако самый первый компьютер в мире стал прорывом в области науки и техники. Устраивайтесь поудобнее перед монитором, и мы расскажем о том, как зарождалась эпоха ПК.
Macintosh (1984)
«Вы увидите, почему 1984 год никогда не будет похож на «1984»» — этот рекламный слоган запомнился многим. Именно он объявил о выходе на рынок первого Apple Macintosh — высокопроизводительного устройства, предназначенного для использования дома или в офисе, которое было оснащено графическим интерфейсом, мышью, клавиатурой и считывателем дискет. Первая версия Macintosh продавалась с процессором Motorola 68000 со скоростью 8 МГц и 128 КБ оперативной памяти. Компьютер весил чуть более 7 кг и имел размеры 35 х 24 х 28 см.
Z1 (1937)
Первый компьютер, Z1, был, пожалуй, не самый большой, потому что он занимал площадь 4 кв.м. и весил «всего» тонну. Это было относительно простое устройство, используемое, в основном, для аэродинамических расчетов при проектировании самолетов.
Z3 (1941)
Первый полностью автоматический компьютер. Как и предшественник, он весил около тонны и занимал площадь нескольких полноразмерных шкафов.
HP 9100A (1968)
HP назвала свое устройство «программируемым калькулятором», но оно больше соответствовало назначению компьютера и, кроме того, имело компактные размеры. Модель 9100A с экраном, устройством для чтения магнитных карт и принтером была оценена в 5000 долларов.
EDSAC (1949)
EDSAC, по сравнению с ENIAC, был очень компактным. Он состоял из 12 узких металлических шкафов, внутри которых было спрятано около 3000 электрических ламп.
Ferranti Mark I (1949)
Первый коммерческий универсальный компьютер. Это означало, что устройство должно было быть миниатюрным, чтобы его можно было использовать, например, в офисах или университетах. Ferranti Mark I положил начало эпохе компьютеров размером с письменный стол.
EDSAC
EDSAC
Первый компьютер с хранимым в памяти программным обеспечением назывался EDSAC. Он был собран в 1949 году в Кембриджском университете. Проект по его созданию возглавлял профессор Кембриджа и директор Лаборатории вычислительных исследований Кембриджа Морис Уилкс.
Одним из основных достижений в программировании было использование Уилксом библиотеки коротких программ под названием «подпрограммы». Она хранилась на перфокартах и использовалась для выполнения общих повторяющихся вычислений в рамках программы lager.
Osborne 1 (1981)
В том же году на рынке появился прародитель ноутбуков — Osborne 1 — полностью мобильный компьютер. Устройство весило 10,7 кг и было оснащено мощным процессором Zilog Z80 с частотой 4 МГц. 5-дюймовый монохромный дисплей имел разрешение 24 строки x 53 символа. Все это стоило 1795 долларов.
Colossus (1944)
Вычислительная мощность этого компьютера требовала использования 1500 ламп. Он мог обрабатывать команды со скоростью до 5000 слов в секунду. Габариты устройства требовали просторного помещения в несколько метров.
CSIRAC (1949)
Первый компьютер, сделанный в Австралии, с огромной по тем временам производительностью 1 МГц и все это благодаря 2000 ламп. В 1950 году CSIRAC стал первым компьютером, который был использован для создания музыки.
NEAC 2203 (1958)
NEAC 2203 — это японский компьютер. Он состоял из трех элементов — панели управления в виде стола и двух шкафов — один из которых предназначался для «процессора», а другой для памяти. Вся конструкция имела размер 178 x 125 x 91 см.
На сцене появляется Intel
В 1970 году Фрассанито сопровождал Роша на встрече с главой Intel Бобом Нойсом. Они пытались склонить Intel, тогда еще совсем молодую компанию, производящую микросхемы памяти, к созданию процессорных чипов. Рош предложил Нойсу разработать революционный чип за свой счет, а затем поставлять его всем желающим, включая CTC.
«Нойс был заинтригован и сказал, что Intel может этим заняться. Однако шаг потенциально глупый», — вспоминает Фрассанито. «Он сказал: имея процессор, можно продавать по одному чипу для каждого компьютера. А микросхемы памяти продаются сотнями». Тем не менее, Нойс согласился разработать чип за $50000.
Роберт Нойс, сооснователь Intel
По их словам, этот страх держался вплоть до 1973 года. Работа над чипом для CTC под названием 1201 и вовсе была заморожена летом 1970-го после того, как CTC предпочли ему плату ЦП на TTL-схемах.
В Intel никто особенно не удивился этому решению. Архитектура процессора CTC «могла занять до 16000 байт памяти, а если вы и так тратите кучу денег на память, то нет смысла экономить плюс-минус 50 долларов на процессоре, перемещая его из TTL». К 1972 году стоимость памяти слегка упала, 16 КБ на тот момент стоили порядка 1280 долларов (около 6700 долларов на современные деньги).
Первый домашний компьютер массового производства за рубежом
В 1975 году в одном из выпусков журнала « Популярная электроника» появилась статья о новом компьютерном наборе - Altair 8800. В течение нескольких недель после появления устройства клиенты наводнили его производителя, компанию MITS, заказами. Машина была оснащена 256-байтовой памятью (расширяемой до 64 Кб) и универсальной интерфейсной шиной, которая превратилась в стандарт «S-100», широко используемый в любительских и персональных компьютерах той эпохи.
Altair 8800
«Альтаир 8800» можно было купить за 397 долларов. После покупки владельцу-радиолюбителю нужно было самостоятельно паять и проверять работоспособность собранных узлов. На этом трудности не заканчивались, предстояло еще освоить написание программ с помощью нулей и единиц. У Altair 8800 не было клавиатуры или монитора, жесткого диска и дисковода. Чтобы ввести нужную программу пользователь щелкал тумблерами на передней панели устройства. А проверка результатов осуществлялась путем наблюдения за лампочками, мигающими на передней панели.
А в 1976 году «на свет» появился первый компьютер Apple, разработанный и изготовленный вручную Стивом Возняком и рекламируемый его другом Стивом Джобсом как первый продукт компании Apple Computer Company. Apple 1 считается первым ПК, поставляемым в готовом виде.
Apple 1
На самом деле у устройства не было ни монитора, ни клавиатуры (предусматривалась возможность их подключения). Зато была полностью укомплектованная монтажная плата, на которой находилось 30 микросхем. У «Альтаир 8800» и других поступивших на рынок устройств и этого не было, их надо было собирать из набора. Первоначально у Apple 1 была почти «адская» цена в 666, 66 долларов, однако год спустя она была снижена до 475 долларов. Позже была выпущена дополнительная плата, которая позволяла записывать данные на кассетный магнитофон. Она стоила 75 долларов.
Harvard Mark I (1944)
Для работы Harvard Mark I нужен был, буквально, целый зал. Это самый большой компьютер, созданный во время войны: 16 м в длину, почти 2,5 м в высоту и весом более 4 тонн. Разобрав это устройство, мы бы обнаружили в нем более 800 км проводов и кабелей. Машина использовалась вплоть до 1959 года.
UNIVAC 1 (1951)
Основным элементом UNIVAC 1 было устройство управления, встроенное в письменный стол, но наиболее важную задачу выполняли 5000 вакуумных ламп, помещенных в шкафы, для которых требовалось более 35 кв.м. пространства. Компьютер производил поразительное количество вычислений благодаря мощности 2,25 МГц и весил 7,6 тонны.
ENIAC (1945)
Много лет ENIAC считался первым компьютером, но со временем — после рассекречивания многих документов — он потерял этот титул. ENIAC — это гигант, которому требуется помещение размером не менее 12 х 6 м. Все это для того, чтобы вместить около 42 металлических шкафов высотой 3 м. и ошеломляющим весом 27 тонн.
LGP 30 (1956)
LGP 30 был одним из первых «портативных» компьютеров. Во-первых, элементы, отвечающие за расчеты, были заключены в коробку размером 80 x 112 x 66 см, а во-вторых, устройство было оснащено колесами. Вся конструкция весила 320 кг и стоила 47000 долларов, что сегодня соответствует более 400 тысячам долларов, учитывая инфляцию.
Марк 1
Марк 1
Устройство «Марк 1» задуманное профессором Говардом Эйкеном и выпущенное IBM в 1941 году, представляло собой первый в Америке программируемый компьютер. Машина стоила полмиллиона долларов, и применялась для разработки оборудования для ВМФ США, такого как торпеды и средства подводного обнаружения. Также «Марк 1» использовали при разработке имплозионных устройств для атомной бомбы.
Именно «Марк 1» можно назвать самым первым компьютером в мире. Его характеристики в отличие от немецкого Z3, позволяли выполнять вычисления в автоматическом режиме, не требуя вмешательства человека в процесс работы.
iMac G3 (1998)
В то время, когда большинство компьютеров, как и IBM PC, состояли из процессора и монитора, Стив Джобс предложил комплексное решение «все-в-одном». Так был создан iMac G3 размером 40 x 39 x 45 см и весом 18 кг. Конечно, это было не самое мобильное оборудование, но определенно — компактное.
Первый в мире коммерческий компьютер
UNIVAC 1, представленный в США в 1951 году, можно назвать первым компьютером, предназначенным для коммерческого использования.
UNIVAC 1
Он прославился после того, как использовал данные опроса 1% населения, имеющего право голоса, чтобы правильно предсказать, что генерал Дуайт Эйзенхауэр выиграет выборы 1952 года. Когда люди поняли возможности компьютерной обработки данных, многие предприятия начали приобретать эту машину для своих нужд.
Tablet PC (2000)
Несмотря на то, что популярность планшетов началась после презентации ipad в 2010 году, идея компьютера, заключенного в «тонкую рамку с экраном», была представлена 10 годами ранее Биллом Гейтсом. Но тогда планшеты не получили широкого распространения на потребительском рынке и использовались, в основном, в бизнесе или медицинских учреждениях.
SEAC (1950)
Устройство было разработано специально для американских офисов. Оно было одним из первых, которое могло сканировать и обрабатывать изображения. Первая версия состояла «всего» из 747 электрических ламп, из которых удавалось получить около 1 МГц производительности. Компьютер весил 1,4 тонны.
RCA 501 (1958)
Если вы подумали, что LGP 30 стоил слишком дорого, то стоит знать, что RCA 501 продавался за 120 000 долларов. Устройство было размером не больше шкафа, но все еще очень тяжелым — весом 2,3 тонны.
Atanasoff-Berry (1942)
Первая машина для решения систем линейных алгебраических уравнений была сопоставима с письменным столом. Вес этого устройства составлял примерно 320 кг.
Atanasoff-Berry Computer (ABC)
Atanasoff-Berry Computer
В 1939 году профессор Джон Винсент Атанасов получил средства для создания машины, названной Atanasoff-Berry Computer (ABC). Она была спроектирована и собрана Атанасовым и аспирантом Клиффордом Берри в 1942 году. Однако устройство ABC не имело широкой известности до патентного спора, связанного с изобретением компьютера. Он был разрешен лишь в 1973 году, когда было доказано, что соавтор ENIAC Джон Мокли видел компьютер ABC вскоре после того, как тот стал функциональным.
Юридический результат судебных тяжб был знаковым: Атанасов был объявлен инициатором нескольких основных компьютерных идей, но компьютер как концепция был объявлен непатентоспособным и, следовательно, свободно открыт для всех разработчиков. Полномасштабная рабочая копия ABC была завершена в 1997 году, доказав, что машина ABC функционировала так, как утверждал Атанасов.
Компьютеры современности
В наши дни современные компьютерные технологии меняются очень быстро. Самые мощные компьютеры современности в миллиарды раз превосходят своих предков. Каждая компания хочет удивить и так пресыщенных пользователей, и до сих пор многие преуспевают в этом. Вот лишь некоторые из основных тем за последние годы:
- Ноутбук, оказавший важное влияние на развитие индустрии: Apple Macbook (2006 год).
- Смартфон, оказавший важное влияние на развитие индустрии: Apple iPhone (2007 год).
- Планшет, оказавший важное влияние на развитие индустрии: Apple iPad (2010 год).
- Первые «умные часы»: Pulsar Time Computer (1972 год). Их можно увидеть на руке Джеймса Бонда в боевике «Живи и дай умереть» 1973 года.
И, конечно же, различные игровые консоли: Playstation, Xbox, Nintendo и т. д.
Мы живем в интересное время (хотя это и звучит как китайское проклятие). И кто знает, что ждет в ближайшем будущем. Нейронные компьютеры? Квантовые компьютеры? Поживем-увидим.
Компьютеры, какими мы их знаем сегодня, больше не занимают целые комнаты и не весят несколько тонн. Как они уменьшались на протяжении многих лет?
Тайная повестка дня
«При написании бизнес-плана решили избегать термина «персональный компьютер», поскольку банкиры понятия не имели, что это такое», — вспоминает Фрассанито. «Таким образом, их первый продукт базировался на уже существующем устройстве. Но идея заключалась в том, чтобы создать первую фирму по производству персональных компьютеров».
Они построили терминал Datapoint 3300. Это дало CTC статус действующей компании, и можно было приступать к «настоящему» проекту, которым Рош был буквально одержим. Фрассанито вспоминает, как часами они спорили о том, как должен выглядеть и работать персональный компьютер. Рош имел привычку объясняться метафорами из классических произведений, таких как «Государь» Макиавелли, что вынуждало Фрассанито их читать.
Терминал Datapoint 3300 в естественной среде обитания
Чтобы рынок не испугался появления новой машины, CTC рекламировали её под видом устройства, которое заменит перфокартную IBM 029. Даже дисплей их ПК был уменьшен вдвое, чтобы походить на обыкновенную перфокарту IBM. Чтобы машина казалась привычной даже простым офисным служащим, её шрифт мимикрировал под оттиски печатной машинки IBM Selectric.
IBM 029
Однако корпус компьютера-прототипа страдал от перегрева. В конце 1969 и начале 1970-х годов инженеры CTC изучали способы уменьшения количества компонентов. Одной из идей было разместить плату CPU внутри небольшого чипа.
DEUCE (1955)
1450 ламп и 1 Мгц производительности было достаточно, чтобы продать аж 33 компьютера, что в те времена можно было назвать отличным результатом. Как и другие вычислительные устройства 1950-х годов, DEUCE состоял из панели, встроенной в стол, и нескольких металлических шкафов.
DEC PDP-8F (1972), PDP-8 (1965), PDP-8S (1966)
Устройства серии DEC PDP считались первыми «мини-компьютерами». Наибольший коммерческий успех принесла серия PDP-8, выпускавшаяся с 1965 года. Было продано около 50 000 моделей, что стало историческим результатом. В день своей премьеры этот компьютер стоил 18,5 тысяч долларов. Он весил 113 кг, а последующие версии от 26 до 41 кг.
LINC (1962)
LINC — это компьютер, который можно было поставить на стол. Расчеты выполнялись центральным блоком, заключенным в корпус размером 183 x 51 см. Цена устройства была вполне конкурентоспособной — 43000 долларов.
ENIAC
ENIAC
ENIAC разрабатывался двумя учеными из Пенсильванского университета - Джоном Эккертом и Джоном Мокли. Он мог решать «широкий спектр числовых задач» путем перепрограммирования. Хотя машина была предъявлена публике уже после войны, в 1946 году, она была важна для расчетов во время последующих конфликтов, таких как «Холодная война» и Корейская война. Она использовалась для вычислений при создании водородной бомбы, инженерных расчетов и создания таблиц стрельбы. А также делала прогнозы погоды в СССР, чтобы американцы знали, куда могут выпасть радиоактивные осадки в случае ядерной войны.
В отличие от «Марк 1» с его электромеханическими реле, в «ЭНИАКе» были вакуумные лампы. Считается, что ENIAC провел больше расчетов за свои десять лет эксплуатации, чем все человечество до этого времени.
HP-85 (1980)
Серия 80 должна была заменить популярную серию 9000 и предложить достойную производительность (0,6 МГц) при небольшом размере и доступной цене. Устройство стоило 3250 долларов. В комплект также входил принтер. Встроенный экран отображал 256 192 точек.
Читайте также: