Архивы: по дате | по разделам | по авторам

Лонгострой

Архив
автор : Владимир Гуриев   09.06.2005

Скачивая из Сети последний билд Longhorn, мы наивно надеялись, что его детальное изучение поможет нам составить представление о грядущей клиентской ОС от Microsoft, но не тут-то было.

Скачивая из Сети последний билд Longhorn, мы наивно надеялись, что его детальное изучение поможет нам составить представление о грядущей клиентской ОС от Microsoft, но не тут-то было. Новая пре-бета-версия оказалась столь бедна функционально, что воссоздать по ее образу конечный продукт смог бы, наверное, лишь реконструктор масштабов Герасимова. Для простых смертных новый Longhorn выглядит как искореженная версия Windows XP, к которой, приличия ради, пририсовали сбоку бантик.

Смена курса произошла осенью минувшего года. Longhorn 4074, выпущенный весной 2004-го, не мог похвастать особой стабильностью, однако всяческих фишек и мулек, составляющих основу любого софтверного обзора, в нем было предостаточно. Но уже в августе Microsoft заявила об исключении из будущего релиза «файловой системы» WinFS (в кавычках — потому что это не совсем файловая система), а осенью начала разработку Longhorn с нуля. Точнее, почти с нуля. Прежние разработки на базе кода Windows XP программисты отложили в сторону и начали писать Longhorn заново, на сей раз на базе кода Windows 2003 Service Pack 1. И без того плачевное состояние проекта усугубилось тем, что часть разработчиков временно отвлеклась на работу со вторым сервис-паком для Windows XP. Вот и получилось, что выпущенный в апреле 2005 года Longhorn 5048 аскетичен, как меню заводской столовой, и, пожалуй, единственное развлечение, которое он может предложить пользователю, это сложность установки.

Microsoft запрещает публиковать скриншоты новой ОС. Однако вряд ли
в штаб-квартире корпорации кому-то могло прийти в голову, что экраны Longhorn можно просто перерисовать. Честно говоря, Longhorn по версии Алексея Бондарева мне нравится даже больше оригинального. На первом «скриншоте» — поле для быстрого вызова приложения и обновленное стартовое меню.

Установка

Подозреваю, что нам не очень повезло. Установка Longhorn — дело довольно простое — затянулась на несколько дней и у меня, и у Сергея Леонова. Формально Longhorn нужно немного — главное, чтобы был чистый 6-гигабайтный раздел, отформатированный в NTFS (сам Longhorn форматировать раздел перед установкой пока не умеет). Однако в нашем случае капризную ОС не устраивал даже отдельный физический винчестер — на начальном этапе инсталляции, еще до запроса серийного номера, на экране появлялось сообщение об ошибке, и все нужно было начинать сначала. Это происходило как при попытке установки из-под Windows XP (такой режим официально пока не поддерживается, так что здесь никаких претензий у нас нет), так и при загрузке с DVD. В конце концов, мы решили, что одним упорством ничего не добьешься, и попробовали использовать другую версию образа загрузочного диска, с которой подобных проблем не возникло.

Предполагается, что устанавливаться Longhorn будет быстрее, чем Windows XP, — в среднем 15–20 минут. В моем случае системе потребовалось полтора часа (Pentium 4 1,7 ГГц, 512 Мбайт RAM), однако для альфа-версии это простительно, хотя, конечно, разглядывать черный экран — малоинтересное занятие. Но главное разочарование было впереди.

Longhorn: новое начало

Лучше всего новая версия Longhorn описывается с помощью отрицаний. В ней нет сайдбара (всплывающей функциональной панели с календарем и аналоговыми часами, которая была в прежних версиях). Нет WinFS — эту технологию Microsoft вообще решила не привязывать к новой операционной системе, а выпустить в виде независимого адд-она. Шестая версия IE для Longhorn существенных отличий от шестой версии IE для XP не имеет (что, кстати, обидно, поскольку в бете IE7 уже реализована возможность просмотра нескольких страничек в одном окне, tabbed browsing). Нормальной поддержки русского языка нет. То есть добавить дополнительную раскладку нетрудно, а вот заставить ее работать — это уже проблема, и каких-то общих рецептов не существует (мне помогло неоднократное удаление/добавление раскладки плюс вывод языковой панели на панель задач, однако добиться нормальной поддержки русского в программах, не использующих unicode, все равно не удалось).

В правом углу каждом окна Windows Explorer теперь есть поле ввода для поиска текста (см. рис. 2). Однако сам поиск работает так себе (в частности, на нажатие Enter, когда курсор находится в поле ввода, реакция нулевая). Кроме того, можно вызвать диалоговое окно с визуальным конструктором запросов. Google Desktop все равно кажется удобнее, но сравнивать полуфабрикат с завершенным продуктом, думаю, некорректно.

