Любой учебник информатики начинается с перечисления поколений вычислительной техники. ЭВМ первого поколения были основаны на электронных лампах. Их сменили вычислительные машины второго поколения, сделанные из транзисторов. Интегральные микросхемы позволили построить компьютеры третьего, а микропроцессоры – четвёртого поколения. На этом компьютерная история неожиданно обрывается, а мы зависаем в странной атемпоральности, где ничего не происходит. Прошло три с лишним десятилетия, но пятое поколение так и не наступило.

Это особенно странно на фоне того, что происходит в последнее время. Положение вещей в компьютерной индустрии меняется быстрее и значительнее, чем когда-либо в прошлом. Привычные способы классификации вычислительных устройств постепенно утрачивают связь с реальностью. Даже незыблемость позиций Microsoft или Intel начала вызывать сомнения.

У меня есть гипотеза, объясняющая, что случилось. Тридцать лет четвёртого поколения усыпили нашу бдительность. В действительности мы стоим на пороге пятого поколения и не замечаем этого – отвыкли.

Самый очевидный признак смены поколений – иная элементная база – подвёл нас. В этот раз элементная база не изменится. Впрочем, она никогда не была единственным признаком, отличающим одно поколение от другого. Есть и другие.

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

surface

Безопасность

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

Сейчас подавляющее большинство компьютеров использует только один человек, причём, как правило, без помощи сисадмина. Главная опасность для компьютера – это не люди, а программы. Устанавливая приложения, пользователь может лишь надеяться, что они делают именно то, что нужно. А если нет? Любая программа имеет доступ ко всем данным пользователя и к любым аппаратным ресурсам. Она может делать с компьютером почти всё, что угодно. Ограничить её практически невозможно.

Традиционные методы усиления безопасности, перенесённые на несвойственную им почву, отдают некоторым безумием. Взять хотя бы требование вводить администраторский пароль перед выполнением потенциально опасных действий – это же раздвоение личности! И не очень удачное: некомпетентный пользователь не становится умнее, если заставить его ввести пароль администратора. Авторы вредоносных программ это прекрасно знают и используют.

Чем будет отличаться модель безопасности, придуманная с учётом того, как используют компьютеры сейчас, а не сорок лет назад? Во-первых, она будет основана на понимании, что пользователь один, а сисадмины встречаются только в сказках (и крупных корпорациях). Во-вторых, любое приложение, включая дружественное, должно считаться потенциальным врагом. То, что пользователь его установил, не значит, что приложению можно доверить любые произвольные данные или аппаратные ресурсы.

Именно на этом строится защита безопасности в мобильных устройствах, использующих Android и iOS. Приложения запускаются в изолированных “песочницах” и неспособны повлиять на то, что находится за их пределами. Каждый чих требует отдельного разрешения (в Android разрешения выдаются при установке программы, в iOS запрашиваются по мере её работы, но суть от этого не меняется).

samsung

Распределение ресурсов

Как и устаревшая модель безопасности, принятый порядок распределения ресурсов – это ещё один реликт семидесятых годов. Запущенные процессы делят процессорные циклы, доступ к сети и прочие возможности компьютера так, будто между ними не больше разницы, чем между пользователями, которые сидят за терминалами ЕС ЭВМ. А это, как мы понимаем, давно не так.

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

Пример такого подхода – на этот раз не по возвышенным идеологическим соображениям, а вынужденно – это опять-таки мобильные устройства последних лет. Им поневоле приходится беречь процессорные циклы: мало того, что их едва хватает на жизнь, так они ещё и тратят батарею. Виртуальная память с бесконечным свопом – тоже непозволительная роскошь для смартфонов и планшетов.

Выход, который нашли разработчики Android, iOS и Windows RT, известен. Запуск и выключение программ теперь контролирует сама система. Неактивные приложения могут быть выгружены из памяти в любой момент, чтобы освободить ресурсы для той задачи, с которой работает пользователь. Разработчики должны сами позаботиться о том, чтобы пользователь ничего не заметил, и использовать для работы в фоне специальные программные интерфейсы.

Хотя результат далёк от идеала, он всё же впечатляет. Мобильные устройства ухитряются реагировать на команды пользователя (или хотя бы создавать иллюзию реакции) шустрее, чем многократно более мощные персональные компьютеры.

