Roadmap for Section 9.3 Windows XP Embedded Design Goals - - PDF document

roadmap for section 9 3
SMART_READER_LITE
LIVE PREVIEW

Roadmap for Section 9.3 Windows XP Embedded Design Goals - - PDF document

Unit OS9: Real-Time and Embedded Systems 9.3. Embedded Systems with Windows XP Embedded Windows Operating System Internals - by David A. Solomon and Mark E. Russinovich with Andreas Polze Roadmap for Section 9.3 Windows XP Embedded Design Goals


slide-1
SLIDE 1

1

Windows Operating System Internals - by David A. Solomon and Mark E. Russinovich with Andreas Polze

Unit OS9: Real-Time and Embedded Systems

9.3. Embedded Systems with Windows XP Embedded

3

Roadmap for Section 9.3

Windows XP Embedded Design Goals Development Tool Support OS Configuration Process Overview XP Embedded vs. Windows CE XP Embedded Enabling Features

slide-2
SLIDE 2

2

4

Windows XP Embedded Design Goals

Binary Compatibility with Windows XP Rich Operating System Functionality Small Operating System Size Modular and Compact Embedded Enabling Features Development Tool Support

5

Binary Compatibility with Windows XP

Windows API Support

By including the proper components in a build, any application that can run on Windows XP can also run on Windows XP Embedded

Windows Driver Model (WDM)

Allows the use of existing Windows XP drivers on a Windows XP Embedded build

Componentized XP Functionality

Includes a database containing components Components contain all the necessary information required for the development tools to include their specific functionality into the operating system

slide-3
SLIDE 3

3

6

Rich Operating System Functionality

Features of Windows XP - built on Windows NT/2000/XP code base

Protected Memory Model Scalable Memory / SMP Support Security Multimedia support Management Communications / Networking support

7

Small Operating System Size

Kernel Baseline Configuration

Kernel, No Network, No Explorer Shell ~5 MBytes of Disk Space

Minlogin

Networking Support, Shell ~15 MBytes of Disk Space (12MBytes NTFS compressed)

Winlogon

~56 MBytes of Disk Space (37MBytes NTFS compressed)

slide-4
SLIDE 4

4

8

Modular and Compact

Componentized Windows XP

Components created during development

What is a component?

The smallest individually selectable piece of functionality that can be included or excluded from a run-time image.

10,000+ Components in Component Database Example of Components:

MatroxMillennium G400 (Display Adapter) Basic TCP/IP Networking (Networking and Communication) Explorer Shell (User Interface)

Component Groups

Display Adapters Network Protocols Network Adapters Tools and Utilities

9

Development Tool Support -

Windows Embedded Studio

Target Designer

Builds custom operating system

Component Designer

Customize and expand the capabilities of the operating system

Component Database Manager

Provides management functions for the component database and the repositories

Development Utilities

Target Analyzer

Used to discover target hardware

BootPrep

Used to prepare target media

slide-5
SLIDE 5

5

10

Windows Embedded Studio

Installation Options

Supported Installation Scenarios

Standalone User Install Tools Only Install Shared Component Database Install

The complete product is contained in two separate installation packages

1.

Tools Installation Package

2.

Component Database Installation Package

11

Windows Embedded Studio

Detecting Target Hardware

TAP.exe

Most functional Target Analyzer probe Runs only on Windows 2000 or XP Generates a small hardware definition file

TA.exe

Basic Target Analyzer probe Runs on MS DOS (via boot floppy disk) Generates a small hardware definition file

slide-6
SLIDE 6

6

12

Windows Embedded Studio

Component Designer

Primary tool used to author custom components Generates a ‘Component Definition’ file (.SLD) Captures file, registry, and dependency information for a discrete set of functionality Importing of .INF files is supported for easy creation of driver components

13

Windows Embedded Studio

Component Database Manager

Provides functionality to allow management of the component collection

Allows importing of .SLD files into the database (for Target Designer use) Management of Repository locations Management of Component Packages View complete database contents Change the Component Database Server name

slide-7
SLIDE 7

7

14

Windows Embedded Studio

Target Designer

Target Designer is the tool used to build runtime images Generates a ‘Configuration’ file (.SLX) Import a hardware definition file

Matches components in the database with PnP IDs found by TAP/TA and adds them to the configuration

Disable non-critical devices in the configuration

Can significantly reduce footprint by removing devices (and their associated dependencies) from the runtime image

15

Design Templates

Project Starting Points

Advanced Set Top Box Basic Set Top Box Digital Set Top Box Home Gateway Information Appliance Kiosk/Gaming Console Network Attached Storage Retail Point of Sale Terminal Windows Based Terminal Professional

slide-8
SLIDE 8

8

16

Target Analyzer

Target Designer

Base OS configuration Auto-generated Add Features to Base OS Config

>10,000 individual components Macro Components Design Templates

Runtime OS Image

Process Overview

Check Dependencies Add your components: Component Designer

.SLD’s contain information for component to “build itself”: Properties, Resources, etc. Auto-conversion of .INF’s Verify relationships, add/delete components Build order established Task Lists

Build Process

Ensures components built in right order Allows special case logic and fully scripted build process

17

