Основы информационных технологий для неспециалистов: что происходит внутри машин
Understanding the Digital World:
What You Need to Know about Computers, the Internet, Privacy, and Security, Second Edition by Brian W. Kernighan.
Copyright © 2021 by Princeton University Press
All rights reserved.
No part of this book may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying, recording or by any information storage and retrieval system, without permission in writing from the Publisher.
Библиотека ИТ. Главные книги о современных технологиях
© Жевлакова Е.В., перевод на русский язык, 2024
© Оформление. ООО «Издательство «Эксмо», 2024
Предисловие
Курс под названием «Компьютеры в нашем мире» я преподаю в Принстоне почти каждую осень начиная с 1999 года. Название курса – размытое до неприличия, но дело в том, что однажды мне пришлось придумать его за пять минут, а поменять с тех пор стало довольно сложно. Впрочем, преподавать этот курс – самая увлекательная часть моей работы, которая и так почти всегда приносит радость.
Факт, что компьютеры и вычислительная техника окружают нас повсюду. Некоторые технологии у всех на виду: у студентов есть ноутбуки, и они намного мощнее компьютера IBM 70941, который стоил несколько миллионов долларов, занимал большую комнату с кондиционером и обслуживал весь кампус Принстона, когда я пришел сюда аспирантом в 1964 году. Кроме того, каждый студент пользуется сотовым телефоном, вычислительная мощность которого намного выше, чем у той древней машины IBM. У всех студентов, как и у значительной доли населения земного шара, есть высокоскоростной доступ в интернет. Любой из них может искать информацию в браузере, совершать покупки онлайн, пользоваться электронной почтой, мессенджерами и социальными сетями для общения с друзьями и семьей.
Но это только вершина айсберга вычислительных технологий, большая его часть скрыта в глубине. Мы обычно не думаем о компьютерах, которые незаметно работают в бытовой технике, машинах, самолетах и вездесущих электронных устройствах вроде умных телевизоров, термостатов и дверных звонков, средств распознавания голоса, фитнес-трекеров, наушников, игрушек и игровых аксессуаров, – и мы воспринимаем их как данность. Мы мало задумываемся и о том, до какой степени от вычислительной техники зависит инфраструктура: телефонная сеть, кабельное телевидение, управление воздушным движением, энергосистема, банковские и финансовые услуги.
Большинство людей напрямую не создают эти системы, но ощущают их сильное влияние – а некоторым предстоит принимать важные решения по поводу их работы. Образованный человек должен знать по меньшей мере основы вычислительных технологий: что делают компьютеры и как, на что они не способны в принципе, а что просто чересчур сложно для них на данный момент, как они общаются между собой и что при этом происходит, какими многочисленными способами технологии и коммуникации воздействуют на мир вокруг нас.
То, что информационные технологии проникают повсюду, влияет на нас неожиданным образом. Хотя нам время от времени напоминают о распространении систем наблюдения, о вторжениях в нашу частную жизнь, угрозах кражи личных данных, мы не всегда осознаем, насколько это все обусловлено технологиями и коммуникациями.
В июле 2013 года Эдвард Сноуден, подрядчик Агентства национальной безопасности (АНБ) Соединенных Штатов Америки, предоставил журналистам 50 000 документов, в которых раскрывалось, что сотрудники АНБ регулярно отслеживали электронные средства связи: звонки, сообщения, письма, интернет – и собирали данные почти по каждому жителю мира. Что примечательно, они следили и за американцами, которые жили в своей стране и не представляли никакой угрозы ее безопасности. Документы Сноудена показывали, что и другие государства тоже шпионили за своими гражданами. Удивительно, но после первоначального возмущения общественности все вернулось на круги своя, правительства стали еще более масштабно отслеживать, чем занимаются граждане, и шпионить за ними, а люди либо смирились с этим, либо не возражают по неведению.
Нашу деятельность в интернете и реальном мире отслеживают также и корпорации. Бизнес-модели многих компаний основаны на обширном сборе данных, возможностях прогнозировать наше поведение и влиять на него. Доступность громадных объемов данных позволила достичь серьезного прогресса в машинном распознавании речи и образов, а также автоматических переводах. Но она вредит неприкосновенности частной жизни, и теперь сложно сохранять анонимность.
Хакеры всех мастей стали особенно изощренными в своих атаках на хранилища данных. В государственных службах и на предприятиях почти ежедневно происходят электронные взломы; данные о клиентах и сотрудниках похищают в больших количествах и часто используют в целях мошенничества и кражи личной информации. Обычными стали атаки на отдельных лиц. Раньше считалось, что для защиты от онлайн-мошенников достаточно игнорировать письма от мнимых нигерийских принцев или их родственников. Но сейчас целевые атаки стали куда более хитроумными, и это один из наиболее распространенных способов взлома корпоративных компьютеров.
Социальные сети вроде Facebook[1], Instagram[2], X (Twitter), Reddit и других изменили способы общения между людьми. С одной стороны, это полезно: мы можем поддерживать связь с друзьями и семьей, просматривать новости и всевозможные развлекательные посты. Соцсети могут и помочь, как в середине 2020 года, когда движение Black Lives Matter привлекло всеобщее внимание благодаря «вирусным» видеороликам о жестокости полиции.
Но через социальные сети также распространялось множество дурных идей. Расисты, участники групп ненависти, сторонники теорий заговора и другие безумцы, независимо от их убеждений и политических взглядов, могут легко находить друг друга в интернете, координировать свои действия и усиливать свое влияние. Сдержать разгул ненависти и бреда мешают щекотливые вопросы свободы слова, а также технологические сложности модерирования контента.
В мире с обширным взаимодействием через интернет сложно решать вопросы юрисдикции. В 2018 году Европейский союз ввел в действие Общий регламент по защите персональных данных, который позволил жителям ЕС контролировать сбор и использование своих данных и запретил компаниям отправлять или хранить данные за пределами ЕС. Коллегия присяжных еще не определила, насколько Общий регламент оказался полезным для конфиденциальности. К тому же эти правила применяются только в ЕС, а в других частях мира действуют иные законы.
Еще одна сложность появилась после быстрого внедрения облачных вычислений, когда отдельные лица и компании стали хранить данные и обрабатывать их на серверах, принадлежащих Amazon, Google, Microsoft и т. д. Данные теперь хранятся не только у их владельца, но и у третьих лиц, у которых есть свои цели, обязанности, уязвимые места и неразрешенные проблемы с взаимоисключающими требованиями разных юрисдикций.
Быстро развивается «интернет вещей», в котором все виды устройств подключаются к сети. Смартфоны – это очевидный пример, но, кроме них, онлайн-доступ получают автомобили, камеры слежения, бытовая техника и средства управления домом, медицинское оборудование и большая часть инфраструктуры – например, управление воздушным движением и энергосети. Эта тенденция соединять все с интернетом будет продолжаться, потому что преимущества такого соединения неоспоримы. К сожалению, здесь есть и серьезные риски: некоторые устройства контролируют жизненно важные системы, а не только развлечения, и часто их защита намного слабее, чем у более зрелых технологий.
Криптография – одно из немногих эффективных средств защиты, поскольку она обеспечивает конфиденциальность и безопасность как коммуникации, так и хранения данных. Но надежная криптография подвергается постоянным атакам. Правительствам не нравится идея, что люди, компании или террористы получат возможность общаться по-настоящему тайно, поэтому они часто призывают внедрить в криптографические алгоритмы лазейки, которые позволили бы госслужбам взломать шифрование – разумеется, с «надлежащей страховкой» и только «в интересах национальной безопасности». Какими бы благими ни были их намерения, это очень плохая идея. Даже если вы верите, что правительство всегда будет вести себя достойно и не позволит утечь секретной информации (забудем о Сноудене), ослабленная криптография поможет не только вашим союзникам, но и противникам. А плохие парни все равно не будут ее применять.
Это лишь некоторые проблемы и вопросы, которые должны беспокоить обычных граждан на улицах, вроде студентов моего курса или, как говорится, «людей просвещенных», независимо от их происхождения и образования.
Студенты моего курса – не технические специалисты. Они не инженеры, не физики, не математики. Они – бакалавры английского языка и политологии, историки, классицисты, экономисты, музыканты и артисты. Превосходная выборка по гуманитарным и общественным наукам. К окончанию курса эти одаренные люди должны научиться читать и понимать новостные статьи на компьютерную тематику, узнавать из них что-то новое и, возможно, находить неточности. В более широком смысле я хочу, чтобы мои студенты и читатели разумно и скептически относились к технологиям, понимали, что они полезны, но вовсе не панацея. И наоборот, понимали, что, хотя технологии иногда приводят к плохим последствиям, они вовсе не абсолютное зло.
Ричард Мюллер в своей прекрасной книге «Физика для будущих президентов»2 пытается объяснить научно-техническую подоплеку, лежащую в основе проблем, с которыми сталкиваются лидеры: ядерная угроза, терроризм, энергетические кризисы, глобальное потепление и так далее. Эрудированные люди, хоть и не претендующие на пост президента, тоже должны разбираться в этих темах. Если опираться на подход Мюллера, то и мое направление работы можно определить схоже: «Компьютеризация для будущих президентов».
Что будущий президент должен знать о компьютеризации? Что должен знать об этом эрудированный человек – например, вы?3
Я выделяю четыре основные технические области: аппаратное обеспечение, программное обеспечение, коммуникации и данные.
Аппаратное обеспечение — это осязаемая часть. Компьютеры, которые мы видим и трогаем, они стоят у нас дома и в офисах, мы носим их с собой в телефонах. Что находится внутри компьютера, как он работает и как он устроен? Как он хранит и обрабатывает информацию? Что такое биты и байты и как мы их используем для воспроизведения музыки, фильмов и всего остального?
Программное обеспечение — это инструкции, которые указывают компьютеру, что делать, и они, напротив, практически не осязаемы. Что мы можем вычислить и как быстро? Как мы отдаем компьютеру команды? Почему так трудно заставить компьютеры работать правильно? Почему так часто бывает сложно их использовать?
Коммуникации — это средства, которые позволяют компьютерам, телефонам и другим устройствам общаться между собой на пользу нам, а людям – разговаривать друг с другом: интернет, Всемирная паутина, электронная почта и социальные сети. Как это работает? Выгоды очевидны, но какие при этом возникают риски, особенно в отношении нашей безопасности и неприкосновенности частной жизни, и как их можно снизить?
Данные — это вся информация, которую аппаратное и программное обеспечение собирает, хранит и обрабатывает, а системы коммуникации рассылают по миру. Некоторые данные, осмотрительно это или нет, мы предоставляем добровольно: загружаем тексты, картинки и видео. В ходе нашей повседневной жизни большая часть этой персональной информации собирается и распространяется без нашего ведома и тем более согласия.
Президент вы или нет, вам нужно знать об устройстве мира применительно к компьютерам, поскольку это касается лично вас. Не важно, насколько ваша жизнь и профессия связаны с техникой – вы все равно будете взаимодействовать с технологиями и техническими специалистами. Хоть какое-то знание о работе устройств и систем – это большое преимущество, даже в простых ситуациях. Например, оно поможет понять, что продавец, политик или служба поддержки не говорят вам всей правды.
Мало того, невежество в этой сфере может напрямую повредить вам. Если вы не разбираетесь в вирусах, фишинге и подобных угрозах, то становитесь уязвимыми для них. Если вы не знаете, как социальные сети сливают или даже открыто передают информацию, которую вы считаете конфиденциальной, то вы раскрываете о себе гораздо больше сведений, чем предполагали. Если вы не осознаете, как безудержно коммерческие компании стремятся использовать все, что они узнали о вашей жизни, то вы отказываетесь от конфиденциальности без особой пользы для себя. Если вы не знаете, почему опасно пользоваться банковскими услугами, сидя в кафе или аэропорту, то возникает риск, что ваши деньги и личные данные похитят. Если вы не знаете, как легко другие люди манипулируют данными, то, скорее всего, попадетесь на удочку заведомо ложных новостей, фальсифицированных изображений и теорий заговора.
Предполагается, что вы прочтете эту книгу от начала до конца, но, возможно, вам захочется перейти к интересующим вас темам, а потом возобновить чтение по порядку. Например, вы можете начать с главы 8, где рассматриваются сети, сотовые телефоны, интернет, Всемирная паутина и вопросы конфиденциальности. Возможно, вам придется заглянуть в предыдущие главы, чтобы разобраться в каких-либо тонкостях, но в целом материал будет вам понятен. Также вы можете пропустить места, где много математики, – например, главу 2 о сути двоичных чисел или подробности о языках программирования в паре других глав.
В конце вы найдете список книг, которые я рекомендую, и ссылки на полезные ресурсы с дополнительными сведениями. В глоссарии приведены краткие определения и объяснения важных технических терминов и сокращений.
Любая книга об IT может быстро устареть, и эта не исключение. Предыдущее издание вышло задолго до того, как мы увидели, в каких масштабах враждебные силы способны влиять на общественное мнение и выборы в разных странах. Я дополнил книгу новыми важными историями, многие из которых касаются личной неприкосновенности и безопасности, поскольку за последние годы эти вопросы стали более актуальными. Появилась новая глава об искусственном интеллекте, машинном обучении и о том, как «большие данные»[3] сделали их такими эффективными, а в некоторых случаях – опасными. Я также попытался упростить сложные объяснения, а устаревший материал удалил или заменил. Тем не менее некоторые фрагменты уже устареют или станут неверными, когда вы будете читать эту книгу. Но я приложил все усилия, чтобы четко выделить знания, наделенные непреходящей ценностью.
Моя цель при работе над книгой состояла в том, чтобы вы по достоинству оценили удивительные технологии и по-настоящему поняли, как они работают, откуда появились и куда могут привести в будущем. На этом пути вы, возможно, приобретете полезную манеру мышления о мире в целом. Я надеюсь на это.
Благодарности
Я снова в большом долгу перед друзьями и коллегами, которые помогали мне улучшить эту книгу. Как и прежде, Джон Бентли с особым вниманием вычитывал многочисленные черновики, а его поддержка в форме организационных предложений, проверки фактов и сбора новых примеров просто неоценима. Аль Ахо, Свати Бхатт, Джованни де Феррари, Пол Керниган, Джон Линдерман, Мадлен Планейкс-Крокер, Арнольд Роббинс, Ян Сон, Говард Трики и Джон Уэйт дали подробные комментарии ко всей рукописи. Я также благодарен Фабрицио д’Аморе, Питеру Грабовски, Эбигейл Гупте, Майе Хамин, Джерарду Хольцманну, Кену Ламберту, Даниэлю Лопрести, Теодору Марку, Джоан Ордилле, Аюши Синхе, Уильяму Угетте, Питеру Вайнбергеру и Франциске Вейрих-Фрейберг за ценные предложения. Корейский перевод предыдущего издания, сделанный Сончан Ха, заметно улучшил и эту английскую версию. Гарри Льюис, Джон Маккормик, Брайан Респасс и Эрик Шмидт не скупились на похвалы для предыдущего издания. Как всегда, было приятно работать с производственной группой издательства Принстонского университета: Марком Беллисом, Лоррейн Донекер, Кристен Хоп, Дмитрием Каретниковым и Хэлли Стеббинс. В свою очередь, Мэри-Эллен Оливер исключительно тщательно вычитала текст и проверила факты.
Спустя двадцать лет мои студенты начнут управлять миром или, по крайней мере, не дадут ему развалиться. Они станут журналистами, врачами, юристами, учителями всех уровней, чиновниками, учредителями компаний, творческими людьми, актерами и просто глубоко неравнодушными гражданами. Я очень горжусь ими.
Мы все в долгу перед многими людьми, которые трудились, не жалея себя, во время пандемии COVID-19, чтобы мы могли работать дома с относительным удобством, зная, что даже во время карантина будут действовать ключевые службы, а система здравоохранения не перестанет заботиться о нас. Никакими словами не выразить, как сильно мы обязаны им.
Благодарность за второе издание книги «Цифровой мир»
Я снова в большом долгу перед друзьями и коллегами за их щедрую помощь и советы. Как и в случае с первым изданием, Джон Бентли внимательно прочитал несколько черновиков, оставил полезные комментарии на каждой странице, и эта книга стала намного лучше благодаря его вкладу. Ценные предложения, критику и правки я получил также от Свати Бхатт, Джованни Де Феррари, Питера Грабовски, Джерарда Хольцманна, Вики Керн, Пола Кернигана, Эрена Курсуна, Дэвида Малана, Дэвида Маускопа, Дипы Муралидхар, Мадлен Планейкс-Крокер, Арнольда Роббинса, Говарда Трики, Джанет Вертези и Джона Уэйта. Кроме того, я воспользовался полезными советами Дэвида Добкина, Алана Донована, Эндрю Джадкиса, Марка Кернигана, Элизабет Линдер, Жаклин Мислоу, Арвинда Нараянана, Джона Синовица, Питера Вайнбергера и Тони Вирт. Было приятно работать с производственной группой издательства Принстонского университета – Марком Беллисом, Лоррейн Донекер, Дмитрием Каретниковым и Вики Керн. Моя благодарность им всем.
Я также благодарен Принстонскому центру политики в области информационных технологий за хорошую компанию, беседы и еженедельные бесплатные обеды, и прекрасным студентам курса COS 109, чей талант и энтузиазм по-прежнему удивляют и вдохновляют меня. Спасибо вам.
Благодарности за книгу «D значит Digital»[4]
Я в большом долгу перед друзьями и коллегами за щедрую помощь и советы. В частности, Джону Бентли – за подробные комментарии почти к каждой странице нескольких черновиков. Клей Бейвор, Дэн Бентли, Хильдо Бирсма, Стю Фельдман, Джерард Хольцманн, Джошуа Кац, Марк Керниган, Мэг Керниган, Пол Керниган, Дэвид Малан, Тали Мо-решет, Джон Рике, Майк Ши, Бьярне Страуструп, Говард Трики и Джон Уэйт внимательно прочитали полные черновики, внесли много полезных предложений и спасли меня от нескольких серьезных оплошностей. Я также благодарю Дженнифер Чен, Дуга Кларка, Стива Элгерсму, Ави Флам-хольца, Генри Лейтнера, Майкла Ли, Хью Линча, Патрика Маккормика, Жаклин Мислоу, Джонатана Рошелла, Кори Томпсона и Криса Ван Вика за ценные комментарии. Я надеюсь, они увидят, что во многих местах я воспользовался их советами, и не заметят, что где-то я этого не сделал.
Дэвид Брэйлсфорд дал очень полезные советы по самостоятельной публикации и форматированию текста, полагаясь на личный опыт, приобретенный тяжким трудом. Грег Доенч и Грег Уилсон щедро делились советами по вопросам публикации. За фотографии я в долгу перед Джерардом Хольцманном и Джоном Уэйтом.
Гарри Льюис принимал меня в Гарварде в 2010/2011 учебном году, когда я написал первые несколько черновиков. Советы Гарри и его опыт преподавания аналогичного курса очень пригодились мне, как и его комментарии к многочисленным черновикам. Гарвардская школа инженерных и прикладных наук и Беркмановский центр интернета и общества создали для меня дружественную и вдохновляющую атмосферу, предоставили офис, оборудование и (да, такое бывает!) регулярные бесплатные обеды.
Я особенно благодарен многим сотням студентов, которые прошли курс COS 109 «Компьютеры в нашем мире». Их интерес, энтузиазм и дружелюбие стали неисчерпаемым источником вдохновения. Я надеюсь, что, когда несколько лет спустя они будут руководить миром, окажется, что этот курс пошел им на пользу.
Введение
Это было лучшее из всех времен, это было худшее из всех времен…[5]
Чарльз Диккенс.Повесть о двух городах, 1859
Мы с женой планировали провести летний отпуск 2020 года в Англии. Мы забронировали номер, внесли предоплату, купили билеты, договорились с друзьями, чтобы они присмотрели за нашим домом и котом… а потом мир изменился.
В начале марта стало понятно, что COVID-19 станет серьезным мировым кризисом в области здравоохранения. Принстонский университет отменил занятия и в срочном порядке отправил студентов домой. Им дали неделю, чтобы собрать вещи и уехать. Быстро последовало решение, что в этом семестре они уже не вернутся.
Занятия перенесли в онлайн. Студенты смотрели лекции, писали работы, сдавали экзамены и получали оценки – все происходило удаленно. Я начал познавать Zoom – систему для видеоконференций – и стал пусть не экспертом, но, во всяком случае, опытным пользователем-любителем. К счастью, я преподавал два коротких семинара, примерно по десятку студентов в каждом, поэтому одновременно видел всю группу и поддерживал нормальное общение. У коллег, которые вели большие лекционные занятия, дела обстояли не так хорошо – и, конечно, это негативно отразилось на учениках по другую сторону всех этих виртуальных кафедр.
Большинство студентов вернулись в свои уютные дома с надежным электроснабжением и устойчивым интернет-соединением, где их поддерживали родные и они не столкнулись с нехваткой еды или еще чего-либо жизненно важного. Естественно, отношения между людьми страдали из-за вынужденного разделения или процветали из-за вынужденного объединения (а иногда – наоборот). Но это были несерьезные проблемы.
Часть студентов попала в гораздо более бедственное положение. У одних интернет-соединение прерывалось или вообще отсутствовало, из-за чего они не могли пользоваться видеосвязью и электронной почтой. Другие долго болели или находились на длительном карантине. У третьих заразились родственники, и о них приходилось заботиться, а у кого-то даже умерли близкие.
Повседневная административная работа в университете также перешла в онлайн-режим, случайные разговоры в коридоре превратились в ежедневные виртуальные встречи, а вся бумажная работа в основном велась по электронной почте. Я быстро устал от Zoom, но пока что хотя бы не сталкивался с выходками хакеров, вторгающихся в онлайн-пространство.
Во многих частях мира нашлись везучие люди, профессия которых позволяла трудиться удаленно, и компании быстро перешли в режим работы из дома. Люди улучшали фон для видеосвязи: демонстрировали книжные полки или аккуратно расставленные цветы и картины, учились добиваться (почти полной) тишины от своих детей, домашних животных и близких, а также не показывать их в кадре.
Стриминговые сервисы вроде Netflix, и так уже популярные, расширили аудиторию. Полный запрет на спортивные мероприятия поспособствовал ускорению развития онлайн-игр и фэнтези-спорта[6].
Мы постоянно смотрели новостные сводки о том, как быстро распространяется вирус COVID-19 и как удручающе медленно и непоследовательно его сдерживают, что сопровождалось чрезмерным изобилием несуразных идей и откровенной лжи политиков. Честных и компетентных руководителей среди них нашлось мало. Еще мы немного узнали о том, как стремительно развиваются экспоненциальные процессы.
Адаптироваться к новому способу ведения дел оказалось на удивление легко. Счастливчики продолжали работать, поддерживали виртуальный контакт с друзьями и родственниками, заказывали еду и все необходимое, почти как и прежде. Интернет и вся инфраструктура поддерживали связь между нами. Ситуация была на удивление устойчивой: системы передачи информации никогда не отключались, как и (к счастью) электричество, тепло и вода.
Технологические системы настолько хорошо работали во время этого глобального кризиса, что мы почти не вспоминали о них, – если не считать нескольких тревожных моментов, – хотя без них нам пришел бы конец. То же самое относится и ко множеству незаметных героев, которым не уделяли внимания, но они не допускали поломок, зачастую серьезно рискуя здоровьем и даже жизнью. Кроме того, мы по-настоящему не задумывались о миллионах людей, которые потеряли работу, потому что не могли выполнять свои задачи через интернет и их источник дохода исчез в одночасье.
Я буквально никогда не слышал о Zoom перед тем, как начал использовать его в марте. Эта программа, выпущенная в 2013 году, предоставляла систему для видеоконференций, конкурируя с более крупными игроками вроде Microsoft Teams и Meet от Google (этот проект часто переименовывали). Zoom вышла на фондовую биржу в 2019 году, а сейчас, поздней осенью 2020 года, когда я пишу это, она оценивается в более чем 125 миллиардов долларов4, что намного выше стоимости таких старых и хорошо известных компаний, как General Motors (61 млрд) и General Electric (85 млрд), и значительно дороже IBM (116 млрд).
Работать удаленно получалось у тех, кто обладал быстрым надежным интернетом, а также компьютером с камерой и микрофоном. Интернет-провайдеры и поставщики облачных сервисов располагали достаточными мощностями, чтобы справиться с растущим трафиком. Службы видеосвязи оказались настолько доступными и совершенными, чтобы большинство людей пользовались ими безо всяких неудобств. А ведь еще десять лет назад эти сервисы работали совсем не так хорошо, если вообще существовали.
Короче говоря, вездесущие современные технологии дали возможность счастливчикам жить в обстановке, вполне похожей на нормальную. Эти события напомнили нам, как разнообразны технологии, насколько глубоко они вошли в нашу жизнь и как улучшили ее во всех отношениях.
Но у этой истории есть оборотная сторона, не такая радостная.
Ситуация с интернетом, который уже стал рассадником паранойи, ненависти и безумных теорий, еще ухудшилась. Социальные сети позволили политикам и чиновникам распространять ложь, все заметнее разделять нас и избегать ответственности, получая поддержку от «новостных» агентств, не интересующихся фактами. Такие сайты, как Twitter и Facebook[7], безуспешно пытались найти золотую середину – остаться нейтральной платформой для свободного выражения идей, но сдержать шквал провокационных постов и откровенной лжи.
Слежка вышла на новый уровень: во многих странах применялись технологии для ограничения прав людей, мониторинга их поведения и контроля над ним. Например, в Китае, помимо прочего, использовалась технология распознавания лиц для надзора за национальными меньшинствами. Во время пандемии COVID-19 китайское правительство обязало граждан установить приложение, которое работает как своего рода паспорт иммунитета, но также сообщает полиции о местонахождении пользователей5. В США и Великобритании местные правоохранительные органы приглядывают за людьми, полагаясь на систему распознавания лиц, считыватели номерных знаков и тому подобное.
Наши мобильные телефоны постоянно фиксируют местоположение, и различные субъекты могут агрегировать эти данные. Приложения для отслеживания смартфонов – отличный пример двойственности технологий. Кто станет возражать против системы отслеживания контактов с COVID-19, которая уведомляет вас, общались ли вы с потенциально заразным человеком? Но любая технология, позволяющая правительству узнать, где вы были и с кем разговаривали, в том числе помогает ему более эффективно вести мониторинг и контроль. Это короткий и скользкий путь от отслеживания заболеваемости к выявлению мирных протестующих, инакомыслящих, политических оппонентов, изобличителей и всех остальных, кого власти воспринимают как угрозу. (Неясно, работает ли вообще отслеживание контактов на основе приложений, поскольку оно очень часто выдает ложноположительные и ложноотрицательные результаты6.)
Почти все наши взаимодействия с онлайн-миром, а часто и в офлайне, отслеживают бесчисленные компьютерные системы. Они запоминают, с кем мы имели дело, сколько заплатили и где находились в то или иное время. Основную часть этих данных накапливают в коммерческих целях, поскольку чем больше компании знают о нас, тем точнее могут настроить целенаправленную рекламу. Многие читатели уже знают, что эти данные собираются, но, полагаю, не подозревают, в каких объемах и насколько подробно.
Наблюдением занимаются не только компании, но и правительство. То, что обнародовал Эдвард Сноуден, – электронные письма АНБ, внутренние отчеты, презентации PowerPoint, – многое поведало о шпионаже в цифровую эпоху7. Суть в том, что АНБ следит за всеми в грандиозных масштабах.
Разоблачения Сноудена ошеломляли. Многие подозревали, что АНБ шпионит за людьми активнее, чем признаётся, но истинный размах превзошел воображение. Сотрудники АНБ регулярно собирали метаданные обо всех телефонных разговорах в США – кто и кого вызывал, когда и как долго они беседовали – и могли даже записывать сами звонки. Они сохраняли мои разговоры по Skype, контакты по электронной почте, а также, возможно, содержимое моих писем. (И ваших, конечно, тоже.) Они прослушивали телефонные разговоры мировых лидеров. Они перехватывали громадные объемы интернет-трафика, установив записывающие устройства на оборудование в тех местах, где подводные кабели входят на территорию США или покидают ее. Они склоняли и принуждали крупные телекоммуникационные и интернет-компании собирать и передавать информацию о своих пользователях. Они длительное время хранили громадное количество данных, делясь некоторыми из них со шпионскими агентствами других стран8.
Возвращаясь к сфере бизнеса, отметим, что мы чуть ли не каждый день узнаём об очередном нарушении безопасности в каких-либо компаниях или структурах, когда загадочные хакеры крадут информацию: имена, адреса, номера кредитных карт и другие персональные данные миллионов людей. Обычно этим промышляют преступники, разбирающиеся в высоких технологиях, но иногда причина – в шпионских действиях других стран, которые ищут ценные сведения. Время от времени персональные данные раскрывают случайно, из-за некомпетентности или небрежности компаний, хранящих такую информацию. Впрочем, причина утечек не имеет значения. Важно, что собранные о нас данные слишком часто раскрывают или крадут, а затем, возможно, используют против нас.
Цель этой книги – рассказать о технологии, которая скрыта за всеми упомянутыми системами, чтобы вы разобрались, как они работают. Как фотографии, музыка, фильмы и подробности вашей личной жизни могут мгновенно передаваться по миру? Как работают электронная почта и мессенджеры? Насколько они конфиденциальны? Почему спам так легко отправлять и так трудно заблокировать? Постоянно ли сотовые телефоны передают данные о вашем местоположении? Кто отслеживает вас онлайн и по смартфону и почему это важно? Могут ли распознать ваше лицо в толпе? Кто определяет, что это именно вы? Способны ли хакеры завладеть вашей машиной? А как насчет самоуправляемых автомобилей? Можем ли мы обеспечить себе безопасность и неприкосновенность частной жизни или незачем даже пробовать9?
К концу этой книги вы должны обрести четкое представление о том, как работают компьютеры и коммуникационные системы, как они влияют на вас и как вы можете найти баланс между использованием полезных сервисов и защитой вашей конфиденциальности.
Все сводится к горстке фундаментальных концепций, «универсалий», которые мы гораздо более подробно обсудим далее.
Во-первых, универсальное цифровое представление информации. Большую часть XX века документы, фотографии, музыку и фильмы хранили с помощью сложных и хорошо продуманных механических систем, но сейчас их заменили единым универсальным методом. Информация теперь представляется в цифровом виде – в числовых значениях, а не в таких специализированных форматах, как цветные красители, внедренные в пластиковую пленку, или комбинации магнитных частиц на виниловой ленте. Бумажные письма и карты уступили место цифровым, а бумажные документы заменяются базами данных в интернете. Аналоговые форматы во всем их разнообразии вытеснил единый низкоуровневый способ представления – цифровая информация, где все выражается просто числами.
Вторая концепция – универсальный цифровой процессор. Вся эта цифровая информация обрабатывается стандартными устройствами одного типа, цифровыми вычислительными машинами. Компьютеры, которые оперируют универсальными цифровыми представлениями, пришли на смену сложным механическим устройствам, работавшим с аналоговыми форматами отображения информации. Как мы увидим далее, все компьютеры равны в том, что они способны обсчитывать, но отличаются в скорости обработки и в том, какие объемы данных могут хранить. Любой смартфон – это крайне замысловатый компьютер с такой же вычислительной мощностью, как и у ноутбука. Все больше и больше задач, с которыми раньше справлялись только переносные и настольные компьютеры, теперь выполняются на телефонах, и этот процесс унификации ускоряется.
Третье понятие – универсальная цифровая сеть. Интернет соединяет между собой цифровые вычислительные машины, которые обрабатывают цифровое представление данных. Он подключает компьютеры и телефоны к почте, веб-поиску, социальным сетям, магазинам, банкам, новостным и развлекательным каналам и всему остальному. Большинство людей на земле имеют доступ к этой сети. Вы можете обмениваться электронными письмами с любым человеком независимо от того, где он находится или каким способом проверяет почту. Со своего телефона, ноутбука или планшета вы можете искать информацию, сравнивать цены в разных магазинах и совершать покупки. Социальные сети позволяют вам поддерживать связь с друзьями и семьей – опять же через телефон или компьютер. Вы можете смотреть бессчетные развлекательные каналы, зачастую даже бесплатно. Системы в вашем доме отслеживают и контролируют «умные» устройства, которые понимают ваши голосовые команды или вопросы. И существует всемирная инфраструктура, которая обеспечивает совместную работу всех этих служб.
Четвертая концепция – цифровые данные, которые постоянно собирают и анализируют в колоссальных объемах. В свободном доступе находятся карты, аэроснимки и подробные фотографии улиц. Поисковые системы неустанно сканируют интернет и эффективно находят ответы на запросы. В цифровой форме доступны миллионы книг. Социальные сети и файлообменники хранят огромные объемы данных для нас и о нас. Как сетевые, так и традиционные магазины и сервисы предлагают доступ к своим товарам, но в то же время незаметно сохраняют все наши действия, тогда как поисковые системы, социальные сети и наши телефоны не просто позволяют, а помогают им заниматься этим. Во время онлайн-взаимодействий интернет-провайдеры записывают историю наших подключений и, возможно, многое другое. Правительства постоянно шпионят за нами, причем еще 10 или 20 лет назад такая масштабная и тщательная слежка была бы невозможна.
И все это очень быстро меняется, потому что цифровые технические системы становятся всё более компактными, быстрыми и дешевыми. Производители постоянно выпускают новые телефоны с затейливыми функциями, улучшенными экранами и привлекательными приложениями. Регулярно появляются новые гаджеты, а затем функциональность самых полезных из них переходит к приложениям на телефонах. У цифровых технологий имеется естественный побочный продукт: любое развитие аппаратной части приводит к появлению усовершенствований во всех цифровых устройствах. То есть, если какие-либо изменения позволяют обрабатывать данные более дешево, быстро и в увеличенных объемах, выигрывают все устройства. Вот почему цифровые системы встречаются повсюду и встраиваются в нашу жизнь – как зримо, так и незримо.
Считается, что прогресс приносит пользу, и во многих отношениях это действительно так. Но нет добра без худа. Самый очевидный из негативных факторов (и, пожалуй, наиболее тревожный для людей на личном уровне) – влияние технологий на неприкосновенность частной жизни. Когда вы пользуетесь телефоном, чтобы найти какой-нибудь продукт, а затем посещаете интернет-магазины, все участники этого процесса записывают ваши переходы по страницам. Они знают, кто вы такой, потому что идентифицируют вас по смартфону. Они знают, где вы находитесь, потому что телефон постоянно передает координаты вашего местоположения с точностью до 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 год). Благодаря этим технологиям электронные системы равномерно становились все более компактными, дешевыми и быстродействующими.
В следующих трех главах рассказывается об аппаратных средствах компьютеров, причем наибольшее внимание уделяется логической архитектуре вычислительных систем, а не подробностям их физического конструирования. Архитектура практически не менялась за последние десятилетия, тогда как оборудование преобразилось просто ошеломительно. В первой главе приводится обзор структуры и компонентов компьютера. Во второй главе показывается, как компьютеры представляют информацию в виде битов, байтов и двоичных чисел. В третьей главе объясняется, как вычислительные машины проводят расчеты – как они обрабатывают биты и байты, чтобы достичь результата.
1. Что такое компьютер?
Поскольку готовое устройство будет представлять собой вычислительную машину общего назначения, оно должно включать в себя главные блоки, относящиеся к арифметическим операциям, хранению в памяти, управлению и связи с человеком-оператором.
Артур У. Бёркс, Герман Х. Голдстайн, Джон фон Нейман.Предварительное рассмотрение логического устройства электронного вычислительного прибора19, 1946
Давайте начнем обсуждение аппаратного обеспечения с обзора того, что представляет собой вычислительная машина. Мы рассмотрим ее по крайней мере с двух позиций: логической или функциональной организации (какие у нее части, что они делают и как соединены) и физической структуры (как выглядят части и как они сконструированы). Цель этой главы – разобраться, что такое компьютер и что у него внутри, узнать, что выполняет каждая его часть, и получить представление о том, что значат все эти бесчисленные сокращения и циферки.
Подумайте о ваших вычислительных устройствах. У многих читателей наверняка есть ПК, то есть или ноутбук, или настольный компьютер, произошедший от тех самых PC (Personal Computer, персональный компьютер), которые продавала компания IBM в 1981 году. Если у вас такой ПК, он работает на какой-нибудь версии операционной системы Windows от Microsoft. У других имеется Apple Macintosh под управлением той или иной версии macOS20. У третьих – хромбук (Chromebook) на операционной системе ChromeOS, которая задействует интернет для большей части вычислений и хранения данных. Более специализированные устройства вроде смартфонов, планшетов и электронных книг тоже представляют собой мощные вычислительные машины. Они все выглядят по-разному, и при использовании каждое из них ощущается по-своему, но внутри они устроены в принципе одинаково. Мы поговорим о причинах этого.
Можно провести небольшую аналогию с машинами. Функционально автомобили не меняются уже больше ста лет. В каждом из них есть двигатель, который работает на каком-либо топливе и приводит машину в движение. Есть руль, с помощью которого водитель управляет автомобилем. Есть место, где содержится топливо, а также пространство для пассажиров и их вещей. Однако физически машины сильно преобразились за столетие: их изготавливают из других материалов, они стали быстрее, безопаснее, надежнее и удобнее. Есть огромная разница между моей первой машиной (подержанным Volkswagen Beetle[10] 1959 года выпуска) и Ferrari, но любая из них доставит меня и мои продукты домой из магазина или провезет через всю страну, и в этом смысле они функционально одинаковы. (Отмечу для ясности, что я никогда даже не садился в Ferrari, не говоря уже о том, чтобы владеть ею, поэтому лишь предполагаю, что там хватит места для продуктов. Правда, однажды я припарковался рядом с одной из них: см. рис. 1.1.)
Рис. 1.1. Самое близкое расстояние, на которое я когда-либо подходил к Ferrari
С вычислительными машинами все то же самое. По логической организации современные компьютеры очень похожи на своих предшественников 1950-х годов, но их физические различия выходят далеко за пределы тех изменений, которые претерпели автомобили. Сегодня компьютеры намного меньше, дешевле, быстрее и надежнее, чем 60 или 70 лет назад, и буквально в миллион раз лучше по некоторым показателям. Такие усовершенствования послужили главной причиной повсеместного распространения компьютеров.
Различия между функциями и физическими свойствами – то есть между тем, что делает объект, и тем, как он устроен или работает внутри, – имеют большое значение. Для компьютеров часть «как это устроено» меняется удивительными темпами, как и их быстродействие, но вот часть «что делает» довольно стабильна. Такое различие между абстрактным описанием и конкретным воплощением будет неоднократно обсуждаться в дальнейшем.
На первой лекции я иногда провожу опрос среди студентов: у скольких из вас есть ПК, у скольких из вас есть Мас? В начале 2000-х годов соотношение уверенно держалось в области 10 к 1 в пользу ПК, но за несколько лет быстро изменилось, и теперь на долю Mac приходится более 75 % компьютеров. Впрочем, это нетипично для мира в целом, где ПК доминируют с большим отрывом.
Вызвано ли подобное неравенство тем, что один тип компьютеров превосходит другой? Если да, то что так резко изменилось за столь короткое время? Я спрашиваю студентов, какой компьютер лучше, и прошу назвать объективные критерии их выбора. На основании чего вы решаете купить тот или иной компьютер?
Естественно, один из ответов – цена. ПК обычно дешевле из-за жесткой конкуренции на рынке. Более широкий спектр дополнительных компонентов «железа», больше программного обеспечения и возможностей посоветоваться со специалистами, к тому же все это легко доступно. Яркий пример того, что экономисты называют эффектом сетевой выгоды: чем больше других людей применяют что-то, тем полезнее оно окажется для вас, примерно пропорционально количеству других пользователей.
На стороне Mac стоят надежность, качество, эстетическая привлекательность и ощущение, что «все просто работает», а за такое многие потребители готовы приплачивать.
Дебаты продолжаются, и, хотя ни одна из сторон не убеждает другую, в головах у спорящих возникают полезные вопросы, что помогает им задуматься о том, какие есть различия между разными видами вычислительных машин и что в них работает одинаково.
Аналогичные дебаты ведутся и о телефонах. Почти у каждого есть смартфон («умный телефон»), который может запускать программы («приложения»), загруженные из Apple App Store, Google Play Store или иных магазинов приложений. Телефон служит браузером, почтой, часами, камерой, проигрывателем музыки и видео, диктофоном, картой, навигатором, средством для сравнения цен в магазинах, а иногда по нему даже звонят и общаются. Обычно примерно три четверти моих студентов владеют iPhone, и почти все остальные – смартфоном на ОС Android от разных поставщиков. iPhone стоят дороже, но они обеспечивают более плавную интеграцию с экосистемой компьютеров, планшетов, часов, музыкальных плееров и облачных сервисов от Apple: вот вам и еще один пример эффекта сетевой выгоды. Лишь изредка кто-то признаётся, что пользуется только «кнопочным телефоном», у которого нет дополнительных функций, кроме возможности совершать звонки. Я проводил исследование в США среди сравнительно обеспеченных людей, а в других странах и группах населения смартфоны на Android будут распространены гораздо шире.
И снова у людей есть веские причины для выбора: функциональность, экономичность, эстетическая привлекательность, – но за всем этим, как и в случае с ПК и Мас, скрывается весьма схожая аппаратура для вычислений. Давайте посмотрим, почему так.
1.1. Логическое построение
Если бы нарисовали абстрактное изображение простого стандартного компьютера, его логическую и функциональную архитектуру, то оно выглядело бы как схема на рисунке 1.2, причем как для Мас, так и для ПК. Процессор, какая-нибудь оперативная память, внешняя память и многие другие компоненты, соединенные набором проводов – шиной, которая передает информацию между ними.
Если мы представим в такой форме телефон или планшет, то рисунки будут похожи, но мышь, клавиатура и дисплей объединятся в один компонент, появятся экран и многие другие скрытые компоненты, такие как компас, датчик поворота экрана, GPS-приемник для определения вашего физического местоположения.
Базовая организация – процессор, память и хранилище для инструкций и данных, а также устройства ввода и вывода – была стандартной с 1940-х годов. Ее часто называют архитектурой фон Неймана в честь Джона фон Неймана, который описал ее в цитируемой выше статье 1946 года. Хотя и сейчас порой возникают дискуссии о том, не получает ли фон Нейман слишком много славы за работу, проделанную другими, его статья написана столь ясно и познавательно, что ее стоит прочесть даже сегодня. Например, цитата в начале текущей главы – это первое предложение его статьи. В переводе на современную терминологию, процессор обеспечивает арифметические операции и управление, оперативная и внешняя память – хранение в памяти, а клавиатура, мышь и дисплей взаимодействуют с человеком-оператором.
Рис. 1.2. Архитектурная схема простого идеализированного компьютера
Примечание по терминологии: процессор исторически назывался ЦПУ, или центральное процессорное устройство, но сейчас его часто именуют просто «процессор». Оперативную память часто называют ОЗУ, или оперативное запоминающее устройство, а внешнюю память – диск или накопитель, что отражает разницу в их материальных воплощениях. В основном я буду использовать слова «процессор», «память» и «хранилище», но иногда вы встретите старые термины.
1.1.1. Процессор
Процессор – это мозг компьютера, если такое слово можно здесь применить. Он выполняет арифметические вычисления, перемещает данные, управляет работой других элементов. Процессору доступен лишь ограниченный набор базовых операций, но он проводит их с невероятной быстротой, совершая миллиарды действий в секунду. На основе результатов предыдущих вычислений ЦПУ может решать, какие операции проводить дальше, поэтому он сравнительно независим от своих пользователей-людей. В главе 3 мы уделим этому компоненту больше времени, потому что он играет важную роль.
Если вы зайдете в магазин онлайн или офлайн, чтобы купить компьютер, то наткнетесь на описание всех компонентов, где обычно указываются загадочные аббревиатуры и не менее загадочные цифры. Например, вам может встретиться такое описание процессора – «2.2 GHz двухъядерный Intel Core 17», как в одном из моих компьютеров. Что это такое? Данный процессор произведен компанией Intel, a Core i7 – это название их обширной линейки. Он имеет два процессорных блока в одном корпусе: в этом контексте «ядро» синонимично «процессору». Любое ядро – само по себе процессор, однако в ЦПУ может входить несколько ядер, которые работают либо вместе, либо раздельно, но вычисления ускоряются в любом случае. Чаще всего приемлемо определять такую конструкцию как «процессор» независимо от того, сколько в ней ядер.
«2,2 ГГц» – это более интересная часть. Скорость процессора можно измерить, пусть даже примерно, подсчитав количество операций, команд или их частей, которые он способен произвести за секунду. Для пошагового выполнения своих основных операций процессор полагается на внутренние часы, которые «отбивают ритм», как сердцебиение или метроном. Один из показателей скорости – количество таких тактов в секунду. Один удар или такт в секунду называется одним герцем (сокращенно Гц) в честь немецкого инженера Генриха Герца, который в 1888 году открыл, как получать электромагнитное излучение, что напрямую привело к появлению радио и других беспроводных систем. Радиостанции вещают на частотах, измеряемых в мегагерцах (миллионах герц), например 102,3 МГц. Современные компьютеры, как правило, функционируют с частотой в миллиарды герц, или гигагерц – ГГц. Значит, мой довольно обычный процессор в 2,2 ГГц работает со скоростью 2 200 000 000 тактов в секунду. Человеческое сердце бьется с частотой примерно 1 Гц, или почти 100 000 ударов в день, то есть около 30 миллионов ударов в год. Итак, каждое ядро в моем процессоре за одну секунду выполняет столько операций, сколько мое сердце совершило бы за 70 лет.
Выше мы познакомились с некоторыми «числовыми» приставками вроде «мега» и «гига», которые весьма распространены в компьютерных системах. Мега – это один миллион, или 106, а гига (ударение на первый слог) – один миллиард, или 109. Вскоре мы познакомимся с другими приставками, полный список которых вы можете найти в глоссарии.
1.1.2. Оперативная память
Оперативная память хранит информацию, которая активно используется процессором и другими частями компьютера, причем ЦПУ способно изменять ее содержимое. В оперативной памяти содержатся не только данные, с которыми в данный момент работает процессор, но и инструкции по совершаемым операциям. Это чрезвычайно важный момент: загружая различные инструкции в память, мы можем «поручать» процессору разные вычисления. Благодаря этому ЭВМ с хранимой программой становится устройством общего назначения. Один и тот же компьютер способен запускать текстовый редактор и электронные таблицы, просматривать веб-страницы, отправлять и получать электронную почту, поддерживать связь с друзьями на Facebook[11], помогать с налогами и проигрывать музыку. И все это благодаря размещению подходящих инструкций в памяти. Важность концепции хранимой программы невозможно переоценить.
Оперативная память предоставляет место для хранения информации во время работы компьютера. В ней содержатся инструкции программ, которые на данный момент активны, – например, Word, Photoshop или браузера. Также в ней хранятся их данные: редактируемые документы, изображения на экране, воспроизводимая в данный момент музыка. Наконец, там же размещаются инструкции оперативной системы – Windows, macOS или какой-либо иной, – которая работает за кулисами и позволяет вам запускать несколько приложений одновременно. Мы поговорим о приложениях и оперативных системах в главе 6.
Оперативную память также называют памятью с произвольным доступом (англ, random access memory, или RAM, а в русской терминологии – ОЗУ, оперативное запоминающее устройство), потому что процессор может одинаково быстро достать информацию из любой части устройства. Если немного упростить, то доступ к ячейкам памяти в случайном порядке не приводит к потере скорости. Хотя видеокассеты давно ушли в прошлое, возможно, вы помните, что если вам хотелось посмотреть конец фильма, то приходилось ускоренно перематывать вперед (плавно!) от начала. Такой доступ называется последовательным.
Как правило, ОЗУ энергозависимо, то есть содержимое памяти исчезает при отключении электричества, и вся активная в данный момент информация теряется. Вот почему разумно сохранять свою работу почаще, особенно на настольном компьютере, чтобы не навлечь на себя истинное бедствие, случайно выдернув шнур питания.
Ваш компьютер имеет фиксированный объем оперативной памяти. Ее емкость измеряется в байтах. Один байт — это минимальный объем памяти, которого достаточно для хранения одного символа вроде W или или короткого числа, такого как 42, или фрагмента более крупного значения. В главе 2 будет показано, в какой форме информация хранится в памяти и других частях компьютера, поскольку это один из фундаментальных вопросов вычислительной техники. Но пока вы можете представить себе память как громадный набор одинаковых маленьких коробочек, пронумерованных до нескольких миллиардов. Каждая из них содержит в себе небольшое количество информации.
Что такое емкость? В ноутбуке, на котором я сейчас печатаю, емкость оперативной памяти составляет 8 миллиардов байт, или 8 гигабайт (8 Гб), чего, возможно, слишком мало. Причина в том, что для ускорения вычислений обычно требуется увеличение объема памяти, поскольку ее никогда не хватает на все программы, которые одновременно хотят ее использовать, и требуется время, чтобы извлечь из нее части неактивной программы, освобождая место для чего-то нового. Если вы хотите, чтобы ваш компьютер работал быстрее, то, скорее всего, лучший вариант – купить больше «оперативки». По крайней мере, если предусмотрена возможность расширения памяти, что бывает не всегда.
1.1.3. Внешняя память
Оперативная память обладает большой, но ограниченной емкостью для хранения информации, и ее содержимое исчезает при отключении питания. Внешняя память не теряет размещенные в ней данные, даже когда электричество отключается. Существует два основных вида внешней памяти: более старый – жесткий (магнитный) диск, или накопитель на жестком диске (HDD), и более современное устройство – твердотельный диск, или SSD. Оба вида накопителей гораздо объемнее, чем оперативная память, и они не энергозависимы, то есть информация на любом диске не сотрется, даже если пропадет электропитание. Данные, инструкции и все остальное содержатся во внешней памяти в течение длительного времени и лишь ненадолго переносятся в оперативную память.
Жесткий диск хранит информацию, задавая направление намагничивания крохотных участков магнитного материала на вращающихся металлических поверхностях. Данные содержатся на концентрических дорожках, которые записываются и считываются датчиком, перемещающимся с дорожки на дорожку. Жужжание и щелчки, которые вы слышите при работе старого компьютера, издает диск, перемещая датчик в нужные места на поверхности. Поверхность диска вращается с огромной скоростью, как минимум 5400 оборотов в минуту. На изображении стандартного диска ноутбука (рис. 1.3) показаны поверхность и датчик. Диаметр тарелки жесткого диска составляет 6,35 см (2,5 дюйма).
Хранение одного байта на диске примерно в 100 раз дешевле, чем на ОЗУ, но при этом доступ к информации происходит медленнее. Дисководу требуется примерно 10 миллисекунд, чтобы добраться до определенной дорожки на поверхности, и скорость передачи данных составляет около 100 Мб/с.
Рис. 1.3. Внутренняя структура жесткого диска
Десять лет назад почти во всех ноутбуках стояли магнитные жесткие диски. Сегодня почти все снабжены SSD-накопителями, которые используют не вращающееся оборудование, а флеш-память. Она энергонезависима, поскольку информация содержится в ее схемах в виде электрических зарядов. Даже при отключении питания они не исчезают из индивидуальных элементов схемы. Сохраненные заряды можно считывать для определения того, какое значение они отображают, а также стирать и перезаписывать с новым значением. Флеш-память работает быстрее, легче, надежнее, не выходит из строя при падении и требует меньше энергии, чем обычный дисковый накопитель, поэтому ее применяют в сотовых телефонах, камерах и других устройствах. Цена за байт пока что выше, чем у HDD, но снижается. Преимущества SSD-накопителей настолько убедительны, что они в значительной степени вытеснили механические диски в ноутбуках.
Обычный SSD для ноутбука вмещает от 250 до 500 Гб. Различные внешние диски, которые можно подключить к разъему USB, имеют емкость до нескольких терабайт (Тб), и они по-прежнему основываются на вращающихся механизмах. «Тера» означает триллион, или 1012, и это еще одно обозначение, с которым вы будете часто сталкиваться.
Кстати, насколько велик терабайт или гигабайт? Один байт хранит один буквенный знак стандартного английского алфавита. Роман «Гордость и предубеждение» объемом около 250 бумажных страниц содержит 680 000 знаков, и тогда 1 Гб может хранить около 1500 копий этого произведения21. Впрочем, мне бы вполне хватило одной копии, а на свободное место я записал бы какую-нибудь музыку. Одна минута музыки в формате MP3 занимает около 1 Мб. Значит, если я запишу МР3-версию одного из моих любимых звуковых компакт-дисков The Jane Austen Songbook объемом около 60 Мб, то в одном гигабайте памяти хватит места еще для 15 часов музыки. Сериал «Гордость и предубеждение» 1995 года (производство ВВС, в главных ролях Дженнифер Эль и Колин Фёрт) на двух DVD занимает менее 10 Гб, поэтому я могу сохранить на одном терабайте его и еще сотню подобных фильмов.
На примере дискового накопителя очень удобно объяснять различия между логической структурой и физической реализацией. Программы вроде File Explorer («Проводник») для Windows или Finder для macOS отображают содержимое диска в виде иерархии папок и файлов. Но хранить сами данные можно на вращающемся оборудовании, в интегральных схемах без подвижных частей или на чем-то совершенно другом. Тип накопителя на компьютере не имеет значения. Аппаратное обеспечение в виде диска и программное обеспечение в рамках ОС, называемое файловой системой, работают вместе, создавая организационную структуру. Мы вернемся к этой теме в главе 6.
Такая логическая организация настолько хорошо подходит людям (или, возможно, мы уже так сильно к ней привыкли), что ее применяют и в других устройствах, даже если там она реализуется совершенно иными аппаратными средствами. Например, программа, которая обеспечивает доступ к информации на CD или DVD, создает впечатление, что данные хранятся в файловой иерархии, независимо от того, как они располагаются физически. То же самое относится к USB-устройствам, камерам и другим гаджетам, где используются карты памяти. И даже почтенная дискета, ныне полностью вышедшая из употребления, на логическом уровне устроена аналогично. Это хороший пример абстракции, встречающейся повсюду в компьютерных системах. Согласно этой идее, детали физической реализации нужно скрывать. В случае файловой системы, независимо от того, какие технологии задействованы, данные представляются пользователю в виде иерархии файлов и папок.
1.1.4. Другие устройства
Существует множество прочих устройств со специальными функциями. Мышки, клавиатуры, сенсорные экраны, микрофоны, камеры и сканеры дают людям возможность вводить данные. Дисплеи, принтеры и динамики выводят информацию. Сетевые компоненты вроде Wi-Fi и Bluetooth обеспечивают взаимодействие с другими вычислительными устройствами. Различные вспомогательные технологии содействуют пользователям со зрительными, слуховыми или другими ограничениями.
На схеме архитектуры (рис. 1.2) все такие устройства и системы соединены одним набором проводов, называемых шиной, – данный термин заимствован из электротехники. На самом деле внутри компьютера находится много шин, свойства которых зависят от их функций: короткие, быстрые и дорогие соединяют память с процессором, а длинные и медленные, но дешевые, ведут к разъему для наушников. Некоторые из них имеют выход наружу – например, вездесущая универсальная последовательная шина, или USB, которая используется для подключения устройств к компьютеру.
Сейчас мы не станем уделять много времени другим приспособлениям, но иногда я буду их упоминать в том или ином контексте. А пока попробуйте вспомнить все устройства, которые сопутствуют вашему вычислительному устройству или подключены к нему: мыши, клавиатуры, тачпады и сенсорные экраны, дисплеи, принтеры, сканеры, игровые контроллеры, наушники, динамики, микрофоны, камеры, телефоны, датчики отпечатков пальцев, каналы связи с другими компьютерами. Список можно продолжать. Все они эволюционировали так же, как процессор, память и дисковые накопители: быстро менялись физические свойства, обычно в сторону расширения возможностей и увеличения компактности при снижающейся стоимости.
Также стоит отметить, что все эти устройства объединяются. Сотовые телефоны теперь служат часами, калькуляторами, фото- и видеокамерами, проигрывателями музыки и видео, игровыми приставками, считывателями штрих-кодов, навигаторами и даже фонариками.
Смартфон имеет ту же абстрактную архитектуру, что и ноутбук, хотя и с существенными отличиями в реализации из-за ограничений по размеру и мощности. В телефонах нет жестких дисков, которые показаны на рис. 1.3, но у них есть флеш-память для хранения информации (списков контактов, изображений, приложений и тому подобного), когда телефон выключен. К ним можно присоединить не так много внешних устройств, но в них обычно есть гнездо для наушников и USB-разъем. Крошечные камеры настолько дешевы, что большинство телефонов имеют по одной с каждой стороны. Планшеты, такие как iPad и его конкуренты, занимают другую нишу в пространстве возможностей, но и они – вычислительные машины с такой же общей архитектурой и схожими компонентами.
1.2. Механическая конструкция
На занятиях я раздаю всевозможные образцы «железа» (найденные за десятки лет лазания по помойкам) со снятыми кожухами. В информатике столь много абстрактного, что бывает довольно полезно увидеть и потрогать диски, чип с интегральными схемами, пластины, в которые они встроены, и т. д. Также интересно посмотреть на эволюцию некоторых устройств. Например, современный жесткий диск ноутбука внешне неотличим от своих предшественников, выпущенных десять или двадцать лет назад. Емкость более нового диска увеличилась в 10-100 раз, но эти улучшения невидимы. То же самое относится и к картам памяти (SD), которые мы используем, например, в камерах. Их современные корпуса идентичны тем, что применялись несколько лет назад (рис. 1.4), но емкость карт намного выше, а цена ниже.
Так, изображенная здесь карта на 32 Гб стоит меньше 10 долларов.
Рис. 1.4. SD-карты весьма разной емкости
С другой стороны, в печатных платах, на которых размещены компоненты компьютера, наблюдается явный прогресс. Сегодня компонентов меньше, потому что внутри находится больше микросхем, проводка тоньше, а соединительные контакты («штырьки») более многочисленны и расположены гораздо плотнее, чем 20 лет назад.
Рис. 1.5. Печатная плата для ПК, выпущена ок. 1998 года.
Размер 12 × 7,5 дюймов (30 × 19 см)
На рис. 1.5 показана печатная плата для настольного ПК конца 1990-х годов. Такие компоненты, как процессор и память, смонтированы на плате (или вставлены в нее) и соединены проводами, проложенными на другой стороне. На рис. 1.6 показана часть оборотной стороны той же печатной платы, где параллельно идущие печатные провода – это шины разного типа.
Рис. 1.6. Шины на печатной плате
Электронные схемы в компьютерах формируются из нескольких базовых элементов, представленных в большом количестве. Наиболее важный из них – логический вентиль, который вычисляет одно выходное значение на основе одного или двух входных. Он использует входные сигналы (напряжение или силу тока) для управления выходным сигналом аналогичного вида. При наличии достаточного количества таких вентилей, соединенных правильным образом, возможно производить вычисления любого типа. Чарльз Петцольд в своей книге «Код»22 удачно знакомит нас с этим процессом, а на многочисленных веб-сайтах представлены графические анимации, которые показывают, как логические схемы выполняют арифметические и другие вычисления.
Основным элементом схемы служит транзистор — устройство, изобретенное в Лабораториях Белла[12] в 1947 году учеными Джоном Бардином, Уолтером Браттейном и Уильямом Шокли, которые в 1956 году получили за это Нобелевскую премию по физике. В компьютере транзистор играет роль переключателя, который может включать и выключать ток под воздействием напряжения. На таком простом основании можно построить сколь угодно сложные системы.
Логические вентили раньше собирались из дискретных компонентов: вакуумных (электронно-лучевых) трубок размером с электрическую лампочку в ENIAC и отдельных транзисторов величиной примерно с карандашный ластик в компьютере 1960-х годов. На рис. 1.7 показаны копия первого транзистора (слева), вакуумная трубка и процессор в корпусе. Сама схема находится в центре и занимает площадь около 1 кв. см, а электронно-лучевая трубка имеет длину около 4 дюймов (10 см). Современный процессор такого размера содержал бы в себе несколько миллиардов транзисторов.
Логические вентили создаются на интегральных схемах, или ИС, которые часто называют микросхемами или микрочипами.
Интегральная схема содержит все компоненты и проводку электронной схемы на одной плоской поверхности (тонкий лист полупроводника), которая создается путем сложной последовательности оптических и химических процессов. В итоге получается схема без дискретных элементов и проводов обычного вида. Такие ИС намного компактнее и надежнее, чем схемы с дискретными компонентами. Микросхемы массово изготавливаются на круглых кристаллических пластинах (платах) диаметром 12 дюймов (30 см): из них затем нарезаются отдельные микросхемы, каждую из которых помещают в свой корпус. Обычная микросхема (рис. 1.7, внизу справа) монтируется в больший по размеру корпус с 10-100 штырьками, соединяющими ее с остальной системой. На рис. 1.8 показана интегральная схема в корпусе, где сам процессор находится в центре, и его площадь составляет около 1 кв. см.
Рис. 1.7. Вакуумная трубка, первый транзистор, микросхема процессора в корпусе
Рис. 1.8. Чип интегральной схемы
Из-за того, что интегральные схемы основаны на кремнии, регион в Калифорнии к югу от Сан-Франциско, где впервые возник бизнес по производству этих схем, стали называть Кремниевой долиной. Сейчас так условно называют все высокотехнологичные предприятия в этом регионе, а это название стало вдохновляющим для десятка подражателей, таких как Кремниевая аллея (Silicon Alley) в Нью-Йорке и Кремниевый торфяник (Silicon Fen) в Кембридже, Англия.
ИС изобрели примерно в 1958 году, причем открытие независимо друг от друга сделали Роберт Нойс и Джек Килби. Нойс умер в 1990 году, но Килби за свой вклад получил в 2000 году Нобелевскую премию по физике. Хотя интегральные схемы занимают центральное место в цифровых устройствах, другие технологии здесь также используются: магнитное запоминающее устройство для дисков, лазеры для CD и DVD и оптическое волокно для сетей. За последние 50–60 лет все они радикально изменились в размерах, производительности и стоимости.
1.3. Закон Мура
В 1965 году Гордон Мур, который затем станет соучредителем компании Intel и будет работать там генеральным директором на протяжении многих лет, опубликовал короткую статью под названием «Втиснуть больше компонентов в интегральные схемы»23. Экстраполируя очень ограниченное количество данных, Мур заметил, что с усовершенствованием технологий количество транзисторов, которые удавалось встроить в интегральные схемы заданного размера, удваивалось примерно каждый год. Затем, пересмотрев расчеты, он изменил этот показатель на «каждые два года», а другие исследователи говорили о 18 месяцах. Поскольку вычислительную мощность можно грубо определять по количеству транзисторов, то она тоже удваивалась каждые два года, если не быстрее. За 20 лет должно было произойти 10 удвоений, и количество устройств увеличилось бы в 210, то есть примерно в 1000 раз. За 40 лет – в миллион раз или больше.
Такой экспоненциальный рост, ныне известный как закон Мура, продолжается уже почти 60 лет, и поэтому в интегральные схемы сейчас встраивают в миллион раз больше транзисторов, чем в 1965 году. График действия закона Мура, особенно для микросхем процессора, показывает рост количества транзисторов от пары тысяч для ЦПУ Intel 8008 в начале 1970-х годов до миллиарда в ЦПУ недорогих потребительских ноутбуков нашего времени.
Наилучшим образом масштабы схемы характеризует какое-либо отдельное число, обозначающее размер того или иного элемента интегральной схемы – например, ширину провода или активной части транзистора. Этот показатель неуклонно сокращается на протяжении многих лет. В первой (и единственной) интегральной схеме, которую я однажды разрабатывал в 1980 году, величина элементов равнялась 3,5 микрона (3,5 микрометра). В 2021 году для многих ИС минимальный размер элементов составлял 7 нанометров, или 7 миллиардных долей метра, а следующим шагом будет 5 нанометров. «Милли» – это одна тысячная доля, или 10-3; «микро» – одна миллионная, или 10-6; «нано» – одна миллиардная, или 10-9, а нанометр сокращенно обозначается как нм. Для сравнения: толщина листа бумаги или человеческого волоса составляет 100 микрометров, или 1/10 миллиметра.
Если ширина элементов в интегральной схеме уменьшится в 1000 раз, то количество компонентов на единицу площади увеличится в квадратной зависимости, т. е. в миллион раз. Соответственно, там, где по старому производственному процессу размещали тысячу транзисторов, теперь хватит места для миллиарда.
Разработка и изготовление интегральных схем – чрезвычайно сложный и высококонкурентный бизнес. Кроме того, производственные операции («сборочные линии») весьма дороги: новый завод может стоить миллиарды долларов. Компания, которая не успевает за финансовым и технологическим развитием, будет уступать своим соперникам на рынке, а страна, у которой нет таких ресурсов, попадет в технологическую зависимость от других государств, что потенциально может стать серьезной проблемой стратегического уровня.
Закон Мура – это не закон природы, а руководящий принцип, который применяли в индустрии полупроводников для постановки целей. В какой-то момент он перестанет действовать. В прошлом часто предсказывали, что предел миниатюризации достигнут, но до сих пор находятся способы его преодолеть. Однако мы уже приближаемся к тому, что в отдельных схемах будет находиться лишь несколько атомов, а этого слишком мало, чтобы управлять ими.
Скорость процессоров возрастает не особенно – и уж точно больше не удваивается каждые два года, – отчасти потому, что быстрые микросхемы выделяют слишком много тепла. Но объем памяти по-прежнему увеличивается. Так или иначе, процессоры могут использовать больше транзисторов, если поместить два или более ядер ЦПУ на одной микросхеме. Кроме того, в системах зачастую применяются несколько процессорных ИС. Происходит рост количества ядер, а не скорости их работы.
Интересно будет сравнить современный персональный компьютер и первый ПК от IBM, который выпустили 1981 году. Процессор того ПК работал с тактовой частотой 4,77 МГц, то есть почти в 500 раз меньше, чем у процессорного ядра 2,2 ГГц, к тому же у такого ЦПУ обычно два или четыре ядра. Компьютер от IBM располагал 64 килобайтами оперативной памяти, а у современных компьютеров ее в 125 000 раз больше – 8 Гб. («Кило» – это одна тысяча, поэтому сокращение для килобайта – Кб.) Объем памяти гибких дисков для первого ПК составлял не более 750 Кб, а жесткого диска он не имел, тогда как в современных ноутбуках внешней памяти уже почти в миллион раз больше. Первый ПК мог выводить на свой 11-дюймовый монитор только 24 ряда по 80 зеленых символов на черном фоне, а большую часть этой книги я написал, сидя перед 24-дюймовым экраном с 16 миллионами цветов. Компьютер с 64 Кб памяти и одним гибким диском объемом 160 Кб стоил 3000 долларов в 1981 году, что сейчас с учетом инфляции эквивалентно 10 000 долларов, а ноутбук с процессором 2 ГГц, 8 Гб оперативной памяти и SSD-диском на 256 Гб сегодня продается за пару сотен.
1.4. Краткие выводы
Компьютерное оборудование, то есть все виды цифрового аппаратного обеспечения, экспоненциально совершенствуется на протяжении 60 лет, начиная с изобретения интегральных схем. Термин «экспоненциально» часто понимают и употребляют неверно, но в данном случае он точно отражает ситуацию: за каждый фиксированный период времени схемы становились компактнее, дешевле или производительнее на определенный процент. Простейший пример – закон Мура: примерно каждые 18 месяцев количество элементов, помещавшихся на интегральную схему заданного размера, почти удваивается. Этот огромный рост возможностей послужил основой цифровой революции, которая так сильно изменила нашу жизнь.
Скачок возможностей и производительности также изменил наши представления о том, что такое информатика и компьютеры. Первые вычислительные машины рассматривались как сверхбыстрые арифмометры, пригодные для решения задач баллистики, проектирования оружия и других научных и инженерных расчетов. Потом они пригодились в обработке данных для бизнеса: они составляли платежные ведомости, формировали счета и так далее. Когда цена накопителей уменьшилась, ЭВМ начали управлять базами данных, где хранилась информация для подготовки тех самых ведомостей и счетов. С появлением ПК компьютеры стали настолько дешевыми, что их смог позволить себе каждый, и тогда они стали использоваться для обработки персональных данных, ведения расчетов по домашним финансам и операций с текстами (например, для написания писем). Вскоре после этого их начали применять в развлекательных целях вроде воспроизведения музыки с компакт-дисков, но в особенности для игр. А когда возник интернет, наши компьютеры заодно превратились и в устройства для общения, на которых работают электронная почта, Всемирная паутина и социальные сети.