Windows Embedded 8 Standard: Обзор средств разработки

Павел Белевский 

Журнал Control Engineering 

№ 2 (44) 

Данная публикация открывает цикл статей, посвященных новейшей (выход состоялся в марте этого года) встраиваемой ОС Windows Embedded 8 Standard.

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

  1. Семейство ОС для устройств, в основе которых может лежать не только x86-ая архитектура, но также ARM, MIPS или SH4 – Windows Embedded Compact. Архитектура данных систем значительно отличается от архитектуры любой из настольных ОС компании Microsoft. Изменения в архитектуре данных систем нацелены на достижение трех основных целей: кроссплатформенности (поддержка x86, ARM, MIPS и SH4), компактности (размер ядра составляет порядка 500 Кбайт) и поддержки режима реального времени. Характерными примерами использования Embedded Compact являются автомобильные навигаторы, терминалы сбора данных, тонкие клиенты и промышленные контроллеры. 
  2.  Пожалуй, самый распространенный класс – устройства на базе x86-архитектуры без особых требований по работе в режиме реального времени. В данной категории возможности по выбору ОС значительно шире и представлены тремя направлениями: Embedded Enterprise, Embedded Standard и Embedded Industry (ранее известная как Embedded POSReady). Перечисленные линейки встраиваемых ОС объединяет тот факт, что в их основе лежат настольные ОС. В этом, собственно, заключается их основное преимущество, поскольку при разработке могут быть задействованы существующие наработки, включая драйвера устройств и ПО, разработанное под настольные ОС. Если говорить про отличия между указанными системами, то они заключаются в форме представления функционала классической версии Windows. Системы линейки Enterprise – это полные аналоги соответствующей версии настольной системы, а именно Windows XP Professional, Windows Vista Business/Ultimate, Windows 7 Professional/Ultimate или Windows 8 Professional, со специальными условиями лицензирования для использования во встраиваемых решениях. Системы Windows Embedded Standard (о последней версии в данной линейке и пойдет в дальнейшем речь) представляют собой компонентные версии тех же Windows XP Professional, Windows 7 Ultimate или Window 8 Professional. Таким образом, размер инсталляции ОС можно варьировать в зависимости от требуемой функциональности, что в свою очередь позволяет повысить производительность и отказоустойчивость решения. Компонентный подход – это не единственный «козырь» линейки Windows Embedded Standard. Данное семейство также обладает уникальными расширенными возможностями по встраиванию ОС в устройства. Примером таких возможностей являются загрузка с USB-накопителей, фильтр клавиатурного ввода, средства подавления нежелательных окон в интерфейсе ОС и сторонних приложений и многое другое, о чем более подробно будет рассказано в следующих статьях. Замыкающая данную категорию систем линейка Industry (ранее POSReady) ориентирована на конкретные вертикальные рынки: сфера обслуживания и (в последней версии, Embedded 8 Industry) промышленная автоматизация. С технической точки зрения Embedded Industry является заранее скомпонованной версией Embedded Standard, что позволяет быстро разворачивать систему по аналогии с настольной версией и при этом использовать преимущества технологий для встраивания, которые недоступны в линейке Embedded Enterprise. Несмотря на то, что изначально настольная система, а значит и построенные на ее базе встраиваемые версии Embedded Standard и Embedded Industry, не предназначена для работы в режиме реального времени, существуют сторонние расширения реального времени (RTX, IntervalZero и т.д.). 
  3. Серверные ОС. Справедливости ради нужно сказать, что системы Embedded Server, как и системы линейки Embedded Enterprise, по большому счету отличаются от продуктов в классическом канале дистрибуции лишь условиями лицензирования.

