Компоненты Windows Longhorn

## XAML

**XAML** — декларативный язык разметки, который может применяться программистами для проектирования объектов пользовательского интерфейса Longhorn, подобно тому как разработчики Web-узлов используют HTML для построения Web-страниц. XAML поддерживает графику и обеспечивает связь с объектами .NET Common Language Runtime (CLR).[1]

**Был реализован как компонент .NET Framework.**

## Контакты

Список контактов был встроен в Longhorn, а не обслуживается отдельным приложением, таким как Microsoft Outlook или CRM (Customer Relationship Management), например GoldMine компании FrontRange Solutions. Longhorn располал компонентами и функциями, необходимыми для управления списком контактов. Для работы с контактами использовалась новая файловая система WinFS.[2]

**Были реализованы без WinFS.**

## Уведомления

В Longhorn появился API для пересылки уведомлений пользователям. Он должен был позволить указывать время, в которое разрешено или запрещено доставлять уведомления, и типы приложений, которые могут прерываться уведомлениями.[3]

## Palladium (NGSCB)

**Palladium** — программно-аппаратная система обеспечения безопасности Windows Longhorn, разрабатывавшаяся Microsoft совместно с компаниями Intel и AMD, которые должны были встроить соответствующие аппаратные модули поддержки в свои новейшие процессоры. (хотя аппаратная часть так и не была выпущена).[4]

Был публично представлен 24 июня 2002 года в статье Стивена Леви из Newsweek, посвященной его происхождению, дизайну и особенностям. Леви заявил, что технология позволит пользователям проходить идентификацию и аутентифицикацию, шифровать данные, чтобы защитить их от несанкционированного доступа, а так же применять политики, связанные с использованием личной информации. В качестве примеров применения политик Леви заявил, что пользователи смогут отправлять сообщения электронной почты, доступные только предполагаемому получателю, или создавать документы Microsoft Word, которые можно будет прочитать только через неделю после их создания. Для обеспечения работы данной технологии были необходимы специально разработанные аппаратные компоненты, включая обновленные процессоры, наборы микросхем, периферийные устройства и модуль Trusted Platform Module.[5]

В 2003 году технология была переименована в **Next Generation Secure Computing Base (NGSCB)**. По словам менеджера по продукции Microsoft Trusted Platform Technologies Group, Mario Juarez, новое название было выбрано чтобы избежать какого-либо правового конфликта с неназванной компанией, которая уже приобрела права на имя Palladium[6].

Ричард Столлман, учредитель Фонда свободного ПО и один из основателей проекта GNU, раскритиковал эту технологию в одной из своих статьй. «Крупные медиакорпорации вместе с компьютерными компаниями, такими как Microsoft и Intel, мечтают поставить ваш компьютер на службу себе, а не вам, — писал он. — Проприетарные программы и раньше выполняли подозрительные функции, но данный план сделает подобную практику всеобъемлющей».

Столлман и другие, в частности профессор Кембриджского университета Росс Андерсон (Ross Anderson), доказывали, что цель данной технологии — защитить данные не от хакеров, а от пользователей. "Главная задача этой технологии" — писал он — "это «контроль за цифровыми правами», то есть управление контентом, защищенным авторским правом. По современным законам владельцы авторских прав сохраняют контроль над контентом даже в том случае, если он находится на чьем-то ПК, — многие активисты возражают против этого."[7]

Каталог с Palladium состоит из трёх подпапок, нескольких библиотек и исполняемых файлов, которые без специального оборудования бесполезны. Один из файлов — nexus.exe – модуль ядра, который составлял основу NGSCB.[8][9][10][11]

Планировалось, что технологию можно будет опционально отключить.[12]

Последняя сборка в которую входит NGSCB — 4066.[13]

Отказ от Palladium произошел в 2004 году. Не последнюю роль в этом сыграло скептическое отношение производителей к управляемому коду и их нежелание переписывать с нуля свой софт.

Включала в себя следующие компоненты/задачи:

* технология, которая совместно с DRM (Digital Rights Management) защищала всевозможную цифровую медиа информацию от несанкционированного копирования.
* аппаратную защиту части системы от вредоносных программ, а также от перехвата путем шифрования обмена между аппаратными компонентами.[14]
* повышение уровня безопасности ПК путем размещения важных данных (таких как набираемый на клавиатуре текст и идентификаторы пользователя) и исполнения операций в специальной изолированной части операционной системы (что должно было усложнить хакерам доступ к подобной информации)[15]

**Часть наработок была использована в функции шифрования диска Bitlocker в Windows Vista и "Измеренной (Measured) загрузки" в Windows 8.**[16][17]

## Aero

Aero - прозрачный, похожий на стекло визуальный стиль в Windows Vista/7 (NT 6.0), заменивший Luna. Разрабатывался в Longhorn и остался в проекте после перезагрузки. Впервые появился в сборке 4039.[18][19]

**Реализован в Windows Vista. Присутствует в Windows 7.**

## WinFX