Помимо поиска, в Longhorn реализована концепция виртуальных списков, куда на основе предопределенных критериев автоматически помещаются новые файлы. Зачатки этой технологии были и в XP (папка «Текущие документы»), но возможностей гибкой настройки не существовало. В Longhorn можно воспользоваться несколькими уже настроенными виртуальными списками (в частности, предусмотрена фильтрация по авторам, по типам файлов, по ключевым словам и т. д.) или создавать свои.

Впрочем, последняя возможность тоже скорее виртуальная. Создать список (в терминологии Longhorn — List, см. рис. 2) можно, а вот настроить его и указать, какие именно файлы должны в нее включаться, — пока нельзя.

Если это все, что осталось в Longhorn от отложенной год назад WinFS, то веселого, честно говоря, мало.

Три кита

В давние времена, когда все, в том числе и Microsoft, верили, что Longhorn будет действительно революционной операционной системой, предполагалось, что Longhorn будет базироваться на трех уникальных технологиях: WinFS, Indigo и Avalon. Из них для конечного пользователя нагляднее всего первая и третья, тогда как Indigo ориентирована в первую очередь на разработчиков.

WinFS (Windows File System или Windows Future Storage — выбирайте любую расшифровку) — это не самостоятельная файловая система, а надстройка над слегка доработанной NTFS, построенная на движке от SQL Server. WinFS расширяет возможности каталогизации и поиска файлов за счет индексации метаданных, которые современные файловые системы просто игнорируют. Пользователь WinFS может работать с несколькими представлениями данных, включая прекрасно известное любому юзеру иерархическое представление (в папки вложены папки, в которые вложены папки, и так далее до бесконечности); представление, основанное на типах файлов (тоже знакомая штука, но в WinFS тип файла можно определять самому); представление, основанное на дополнительных атрибутах (по сути, это аналог виртуальных папок, о которых мы говорили выше); представление, основанное на связях между атрибутами (простейший пример: у нас есть один документ, а мы хотим найти другой документ того же автора или, например, фотографию автора — благодаря установленным связям между этими документами сделать это довольно просто); и представление в виде категорий (представление по ключевым словам).
С Indigo конечный пользователь напрямую не столкнется. Он вообще может о ней ничего не знать, поскольку это расширение .NET FrameWork, предназначенное для обмена данными между приложениями. И, наконец, третья технология — Avalon — является базой для графических интерфейсов Longhorn. Работать с ней напрямую пользователь, конечно, тоже не будет, но поскольку она служит основой для графического представления операционной системы, результаты работы Avalon (и в первую очередь оконного менеджера DWM) будут заметны невооруженным глазом.

Однако самое интересное в том, что ни одна из трех упомянутых технологий больше не является эксклюзивной особенностью Longhorn — бета-версии SDK Indigo и Avalon для Windows XP/2003 уже выпущены, а о том, что подготовить WinFS к релизу Longhorn Microsoft не успеет, стало известно еще в прошлом году. Надстройка над файловой системой появится только в 2007-м, причем не только для Longhorn, но и для Windows XP. Правда, не очень понятно, как это будет реализовано в последнем случае: дело в том, что WinFS нуждается в модифицированной версии NTFS. Таким образом, тем, кто соберется установить WinFS под Windows XP, возможно, придется переформатировать диск или раздел, предназначенный для работы с WinFS (в любом случае, Microsoft не предполагает и не предлагает использовать WinFS на всем жестком диске).

Что же остается на долю Longhorn? Зачем переходить на новую операционную систему, если все ее особенности — пусть и в слегка выхолощенном виде — будут доступны и на Windows XP?

Шашечки

Во-первых, имеет смысл вспомнить о том, что Windows XP с точки зрения пользователя тоже не имела принципиальных отличий от Windows 2000, что не помешало миллионам юзеров потихоньку переползти на более свежую операционную систему. А разрыв между Longhorn и Windows XP значительнее, чем между Windows XP и Windows 2000. По крайней мере, внешне.

В Longhorn будет использована новая графическая подсистема — WGF (Windows Graphics Foundation). На сегодняшний день она представляет собой слегка доработанный вариант DirectX 9.0c, но к выходу релиза разработчики обещают довести WGF до версии 2.0 (что в старой номенклатуре соответствовало бы DirectX 10.0). Но если сегодня DirectX используется, как правило, для мультимедийных или игровых приложений, то интерфейс Aero в Longhorn будет полностью построен на WGF.