XP Embedded vs. Windows CE 3.0

Platform Builder / eMVT Target Designer and Component Designer / Visual Studio Development Tools Yes Required 3rdParty Add- Ons Real-Time Fine-tuned for size derivative of NT Driver 100% compatibility with XP Professional Device Drivers x86, MIPS, SHx, ARM, PPC x86 CPU Support Best of Windows API plus CE Specific enhancements Full Windows API API Support 500 k –16MB 5MB -56MB Disk Space Windows CE 3.0 Windows XP Embedded Feature

slide-9
SLIDE 9

9

18

XP Embedded -

Target System Requirements

Intel Pentium II or higher CPU required ACPI PnP BIOS recommended Storage

Flash / DiskOnChip/ CD-ROM 5 MB Minimum (depends upon functionality)

Memory Requirements

64 MB Minimum (depends upon functionality)

19

Application Development

Utilize existing off-the-shelf applications

Full Windows API support Little or no porting required

Rapid application development

Use familiar tools to write applications

slide-10
SLIDE 10

10

20

Embedded Enabling Features

Alternative Non-Volatile Boot Media

CD-ROM, DiskOnChip, Flash

Enhanced Write Filter Technology

Allows the Windows XP Embedded operating system to boot from any read-only media

Remote Management

Facility that can be used to acknowledge system error dialogs without requiring user interaction

Headless Operation

Install, configure, maintain and run diagnostics on the system in a manner that does not require user intervention

Custom Shell

Allows the default shell to be replaced with another application

21

Headless Operation

A system without Display, Keyboard, Mouse

Null Driver required

Must be supported by BIOS Replace user input from the console with another input method

Operating system and Applications may still create message boxes Solution: System Message Interception

Management

Solution: Remote Administration

Required Components:

Headless VGA Driver -or- Terminal Services Core VGA Boot Driver Component

slide-11
SLIDE 11

11

22

System Message Interception

Acknowledges message box

Selection of default reply Re-direct to Event Log

Custom Application

23

System Message Interception

(Continued)

Intercept message boxes only

Provided by User32.dll Requires proper registry settings

Write a custom service to monitor all windows

Build a Windows Service to scan desktop

slide-12
SLIDE 12

12

24

Enhanced Write Filter

Allows booting from read-

  • nly media

Protects operating system partition

Not necessary to redesign applications

Enhanced Write Filter Overlays

EWF redirects information from the disk to overlays If the information redirected to the overlay is later requested, it is obtained from the overlay instead of from the actual protected media

Enhanced Write Filter Components

25

Overlay Options

EWF can be configured by applying to multiple volumes, each of which may have multiple overlays Disk Overlay

Using EWF Volume

EWF Master Volume Table, Overlay stack and Overlay data are stored in the EWF volume After reboot information retained

RAM Overlay

Enables stateless operation –After reboot all changes lost Run without any read/write storage

slide-13
SLIDE 13

13

26

Enhanced Write Filter Settings

EWF Volume Settings

Specify the number of protected volumes, the maximum number of overlay levels, the EWF partition size, and whether

  • verlay configurations are stored in the system registry or in

the EWF partition

Protected Volume Settings

Enable Lazy Write

Optimal Performance Use less overlay space Use less overlay space & less writes

27

Bootable CD-ROM & Flash Media

Bootable CD-ROM appears as a hard-drive

Requires:

A BIOS which supports the El Torito Spec. El Torito Component Enhanced Write Filter Component

DiskOnChip

Requires: “M-Systems DiskOnChip2000” Component CompactFlashTM, PCMCIA Flash cards, flash drives

Appear as an ATA drive Requires no special components Enhanced Write Filter / FAT File System recommended

slide-14
SLIDE 14

14

28

Remote Management

Telnet Server

Provides a gateway for Telnet clients When Telnet Server is running on a computer, users can use Telnet clients to connect to it from a remote computer

FTP Server

Used to copy files to and from remote computer systems on a network using TCP/IP, such as the Internet

Remote Desktop –Terminal Services

Provides remote access for the desktop of a computer that is running Terminal Services

Windows Management Instrumentation (WMI)

Provides management information and control in an enterprise environment

Simple Network Management Protocol (SNMP)

Configures remote devices, monitor network performance, audit network usage, and detect network faults or inappropriate access

29

Shell Customization

Windows XP Embedded allows you to have the system use a custom shell

Explorer Shell Command Shell Task Manager Shell Building Custom Shell Components

slide-15
SLIDE 15

15

30

Further Reading

James Beau Cseri, Windows XP Embedded Step by Step: Hands-On Exercises for Real World Engineering, Annabooks/RTC Books, 2003. Sean D. Liming, Windows XP Embedded Advanced, Annabooks/RTC Books, 2003. Mark E. Russinovich and David A. Solomon, Microsoft Windows Internals, 4th Edition, Microsoft Press, 2004.

Chapter 2 - System Architecture (from pp. 35)

31

Source Code References

Windows Research Kernel sources do not include Embedded XP-specific components

However, since Embedded XP uses the same kernel image (Ntoskrnl.exe) as XP, the kernel sources in \base\ntos are applicable For more specific source code references, see the last slide in the relevant CRK units