ipad

Работа с данными

В основе любой современной мобильной платформы лежит одна из операционных систем, которая используется на обычных персональных компьютерах, – Linux, BSD или даже Windows. Разница – в дополнительном уровне абстракции, снимающем с пользователя заботы о частностях.

Одна из таких частностей – это файлы. Строить многоуровневую иерархию каталогов и раскладывать по ним документы – это задача, которая была по силам инженерам или учёным, работавшим с вычислительными машинами в прошлом. Однако она превышает и потребности, и возможности сотен миллионов неспециалистов, использующих компьютеры теперь. Это подтвердит каждый, кто видел ПК, хотя бы пару месяцев истязавшийся далёким от техники человеком.

В недрах iOS или Android по-прежнему есть файлы, однако они скрыты от пользователя. Доступ и обмен ими отдан на откуп приложениям. Текстовый редактор найдёт, покажет и откроет текстовые документы, которые редактировались с его помощью, а не отправит пользователя в путешествие по всему диску. Музыкальный плеер продемонстрирует фонотеку и позаботится о том, чтобы музыка не оказалась перемешана с фильмами и книгами, – для них есть свои программы. Немного жаль лишаться иерархии каталогов, но приличный поиск и богатые метаданные её неплохо заменяют.

Приятный побочный эффект подобного подхода – исчезновение раздражающего понятия “несохранённый файл”. Заставлять пользователя вручную сохранять данные – ещё один атавизм, сохранившийся с тех грустных времён, когда диски были маленькими и очень медленными. Сейчас большинства типов документов можно сохранять и восстанавливать за долю секунды – и не просто так, а во всех возможных версиях. Так почему бы не делать это?

rasppi

Новое железо

Аппаратная основа компьютеров тоже меняется, и хотя эти изменения кажутся менее существенными, для порядка их тоже стоит перечислить.

Главное отличие, из которого вытекает всё остальное, – изменение приоритетов. Если в прошлом главным показателем была производительность, то теперь фокус переместился на энергопотребление.

В Intel ухитрились проворонить момент, когда это произошло, и до сих пор за это расплачиваются. Инициативу перехватила британская компания ARM, разрабатывающая схемы процессоров, которые могут дорабатывать и использовать другие производители (тут прослеживается занятная аналогия с Google, который эксплуатирует похожую модель при разработке Android). Процессоры ARM с самого начала стоили многократно дешевле, чем процессоры Intel, и при этом потребляли меньше энергии. Для того чтобы соперничать с процессорами Intel на равных, им недоставало производительности.

Нарастить производительность ARM оказалось гораздо проще, чем понизить энергопотребление x86. Для решения этой задачи в Intel было создано специальное подразделение, которое получило небывало широкие полномочия, но всё не впрок. Его продукт – платформа Medfield – пока не оказал заметного влияния на рынок, а ARM тем временем полностью занял гигантский рынок планшетов и смартфонов и уже покушается на ноутбуки.

Параллельно происходит медленный, но неотвратимый переход с жёстких дисков на твердотельные накопители. Его несколько тормозит относительно высокая стоимость флэш, но это ненадолго. Флэш дешевеет на глазах, и через пару лет вопрос цены будет окончательно снят. Третий процесс, вписывающийся в тот же ряд, – постепенная гибель физических носителей данных. DVD, вопреки ожиданиям, заменил интернет, а не более ёмкие диски Blu-Ray.

Популярность компьютерных платформ: 1975-2011
Взлёты и падения компьютерных платформ: 1975-2011

Всего лишь мобильные устройства?

Как можно говорить о новом поколении компьютеров, если в примерах фигурируют преимущественно мобильные устройства? Или автор имеет в виду, что компьютеры следующего поколения – это ограниченные планшеты наподобие iPad, лишённые клавиатуры и мыши и непригодные для “серьёзной работы”?

Разумеется, нет. Ограничения мобильных устройств стали идеальной питательной средой для развития этих тенденций, но одними айпадами дело не ограничится. Наработки, впервые испытанные в iOS и Android, в какой-то форме проникнут и в более традиционные ПК. Собственно говоря, этот процесс уже начался: элементы перечисленных идей появляются в OS X и некоторых вариантах Linux, не говоря уже о Windows 8.

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