WGF, в свою очередь базируется на Longhorn Display Driver Model, одна из ключевых особенностей которой — гибкое управление доступом к ресурсам графического акселератора. Говоря по-русски, теперь нет никаких принципиальных ограничений на запуск сразу нескольких 3D-приложений — лишь бы физических ресурсов хватало. А ресурсов потребуется немало, поскольку 3D-эффекты для Longhorn станут нормой жизни. И вероятнее всего, тем, кто захочет перейти на новую ОС, придется добавить оперативной памяти (поскольку при буферизации будет использоваться не только память акселератора, но и вся доступная память в системе) и поменять видеокарту, так как подавляющее большинство современных видеокарт с запросами Longhorn просто не справится. Проверить справедливость этого утверждения можно уже сейчас: в билде 5048 возможно включение DWM-режима, но только для двух карт — Nvidia FX5900 и ATI Radeon 9800 (более мощные акселераторы тоже подойдут — была бы аппаратная поддержка DirectX 9). А вот если установленная карта слабее, система немедленно выдает ошибку (см. рис. 4). Есть хаки, позволяющие любоваться на полупрозрачные заголовки окон и прочие прелести Aero и обладателям скромных видеокарт, однако производительность при этом падает заметно, да и не с каждой картой этот трюк пройдет.

Впрочем, пользователя никто не принуждает к апгрейду — ему дают возможность выбора. Если система недостаточно мощная, а никаких изысков от ОС пользователь не ждет, он вполне может работать в «классическом» интерфейсе (a la Windows 2000). Если железо тянет все, что угодно, то имеет смысл выбрать интерфейс Aero или Aero Glass. Если же хочется чего-то получше, чем «классический» вариант, но мощности комплектующих на все прелести Aero не хватает, можно попробовать вариант промежуточный — «To Go» (вероятнее всего, нынешняя одежка Longhorn с отключенным DWM является его слабым подобием). Правда, отказ от Aero влечет за собой потерю не только таких сомнительных новшеств, как «трехмерный» оконный интерфейс и не слишком нужные спецэффекты на рабочем столе, но и вполне полезных особенностей Avalon — так, например, поддержка экранов высокого разрешения гарантируется только для Aero (хотя наверняка у человека, купившего монитор с высоким разрешением, найдутся деньги и на соответствующую видеокарту).

5048

Половину лонгхорновских технологий во время конференции WinHEC представители Microsoft не столько показали, сколько перечислили. Известно, что в Longhorn будет новый файловый формат Metro, который якобы составит конкуренцию PDF. Но единственные достоверные сведения об этом формате заключаются в том, что он базируется на XML. Пре-бета Longhorn 5048 предназначена в первую очередь для разработчиков и, возможно, подходит для экспериментов, но не дает представления о требованиях операционной системы к компьютеру, на что Microsoft уже пеняют сборщики ПК и корпоративные пользователи, планирующие свои расходы на апгрейд на год вперед.

Возможно, что-то прояснится с выходом первой беты, которая появится уже в конце июня, но сегодня можно сказать определенно лишь одно: если Microsoft действительно хочет выпустить новую ОС осенью 2006 года, то работать ее подразделениям придется поистине стахановскими темпами.

Впрочем, если не успеют — перенесут. Не впервой.

Линукс и пятилетний план

Windows, чье развитие целиком определяется корпорацией Microsoft, можно сравнить с плановым хозяйством, с Госпланом, пятилетними планами и прочими атрибутами. Линукс в таком случае можно представить как торжество рыночной анархии. О будущем MS Windows мы можем прочитать в пресс-релизе Microsoft. О будущем Линукса мы можем лишь строить некоторые, довольно общие предположения.

Впрочем, Линус Торвальдс, родоначальник и бессменный лидер разработки ядра этой ОС, предпочитает использовать другую метафору — «естественный отбор». «Живые организмы, — говорит он, — не выбирают, какими им быть, но развиваются в соответствии с требованиями внешней среды». Лидер проекта не обязан быть генератором блестящих инженерных идей. Но он должен обладать хорошим техническим вкусом, чтобы распознать хорошую идею, когда она будет предложена.
В идеях, что характерно, недостатка нет. В Линуксе, как в стандартном (Vanilla) ядре, так и в сторонних патчах и пользовательских программах, наличествует великое множество самых разных архитектурных и технических решений, явно недоиспользуемых широкой публикой. Практически большая часть всех экспериментов в Computer Science сейчас либо изначально базируется на Линуксе или быстро туда портируется. Части из них уготовано большое будущее. Проблема в том, что нельзя сказать заранее — какой именно части. Уже не раз и не два было, что подсистема, которой почти единодушно прочили светлое будущее, вдруг в одночасье выбрасывалась на свалку (один из последних примеров — devfs).

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

