282 000 книг, 71 000 авторов


Электронная библиотека » Брайан Керниган » » онлайн чтение - страница 4


  • Текст добавлен: 17 марта 2025, 15:43


Текущая страница: 4 (всего у книги 34 страниц) [доступный отрывок для чтения: 8 страниц]

Шрифт:
- 100% +
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]12
  Лаборатории Белла (Bell Labs) – финско-американская корпорация, крупный исследовательский центр в области телекоммуникаций, электронных и компьютерных систем. Штаб-квартира расположена в штате Нью-Джерси (США).


[Закрыть]
в 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 месяцев количество элементов, помещавшихся на интегральную схему заданного размера, почти удваивается. Этот огромный рост возможностей послужил основой цифровой революции, которая так сильно изменила нашу жизнь.

Скачок возможностей и производительности также изменил наши представления о том, что такое информатика и компьютеры. Первые вычислительные машины рассматривались как сверхбыстрые арифмометры, пригодные для решения задач баллистики, проектирования оружия и других научных и инженерных расчетов. Потом они пригодились в обработке данных для бизнеса: они составляли платежные ведомости, формировали счета и так далее. Когда цена накопителей уменьшилась, ЭВМ начали управлять базами данных, где хранилась информация для подготовки тех самых ведомостей и счетов. С появлением ПК компьютеры стали настолько дешевыми, что их смог позволить себе каждый, и тогда они стали использоваться для обработки персональных данных, ведения расчетов по домашним финансам и операций с текстами (например, для написания писем). Вскоре после этого их начали применять в развлекательных целях вроде воспроизведения музыки с компакт-дисков, но в особенности для игр. А когда возник интернет, наши компьютеры заодно превратились и в устройства для общения, на которых работают электронная почта, Всемирная паутина и социальные сети.

Базовая архитектура компьютера – его составные части, их функции и то, как они соединяются друг с другом, – не менялась с начала 1940-х годов. Если бы фон Нейман явился к нам и изучил один из современных компьютеров, то, полагаю, его ошеломили бы возможности и способы применения современного оборудования, но логическая структура показалась бы ему совершенно привычной.

Раньше компьютеры имели огромные размеры и занимали большие комнаты с кондиционерами, но затем постепенно уменьшились. Современные ноутбуки настолько малы, насколько это возможно с точки зрения удобства пользователя. Вычислительные устройства внутри наших телефонов довольно мощные, а сами телефоны настолько компактны, насколько это разумно. ЭВМ внутри наших гаджетов тоже крохотные. На другом конце диапазона расположены «компьютеры», которые находятся где-то в центрах обработки и хранения данных (возвращаемся к комнатам с кондиционерами), однако мы регулярно имеем дело и с ними. Мы совершаем покупки, запускаем поиск, беседуем с друзьями – и все благодаря этим вычислительным машинам, причем мы даже не думаем о них как о компьютерах, не говоря уже о том, чтобы интересоваться их местоположением. Они просто где-то «там», в облачной среде.

Одно из величайших открытий информатики XX века заключается в том, что логические или функциональные свойства и современных цифровых компьютеров, и первых ПК, и их более объемных и менее мощных предшественников, и вездесущих телефонов, и устройств, зависящих от компьютеров, и сервисов облачных вычислений, по сути одинаковы. Если не брать в расчет показатели вроде скорости и емкости накопителей, все эти ЭВМ проводят одни и те же вычисления. Следовательно, усовершенствования в аппаратном обеспечении вносят огромный практический вклад в тех областях, где применимы такие расчеты, но, что удивительно, сами по себе не оказывают серьезного влияния на то, что в принципе можно «обсчитывать». Мы поговорим об этом более подробно в главе 3.

2. Биты, байты и формат записи информации

Если используется основание 2, то результирующие числа можно назвать двоичными цифрами или, более кратко, битами[13]13
  В английском языке термин «биты» (bits во мн. ч.) образован слиянием слогов из слов bmary digits («двоичные цифры»). Также bits означает «маленькие кусочки».


[Закрыть]
это слово предложил использовать Дж. У Тьюки.

Клод Шеннон.
Математическая теория связи[14]14
  Shannon С. Е. A Mathematical Theory of Communication U Bell System Technical Journal: журнал. – 1948. – Vol. 27. – P. 379–423.


[Закрыть]
, 1948

В этой главе мы обсудим три фундаментальные концепции того, как информация представлена в вычислительных устройствах.

Во-первых, компьютеры – это машины для обработки цифровых данных. Они хранят и обрабатывают информацию, которая поступает дискретными порциями и принимает дискретные значения (по сути, просто цифры). А вот аналоговая информация подразумевает плавное изменение значений.

Во-вторых, компьютеры представляют информацию в битах. Бит – это двоичная цифра, то есть число, равное 0 или 1. Внутри вычислительной машины всё записывается в виде битов, а не привычных для нас десятичных чисел.

