Основы информационных технологий для неспециалистов: что происходит внутри машин (страница 4)
И все это очень быстро меняется, потому что цифровые технические системы становятся всё более компактными, быстрыми и дешевыми. Производители постоянно выпускают новые телефоны с затейливыми функциями, улучшенными экранами и привлекательными приложениями. Регулярно появляются новые гаджеты, а затем функциональность самых полезных из них переходит к приложениям на телефонах. У цифровых технологий имеется естественный побочный продукт: любое развитие аппаратной части приводит к появлению усовершенствований во всех цифровых устройствах. То есть, если какие-либо изменения позволяют обрабатывать данные более дешево, быстро и в увеличенных объемах, выигрывают все устройства. Вот почему цифровые системы встречаются повсюду и встраиваются в нашу жизнь – как зримо, так и незримо.
Считается, что прогресс приносит пользу, и во многих отношениях это действительно так. Но нет добра без худа. Самый очевидный из негативных факторов (и, пожалуй, наиболее тревожный для людей на личном уровне) – влияние технологий на неприкосновенность частной жизни. Когда вы пользуетесь телефоном, чтобы найти какой-нибудь продукт, а затем посещаете интернет-магазины, все участники этого процесса записывают ваши переходы по страницам. Они знают, кто вы такой, потому что идентифицируют вас по смартфону. Они знают, где вы находитесь, потому что телефон постоянно передает координаты вашего местоположения с точностью до 100 метров. Телефонные компании записывают эти сведения и затем могут продать их. Служба GPS (система глобального позиционирования) работает с точностью до 5-10 метров. Когда вы включаете ее, то информация о вашем местонахождении становится доступной для приложений, и их владельцы тоже могут продавать ее. Вообще дела обстоят даже хуже: когда вы выключаете службу позиционирования, то запрещаете использовать GPS-данные только приложениям. Но это совсем не препятствует операционной системе смартфона собирать и выгружать данные через телефонную сеть, Wi-Fi или Bluetooth10.
В реальной жизни за вами наблюдают так же, как и онлайн. Технология распознавания лиц способна узнать вас на улице или в магазине. Дорожные камеры умеют сканировать ваши номерные знаки и определять, где сейчас ваш автомобиль. То же самое делают электронные системы взимания платы за проезд. Подключенные к интернету умные термостаты, автоответчики, дверные замки, радионяни и камеры наблюдения – это устройства слежки, нами же приглашенные в наш дом. Методы надзора, описанные в романе Джорджа Оруэлла «1984», выглядят дилетантскими на фоне того отслеживания, с которым мы сегодня смиряемся, даже не думая о нем.
Записи того, что и где мы делали, могут сущестовать вечно. Цифровое хранение настолько дешево, а данные настолько ценны, что информацию редко стирают. Если вы опубликовали в интернете что-то постыдное или отправили письмо, о котором потом пожалели, то уже ничего не исправить. С многочисленных ресурсов можно собрать информацию и создать подробную картину вашей жизни, доступную для коммерческих, правительственных и преступных субъектов без вашего ведома и разрешения. Скорее всего, она будет оставаться доступной неопределенно долгое время, а в будущем может всплыть и навредить вам.
Десять или двадцать лет назад мы даже не представляли, насколько уязвимыми для незнакомых нам людей сделают нас универсальная сеть и ее цифровая информация. Как говорит Брюс Шнайер в своей превосходной книге «Данные и Голиаф»11: «Неприкосновенность нашей частной жизни поставлена под удар из-за непрерывного наблюдения. Чтобы осознать, как высоки ставки, критически важно понять, как это происходит».
Социальные механизмы, которые защищают нашу частную жизнь и нашу собственность, не поспевают за быстрым развитием технологий. Тридцать лет назад я общался с местным банком и другими финансовыми организациями посредством бумажных писем и изредка заходил лично. Чтобы получить доступ к моим средствам, требовалось потратить много времени, и все действия подробно отмечались в документах, так что, если бы кто-то решил украсть мои деньги, ему пришлось бы непросто. Сейчас я общаюсь с финансовыми организациями в основном через интернет. Мне удобно получать доступ к моим данным, но если я или одна из этих компаний где-то ошибемся, то мошенник на другой стороне планеты сумеет опустошить мой счет, украсть личные данные, испортить мою кредитную историю и вообще устроить все, что пожелает. Причем все это произойдет мгновенно, а шансов на исправление ситуации почти не будет.
Данная книга поможет понять, как эти системы работают и как они меняют нашу жизнь. Но в силу обстоятельств она всего лишь отображает положение дел на текущий момент: будьте уверены, что через десять лет сегодняшние методы и устройства покажутся вам неуклюжими и устаревшими. Технологии развиваются не разовым скачком, а в ходе непрерывного процесса, быстрого, постоянного и ускоряющегося. К счастью, основные понятия о работе цифровых систем останутся неизменными, поэтому если вы поймете их суть один раз, то и в будущем сможете разобраться в них – лучше справиться с трудностями и воспользоваться возможностями, которые связаны с ними.
Часть I
Аппаратное обеспечение
О Господи, как жаль, что эти расчеты выполнены не с помощью пара!
Чарльз Бэббидж, 1821 год[8]
Аппаратное обеспечение – это осязаемая, видимая часть компьютерных систем, то есть устройства и оборудование, которые вы можете увидеть и потрогать. История вычислительных устройств интересна, но здесь я коснусь лишь основных эпизодов. Стоит отметить некоторые тенденции, особенно экспоненциальный рост количества схем и аппаратов, которые удавалось уместить в заданном объеме пространства, зачастую по фиксированной цене. По мере того как цифровое оборудование становилось дешевле и мощнее, на смену крайне разнородным механическим системам пришли электронные, гораздо более единообразные.
Вычислительная техника имеет долгую историю, однако самые ранние устройства предназначались только для решения узких задач – нередко для предсказания астрономических событий и положений. Например, согласно одной (недоказанной) теории, Стоунхендж был астрономической обсерваторией. Антикитерский механизм, датируемый примерно 100 годом до н. э., применялся для астрономических вычислений и отличается чрезвычайно замысловатой конструкцией. Арифметические устройства вроде абака или счет использовались людьми на протяжении тысячелетий, особенно в Азии. В начале 1600-х годов, вскоре после того как Джон Непер описал логарифмы, появилась счетная линейка. Я вычислял на такой, когда еще учился на инженера в 1960-х годах. Но сейчас логарифмические линейки – диковинка. Их заменили калькуляторы и компьютеры, а мои старательно приобретенные навыки стали бесполезными.
Наиболее значимый предок современных компьютеров – жаккардовый ткацкий станок, изобретенный Жозефом Мари Жаккардом во Франции около 1800 года. В этом агрегате применялись прямоугольные карточки с многочисленными рядами отверстий, которые задавали узоры плетения. Соответственно, жаккардовый станок «программировали» на создание разнообразных узоров по инструкциям, которые он получал на перфорированных карточках. Меняя карты, вы получали другие комбинации плетения12. Создание машин, которые уменьшали трудозатраты, привело к социальным потрясениям, поскольку ткачи теряли работу: так, в 1811–1816 годах движение луддитов в Англии яростно выступало против механизации. Современные вычислительные технологии аналогичным образом привели к расколу.
Рис. 1.1. Современное воплощение разностной машины Бэббиджа13
Вычислительные системы в современном понимании зародились в Англии в середине XIX века благодаря трудам Чарльза Бэббиджа. Этот ученый муж интересовался навигацией и астрономией, а в таких дисциплинах для расчета координат требовались таблицы числовых значений. Бэббидж потратил большую часть жизни, пытаясь создать вычислительное устройство, которое позволило бы механизировать утомительные и ненадежные подсчеты вручную, необходимые не только для создания таблиц, но даже для их печати. Его раздражение сквозит в цитате на предыдущей странице. По целому ряду причин, включая конфликты со спонсорами, он так и не преуспел в реализации своих замыслов, но его проекты были разумными. Современные воплощения некоторых машин Бэббиджа, созданные с применением инструментов и материалов его времени, можно увидеть в Музее науки в Лондоне и Музее компьютерной истории в Маунтин-Вью, штат Калифорния14 (см. рис. 1.1).
Чарльз поощрял интерес к математике и своим вычислительным устройствам у молодой Августы Ады Байрон – дочери поэта Джорджа Байрона, впоследствии графини Лавлейс. Она составила подробные описания о том, как использовать аналитическую машину Бэббиджа (наиболее передовое из его спроектированных устройств) для научных вычислений и предположила, что это устройство может даже выполнять нечисловые операции – в частности, сочинять музыку. «Если предположить, например, – писала она, – что основные соотношения высоких звуков в науке гармонии и музыкальной композиции поддаются таким отображениям и изменениям, то машина способна сочинять тщательно продуманные и научные музыкальные произведения любой сложности или протяженности15». Аду Лавлейс часто называют первым в мире программистом, а язык программирования Ada назван в ее честь16.
Герман Холлерит, сотрудник Бюро переписи населения США, в конце XIX века изобрел и построил устройства, которые сводили в таблицы сведения о жителях страны намного быстрее, чем при ручной обработке. Применяя идеи жаккардового ткацкого станка, Холлерит пробивал отверстия в карточках из плотной бумаги, тем самым кодируя данные переписи в формате, подходящем для обработки его машинами. Примечательно, что для получения сводных таблиц переписи 1880 года потребовалось восемь лет, но благодаря перфокартам и счетным машинам Холлерита итоги переписи 1890 года появились всего через год, а не через десять или больше, как прогнозировалось. Герман основал компанию, которая в 1924 году благодаря слияниям и приобретениям превратилась в International Business Machines, известную сегодня как IBM.
Рис. 1.2. Ада Лавлейс. Фрагмент портрета работы Маргарет Сары Карпентер, 1836 год17
Машины Бэббиджа представляли собой сложные механические конструкции из шестеренок, колес, рычагов и стержней. Развитие электроники в XX веке позволило спроектировать компьютеры, в которых уже не применялись механические компоненты. Первой серьезной электрической машиной стал ENIAC (Electronic Numerical Integrator and Computer[9]), созданный Преспером Эккертом и Джоном Мокли в 1940-х годах в Пенсильванском университете в Филадельфии. ENIAC занимал просторное помещение и требовал огромного количества электроэнергии, а выполнял при этом около 5000 операций сложения в секунду. Предполагалось, что устройство будут использовать для баллистических расчетов и тому подобного, но его достроили только в 1946 году, уже после окончания Второй мировой войны18. (Части ENIAC выставлены в Электротехнической школе Мура при Пенсильванском университете.)
Еще Бэббидж четко понимал, что вычислительные устройства могут сохранять свои командные инструкции и данные в одной и той же форме. Но в памяти ENIAC содержалась только информация, а программировали его путем настройки соединений с помощью реле и переключения кабелей. Первые компьютеры, способные совместно хранить программы и данные, создали в Кембридже в 1949 году. Они назывались EDS АС (Electronic Delay Storage Automatic Calculator – электронные автоматические вычислители с задержкой хранения).
Вычислительными элементами для первых электронных компьютеров служили вакуумные трубки. Эти электронные устройства размером и формой примерно с цилиндрическую лампочку (см. рис. 1.7 в следующей главе) были дорогими, хрупкими, громоздкими и требовали много энергии. Современная эра вычислительной техники началась после изобретения транзистора (1947 год) и интегральных схем (1958 год). Благодаря этим технологиям электронные системы равномерно становились все более компактными, дешевыми и быстродействующими.