Подводя итог краткому обзору платформы Windows Embedded, следует отметить два ключевых преимущества данных систем. Во-первых, это единство платформы, что позволяет интегрировать устройства на базе Windows Embedded в уже существующую инфраструктуру и реализовывать сценарии тесного взаимодействия между различными устройствами, включая персональные мобильные устройства, настольные системы и серверные компоненты. Второй важный момент связан со временем доступности и поддержки продуктов. ОС Windows Embedded доступны в течение 15 лет с момента выпуска. В качестве примера можно сказать, что Windows XP Professional до сих пор доступна в канале Windows Embedded, в то время как OEM и тем более Retail-версии уже давно не доступны.

Средства разработки Embedded 8 Standard

Средства разработки встраиваемой ОС Windows Embedded 8 Standard включают следующие инструменты: 

  • мастер установки образа ОС (Image Builder Wizard), далее IBW;
  • редактор конфигурации образа (Image Configuration Editor), далее ICE;
  • редактор компонентов (Module Designer);
  • агент обновления (Windows Embedded Developer Update), далее WEDU;
  • вспомогательные утилиты.

 IBW

IBW служит для развертывания ОС на устройстве и представляет собой установочную среду на базе сервисной ОС Windows PE 4.0, в которую интегрирована программа установки и дистрибутив компонентов Embedded 8 Standard. В качестве загрузочного носителя для IBW может быть использован DVD или USB-Flesh. В поставке средств разработки идет два DVD-диска с IBW: один для x86-ой, другой для x64-ой архитектуры. Забегая вперед, следует отметить, что средства разработки позволяют создавать собственные версии дисков IBW, например с целью обновления дистрибутива компонентов. Сразу после загрузки IBW на устройстве запускается программа установки (рис.1).

Рис.1. Выбор режима установки (IBW)

На исходном экране предоставляется возможность интерактивной установки (пунктInstall Now), установки в автоматическом режиме при помощи заранее созданного файла ответов или WIM-файла (пункт Deploy a Configuration File or WIM) и выход в командную строку для выполнения различных сервисных операций, например подготовки диска (пункт Launch WinPE Command Prompt). Для установки ОС в ручном режиме следует выбрать пункт Install Now. После ввода ключа продукта и принятия лицензионного соглашения необходимо выбрать шаблон устройства (рис.2), DigitalSignage, Retail или ThinClient, либо отказаться от использования шаблона. 

Рис.2. Выбор шаблона устройства (IBW)

Шаблон представляет собой функционально законченный набор компонентов и позволяет сократить время на развертывания системы, что особенно ценно на этапе прототипирования. После выбора шаблона есть возможность установить драйвера устройств (рис.3) и, при необходимости, внести изменения в состав компонентов (рис.4). 

Рис.3. Установка драйверов (IBW)

Если в конфигурацию образа были добавлены или удалены из нее компоненты, то для продолжения процесса установки необходимо выполнить разрешение зависимостей, нажав кнопку Resolve Dependencies (рис.4). 

Рис.4. Добавление/удаление компонентов (IBW)

В результате разрешения зависимостей в образ будут добавлены все необходимые или исключены ненужные компоненты. Иногда программа установки не может сделать это автоматически и предлагает выполнить разрешение зависимостей вручную (рис.5). 

Рис.5. Разрешение зависимостей (IBW)

В рассматриваемом примере после добавления компонента Unbranded Screens, отключающего логотипы компании Microsoft на служебных экранах, возник взаимоисключающий конфликт с компонентом Branded Screens. Для разрешения данного конфликта необходимо выбрать только один из них. После того как разрешение зависимостей будет успешно выполнено, необходимо выбрать раздел на диске для установки ОС. Далее процесс установки переходит в неинтерактивный режим, по завершению которого можно будет продолжить конфигурирование системы, установить драйвера и ПО.

В принципе, для установки ОС достаточно иметь носитель с IBW и собственно устройство. Остальные средства, с которыми мы познакомимся в этой и последующих статьях, являются вспомогательными и требуют установки на ПК под управлением Windows 7 или старше.

ICE