В-третьих, группы битов представляют более крупные объекты. Числа, буквы, слова, названия, звуки, изображения, фильмы и инструкции, из которых составлены программы для их обработки, – все это представлено в виде групп битов.

Вы можете спокойно пропустить математические выкладки в этой главе, но саму идею понять важно.

2.1. Различия аналоговой и цифровой форм

Давайте определим, чем аналоговое отличается от цифрового. Слово «аналог» имеет тот же корень, что и «аналогичный», и поэтому оно подразумевает, что значения изменяются плавно по мере изменения чего-то другого. Многое из того, что окружает нас в повседневности, имеет аналоговую природу – например, водопроводный кран или руль автомобиля. Если вы хотите немного повернуть машину, то немного поворачиваете руль и вообще можете произвести сколь угодно малую регулировку. А теперь посмотрите на поворотник: его можно либо включить, либо выключить, никакого промежуточного положения. В аналоговом устройстве значение (угол поворота машины) меняется плавно и непрерывно, в определенной пропорции к изменению чего-либо (угла поворота руля). Здесь нет четко выраженных шагов: небольшие изменения одного значения приводят к небольшим изменениям в другом.

Цифровые системы имеют дело с дискретными значениями, поэтому в них используют только фиксированное количество возможных значений. Сигнал поворота либо выключен, либо включен. Если включен, то либо левый, либо правый. Небольшое изменение чего-то приводит или к тому, что больше ничего не меняется, или к тому, что нечто иное меняется резко, переходя от одного дискретного значения к другому.

Представьте себе часы. В аналоговых часах есть часовая, минутная и секундная стрелка, которая проходит один круг в минуту. Современными часами управляет внутренняя цифровая схема, так что часовая и минутная стрелки плавно меняют положение с течением времени. А вот цифровые часы или сотовый телефон отображают время в виде цифр. Числа на дисплее меняются каждую секунду, каждую минуту появляется новое значение минуты, но никогда не бывает долей секунды.

Представьте себе спидометр в автомобиле. У меня в машине традиционный аналоговый спидометр, стрелка которого перемещается размеренно и прямо пропорционально скорости движения. Переходы от одного значения скорости к другому совершаются плавно и без прерываний. Но в машине есть также цифровой дисплей, который показывает скорость с точностью до мили (или километра) в час. Если вы начнете двигаться немного быстрее, то число на нем поменяется с 65 на 66. Если поедете чуть медленнее – вернется к 65. Но он никогда не отобразит значение 65,5.

Представьте себе термометр. Те из них, что со столбиком красной жидкости (обычно подкрашенного спирта) или ртути, – аналоговые. Жидкость в них расширяется или сжимается прямо пропорционально изменению температуры, поэтому небольшое изменение температуры вызовет такое же небольшое изменение высоты столбика. А вот устройство на стене здания, высвечивающее «37°», – цифровое. У него числовой дисплей, который будет отображать 37 градусов при любой температуре между З6½ и 37½.

Это может привести к курьезным ситуациям. Год назад я ехал по шоссе в США на расстоянии приема радиосигнала из Канады, где используется метрическая система, и слушал радио. Диктор, стараясь угодить всей своей аудитории, сказал: «За последний час температура по Фаренгейту повысилась на один градус, а температура по Цельсию не изменилась».

Зачем тогда пользоваться цифровым форматом, а не аналоговым? В конце концов, наш мир аналоговый, и нам легче считывать взглядом показания аналоговых устройств, таких как часы и спидометры. Тем не менее современные технологии в большинстве своем – цифровые, и я рассматриваю в книге многие аспекты этого. Данные внешнего мира (звуки, изображения, движения, температура и прочее) при вводе как можно скорее преобразуются в цифровую форму, а при выводе – как можно позднее – обратно в аналоговую форму. Причина в том, что компьютерам легче взаимодействовать с цифровой информацией. Ее можно сохранять, передавать и обрабатывать различными способами независимо от источника происхождения. Как мы увидим в главе 8, цифровую информацию можно сжать, исключив избыточные или неважные данные. Ее можно зашифровать для обеспечения безопасности и конфиденциальности, объединить с другими данными, точно скопировать, отправить по интернету в любую точку мира и сохранить на бесконечно разнообразных устройствах. С аналоговой информацией большую часть этих действий сложно или даже невозможно осуществить.

Цифровые системы обладают еще одним преимуществом перед аналоговыми: их гораздо легче расширять. Например, секундомер на моих часах способен засекать время с точностью до сотых долей секунды, а вот добавить такую возможность аналоговым часам было бы непросто. С другой стороны, у аналоговых систем тоже есть преимущества: старые носители информации вроде глиняных табличек, камней с резьбой, пергамента, бумаги и фотопленки выдержали испытание временем, и еще неизвестно, получится ли это у цифровых форм.


Страницы книги >> Предыдущая | 1 2 3 4 5 6 7 8 | Следующая
  • 3.3 Оценок: 3


Популярные книги за неделю


Рекомендации