Windows XP Embedded Das bringt das Feature Pack 2007

Autor / Redakteur: Autor: Rudi Swiontek / Martina Hafner

Weil es ein Windows Vista Embedded nicht geben wird, muss das aktuelle Windows XP Embedded noch einige Zeit halten. Mit einem Feature Pack 2007 hat Microsoft daher im letzten Jahr Funktionen nachgerüstet, unter anderem bei Systemstart, Ressourcen-Verbrauch und Sicherheit. Wer bisher noch nicht umgestiegen ist, sollte dies noch in Betracht ziehen – denn die Erweiterung lohnt.

Anbieter zum Thema

Windows XP Embedded ist eine komponentenbasierte Version von Windows XP Professional für den Einsatz im Embedded-Bereich. Die Auswahlmöglichkeit aus ca. 12.000 verschiedenen Komponenten und Treibern ermöglicht es, optimal angepasste Windows-Images ohne überflüssige Funktionen zu erstellen. Da Windows XP Embedded voll Win32-kompatibel ist und alle Treiber für Windows XP verfügbar sind, macht dies die Anwendungsentwicklung sowie die Benutzung von Peripherie-Hardware denkbar einfach. Der erprobte XP-Kernel und die neuen Features im Service Pack 2 für Windows XP garantieren Stabilität und Sicherheit.

Den robusten Einsatz von XP Embedded unter Embedded-Bedingungen machen die so genannten Embedded Enabling Features (EEF) möglich. Dazu gehören u.a.:

  • Unterstützung alternativer Bootmedien wie CD-ROM oder Flash,
  • Enhanced Write Filter, der die Systempartition vor Schreibzugriffen schützen kann (diese werden auf ein sogenanntes Overlay umgelenkt; dies kann der RAM-Speicher sein, aber auch ein andere Partition der Festplatte),
  • Unterstützung für Headless Devices ohne Bildschirm, Tastatur und Maus,
  • Tools für die Fernwartung,
  • Austausch der Standard-Oberfläche von Windows XP durch eine Custom Shell.

Werkzeuge für das XP-Embedded-Betriebssystem im Überblick

Werzeuge für Windows XP Embedded: Mit dem Target Analyzer Probe werden die Hardware-Eigenschaften des Zielsystems erfasst und in eine XML-Datei abgelegt. Der Target Designer sucht dann aus der SQL-Datenbank die Komponenten für das XP-Embedded-Image heraus. (Archiv: Vogel Business Media)

Für die Entwicklung unter Windows XP Embedded stehen folgende Werkzeuge zur Verfügung:

TAP: Mit der Target Analyzer Probe werden die Hardware-Eigenschaften des Zielsystems erfasst und in eine XML-Datei (devices.pmq) abgelegt.

TD: Der Target-Designer importiert diese Datei und sucht aus der angeschlossenen SQL-Datenbank die dazugehörigen Komponenten für das XP Embedded Image heraus. Für die Software-Funktionskomponenten werden Design-Templates (z.B. Multimedialösungen) zur Verfügung gestellt. Auch Einstellungen wie die Konfiguration der Boot-Partition, die Eingabe des PID (XPe Lizenzierung), das Einrichten von Anwendern und die Erzeugung eines bootfähigen Images gehören zu den Aufgaben im TD.

KD: Mit dem Komponent-Designer wird über den Import-Filter aus der Datei USB.inf die Komponente USB.sld erstellt. Eine Komponente enthält z.B. Dateien, Registry-Einstellungen und Abhänigheiten zu anderen Komponenten.

KDM: Der Komponent-Database-Manager verwaltet die in der SQL-Datenbank liegenden Komponenten.

Eigenschaften und Bestandteile des Feature Pack 2007

Neu im Feature Pack 2007 für Windows XP Embedded sind u.a. eine USB-Boot-Komponente, ein File-Based Write-Filter, ein Kommandozeilen-Tool für die Image-Generierung sowie diverse Komponenten und reduzierte Abhängigkeiten zwischen den bekannten Komponenten. Windows XPe wird nicht in Source Code ausgeliefert, sondern als Sammlung binärer Komponenten, welche neben den Binärdateien auch zugehörige Registry-Einträge, Ressourcen sowie Abhängigkeiten von anderen Komponenten enthalten und so typische Windows-Funktionalitäten kapseln. Die SQL-Komponentendatenbank von XPe kann um eigene als Komponenten gekapselte Anwendungen erweitert werden, hierbei hilft der Component Designer. Die Konfiguration des Windows-Images selbst erfolgt mittels des Target Designers.

Beim Einsatz von Windows XPe ist zu beachten, dass es im Gegensatz zu Windows Embedded CE nur auf der Standard-PC-Plattform mit x86-kompatiblen Prozessoren eingesetzt werden kann und keine harte Echtzeit unterstützt. Dies ist aber mittels spezieller Produkte von Drittanbietern wie z.B. Tenasys INtime oder Kuka CeWin zu erreichen.

File-Based Write Filter schützt einzelne Partitionen vor Schreibzyklen

Architektur des File-Based Write Filter (FBWF): Er ermöglicht es, einzelne Dateien einer Partition vor Schreibzyklen zu schützen. (Archiv: Vogel Business Media)

Bisher konnte man mit die Enhanced Write Filter (EWF) für eine komplette Partition entweder ein RAM oder Disk Overlays einrichten um die Partition vor Schreibzyklen zu schützen. Mit dem neuen File Base Write Filter (FBWF) ist es nun möglich, einzelne Dateien einer Partition zu schützen, damit das System beim nächsten Start wieder in der definierten Ausgangskonfiguration hochfährt.

Beschleunigung des Systemstarts mit HORM

HORM (Hibernate Once Resume Many) unterstützt das schnelle Booten durch eine Hibernate-Datei (hiberfil.sys). Dabei wird nach einem Bootvorgang das komplette RAM mit allen Einstellungen (z.B. Registry) in diese Datei geschrieben. Nach einem Neustart werden die Daten der Datei wieder ins RAM kopiert. Im TD wird in der EWF-Komponente die HORM-Funktion eingeschaltet. Wichtig hierbei ist, dass das XPe-Image von der ersten Partition einer Platte gebootet wird.

Registry Filter, USB Boot und Internet Explorer 6

Mit der Registry-Filter-Komponente ist es nun möglich, auf einer geschützten Partition zwei Registry-Einträge freizuschalten. Diese Einträge sind notwendig für den Betrieb an einer Domäne, da der Server nach einiger Zeit folgende Registry-Einträge aktualisiert:

1. Enable TSCAL persistence,

2. Enable Domain Secret Key persistence.

Die Komponente USB Boot erlaubt es, von einem USB-Stick (Flash) zu booten. Vorraussetzung ist, dass das BIOS USB 2.0 und das Booten von USB-Flash unterstützt. Das USB_Booten ist eine kostengünstige alternative zum Compact Flash. Der First Boot Agent (FBA) unterstützt das Versiegeln der Images durch fbreseal-Kommandos nicht nur beim Booten von USB sondern von jedem Medium.

Viele Eigenschaften von Windows XP Embedded sind vom Internet Explorer abhängig. Folgende Komponenten sind betroffen: .NET Framework 1.1, Help und Support Services, HTML Rendering Engine, IMAPI - CD Burning, Internet Connection Wizard, Microsoft Vector Graphics Rendering (VML), Outlook Express, Shell Namespace, Extensions, Soap Client Runtime, Windows .Net Messenger, Windows Media Player 10.0, Windows Movie Maker. Dem Internet Explorer wurde ein neues User Interface zum Konfigurieren des Pop-up Blockers hinzugefügt.

Befehlszeilen-Tool XPECMD.WSF

Das XPE Command-Lline Tool stellt eine Schnittstelle zum Component Management Interface (CMI) bereit, das die Basis für alle Tools von Windows XP Embedded darstellt. (Archiv: Vogel Business Media)

Das XPe Command-Line Tool (XPECMD) ist ein scriptfähiges Interface zum Component Management Interface (CMI), welches die Basis für alle Windows XP Embedded Tools ist. Damit kann der komplette Image-Generierungs-Prozess in eine Versionsverwaltung abgelegt werden.

XPECMD ermöglicht es, viele der gleichen Aufgaben wie die GUI-Werkzeuge (Target Designer) durchzuführen: das Erzeugen und Öffnen der Runtime-Konfigurationen, das Hinzufügen, Ändern und Entfernen von Komponentenabhängigkeiten sowie Importieren der Komponenten in die Datenbank.

Hier einige Aufgaben:

1. Starten des Programms cmd

2. cd C:\Program Files\Windows Embedded\bin

3.Programm ausführen:

Starten des Command Line Tools

cscript.exe //H:cscript //S

XPECMD

4. Verbindung mit der Datenbank

xpecmd> dbopen local ;

5. Laden einer existierenden Runtime-Konfiguration (SLX File)

xpecmd> load cfg „c:\myimages\image.slx“

Oder Erzeugen einer neuen Runtime Konfiguration

xpecmd> new cfg Configuration

6. Eine Komponent zur Konfiguration hinzufügen

xpecmd> new myInst Instance

xpecmd> myInst = ‚inst:^Internet Explorer‘

xpecmd> cfg.Instances.Add myInst

oder

xpecmd> cfg.instances.add ‚inst:^Internet Explorer‘

7. Boot-Parameter und PID einstellen:

xpecmd> cfg.properties („cmiPID“) = „K8Q47-xxxx-usw“

xpecmd> cfg.Properties („cmiTargetBootDrive“)=“C:“

xpecmd> cfg.properties („cmiTargetWinDir“)=“C:\WINDOWS“

xpecmd> cfg.properties („cmiTargetProgramFiles“)=“C:\Program Files“

xpecmd> cfg.properties

(„cmiBootArcPath“)=“multi(0)disk(0)rdisk(0)partition(1)“

xpecmd> cfg.properties („cmiTargetDocsAndSettings“)=“C:\documents and settings“

8. Speichern der Konfiguration:

xpecmd> save cfg „C:\image\UART_Image.slx“

9. Bilden eines Runtime-Images

xpecmd> build /f cfg „c:\image\UART_Image“

xpecmd> cfg.ResolveDependencies 0

xpecmd> cfg.checkdependencies 0

xpecmd> build /f cfg „C:\Windows Embedded Images\UART_Image“

xpecmd> dbclose

10. Importieren einer Komponente in die Database

11. Vollautomatischer Ablauf

Alle Kommandos befinden sich in UART_Image.res

cd C:\Program Files\Windows Embedded\bin

xpecmd @C:\image\UART_Image.res /log:C:\image\UART_Image.log

*Dipl.-Inf. Rudi Swiontek ist für die HILF! GmbH in den Bereichen Schulungen und Entwicklung tätig und Spezialist für Windows-Betriebssysteme. Kontakt: Rudi.Swiontek@hilf.de

Artikelfiles und Artikellinks

(ID:247935)