С другой стороны, те из новых технологий, которые попадают в точку, позволяют решить наболевшие проблемы, развиваются очень быстро. Буквально пара-тройка недель проходит от первоначальной идеи до работающей (возможно, не идеально) реализации. Нашумевшая новость такого рода — система управления разработкой GIT, основанная на совершенно новом принципе (которого никто, кроме разработчиков, пока не понимает). Так вот: от первой строчки кода, написанной командой ведущих «ядерных» хакеров во главе с Линусом, и до начала промышленного использования прошло как раз три недели. Незадолго до этого так же быстро на смену чрезмерно громоздкой devfs пришла udev (ее отличие в том, что все служебные функции выполняются отдельными программами и не загромождают ядро).

Что касается пользовательских программ, разработка которых не видна широкой публике, все выглядит так, будто новый продукт внезапно возникает на пустом месте. Так, после почти десятилетнего унылого ковыряния кода dosemu — эмулятор DOS (точнее, виртуальная машина для запуска DOS-программ, нечто вроде специализированной VmWare) — все еще выглядел весьма уныло. И чуть больше года назад вдруг появился dosbox, не имевший и десятой части заявленной функциональности dosemu, но зато аккуратнее, быстрее и эффективнее выполнявший ту единственную задачу, для которой массам все еще требовалась DOS, — запуск старинных игрушек и бухгалтерских программ.

В общем, можно сказать, что проект, который не может быть вчерне сделан за 1–3 месяца, в Линуксе скорее всего не будет сделан вообще. Это не значит, что эпических масштабов цели для Линукса в принципе недостижимы. Но каждая такая задача будет решаться как ряд проектов меньшего размера или же как постепенное расширение существующей функциональности.
Чего определенно не следует ожидать от Линукса в ближайшую пятилетку, так это революции в области программного интерфейса, API. Если для программиста под Windows смена всех рабочих инструментов каждые два-три года является нормой, то программисты на UNIXе (ни в коем случае не «на Линуксе», как вам сразу же объяснят) в этом отношении феноменально консервативны. Достаточно сказать, что существует влиятельная партия консерваторов, полагающая библиотеки виджетов QT (выпускается с 1994 г.) и GTK (с 1998 г.) новомодными глупостями и использующая старые добрые OSF Motif и Athena Widgets (c конца 1980-х).

В Windows практически любая новая функциональность — это новый API и новые программы, его использующие. Всего 70 тысяч различных API (и одна из целей Longhorn — сократить их число до 8–10 тысяч). Для программистов на UNIXе «API» — бранное слово. Во-первых, интерфейс должен быть един для программы и пользователя. А во-вторых, любой специальный интерфейс — от лукавого. Любая уважаемая UNIX-система обеспечивает 1170 стандартизованных интерфейса (включая командные/интерактивные интерфейсы основных утилит, но, правда, исключая упомянутые библиотеки виджетов), и использование без особой нужды других средств считается дурным тоном.

Поэтому наилучшие перспективы имеют такие технологии, которые встраиваются в существующую структуру и идеологию прозрачно, незаметно для соседних компонентов. В Линуксе существует множество крючков и петелек специально на этот случай. Классическим подходом является создание специализированных файлов и файловых систем, с которыми затем можно работать через обычный файловый интерфейс. Своего рода логическим завершением этой практики является готовящееся включение в стандартное ядро FUSE — универсальной пользовательской файловой системы, транслирующей все системные вызовы обратно на уровень прикладных программ. Хотите — подставляете туда архиваторы/компрессоры, чтобы прозрачно работать со сжатыми файлами, хотите — систему контроля версий, а можно и mnogosearch с MySQLом прикрутить, чтобы было почти как в грядущей WinFS.

Самые распространенные применения Линукса — рабочая станция и средней руки сервер — давно уже не являются горячими точками для разработчиков. Центр развития сместился, с одной стороны, к суперкомпьютерам, а с другой — к разного рода встроенным устройствам, PDA и сотовым телефонам.

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

Напоследок один частный вопрос. Разумеется — и это в некотором смысле одно из важнейших достоинств Линукса, — в нем нет и никогда не будет ничего подобного микрософтовскому Palladium’у. Во-первых, потому, что одна из главных функций Palladium’а — DRM — находится в явном и жестком противоречии с принципами и практикой свободного софта. А во-вторых и в главных — потому, что концепция безопасности, развиваемая Palladium’ом и сводящаяся к доверию доброй воле третьих лиц, по юниксовским/линуксовским понятиям, к безопасности никакого отношения не имеет, а является, напротив, вопиющей дырой в защите.

Федор Зуев

© ООО "Компьютерра-Онлайн", 1997-2024
При цитировании и использовании любых материалов ссылка на "Компьютерру" обязательна.