WinFX - программная модель для написания приложений под Longhorn. WinFX представляет собой API с управляемым исходным текстом для Longhorn, который, по сути, заменяет старый набор API Win32. WinFX объединяет управляемый исходный текст .NET с базовой операционной системой.

Должен был обеспечивать управляемый доступ к трем основным компонентам Longhorn - Presentation (Avalon), Data (WinFS) и Communication (Indigo).[20][21]

**Реализован как .NET Framework 3.0**[22]

## Indigo

**Indigo** — набор коммуникационных технологий для Longhorn и модель программирования для создания новейших приложений, ориентированных на услуги; предоставляет средства для создания кода для транзакционной обработки сообщений с повышенными защищенностью и надежностью. Поддержка Indigo должна была быть встроена в Longhorn, но кроме того, должна была появится в Windows XP и Windows Server 2003.[23]
[24]
[25][26]

Был реализован как **Windows Communication Foundation (WCF)** — программный фреймворк, используемый для обмена данными между приложениями, входящий в состав .NET Framework 3.0 в декабре 2006 года.[27]

## Avalon

**Avalon** — новая графическая архитектура системы. В Avalon планировалось полностью переработать графические компоненты Windows. Avalon должен был заменить старый файл user32.dll и интерфейс графических устройств (GDI), которые обеспечивали графическую поддержку во всех версиях Windows. Для повышения быстродействия и работы с 3D-графикой Avalon, как и DirectX, напрямую обращался к аппаратным средствам. Avalon обеспечивал экранное разрешение 120 точек на дюйм, в отличие от современного стандарта 96 точек на дюйм.

По сути, Avalon - ранняя версия WPF, которая имеет другой API.[28][29]

**Часть в составе .NET Framework.**

## WinFS

**WinFS** - файловая система, в основе которой лежал механизм базы данных Microsoft SQL Server Yukon, который обеспечивал реляционный поиск в хранилище данных Windows. WinFS не должен был заменить NTFS, а располагается над ней, дополняя Windows разнообразными возможностями и новой программной моделью для извлечения данных.[30]

Группа разработчиков WinFS должна была создать новый слой универсального хранилища для приложений. Вместо простой иерархической подборки файлов и директорий файловая система работала под управлением полнофункционального реляционного движка. Это должно было не только облегчить создание новых мощных приложений, но их данные не запирались бы в непрозрачных файлах, а становились доступными для других приложений и реляционных таблиц, которые можно смешивать и сравнивать в новых ещё более функциональных приложениях. Информация также открывалась новому файловому менеджеру для простого поиска и сложных запросов. Так должны были наконец-то реализоваться идеи универсального хранилища Cairo, которое забросили и не сумели внедрить в Windows 95.[31]

По словам одного из разработчиков, Ben Fathi, даже если бы проект WinFS завершился успехом, понадобились бы годы на переписывание приложений, чтобы они могли воспользоваться её преимуществами.

Когда Longhorn отменили, а из его остатков поспешно собрали Vista, систему WinFS уже убрали из релиза ОС. Группа SQL ещё несколько лет продолжала работу над ней как над отдельным проектом. К этому времени в Windows появился встроенный движок индексации и интегрированный поиск — реализованный чисто на стороне без необходимости изменения в приложениях. Так что необходимость в WinFS стала ещё более неясной, но проект по-прежнему продолжался.[32]

**Заменена движком индексации, интегрированным поиском и Виртуальными папками.**

## Desktop Composition Engine

**Desktop Composition Engine (DCE)** - Композитный Движок Рабочего стола. Был в сборках 3683-4029. Обеспечивал многочисленные визуальные эффекты, например вращающиеся окна, во время их свертывания. Присутствует в сборках 3683, 3706, 3713, 3718 и 4001, 4011 и 4015. В сборке 4008 поврежден.

Один из наиболее известных визуальных эффектов DCE присутствует в некоторых сборках 4015 и 4018 (Lab06).

После перезагрузки проекта его переименовали в Desktop Window Manager.[33]

## Desktop Window Manager

**Desktop Window Manager (DWM)** - копозитный движок рабочего стола, отвечающий за визуальный стиль и эффекы Aero. Заменил DCE начиная со сборки 4066.[34]

**Реализован в Vista и 7. Начиная с 8 Microsoft отказалась от некоторых возможностей интерфейса Windows Aero, а точнее от WinFlip 3D и прозрачности в заголовках окон.**

## Phodeo

**Phodeo** - функция просмотра мультимедиа, включенная в некоторые сборки и концепты. Присутствует в сборках 4028, 4029, 4039 и 4066.[35]

Для Phodeo необходимо установить видеодрайвера, запустить DCE и включить в реестре Phodeo и Карусель.

Для этого в реестре нужно перейти в:

HKLM\SOFTWARE\Microsoft\Windows\Current Version\Explorer\

Создать два DWORD32-ключа:

* Carousel
* Panorama

и присвоить им значения 1.

Выйти из системы и зайти.

Запустите DCE.
Проверьте Phodeo выбрав в параметрах вида Panorama.

Источник