Основной целью разработки специальной версии XP, Embedded, было создание встраиваемой системы с богатыми функциональными возможностями, максимально совместимой как с имеющейся настольной операционной системой и существующим прикладным программным обеспечением, так и с привычным для программистов процессом разработки прикладных программ.
Windows XP Embedded является одной из трех компактных версий операционной системы Windows, наряду с Windows Embedded CE и Windows Embedded for Point of Service. Среди встроенных операционных версий Windows только Windows XP Embedded предлагает полный набор функций (или, по крайней мере, основу для обеспечения полного набора функций) для клиентского компьютера, работающего под управлением Windows XP Professional. В ее основе лежит Windows XP Professional с пакетом обновления 2 (SP2); однако Windows XP Embedded отличается от стандартной операционной системы Windows XP крайне высоким уровнем модульности своей структуры. У Windows XP Embedded нет того, что можно было бы назвать стандартным образом установки. Вместо этого набор средств под названием Windows Embedded Studio используется для создания специальным образом настроенной среды Windows XP Embedded для любого создаваемого устройства, и в эту среду включаются только необходимые устройству функциональные возможности. Если вам не требуется DirectX или проводник Windows, просто не устанавливайте их. Такая модульность означает, что у каждого создаваемого и разворачиваемого образа Windows XP Embedded будет меньшее число составляющих, что приводит к уменьшению нагрузки на администраторов и повышению безопасности, а также появлению возможности работать более дешевом оборудовании. С некоторыми из существующих вариантов можно ознакомиться с помощью средства Target Designer (входит в состав набора Windows Embedded Studio), как показано на рис. 1.
Рис.
1 Выбор компонентов с помощью
средства Target Designer
Возрастающее число ситуаций использования является идеальной базой для применения устройства, работающего на основе Windows XP Embedded. Например, рассмотрим компании, поддерживающие работоспособность больших центров обработки вызовов службы поддержки клиентов. Во многих случаях представителям центра обработки вызовов требуется одно или два приложения внутренней разработки и, возможно, обозреватель Интернета. Они используют только небольшую часть возможностей своих компьютеров, поэтому Windows XP Embedded позволяет отказаться от избыточных возможностей. Меньший набор функциональных возможностей означает сужение области, подверженной ошибкам, и возможностей для атак на систему безопасности.
Поскольку устройства, основанные на Windows XP Embedded, обладают ограниченным набором функций, они могут выполняться на менее мощном и зачастую более дешевом оборудовании. Ряд производителей выпускают системные платы, в которых используются процессоры с низким энергопотреблением, совместимые с процессорами Intel. Такие системные платы обладают крайне малыми размерами, малым потреблением мощности и зачастую не используют вентилятора, поскольку не нагреваются во время работы. Они очень хорошо работают в составе компактных встроенных устройств, возможности которых ограничены выполнением только ограниченного набора приложений.
Операционная система Windows XP Embedded предлагает весьма ценные возможности, недоступные в полной версии Windows XP. Enhanced Write Filter (EWF) и Hibernate Once, Resume Many (HORM) - оба этих средства могут упростить выполнение задач по управлению Windows. EWF является дополнительным компонентом, добавляемым в развертывание Windows XP Embedded, который делает данный дисковый том доступным только для чтения. Любые операции записи, направленные на этот диск, перенаправляются в наложение, находящееся на другом диске или даже в памяти. Сама операционная система рассматривает наложение EWF и его родительский том как единое устройство, т.е. как обычный дисковый том. Тем не менее, фактически на родительском томе не выполняются реальные изменения; изменениям подвергается только наложение EWF. Это может являться преимуществом в нескольких случаях. Представим себе развертывание образа Windows XP Embedded на карте памяти Compact Flash (CF) (образы Windows XP Embedded могут иметь размер от 5 МБ и зачастую помещаются в объеме приблизительно 200 МБ, так что на CF достаточно места для хранения). Карту памяти CF можно вставить в адаптер и подключить к разъему IDE системной платы; при этом карта памяти CF воспринимается как обычный несъемный диск. У современных карт памяти CF ограниченный ресурс записи (приблизительно 100 000 операций записи), поэтому EWF используется для назначения CF томом, предназначенным только для чтения. Представим размещение наложения EWF в ОЗУ: если пользователь делает ошибку, достаточно просто выключить компьютер. Наложение EWF и любые изменения, сделанные в компьютере, мгновенно теряются. При перезагрузке вы возвращаетесь назад в исходную точку, хранящуюся на карте памяти CF. Одну и ту же настройку можно использовать для образа на основе компакт-диска или диска DVD; поскольку эти типы носителей исходно предназначены только для чтения, EWF вносит любую операцию записи в наложение. Даже если наложение хранится на небольшом внутреннем жестком диске, обеспечивается гарантия того, что исходный загрузочный том (на компакт-диске или диске DVD) никогда не подвергается изменениям; если возникает необходимость перезагрузить компьютер, чтобы получить исходную конфигурацию, для этого достаточно стереть наложение EWF.
HORM, в соответствии со своим именем, позволяет после однократного перевода компьютера в спящий режим многократно возобновлять его работу из точки перехода в спящий режим. Компьютер включается почти мгновенно. Достаточно настроить компьютер, запустить все необходимые приложения, а затем перевести его в спящий режим. После этого при каждом включении компьютера вам потребуется только подождать несколько секунд, чтобы обнаружить все приложения работающими.
У корпорации Майкрософт существует программа Embedded Partner, объединяющая компании, специализирующиеся по работе с Windows XP Embedded (список этих компаний представлен на домашней странице Windows XP Embedded по адресу microsoft.com/embedded). Однако, несмотря на множество компаний, предоставляющих обычным производителям ПК предварительно созданные образы (включающие корпоративные приложения и специальные конфигурации), вам может потребоваться создать свои собственные образы Windows XP Embedded, которые впоследствии можно использовать совместно с участниками программы Embedded Partner, предоставляющими вам завершенные компактные системы. Набор Windows Embedded Studio, устанавливаемый в операционной системе Windows XP Professional, можно использовать для создания образов Windows XP Embedded и управления ими.
Для использования этого набора средств сначала следует установить полную версию Windows XP Pro на том оборудовании, которое предполагается использовать для системы Windows XP Embedded. Это позволяет использовать в полной мере процедуру установки Windows XP, чтобы добиться надлежащей работы всего оборудования. Затем устанавливается набор инструментов Windows Embedded Studio. Обычно при этом устанавливается база данных, используемая для управления встроенными образами, но на самом деле эта база данных может быть установлена в другом месте, предоставляющем центральное хранилище. Далее запускается служебная программа с интерфейсом командной строки, Tap.exe, создающая новый специальный компонент, который может использоваться операционной системой Windows XP Embedded. Обычно компоненты инкапсулируют такие наборы функциональных возможностей, как проигрыватель мультимедиа, файловая система или другие пользовательские приложения; в этом случае создается компонент, содержащий драйверы устройств для оборудования, необходимого вашей конкретной системе. Этот этап должен быть выполнен на целевом оборудовании, чтобы средство имело возможность обнаружить и включить соответствующие драйверы оборудования.
На следующем этапе запускается конструктор компонентов Windows XP Embedded и импортируется пакет компонентов, созданный служебной программой Tap.exe. Как показано на рис. 2, конструктор компонентов читает информацию об устройстве и собирает завершенный компонент Windows XP Embedded, который может служить основой для нового образа Windows XP Embedded. Это значительно упрощает процедуру точного определения драйверов устройств, необходимых для данной платформы. После создания компонента диспетчер базы данных компонентов используется для импорта нового компонента в базу данных компонентов Windows XP Embedded - хранилище, в котором хранятся все известные компоненты Windows XP Embedded. Присутствие компонента в базе данных делает его доступным для использования в образах Windows XP Embedded.
Теперь можно приступить к созданию новой целевой конфигурации с использованием средства Windows XP Embedded Target Designer, при помощи которого выполняется большая часть реальной работы. Как видно из рис. 1, добавляются любые компоненты, необходимые для создания набора функций, требуемых устройству. Потребуется также добавить некоторые основные компоненты Windows, например, проводник Windows (если устройству требуется графическая оболочка), файловую систему NTFS (или FAT32), загрузчик NT, поддержку для языка, ядро пользовательского интерфейса и т.д.. По умолчанию доступно более десяти тысяч компонентов.
Предусмотрена также предварительная настройка параметров каждого компонента. Например, компонент User Interface Core можно настроить на отображение конкретных элементов в меню Windows <Пуск>, <Рабочий стол> и в других местах. Настройка параметров для каждого компонента гарантирует, что предварительная настройка каждого устройства будет удовлетворять конкретные потребности (см. рис. 3).
Самой замысловатой частью образа Windows XP Embedded являются зависимости. Например, невозможно добавить компонент DirectX к образу, не добавляя несколько компонентов, обеспечивающих основные возможности Windows по обработке графики. Отслеживание всех зависимостей может оказаться весьма сложной задачей, особенно для больших и сложных образов, у которых могут быть буквально тысячи зависимостей. Эта задача возлагается на базу данных компонентов. Простым нажатием клавиши F5 в средстве Target Designer выполняется проверка всех добавленных компонентов с автоматическим добавлением всех зависимостей, необходимых перечисленным компонентам. На рис. 4 показан процесс проверки; именно этот крайне важный этап обеспечивает такую высокую степень модульности операционной системы Windows XP Embedded. В отсутствие этих интеллектуальных средств, встроенных в Target Designer, было бы крайне трудно выполнить успешное создание образов, содержащих правильные зависимости.
После добавления всех компонентов и их зависимостей можно создавать образ Windows XP Embedded. Образы представляют собой просто файлы, которые необходимо скопировать на загрузочный том устройства Windows XP Embedded. Для их развертывания не требуются никакие специальные инструменты (хотя в набор инструментов Windows XP Embedded входит сервер удаленной первоначальной загрузки, функции которого аналогичны функциям служб удаленной установки; он позволяет выполнить развертывание образов Windows XP Embedded на совершенно новом оборудовании). После завершения этих этапов выясняется реальный размер образа. Я создал минимальный базовый образ, в который входит оболочка <Проводник> и несколько приложений, таких как текстовый и графический редактор, и созданный образ был менее 90 мегабайт. Безусловно, найдется не так много пользователей, заинтересованных в устройстве, на котором работают только текстовый и графический редактор, но это является иллюстрацией того, насколько небольшим может быть образ для конкретной задачи.
Windows XP Embedded ни в коем случае не является урезанным вариантом операционной системы. Майкрософт предоставляет предварительно упакованные компоненты, позволяющие компьютеру, работающему под управлением Windows XP Embedded, иметь в большой степени такие же функциональные возможности, как и у полной версии Windows XP. К ним относятся возможность установки DirectX 9.0c, Microsoft. NET Framework, Windows Media Player 10 и многого другого. Существует также большой объем документации для разработчиков, описывающей способы создания пользовательских компонентов, например, пользовательской оболочки, заменяющей <Проводник>, что позволяет создавать среду, соответствующую конкретному встроенному устройству
Однако операционная система Windows XP Embedded предлагает не каждый отдельный компонент, входящий в состав полной версии Windows XP. Например, защита файлов Windows (WFP - Windows File Protection) не входит в состав Windows XP Embedded; не входят в ее состав и некоторые из удобных компонентов, например Знакомство с Windows XP, начальные экраны приветствий и мастера, помогающие начинающему пользователю настраивать компьютер, или программа установки Windows. В Windows XP Embedded не используется активация Windows (образы Windows XP Embedded активируются с помощью ключа продукта этапа выполнения при работе инструментов Windows Embedded Studio). Наиболее примечательно то, что Windows XP Embedded совершенно не использует механизм обновления Windows, хотя может использовать в созданной среде сервер служб обновления программного обеспечения Microsoft. Наконец, в Windows XP Embedded нет MSN Explorer, входящего в состав Windows XP Pro.
В перспективе обширный цикл разработки Windows XP Embedded продолжается: в настоящее время доступен Feature Pack 2007, в который добавлены новые компоненты, такие как загрузка с устройства USB, усовершенствование EWF, позволяющее направлять новые файлы на родительский том, не направляя наложение в целом, поддержка сжатия NTFS и многое другое. Эти усовершенствования увеличивают гибкость и количество вариантов операционной системы Windows XP Embedded, одновременно уравнивая ее по набору компонентов с операционной системой Windows XP Professional.
Создание встроенных систем может потребовать несколько большего времени, чем создание традиционной системы Windows XP, но они предлагают значительные преимущества в определенных ситуациях. Имея сокращенный набор функциональных возможностей, системы Windows XP Embedded поддерживают малогабаритное, маломощное оборудование, за которым проще следить, которое проще чинить и которое может значительно меньше стоить. Низкое потребление мощности помогает также уменьшить счета за коммунальные услуги и понизить тепловыделение, позволяя гибко организовывать компактное рабочее пространство. Помимо предполагаемых применений операционной системы Windows XP Embedded - бытовые приборы, медицинская аппаратура, киоски и другие места, которые трудно заподозрить в использовании Windows XP Embedded, - эта встроенная операционная система может найти свое место и в вашей организации.
Поскольку операционная система Windows XP Embedded состоит из тех же бинарных файлов, что и Windows XP Professional, практически все возможности, которые есть в XP Professional, поддерживаются и в XP Embedded, например:
Помимо этого, система поддерживает дополнительные возможности для встраивания:
Возможность взаимодействия со стандартами и технологиями Microsoft для настольных компьютеров и серверов:
Новые функции, появившиеся в Windows XP Embedded с выходом Service Pack 1:
Нововведения, появившиеся в Windows XP Embedded с выходом Service Pack 2:
С пакетом Feature Pack 2007 появляются следующие возможности: