Встраиваемые системы / Обзор Windows XP Embedded
Хочу немного рассказать о Windows XP Embedded (XPe), т.к. на Хабре не нашлось статей по теме.
Что же это вообще такое?
Windows XP Embedded — специальная версия Windows XP Professional, предназначенная для применения в тонких клиентах, банкоматах, платёжных терминалах, игровых автоматах и тому подобном.
Под катом — общий обзор системы, описание инструментов разработчика и цикла разработки.
Экологическая ниша системы
Действительно, зачем было создавать очередной велосипед, если для встраиваемых систем есть Windows CE, а для смартфонов — Windows Mobile?
Возможные сценарии применения:
- Целевое устройство должно интегрироваться в существующую инфраструктуру Windows (работа в домене, поддержка групповых политик и т.п.).
- У вас уже есть приложение для Windows XP (да ещё и написанное под .NET), портирование которого под, к примеру, Win CE нерентабельно.
- На целевом устройстве требуется поддержка мультимедийных технологий (полноценные версии DirectX, Internet Explorer, Windows Media Player).
- У вас уже есть аппаратная плаформа (например, промышленный компьютер x86), драйвера для компонентов которой есть только для «большой» Windows.
- Вам нужна загрузка ОС с компакт-дика\USB-flash\CompactFlash или с помощью PXE, прозрачное блокирование записи (см. ниже EWF, FBWF), принудительная загрузка ОС из hibernate (см. ниже HORM), тиражирование образа ОС (по сути — Windows XP OPK, но более автоматизированный), собственный Shell.
Целевому устройства не хватает изюминки.
Очевидно, что этот список не является полным, однако основные моменты в нём присутствуют.
Цикл разработки
В общем виде выглядит так: создание файла с описанием устройств целевой платформы (Target Analyzer) — сканирование БД компонентов на предмет наличия подходящих драйверов (Component Designer, Target Designer) — [опционально] импорт недостающих драйверов в БД компонентов (Component Designer) — создание проекта, разрешение зависимостей (Target Designer) — создание мастер-образа, тиражирование | установка образа на целевую платформу.
А теперь — что же такое все эти дизайнеры и анализаторы:
Общая теория
. Windows XP Embedded — это встраиваемая компонентная операционная система на базе Windows XP Professional Edition…
Что значит — компонентная? Инструментарий разработки образов (fingerprint) ОС XPe представляет собой базу компонентов и IDE для работы с этой базой.
База компонентов состоит из файла БД, содержащий описание компонентов (название, зависимости, настройки реестра и пр.) и репозиторий, содержащий файлы компонентов. Поддерживаются СУБД MSDE и Microsoft SQL Server 2005 (в том числе и Express Edition), Microsoft SQL Server 2008 не поддерживается (актуально для Windows XP Embedded SP3, насчёт Windows XP Embedded Standard сказать не могу).
Компоненты — набор примитивов, каждый из которых может содержать:
- Файлы.
- Настройки реестра.
- Список зависимостей от других или список конфликтующих компонентов.
- Скрипты на VB для настройки параметров компонента (используются, в основном, в системных компонентах, т.к. документацию по написанию скриптов Microsoft держит в секрете, хотя, вполне возможно, что я её просто не там искал).
- «Действия» — произвольные команды (запуск программ, скриптов) выполняемые во время установки компонента.
- Настройки служб, регистрация DLL и т.д. и т.п.
Если не вдаваться в подробности, то довольно похоже на пакеты в Linux (deb, rpm).
Инструментарий
Target Analyzer
Программа, предназначение которой — определить оборудование аппаратной платформы (видеокарту, звуковую карту, процессор, накопитель и т.д.). На выходе — xml-файл (с расширением pmq), содержащий описание каждого из найденных устройств (основные характеристики — название устройства, Vendor ID, Device ID), который будет использован как каркас для построения образа ОС.
Существует в двух версиях:
- TA.exe (Target Analyzer) — программа, работающая под управлением MS-DOS (и, вероятно, FreeDOS, не проверял). Опрашивает BIOS (поправьте меня, если я не прав) на предмет подключённых устройств. Известные проблемы — не всегда может определить всё оборудование, плохо определяет накопители.
- TAP.exe (Target Analyzer Probe) — программа, работающая под управлением Windows (PE, Pro). Для определения устройств сканирует реестр. Справляется заметно лучше TA.
После того, как список устройств получен, нужно сравнить его с содержащимися в БД XPe драйверами и добавить недостающие. Всё это можно сделать с помощью Component Designer:
Component Designer
Component Designer — средство для создания собственных компонентов, в том числе драйверов.
Несколько компонентов в Component Designer
После импорта, устройства, драйвера для которых есть в базе, будут отображены в качестве компонентов, каждый со списком зависимостей (системных компонентов), что позволяет создать базовый образ ОС (ядро+минимальный набор необходимых файлов) автоматическим разрешением зависимостей при конструировании образа в Target Designer.
Если же, устройства в БД компонентов не обнаружено — Component Designer умеет парсить inf-файлы, создавая из них компоненты. Для этого зачастую приходится потрошить инсталлятор драйвера для Windows XP от производителя. Однако, это далеко не всегда срабатывает, например, драйвера интеловской графики, по-видимому содержали не все действия для установки драйвера в inf-файле, соответственно — XPe использовал видеодрайвер по-умолчанию, который не поддерживает разрешение выше 640×480, что очень меня огорчало. Справедливости ради, стоит сказать, что Intel выпустили бесплатную утилиту IEGD, позволяющую генерировать драйвера для встраиваемых систем.
После того, как Component Designer закончил разбор inf, нужно внести свежесозданный компонент в БД компонентов. Для этого используем Component Database Manager:
Component Database Manager
Component Database Manager — средство для управления содержимым базы компонентов. Позволяет импортировать и удалять компоненты.
База компонентов
Когда мы убедимся в том, что драйвера всех устройств целевой платформы содержатся в БД XPe, можно создавать проект образа ОС. Для этого используется Target Designer:
Target Designer
Target Designer — IDE для проектирования образа ОС. Добавляем и удаляем компоненты, можно отредактировать настройки компонента «на лету», без внесения изменений в общую базу, есть возможность автоматического разрешения зависимостей.
Открытый проект в Target Designer
Как уже было сказано выше, построение образа начинается со списка компонентов-описаний устройств. Итак, список загружен, нажимаем кнопку «Разрешение зависимостей». Target Designer сканирует зависимости и выводит список требуемых компонентов (в настройках можно поставить крыжечку «Разрешать зависимости автоматически», это позволяет не добавлять компоненты из зависимостей руками). После того, как все зависимости от оборудования будут разрешены, начинается доводка образа — добавление некритичных компонентов (Internet Explorer, Windows Media Player, .NET Framework и т.п.)
Когда все необходимые компоненты добавлены, запускаем сборку — в заданной директории будет создан установочный образ (обычная директория с файлами и вложенными директориями) — полуфабрикат. После создания этого образа, его нужно скопировать на активный раздел накопителя целевого устройства, после чего будет произведено развёртывание образа, и только после этого установка завершится.
Примечание: в отличие от Windows XP, XPe не содержит встроенных инструментов для разметки диска во время установки. Диск должен быть создан, помечен активным и отформатирован внешними утилитами (мне пришлось использовать LiveCD с Linux, как бы смешно это ни звучало). В установочный комплект входит диск Windows PE, но я так и не выяснил, можно ли изменять его и использовать для развёртывания XPe (лицензии Microsoft это тема для отдельного поста).
На этом я закончу вступление. Не знаю, насколько полезным и информативным оно вышло, в планах написать больше, про технологии, специфичные для встраиваемых систем и опыт внедрения.
P.S.: Нет, это не попытка шантажа, это проба пера. Если эта тема кого-то интересует, я с удовольствием продолжу. Также, буду рад любой конструктивной критике.
Полезные ссылки
Данная статья не подлежит комментированию, поскольку её автор ещё не является полноправным участником сообщества. Вы сможете связаться с автором только после того, как он получит приглашение от кого-либо из участников сообщества. До этого момента его username будет скрыт псевдонимом.
Microsoft Windows Embedded POSReady 2009 SP3 x86 Multi Retail Box скачать торрент бесплатно
Дата Выпуска: Release 08/10/2009
Версия: POSReady 2009 SP3
Разработчик: Microsoft
Разрядность: 32bit
Язык интерфейса: Мультиязычный (русский присутствует)
Таблэтка: отсутствует
Системные требования: Образ операционной системы POSReady 2009 значительно меньше, чем у стандартной Windows XP Professional, что позволяет устанавливать его на новые и уже существующие терминальные системы. Минимальные требования к аппаратной части:
Процессор: 233MHz PII
Оперативная память: минимум 64MB с файлом подкачки. Для установки POSReady без файла подкачки требуется минимум 512MB оперативной памяти.
Носитель: HDD, Flash, SSD, минимум 512MB свободного места.
Комплект поставки: POSReady 2009, MUI для 32 языков включая русский, установщик с USB накопителя, дополнительное программное обеспечение (Microsoft Office Viewer 2007, Microsoft Silverlight 2, Microsoft SQL 2008 Express Edition)
Описание: Windows Embedded POSReady 2009 – это следующая версия специализированной операционной системы для розничного и гостиничного рынка Windows Embedded for Point of Service. Новая версия основана на Windows XP Service Pack 3 и представляет собой настраиваемую платформу с широкими функциональными возможностями, поддержкой индустриальных стандартов. POSReady 2009 позволяет компаниям в сфере розничной торговли и гостиничного рынка максимально упростить развертывание системы и уменьшить затраты на обслуживание точек продаж.
MD5: 1518771D1142CC4F1877DCFFA34A2984
SHA-1: 0E9E37F9268BBB7181E0A1AE561C178382CC3014
CRC32: 6FE4B91B
Сценарии использования:
— Кассовый аппарат
— Киоск самообслуживания
— Банкомат
— Бензоколонка
— Информационное табло
Ключевые преимущества
Простота и надежность. POSReady 2009 полностью основан на Windows XP Professional Service Pack 3 и поставляется в виде одного установочного DVD, который включает в себя все необходимые утилиты для установки, настройки системы, MUI (32 языка) и дополнительное ПО. Сочетая в себя всю мощь и надежность ОС Windows XP SP3, POSReady позволяет производителям максимально упростить процесс развертывания системы и минимизировать расходы на разработку приложений за счет наличия большого количества программного обеспечения и драйверов, а так же поддержки POS for .Net (реализация стандарта UPOS на .NET платформе) и других индустриальных стандартов.
Большой набор функций. POSReady 2009 включает в себя все необходимые функциональные возможности для создания POS систем, включая поддержку большинства современных сетевых технологиях, широкие мультимедийные возможности, поддержку средств корпоративного управления и безопасности, совместимость с Windows XP приложениями, драйверами и многое другое.
Низкая стоимость поддержки и обслуживания. POSReady 2009 – специализированная платформа для производителей систем для розничного и гостиничного рынка, применение которой позволяет снизить общую стоимость их обслуживания. Это достигается за счет расширенного цикла поддержки и продаж, по сравнению с классическими операционными системами, а также, благодаря поддержке сообщества экспертов, использования индустриальных стандартов и совместимости с технологиями Майкрософт.
Функциональные возможности
— Plug-n-Play функциональность для периферийного торгового оборудования*
— Полная локализация на 32 языка, включая русский язык
— Интегрированный Service Pack 3
— Встроенный Internet Explorer 7.0
— Многопользовательский режим и экранная клавиатура для входа в систему
— Поддержка широкого спектра сетевых технологий
— Технологии Windows Media Player 11 для рекламы и обучения
— Возможность удаления и добавления компонентов после установки системы
— Фильтр защиты от записи на уровне файлов (FBWF)
— Удаленный рабочий стол (Remote desktop Protocol) версии 6.1 с поддержкой Windows Server 2008 и функции Remote Application
— Поддержка сохранения дампа памяти на диске в случае краха системы
— Поддержка Microsoft Viewer 2007, Microsoft Silverlight 2 и Microsoft SQL 2008 Express Edition
— Меню дополнительных вариантов загрузки при старте системы
— Поддержка шаблонов политик безопасности и обновление корневых сертификатов
— Функция защиты сетевого доступа (Network Access Protection)
— Поддержка OpenGL и DirectX
— Обновление операционной системы через Microsoft Windows Update
— Поддержка стандартных инструментов управления сетевыми ресурсами
— Поддержка XPS при установленном .NET Framework 3.5
— Поддержка утилиты MS Config
— Поддержка Microsoft Cryptographic Module для кэша SHA2 в X.509 проверке подлинности сертификатов
— Шифрование файловой системы (EFS)
— Поддержка двух мониторов
— Удаленный помощник
* — Устройство должно определяться подсистемой PnP Windows, иметь сервисный объект или быть поддерживаемым унаследованным OPOS устройствам.
Развертывание и обслуживание системы
Windows Embedded POSReady 2009 предоставляет широкие возможности по развертыванию и обсуживанию системы, включая все стандартные средства, доступные для операционных систем семейства Windows XP.
— Новая интерактивная установка на базе Windows PE 2005
— Возможность установки с USB флеш дисков и на твердотельные накопители
— Возможность адаптации образа на этапе установки и наличие трех типов установки: стандартная, полная и выборочная. Последняя позволяет выбирает необходимые компоненты, которые будут включены в образ.
— Автоматическая установка с использованием Unattended Installation
— Поддержка удаленной загрузки по сети
— Поддержка утилит Sysprep и FBReseal для клонирования образов
— Удаленная установка при помощи Remote Installation Service
— Загрузка с USB дисков включая жесткий диск и USB flash.
— Поддержка семейства продуктов System configuration and monitoring using Microsoft System Center (SCCM/SMS) для централизованного развертывания, управления и мониторинга устройств на базе POSReady 2009.
Совместимость приложений
POSReady 2009 поддерживает программы, созданных на базе языков программирования Microsoft C#, VB.NET, Visual Basic, Visual C++, Visual J++, Visual FoxPro а так же любой другой язык, который используется для написания программ под or Windows XP. Производители так же могут использовать многочисленные Win32 приложения, сервисы и модель драйверов, написанные под Windows XP.
POSReady 2009 предоставляет дополнительные средства для быстрого создания POS приложений с поддержкой индустриальных стандартов:
— Поддержка .Net Framework 3.5 и POS for .Net 1.12
— Совместимость с приложениями, написанными для Windows 9X, Windows NT, Windows 2000.
Cрок доступности и поддержки
Windows Embedded POSReady 2009 выпущен 1 января 2009 года. Согласно правилам лицензирования и поддержки встраиваемых продуктов, операционные системы Windows Embedded обладают расширенной поддержкой до 10 лет и доступностью лицензий до 15 лет. Данная политика предоставляет разработчикам устройств более плавно переходить на новые версии операционных систем и защитить будущие инвестиции.
Более подробно о политике обновления Майкрософт
Скриншоты:
microsoft-windows-embedded-posready-2009-sp3-x86-multi-retail-box.torrent
На этой странице вы сможете скачать Microsoft Windows Embedded POSReady 2009 SP3 x86 Multi Retail Box последняя версия, без регистрации