Редактор конфигурации образа, ICE, служит для подготовки конфигурационных файлов, которые впоследствии будут использованы в IBW для установки ОС в автоматическом режиме (рис. 1, пункт Deploy a Configuration File or WIM). При первом запуске ICE необходимо указать размещение каталога компонентов (рис.6) – при установке с настройками по умолчанию каталог размещается в папке C:\Windows Embedded Catalog

Рис.6. Выбор каталога (ICE)

Далее для создания нового конфигурационного файла необходимо в главном меню выбрать пункт File –> New Configuration File. Сразу после создания конфигурационный файл содержит единственный компонент Embedded Core – ядро ОС Embedded 8 Standard (рис.7). 

Рис.7. Создание конфигурационного файла (ICE)

Также можно не начинать «с чистого листа», а воспользоваться одним из шаблонов, которые находятся в папке каталога компонентов. При помощи каталога компонентов в левой части окна ICE (рис. 7) можно добавлять компоненты в конфигурацию образа, а на панели справа настраивать их параметры. Возможность настройки параметров для каждого компонента позволяет максимально автоматизировать процесс установки ОС. Так же, как и в IBW, для обеспечения работоспособности образа следует выполнить разрешение зависимостей. Средства по проверке и разрешению зависимостей сосредоточены в пункте Validate главного меню. При этом можно выполнить проверку без добавления компонентов в конфигурацию (пункт меню Validate Only), проверить и добавить необходимые компоненты (пункт меню Add Required Modules), а также добавить обновления для используемых в конфигурации компонентов (пункт меню Add Applicable Updates). В случае если автоматически разрешить зависимости не удается, на панели Messages в нижней части окна ICE появляются соответствующие сообщения (рис.8). 

Рис.8. Ошибки при разрешении зависимостей (ICE)

Разрешение таких зависимостей выполняется вручную (рис.9). 

Рис.9. Разрешение зависимостей (ICE)

По завершению компоновки функционала системы, настройки параметров модулей и разрешения зависимостей необходимо сохранить конфигурацию образа в файл для дальнейшего использования в IBW.

Помимо средств по работе с конфигурационными файлами, ICE предоставляет возможность создания собственных сервисных и установочных дисков. Эти функции доступны через пункт Tools главного меню и сосредоточены в разделе Create Media.

Module Designer

Редактор компонентов, Module Designer, служит для разработки собственных модулей. Модуль представляет собой набор файлов и инструкций для их установки в системе. Более подробно с редактором компонентов мы познакомимся в одной из следующих статей.

WEDU

Агент WEDU служит для поиска и установки обновлений для средств разработки и каталога компонентов ОС и упрощает задачу поддержания рабочего места разработчика в обновленном состоянии. В ходе первоначальной настройки WEDU необходимо разрешить доставку обновлений при помощи Windows Update (рис.10) и указать размещение каталога компонентов (рис.11), поскольку по умолчанию обновляются только инструментальные средства, ICE, Module Designer и т.д. 

Рис.10. Первоначальная настройка WEDU

Рис.11. Добавление каталога компонентов (WEDU)

Поиск обновлений может выполняться в фоновой режиме, либо принудительно, по кнопке Start Scan. Далее доступные обновления (рис. 12) можно выборочно установить или переместить на закладку Hidden Updates. История обновлений хранится на закладке Update History.

Рис.12. Установка обновлений (WEDU)

***

В данной статье были освещены особенности платформы Windows Embedded в общем и представлены средства разработки новейшей встраиваемой ОС Windows Embedded 8 Standard. В последующих публикациях мы продолжим изучение данной ОС и в ближайшей статье затронем, пожалуй, самую интересную тему – расширенные возможности Embedded 8 Standard для встраивания в устройства.

Полный текст статьи (pdf, 6Mb).

Павел Белевский, 

Ведущий специалист отдела исследований и разработок,

Департамент встраиваемых систем,

 ООО «Кварта Технологии», г. Москва, 

info@quarta.ru 

 

 

Подписка на новости