КОМПЬЮ́ТЕР
-
Рубрика: Технологии и техника
-
-
Скопировать библиографическую ссылку:
КОМПЬЮ́ТЕР (англ. computer, от лат. сomputo – считать, вычислять), устройство, предназначенное для автоматизации процессов обработки информации, в котором аппаратура работает под управлением определяющих её действия программ.
Историческая справка
Впервые термин «К.» употребил англ. врач и учёный-энциклопедист Т. Браун в 1646, им он назвал людей, профессионально занимавшихся вычислениями. В этом значении термин использовался в Великобритании и США до сер. 20 в.; простейшие механич. счётные устройства также иногда называли К. (чаще – калькуляторами). С нач. 1950-х гг. для решения вычислит. задач стали широко применять электронные вычислит. машины, которые в англ. яз. также назвали К.; со временем термин утвердился в большинстве др. языков, в т. ч. в русском.
В 1834 Ч. Бэббидж впервые выдвинул идею создания механич. вычислит. машины, осн. свойства которой предвосхитили устройство совр. К. Так, его «аналитическая машина» должна была состоять из устройства управления, арифметич. устройства и памяти для хранения чисел и работать под управлением программы (в 1843 леди А. Лавлейс написала неск. программ для «аналитической машины»). Машина Бэббиджа не была построена, его идея реализовалась только в кон. 1930-х – сер. 1940-х гг., когда были созданы неск. релейных вычислит. машин с программным управлением (Z-1 и Z-3 К. Цузе, Mark-I Г. Айкена). Обобщая опыт создания ENIAC – первой вычислит. машины, построенной с использованием электронных ламп, – электронной вычислит. машины (ЭВМ), Дж. фон Нейман в 1945 сформулировал осн. принципы построения и функционирования ЭВМ – т. н. принципы фон Неймана (однако фактически они явились результатом работы группы разработчиков ENIAC, в первую очередь Дж. У. Мокли и Дж. П. Эккерта; эти же принципы предложены независимо Цузе и С. А. Лебедевым). Согласно им, вычислит. машина должна работать в двоичной системе счисления и быть электронной; включать устройство управления, организующее выполнение программ, и арифметич. устройство, выполняющее определяемые программой арифметич. и логич. операции (совр. процессор), а также устройства ввода-вывода и памяти. Важнейшим принципом фон Неймана является хранение машинной программы в запоминающем устройстве (памяти) вместе с обрабатываемыми данными, поскольку это позволило изменять программу в ходе её выполнения.
К нач. 21 в. сменилось неск. поколений К. (см. Вычислительная машина), совр. К. значительно отличаются от К. первого поколения как своей архитектурой, так и элементной базой. Несмотря на то, что некоторые из положений Дж. фон Неймана не являются принципиальными (так, выбор двоичной системы определялся скорее элементной базой, существовавшей во времена фон Неймана; К. может быть построен и с использованием др. систем счисления, напр. уравновешенной троичной – «Сетунь» Н. П. Брусенцова), на них базировались К. первого и второго поколений. Однако со временем выявилась ограниченность т. н. фоннеймановской схемы вычислений, согласно которой процессор одну за другой выбирает из памяти команды и считывает операнды, а затем выполняет команду и записывает результат в память. Процесс вычисления, т. о., сводится к последовательным (пошаговым) изменениям состояния памяти. Поскольку, благодаря развитию полупроводниковых технологий, быстродействие центр. процессора всегда росло быстрее, чем быстродействие оперативной памяти, это устанавливало естеств. ограничения на рост производительности К. Для преодоления этого противоречия (начиная со второго поколения) в К. стали реализовывать разл. архит. решения: совмещение во времени работы центр. процессора и устройств ввода-вывода, буферизация данных, расслоение памяти (разбиение на модули, к которым можно обращаться одновременно), память на быстрых регистрах, многоуровневая кэш-память и др. Данные решения позволяют сбалансировать работу процессора и памяти, однако не снимают гл. ограничение фоннеймановской архитектуры – выполнение в каждый момент времени только одной команды. Др. архит. решения были направлены на увеличение параллелизма в выполнении команд: совмещение во времени обработки процессором нескольких команд одной программы (конвейер), создание многопроцессорных вычислительных систем, выполняющих одновременно неск. программ (многопроцессорные вычислит. комплексы) или одну и ту же команду, но над разными данными (матричные вычислит. системы) и т. п.
Важным событием в теоретич. осмыслении этой проблемы стала статья Дж. Бэкуса (США, 1978) «Можно ли освободить программирование от фоннеймановского стиля?», в которой впервые была сформулирована идея тесной связи традиц. языков программирования (фортран и др.) и фоннеймановской архитектуры. Согласно Бэкусу, для преодоления того, что он назвал «бутылочным горлом» (bottleneck) традиц. архитектуры (необходимость выборки команд из памяти для их выполнения; выполнение одной команды в один момент времени; необходимость выборки данных для процессора даже в том случае, когда они не требуют обработки), следует перейти к новым парадигмам программирования (в первую очередь функциональной) и поддерживающим их архитектурам К. Статья Бэкуса стимулировала не только исследования в области программирования, но и работы по созданию К. с архитектурой, в той или иной степени отличающейся от фоннеймановской. Полный отказ от принципов фоннеймановской архитектуры реализован в К. с т. н. потоковой (dataflow) архитектурой. Ход вычислит. процесса в них определяется не порядком следования команд в программе, а динамически формирующимся потоком данных. Такой подход позволяет «распараллелить» вычисления на уровне команд, циклов, процедур, т. е. обеспечить низкоуровневый параллелизм. Первые работы в области потоковых вычислений появились в кон. 1960-х гг. (Д. Адамс, 1968, и др.). В 1970-х – нач. 1990-х гг. они проводились особенно интенсивно: было построено множество макетов потоковых К., предложены потоковые языки программирования – Id (1978), SISAL (1983) и др., а также реализованы первые коммерч. потоковые К. Однако при реализации чисто потоковой архитектуры возникает множество трудноразрешимых технич. и технологич. проблем (необходимость построения ассоциативной памяти большого объёма, сложных коммутаторов и др.). Поэтому мн. совр. параллельные К. сочетают в своей архитектуре элементы фоннеймановской и потоковой моделей вычислений.
Классификация и принцип действия
По принципу действия и способу представления обрабатываемой информации К. делятся на аналоговые (обрабатываемая информация представлена в виде непрерывно изменяющихся переменных, выраженных физич. величинами, напр. силой электрич. тока, напряжением) и цифровые (информация представлена в виде набора дискретных значений к.-л. физич. величины). По назначению различают К. универсальные и специализированные (управляющие, бортовые, серверы, рабочие станции и др.). В зависимости от тех или иных характеристик [производительности (определяемой тактовой частотой работы устройств К., пропускной способностью шин процессора и памяти и др.), ёмкости оперативной памяти, габаритов и др.] выделяют суперкомпьютеры (супер ЭВМ), большие К. (мэйнфреймы – высокопроизводительные К., предназначенные, как правило, для организации централизов. хранилищ данных большой ёмкости), мини-компьютеры (в т. ч. персональный компьютер), микрокомпьютеры. Такая классификация носит несколько условный характер, поскольку подчас трудно провести границу между суперкомпьютерами и мэйнфреймами. Так, представление о том, какими параметрами должен обладать суперкомпьютер, меняется со временем. Если К. CDC-6600 (1964), часто называемый первым суперкомпьютером, обладал производительностью ок. 10 млн. операций/с, то самый быстродействующий в мире К. (июнь 2008) – Roadrunner (построенный компанией IBM для Мин-ва энергетики США и установленный в Лос-Аламосской нац. лаборатории) впервые превысил рубеж 1 петафлопс (1,026 петафлопс), т. е. 1 квадриллион (1000 триллионов) операций/с (с плавающей запятой). Понятие микрокомпьютера было введено (в нач. 1970-х гг.), чтобы выделить класс вычислит. машин, у которых центр. процессор выполнен в виде единого устройства на интегральной схеме (микропроцессор); в нач. 21 в. в виде микропроцессоров реализованы центр. процессоры некоторых мэйнфреймов и суперкомпьютеров. Однако данная классификация, тем не менее, позволяет ориентироваться в многообразии компьютеров.
Традиционно К. отождествляют с ЭВМ, однако К. могут быть не только электронными – известны электромеханические (релейные) К., квантовые К., оптич. К. (исследованы возможности построения из оптич. элементов устройств памяти и коммутаторов; создание оптич. логич. элементов представляется менее перспективным). В нач. 21 в. проводятся интенсивные исследования в области создания биологич. К., основанных на взаимодействии живых клеток, биомолекул, вирусов и т. п. В 2006 в Колумбийском ун-те (США) был продемонстрирован прототип простейшего ДНК-компьютера MAYA-II (Molecular Array of YES and AND logic gates, молекулярная матрица логич. элементов «да», «нет» и операции «и»), успешно играющего в крестики-нолики против человека.
Применение
Благодаря быстрому росту количественных характеристик аппаратуры К. (степень миниатюризации, быстродействие и др.) и постоянному снижению её стоимости к нач. 1990-х гг. К. (в первую очередь ПК) стал обязательным атрибутом не только рабочих мест разл. специалистов, но и быта. Это вызвало колоссальный рост рынка программного обеспечения, в т. ч. прикладных программ, ориентированных на неквалифицир. пользователя, а доступность программ самого разного назначения, в свою очередь, стимулировала дальнейший спрос на К. Вероятно, поэтому под К. всё чаще подразумевают именно персональный К. Наряду с ними широкое распространение имеют портативные К. (ноутбуки, планшеты), рабочие станции, серверы и др.
Благодаря бурному развитию цифровых технологий множество современных бытовых устройств, таких как телевизоры, приставки для видеоигр, мобильные радиотелефоны (смартфоны), по сути также являются специализированными, но вполне полноценными К., штатно допускающими подключение внешних периферийных устройств, обновление встроенного ПО и загрузку произвольных пользовательских кодов (приложений) извне. Некоторые из таких К. функционируют под управлением специализированных версий ОС, основанных на широко распространённых ОС общего назначения (напр., Android и WebOS, созданные на базе Linux), либо могут использовать их опционально (напр., Sony PlayStation может загружать и исполнять ОС Linux). Многие «интеллектуальные» сетевые устройства, напр. маршрутизаторы и хранилища данных с сетевым подключением, фактически также являются К. узкой специализации и при определённых условиях, напр. загрузке сторонней версии встроенного ПО, могут быть превращены в К. общего назначения.
Простейшими К. фактически являются разнообразные встроенные и мобильные вычислит. устройства, управляющие работой разл. бытовых приборов, простых моделей мобильных радиотелефонов, телевизоров, фотоаппаратов и т. д. В кон. 20 – нач. 21 вв. К. превратился в важнейший социальный и культурный феномен. Производство, связь, банковское дело, наука, образование, культура, иск-во, средства массовой информации, быт, благодаря внедрению компьютерных технологий (в т. ч. компьютерных сетей), претерпели радикальные изменения. К. стал значимым фактором трансформации социальных, в т. ч. трудовых, отношений. К. играет определяющую роль в обеспечении всеобщей доступности образования (дистанционное и др. формы обучения), науч. информации (библиотеки JSTOR и др. через Интернет предоставляют доступ к оцифрованным выпускам науч. журналов начиная с 17 в.), произведений художественной, философской и т. п. лит-ры (электронные библиотеки, среди которых особо выделяются масштабами проекты Gutenberg, Internet Archive, Google books и др.), худож. ценностей (виртуальные музеи, виртуальные экскурсии и др.). Использование К. стимулировало появление новых худож. технологий (компьютерная графика, компьютерная анимация, веб-дизайн и др.).