iApplianceWeb.com

EE Times Network
News Flash Appliance Insights Appliance Directory Standards in IA Webcasts


 

Windows NT Embedded Under the Hood

By Michael Foley
iApplianceWeb
(06/27/01, 12:28:46 PM EDT)

It used to be that using Windows NT in an information appliance was like fitting a square peg into a round hole. Windows NT has been somewhat of a leviathan with bloated code rigidly structured for desktop PCs and servers that have standardized hardware platforms. On the other hand, information appliances have varied requirements, so the operating systems (OSs) they use must be flexible enough to be customized to different hardware platforms and multiple specifications. Now Microsoft has tailored NT so that it can fit into a range of iAppliances that require high performance Web services and have the necessary hardware resources to handle NT's high overhead. A version called Windows NT Embedded 4.0 (NT Embedded) was designed to meet these challenges. NT Embedded specifically addresses the needs of high-end iAppliances, such as application specific servers, set top boxes, gateways, and gaming platforms.

Embedded Appliance Platform Group
NT Embedded, along with Windows CE, are the foci of Microsoft's Embedded and Appliance Platform Group (EAPG). The EAPG's main purpose is developing operating systems, Web services, multimedia, and software applications for iAppliance and embedded platforms. Their strategy revolves around OSs that deliver adaptable, scalable platforms for network enabled devices. To truly understand NT Embedded, one must first examine the similarities and differences between Window CE and NT Embedded.

NT Embedded 4.0 was developed for high-end information appliances and embedded systems; whereas, Windows CE was targeted for lower-end devices with limited resources. Together they provide a set of scalable operating systems and tools based on the WIN32 API for systems using 32-bit (and higher) processors.

Similarities between Windows NT Embedded and Windows CE include:

  • Support for x86 processor family
  • Support for a large variety of hardware and software components
  • A modular architecture approach
  • Support for multiple networking protocols
  • Support for secure communications
  • Visual Studio Development Environment

Differences between Windows NT Embedded and Windows CE are:

  • Windows NT Embedded supports all applications for desktop NT version; Windows CE has support for additional processor families and offers a high degree of adaptability within the hardware platform
  • Windows NT Embedded supports the full Win32 API set; Windows CE supports a subset of the Win32 API set
  • Windows NT Embedded has soft real-time support with third party software; Windows CE has hard real-time support
  • Windows NT Embedded supports symmetric multiprocessing (SMP)
  • Windows NT Embedded supports C2-level security
  • Windows CE has a smaller footprint
  • Windows CE has lower power requirements for battery-powered devices

Microsoft Embedded OSs Provide Scalability

Figure 1: Microsoft's Embedded OSs Provide Scalability

Kicking the Tires
NT Embedded differs from its desktop relative with its modularized design that uses software components that can be added or removed depending on the requirements. NT Embedded supports all the software applications that can be run on the desktop version and will be so compatible that future embedded versions will be released approximately 90 days after the desktop version. That means applications such as Office, IIS, SQL, Windows Media Player, and DirectX are all offered in NT Embedded. NT Embedded only supports x86 based processors and requires 12MB of memory and 8 MB of persistent storage for a minimal build. NT Embedded has no native real-time support, but third parties, like VenturCom, will provide extensions for soft real-time support. Embedded features, including headless support, read-only boot, solid-state media support for diskless operation, and remote management, are provided for in NT Embedded.

The next version of NT Embedded will be known as Windows XP Embedded (XP Embedded). It will have built-in componentization technology and embedded features like XIP (execute-in-place), compact PCI, a smaller footprint, a better toolkit, and XML, SOAP, and UDDI support. XP Embedded will be fully integrated into Microsoft's .NET strategy for a more network aware OS platform. XP Embedded is expected to ship in the 4th quarter.

Development Tools
Development tools for NT Embedded include: Visual Studio, Target Designer, and Component Designer. Visual Studio is the same development environment used on the desktop version. Software development can be done with Visual C++, Visual Basic, or Visual InterDev, using Win32 APIs, MFC, ActiveX controls, COM, and DCOM.

Target Designer tailors the build process for NT Embedded systems and creates a bootable NT operating system with custom components and applications for an iAppliance or embedded system. It also has a graphical development environment that displays a Windows NT configuration at a component level for developers to customize for their applications.

Target Designer

Figure 2: Target Designer Configures Windows NT Embedded

Component Designer creates custom components that can be added to the Target Designer configuration and provides wizards and a graphical display to create component definition files. These components provide additional enhancements for NT Embedded. The component definition file defines the components that are listed in the Target Designer. The components are imported into the Target Designer so that they can be added to the NT Embedded build process.

Microsoft Embedded OSs Provide Scalability

Figure 3: Components Designer Builds Components Used in Windows NT Embedded

Server Appliance Kit (SAK)
Microsoft has recently released the Server Appliance Kit (SAK) to speed up development of application specific server appliances such as caching servers, Web servers, and storage servers. Though the initial release of the SAK is based on Windows 2000, future versions will be packaged into NT Embedded's next version, XP Embedded. SAK is a toolkit designed to help developers and OEMs expedite the building of server appliances. SAK supports headless operation and can be managed remotely through Web-based management, SNMP, or Telnet. It is built for high availability systems and contains reliability features like watchdog timers, bios fail-over, automatic mirroring, and appliance monitoring service.

SAK includes:

  • Hardware Reference Specifications
  • Device Driver Kit
  • Software Components for NAS and Web Server Configurations
  • Software Development Kit
  • Documentation

SAK

Figure 4: SAK Speeds Up the Development of Application Specific Server Appliances

Stiff Competition
NT Embedded will see plenty of competition, especially from the Linux crowd. Linux is somewhat similar in nature to NT Embedded in that it also was born from the desktop environment, has modular software components, and possesses comparable support for security, networking, and Web services. However, Linux's main benefit to most of its users (other than the fact its not Microsoft) is its open source model with low cost for development and no licensing fees, though this is changing for some Linux platforms. Linux, with its large development community, provides quite a challenge for NT Embedded in the high-end iAppliance arena.

Bottom Line
Due to the pressure from Linux, Microsoft is slightly modifying the way it licenses to developers and OEMs. It has created the Windows Embedded Startup Program (WESP) to encourage new companies to use Microsoft's embedded platforms. WESP provides access to grants for free tools and run-time licenses for qualified companies.

For most companies building and selling devices, using Windows NT Embedded 4.0 requires two separate steps:

  • A copy of Windows NT Embedded 4.0, which contains Target Designer, is required to create a customized Windows NT Embedded 4.0 image.
  • A runtime operating system license is required to sell devices that use the customized Windows NT Embedded 4.0 image that is created by Target Designer.

Windows NT Embedded 4.0 with Target Designer and runtime licenses can be obtained from Microsoft's distributors, who include:

  • Avnet Applied Computing
  • Arrow Electronics
  • Annasoft Systems
  • BSquare Corp.
  • VenturCom, Inc.

NT Embedded was Microsoft's initial foray into delivering a more feature rich OS for iAppliances. It lacked certain features required for high availability server systems, but it provided Microsoft with a lesson on what was needed for future versions. It appears XP Embedded will capitalize on some of this knowledge. The SAK is also a step in the right direction for providing a more turnkey environment for bringing iAppliances to market faster.




Copyright © 2004 Appliance-Lab
Terms and Conditions
Privacy Statement