Путешествие в компьютерный век
Путь в компьютерный век
Во многих отраслях промышленности ежедневно требуется производить тысячи вычислительных операций. В 1935 году берлинский инженер Конрад Цузе (1910-1995) задумал автоматизировать эти процессы с помощью специальной вычислительной машины. В имеющихся в то время вычислительных машинах нужно было каждый раз вводить команду на вычисление. Цузе не знал, что за 100 лет до него Чарльз Бэббидж в Англии потерпел фиаско, занимаясь подобным проектом.
![Путешествие в компьютерный век](https://qwedr.com/wp-content/uploads/2011/01/4154-1295034980_200px-konrad_zuse_28199229-60d540e727e0c.jpg)
Цузе попытался сначала осуществить свою идею при помощи чисто механических средств, но его ждала неудача.
Однако потом у него появились две идеи, которые привели к успеху. Первая: он отбросил десятичную систему, то есть нашу обычную систему счета с цифрами от 0 до 9. Вместо этого он использовал открытие, сделанное почти 300 лет назад ученым и философом Готтфридом Вильгельмом Лейбницем (1646-1716): любое число, каким бы большим оно ни было, можно изобразить с помощью всего лишь двух цифр — 0 и 1. В этой двоичной системе, например, число 8 изображается как «1000», число 13 — «11001», а число 1000 как «1111101000».
Для обычных расчетов такие длинные ряды цифр были бы неудобны, но для компьютеров двоичные числа представляли огромное преимущество. Дело в том, что электрические элементы, как правило, характеризуются лишь двумя состояниями: «ток есть» или «тока нет». Другими словами: «выключатель закрыт» — соответствует «1», а « выключатель открыт» — соответствует «0».
И вторая идея: он использовал телефонные реле — не что иное, как электрические переключатели.
Машина Цузе, «1 3», — первый в мире компьютер с программным управлением. Он состоял из 2000 реле — 600 для вычислений, 1400 — как память для 64 чисел. Кроме того, у него была клавиатура для ввода чисел и несколько рядов лампочек накаливания, которые показывали результат. Программа, то есть последовательность шагов вычисления, в виде перфорации была пробита на кинопленке. Пока пленка проходила через считывающий прибор, отверстия управляли переключателем и таким образом — работой прибора.
«1 3» была создана в 1941 году. К сожалению, она сгорела при бомбежке Берлина. Следующую разработку, большую «14», состоявшую из нескольких шкафов, Цузе удалось спасти. Машина решала даже сложные уравнения и впоследствии долгие годы надежно служила в Техническом институте в Цюрихе.
Изобретатели других стран тоже работали над созданием автоматических вычислительных машин. В Англии в 1942 году был создан «COLOSS(JS», который расшифровывал немецкие секретные послания.
![Путешествие в компьютерный век Путешествие в компьютерный век](https://qwedr.com/wp-content/uploads/2011/01/4154-1295035192_harvard_mark_i_computer_-_left_segment-60d540e737de1.jpg)
В 1944 году в Гарвардском университете был создан «Harvard Mark 1», который, подобно машине Цузе, работал на коммутирующих реле, но представлял собой сооружение весом 35 тонн и занимал целый зал. Однако на операцию умножения «Магк 1» затрачивал б секунд — слишком долго для более длинных расчетов. Затем вместо реле стали использовать электронные лампы (вакуумные или радиолампы), скорость переключения которых примерно в 2000 раз быстрее.
Первая вычислительная машина на электронных лампах — «Е1Ч1АС» — была создана в 1947 году. Она была внушительных размеров и содержала 18 ООО электронных ламп. Обслуживание вычислительной машины было делом непростым из-за отсутствия программного управления на перфокартах. Кроме того, она работала не в двоичной, а в десятичной системе и в этом смысле отставала от машины Цузе.
Примерно в это же время разработкой новаторских идей для создания компьютеров занимался родившийся в Будапеште, но проживавший в США Джон фон Нойманн (1903-1957). Они и сегодня не утратили своего значения. Одна из идей состояла в сохранении компьютерной программы, то есть последовательности указаний по вычислениям, так же как и задействованных чисел, в памяти компьютера. До этого с числами и с командами программ обращались совершенно по-разному, и программа во время всего процесса счислений оставалась неизменной. Если задать программу в специальный компьютерный накопитель, то это дает значительные преимущества. Например, упрощает программирование. При выполнении ряда многократно повторяющихся однотипных шагов вычисления достаточно ввести их всего один раз и задать команду: в конце вычисления вернуться к началу программы. На компьютерном жаргоне это называется «программный цикл».
Если программа сохранена в памяти, то в компьютере должен быть узел, контролирующий правильную последовательность команд для вычисления, — сначала эту задачу выполняла движущаяся перфолента.
Второе революционное введение Нойманна — организация памяти в ВМ. Существуют совершенно различные функции памяти. Промежуточные результаты прибор должен сохранять очень быстро и уметь их снова считывать — это необходимо для каждого отдельного шага вычисления. Предназначенная для этого память (на языке компьютерщиков — «регистр») должна быть, следовательно, очень быстрой. Если на запоминание промежуточных результатов уходит слишком много времени, это сразу же сказывается на скорости работы устройства.
Несколько медленнее может быть узел, где накапливаются в этот момент нужные команды. Напротив, память для вычислительных программ, чисел, которые рассчитываются, и для конечных результатов должна иметь большой объем. Скорость в этом случае не так важна, потому что компьютер сравнительно редко вызывает оттуда данные. В зависимости от этих требований разработчики компьютеров конструировали разные запоминающие устройства, благодаря чему значительно повысилась скорость их работы.
Переход от реле к электронным лампам показал, насколько быстродействие ВМ зависит от используемых в них элементов. В этом случае говорят о «компьютерных поколениях». К первому поколению относятся приборы на электронных лампах. В 1948 году был изобретен транзистор, который, имея в составе крошечный кристалл из кремния, экономит больше энергии и к тому же надежнее, чем электронные лампы. С 1955 года стали производить компьютеры на транзисторах — это второе поколение; они считали в десять быстрее предшественников. Транзистор был размером с фасоль — крошечный по сравнению с электронной лампой. Коммутирующий элемент вскоре сделали еще меньшего размера, примерно с крупинку соли. Поэтому все узлы из множества транзисторов и дополнительных элементов, таких как сопротивления и конденсаторы, было решено разместить в одном маленьком корпусе. Такие «модули» работали в компьютерах третьего поколения. Они были гораздо мощнее транзисторов. Конечно, их изготовление было сравнительно сложным и дорогостоящим, поэтому компьютеры находились лишь в крупных фирмах, некоторых военных учреждениях и научно-исследовательских институтах. Тогда не могло быть и речи о «компьютерном веке».
В начале 1960-х годов транзисторы, дополнительные элементы и монтажные соединения удалось разместить на одной-единственной крошечной кремниевой пластинке.
Такой конструктивный элемент называют интегральной схемой, и она в качестве четвертого поколения произвела революцию в компьютерном мире. В 1962 году появился первый компьютерный чип (чип — от англ. splitter); у него было всего 8 транзисторов. Ученые лихорадочно трудились над все новыми усовершенствованиями. Между изготовителями чипов возникла острая конкуренция. Большинство этих фирм, как и почти все производители компьютеров, обосновались в долине южнее Сан-Франциско (Калифорния). Вскоре она стала известна как Силиконовая долина. В 1969 году уже можно было собрать более 600 транзисторов на одном чипе, несколько лет спустя — тысячи, а сегодня на квадратном сантиметре их умещаются многие миллионы.
Первоначально каждый из центральных блоков компьютера строили отдельно: собственно вычислительное устройство, блок управления и различные запоминающие устройства для промежуточных результатов и программных команд. Тед Хофф, молодой сотрудник американского производителя чипов Intel, пришел к мысли собрать все эти блоки на одном-единственном чипе так, чтобы его можно было использовать без дальнейших изменений. Благодаря этому цена на чипы значительно упала, и продавать их стали в большом количестве.
Первый из этих чипов, названных «микропроцессорами», поступил на рынок в 1971 году. С тех пор они постоянно совершенствовались и сегодня являются сердцем каждого компьютера. Чаще всего их коротко называют «процессорами».
Только изобретение микропроцессора позволило сегодня каждому желающему иметь свой собственный компьютер. Раньше на фирмах и в исследовательских институтах, которые могли позволить себе такое дорогое оборудование, имелась центральная ЭВМ. Она выполняла расчеты, записывала числа и даты и управляла, например, печатающими устройствами. Сотрудники фирм через терминалы имели доступ к ЭВМ. Каждый терминал состоял из клавиатуры для ввода чисел и команд, а также монитора для вывода результатов. ЭВМ последовательно обслуживала все терминалы. Поскольку по сравнению с человеком она работала очень быстро, то у каждого пользователя создавалось впечатление, будто введенная им информация обрабатывается немедленно. Большую часть этих ЭВМ поставляла американская фирма IBM, один из крупнейших компьютерных концернов в мире. Однако революция в производстве персональных компьютеров началась не на этом гиганте, а в одном калифорнийском гараже. Там два увлеченных компьютерами студента смастерили в 1976 году из микропроцессора, клавиатуры и нескольких дополнительных деталей маленький прибор. Его можно было подключить к домашнему телевизору, который показывал шаги вычисления и результаты на экране. Программу для ЭВМ, однако, владелец должен был вводить сам. Потом ее стало возможно записать на подключенном кассетном магнитофоне. Прибор был так дешев, что теперь каждый мог позволить себе свой персональный компьютер — ПК.
Его изобретатели Стефен Возняк и Стивен Джобе основали маленькую фирму под названием «Apple» (яблоко). Модели совершенствовались, и в 1980 году оборот «Apple» достиг 200 миллионов долларов.
Большой успех маленьких приборов привел к тому, что восторженные программисты-любители начали создавать более совершенные программы, которые работали в приборах, избавляя пользователя от их трудоемкого ввода. Компьютерные программы в целом называют software («мягкий материал»), потому что их, так сказать, нельзя потрогать руками — в отличие от самих приборов, hardware («твердый материал»). Программисты различают в software сервисные программы, которые управляют внутренним процессом компьютерной системы (самая важная из них — операционная система, так сказать, менеджер для внутренностей компьютера) и прикладные программы, которые помогают пользователю компьютера.
Очень скоро появились программные обеспечения для самых разных задач. «Программы для обработки текста» превратили компьютер в удобную пишущую машинку, с помощью других программ можно было выполнять на экране чертежи и делать сложные математические расчеты. «Программы банка данных» запоминали и сортировали числа или тексты. Так стало возможно, например, управлять спортивным клубом или привести в порядок коллекцию пластинок.
Возможно, самой важной из прикладных программ была программа калькуляции, названная «саlс».
Для тысяч людей это послужило основной причиной для покупки маленького компьютера. Вычисления требуются в любой фирме. Результат — прибыль или убыток — зависит от множества факторов: цены на сырье, зарплаты, аренда помещений, продажные цены на продукцию, размер налогов. Если это нужно калькулировать (рассчитать заранее), то при каждом изменении любого из этих факторов приходилось рассчитывать все снова. Без компьютера для этого требуется чрезвычайно много времени, к тому же существует опасность многочисленных ошибок. Компьютер же, оснащенный «%юа1с», превращал все в детскую игру.
У всех первых программ был один недостаток: они работали только на той модели компьютера, для которой были написаны. В 1976 году американский эксперт по компьютерам Гери Килдэлл пришел к мысли дать всем маленьким компьютерам своего рода универсальный штекер: сервисную программу, с помощью которой любая программа на любом компьютере могла бы работать. Такая операционная система управляет работой компьютера и периферийными приборами — клавиатурой, мышью, монитором, ЗУ (запоминающее устройство) и принтером. Она следит за тем, чтобы каждая прикладная программа могла обращаться к этим приборам.
Самой известной операционной системой стала MS-DOS (Microsoft Disc Operating System) фирмы «Microsoft». Многократно дополненная и расширенная, она и сегодня работает во многих компьютерах, правда, постепенно заменяясь Windows и Gnix.
Ошеломляющий успех множества мелких производителей микрокомпьютеров побудил компьютерный гигант IBM выпустить в 1983 году персональный компьютер IBM PC. В качестве операционной системы использовалась MS-DOS. Благодаря влиянию IBM на рынке, он вышел в лидеры, и MS-DOS стала стандартом во всем мире. Одним из преимуществ IBM PC был специальный разъем, к которому можно было присоединять дополнительные съемные платы со штекерным разъемом с дополнительными элементами или дополнительные приборы и таким образом существенно расширить возможности ПК.
Победное шествие ПК, конечно, не могло вытеснить центральные большие компьютеры с подключенными терминалами. Они незаменимы, прежде всего, там, где большое число сотрудников обращаются к совместно используемым объемам данных. Это относится, например, к банкам и страховым компаниям, библиотекам и авиакомпаниям.
Для выполнения особо сложных задач по вычислениям требуются супермощные компьютеры, которые с огромной скоростью обрабатывают гигантские объемы чисел. Сегодняшние суперкомпьютеры показывают производительность в несколько сот терафлопсов в секунду (терафлопс — триллион операций с плавающей точкой в сек.). Трудно даже представить, что это значит: за то время, как пуля из пистолета пролетит расстояние в один миллиметр, эти машины произведут несколько миллиардов вычислений!
Для этого они используют — наряду с супербыстрыми элементами — ряд технических приемов. Например, «Pipelining», при котором микропроцессор (CPU) отдельные команды на вычисление выполняет не последовательно, а частично одновременно. «Параллельные компьютеры» обладают при определенных обстоятельствах десятками тысяч таких CPCJ, которые делят между собой работу — при условии предварительной адаптации к соответствующей проблеме.
Такие суперкомпьютеры, например, могут предсказывать погоду, перерабатывая с огромной скоростью большое количество данных, поступающих от спутников погоды, наземных станций, самолетов, судов и воздушных шаров. Другой важной областью применения является моделирование: будущие автомобили, самолеты и даже новые медикаменты возникают сначала в компьютере, поскольку это дешевле, чем строительство и тестирование многих моделей.
Суперкомпьютеры могут имитировать также процессы в атомном ядре, в реакторе, атомной бомбе или во взорвавшейся звезде и даже в воздушной оболочке Земли, чтобы выяснить, как изменится климат нашей земли в грядущие десятилетия.