История развития компьютерной техники
Люди учились считать, используя собственные пальцы. Когда этого оказалось недостаточно, возникли простейшие счетные приспособления. Особое место среди них занял абак (Древняя Греция, Рим, Западная Европа до 18 века), получивший в древнем мире широкое распространение.
Сделать абак совсем несложно, достаточно разлиновать столбцами дощечку или просто нарисовать столбцы на песке. Каждому из столбцов присваивалось значение разряда чисел: разряд единиц, десятков, сотен, тысяч. Числа обозначались набором камешков, ракушек, веточек, косточек и т.п., раскладываемых по различным столбцам - разрядам. Добавляя или убирая из соответствующих столбцов то или иное количество камешков, можно было производить сложение или вычитание и даже умножение и деление как многократное сложение и вычитание соответственно. Очень похожи на абак по принципу действия русские счеты. В них вместо столбцов - горизонтальные направляющие с косточками. На Руси счетами пользовались просто виртуозно. Они были незаменимым инструментом торговцев, приказчиков, чиновников. Из России этот простой и полезный прибор проник и в Европу. Вместе с тем, наряду с вычислительными приспособлениями, развивались и механизмы для автоматизации работы человека. В ткацком станке француза Жозеф Мари Жаккара (1752-1834), созданном в 1804-08 годах, был реализован процесс создания узора ткани с помощью отверстий в картонных картах, при этом изменение положения отверстий позволяло получать различные узоры.
Первым механическим счетным устройством была счетная машина, построенная в 1642 году выдающимся французским ученым Блезом Паскалем (1623-62). Механический "компьютер" Паскаля мог складывать и вычитать. "Паскалина", так называли машину, состояла из набора вертикально установленных колес с нанесенными на них цифрами от 0 до 9. При полном обороте колеса оно сцеплялось с соседним колесом и поворачивало его на одно деление. Число колес определяло число разрядов - так, два колеса позволяли считать до 99, три - уже до 999, а пять колес делали машину "знающей" даже такие большие числа как 99999. Считать на "Паскалине" было очень просто.
В 1673 году немецкий математик и философ Готфрид Вильгельм Лейбниц (1646-1716) создал механическое счетное устройство, которое не только складывало и вычитало, но и умножало и делило. Машина Лейбница была сложнее "Паскалины". Числовые колеса, теперь уже зубчатые, имели зубцы девяти различных длин, и вычисления производились за счет сцепления колес. Именно несколько видоизмененные колеса Лейбница стали основой массовых счетных приборов - арифмометров, которыми широко пользовались не только в ХIХ веке, но и сравнительно недавно наши дедушки и бабушки.
Есть в истории вычислительной техники ученые, чьи имена, связанные с наиболее значительными открытиями в этой области, известны сегодня даже неспециалистам. Среди них английский математик Х1Х века Чарльз Бэббидж (1791-1871), которого часто называют "отцом современной вычислительной техники". В 1823 году Бэббидж начал работать над своей вычислительной машиной, состоявшей из двух частей: вычисляющей и печатающей. Машина предназначалась в помощь британскому морскому ведомству для составления различных мореходных таблиц. Первая, вычисляющая часть машины была почти закончена к 1833 году, а вторую, печатающую, удалось довести почти до половины, когда расходы превысили 17000 фунтов стерлингов (около 30000 долларов). Больше денег не было, и работы пришлось закрыть.
Хотя машина Бэббиджа и не была закончена, ее создатель выдвинул идеи, которые и легли в основу устройства всех современных компьютеров.
Бэббидж пришел к выводу - вычислительная машина должна иметь устройство для хранения чисел, предназначенных для вычислений, а также указаний (команд) машине о том, что с этими числами делать. Следующие одна за другой команды получили название "программы" работы компьютера, а устройство для хранения информации назвали "памятью" машины. Однако хранение чисел даже вместе с программой - только полдела. Главное - машина должна производить с этими числами указанные в программе операции. Бэббидж понял, что для этого в машине должен быть специальный вычислительный блок - процессор. Именно по такому принципу и устроены современные компьютеры.
Научные идеи Бэббиджа увлекли дочь знаменитого английского поэта лорда Джорджа Байрона - графиню Аду Августу Лавлейс (Огаста Ада Кинг Лавлейс) (1815-1852) . В то время еще не было таких понятий, как программирование для ЭВМ, но тем не менее Аду Лавлейс по праву считают первым в мире программистом - так сейчас называют людей, способных "объяснить" на понятном машине языке ее задачи. Дело в том, что Бэббидж не оставил ни одного полного описания изобретенной им машины. Это сделал один из его учеников в статье на французском языке. Ада Лавлейс перевела ее на английский, добавив собственные программы, по которым машина могла бы проводить сложные математические расчеты. В результате первоначальный объем статьи вырос втрое, а Бэббидж получил возможность продемонстрировать мощь своей машины. Многими понятиями, введенными Адой Лавлейс в описаниях тех первых в мире программ, широко пользуются современные программисты. В честь первого в мире программиста назван один из самых современных и совершенных языков компьютерного программирования - АДА.
Новинки техники ХХ века оказались неразрывно связанными с электричеством. Вскоре после появления электронных ламп, в 1918 году советский ученый М.А.Бонч-Бруевич (1888-1940) изобрел ламповый триггер - электронное устройство, способное запоминать электрические сигналы. По принципу действия триггер похож на качели с защелками, установленными в верхних точках качания. Достигнут качели одной верхней точки - сработает защелка, качание остановится, и в этом устойчивом состоянии они могут быть как угодно долго. Откроется защелка - качание возобновится до другой верхней точки, здесь также сработает защелка, снова остановка, и так - сколько угодно раз. По тому, где окажутся качели через некоторое время после их установки в известном положении, можно судить, открывали защелку или нет. Качели как бы запоминают открывание защелки - также и электронный триггер запоминает, поступал на него электрический сигнал или нет.
Один триггер, запоминая один сигнал, позволяет считать только до одного, но уже несколько триггеров расширяют вычислительные возможности. Если теперь придумать способ регистрации с помощью группы триггеров не только единичных сигналов, но и их десятков, сотен, тысяч - появляется возможность применить этот способ в электронно-вычислительной машине.
В период с 1937 по 1942 г. г. американцы Джон Винсент Атанасофф (1903 - 15 июня 1995) (болгарин по происхождению) и Клиффорд Берри создали первую электронно-вычислительную машину, названную в честь авторов машиной Атанасоффа-Берри (ABC). Аппарат работал с двоичными числами, мог осуществлять логические операции, имел электронную память, а ввод-вывод осуществлялся посредством перфокарт.
5 июля 1943 года ученые Пенсильванского университета в США подписывают контракт, по которому они создают электронный компьютер, известный под названием ЭНИАК. Ничего не значащее на русском языке название произошло от сокращения довольно длинного английского наименования - "электронный цифровой компьютер" (ENIAC, Electronic Numerical Integrator and Computor). 15 февраля 1946 года ЭНИАК официально ввели в строй.
История создания первой ЭВМ имеет и некоторую скандальную предысторию. Патент на изобретение получили создатели ЭНИАК. И лишь в 1973 году по решению суда патент на ЭНИАК был признан недействительным, так как было доказано, что практически все основные узлы в машине ЭНИАК заимствованы из АВС.
В 1946 году в научной статье трех американских авторов - Д. Неймана, Г. Голдстайна и А. Бернса - были изложены основные принципы построения универсальных ЭВМ, использующих одну и ту же память и для хранения обрабатываемых данных, и для хранения программы вычислений. Первая машина, реализующая эти принципы - ЭВМ EDSAC - была построена в Англии под руководством М. Уилкса в 1949 году, в Кембриджском университете. Через год была построена универсальная ЭВМ EDVAC в США.
Основоположником отечественной вычислительной техники стал Сергей Алексеевич Лебедев (1902-1974). В 1921 году, сдав экзамены экстерном по программе средней школы, Лебедев поступил в МВТУ на электротехнический факультет. Многие годы посвятил энергетике, занимаясь проблемой устойчивости энергетических систем. В конце 1940-х годов переключился на новое направление. Под его руководством в Институте электротехники АН УССР была создана первая в стране лаборатория по разработке ЭВМ. Здесь была построена первая советская ЭВМ - МЭСМ, или Малая электронная счетная машина. С 1951 работал в Москве, где возглавлял лабораторию в Институте точной механики и вычислительной техники (ИМТ и ВТ), а с 1953 года и до конца жизни был директором этого института. Под руководством С. А. Лебедева с начала 1960-х годов в институте было создано несколько поколений больших счетных машин - БЭСМ, в которых применялись оригинальные разработки.
БЭСМ-1 была для своего времени самой быстродействующей машиной в Европе (8-10 тысяч операций в секунду). БЭСМ-1 и последовавшие за ней БЭСМ-2 и М-20 были основаны на серийных отечественных электронных лампах. Затем были созданы их полупроводниковые варианты БЭСМ-3М, БЭСМ-4, М-220 и М-222. Модель БЭСМ-6 была спроектирована с использованием предварительного имитационного моделирования работы ее операционной системы, что позволило найти множество оригинальных технических решений. В разработке архитектуры БЭСМ-6 активное участие принимали программисты из созданной по инициативе Лебедева лаборатории математического обеспечения. Долгое время БЭСМ-6 считалась одной из лучших ЭВМ в мире. Лебедев разработал также основы создания многопроцессорных комплексов, вычислительных сетей, структурно-программных операционных систем, алгоритмических языков программирования и т. д. Большое внимание он уделял подготовке молодых специалистов. С 1953 возглавлял кафедру "Электронные вычислительные машины" в Московском физико-техническом институте.
Сейчас насчитывают уже несколько поколений ЭВМ. К одному поколению относят все типы и модели машин, сконструированные на одних научно-технических принципах. Смена поколения происходит с появлением новых элементов, изготовленных по принципиально иным технологиям.
Первое поколение (1946 - конец 50-х годов) компьютеров считали в тысячи раз быстрее механических счетных машин, но были очень громоздкими. ЭВМ занимала помещение размером 9х15 м, весила около 30 тонн и потребляла 150 киловатт в час. В такой ЭВМ было около 18 тысяч электронных ламп. Элементная база: электронно-вакуумные лампы, резисторы и конденсаторы. Габариты: громадные шкафы, которые занимали целые машинные залы. Скорость работы: 10 - 20 тыс. операций в секунду. Эксплуатация: очень сложная, частая замена ламп, перегрев машины. Программирование: в машинных кодах. Работали непосредственно за пультом машины специалисты высокой квалификации.
Второе поколение (конец 50-х - конец 60-х годов) электронных компьютеров обязано своим появлением важнейшему изобретению электроники ХХ века - транзистору. Миниатюрный полупроводниковый прибор позволил резко уменьшить габариты компьютеров и снизить потребляемую мощность. Скорость компьютеров возросла до миллиона операций в секунду. Элементная база: полупроводниковые элементы - транзисторы, диоды, более совершенные резисторы и конденсаторы. Появились печатные платы для монтажа элементов. Габариты: стойки чуть выше роста человека. Устанавливались в специальных залах. Производительность: до 1 млн. операций в секунду. Введен принцип разделения времени для совмещения во времени работы разных устройств. Появились процессоры для управления вводом-выводом и для работы с действительными числами. Эксплуатация: стала проще. Появился штат обслуживающего персонала в машинных залах. Программирование: появились алгоритмические языки. Программы вводились не вручную с пульта самим программистом, а с помощью перфокарт или перфолент операторами ЭВМ. Задачи решались в пакетном режиме: друг за другом по мере освобождения устройств обработки.
Третье поколение (конец 60-х - конец 70-х годов) связано с созданием интегральных схем. В сотни раз сократить число электронных элементов в компьютере позволило изобретение в 1950 году интегральных микросхем - полупроводниковых кристаллов, содержащих большое количество соединенных между собой транзисторов и других элементов. ЭВМ третьего поколения на интегральных микросхемах появились в 1964 году. Первой ЭВМ третьего поколения была IBM-360 фирмы IBM. Отечественные ЭВМ разделились на два семейства: большие (ЕС ЭВМ) и малые (СМ ЭВМ - класс мини-ЭВМ). Элементная база: интегральные схемы, которые вставляются в специальные гнезда на печатной плате. Габариты: ЕС ЭВМ схожи с ЭВМ второго поколения. СМ ЭВМ - две стойки и дисплей, которые не нуждались в специальном помещении. Скорость: до нескольких миллионов операций в секунду. Для эксплуатации требуется большой штат сотрудников: операторов, электронщиков. Большую роль играет системный программист. В структуре ЭВМ появился принцип модульности и магистральности - прообраз современной системной шины. Увеличился объем памяти, память разделилась на ОЗУ и ПЗУ, появились магнитные диски, ленты, дисплеи и графопостроители. Программирование: примерно так же, как и на предыдущем этапе. Наряду с пакетной обработкой появился режим работы с разделением времени. Разработаны операционные системы. Мини-ЭВМ уже работали в режиме реального времени.
Четвертое поколение (конец 70-х и по настоящее время) связано с разработкой больших интегральных схем. В июне 1971 года была впервые разработана очень сложная универсальная интегральная микросхема, названная микропроцессором - важнейшим элементом компьютеров четвертого поколения. Элементная база: большие и сверхбольшие интегральные схемы (БИС и СБИС), содержащие сотни тысяч элементов на одном кристалле. Появилась технология создания микропроцессоров на базе БИС. Первый микропроцессор был создан фирмой Intel в 1971 году. Появились многопроцессорные суперЭВМ и микропроцессорные персональные ЭВМ. Термин "ЭВМ" заменился словом "компьютер". Габариты: персональный компьютер, занимающий часть письменного стола. Скорость: до миллиарда операций в секунду. Основная направленность в развитии аппаратной и программной части компьютерных технологий - обеспечение удобной работы пользователя. Сюда включается дружественный интерфейс, компактность оборудования, возможность подключения дополнительных устройств, совместимость и доступность программного обеспечения. Программирование: новые языки и среды программирования, новые принципы программирования. Развитие операционных систем, а также широкого класса программ прикладного характера.