When Microsoft released Windows CE, the company took its first real step toward markets outside the standard PC and server markets. By offering a lightweight version of Windows, Microsoft hoped to move into markets that devices such as 3Com's PalmPilot dominated. Although Microsoft hasn't been incredibly successful in that new segment, the company has developed a new line of Windows terminals (i.e., WinTerminals), and has had moderate success with Windows CE-based devices in the mininotebook market. My favorite Microsoft device with an embedded OS is the Microsoft Remote Control, a neat little universal remote that you can program from your computer and that makes using one remote for a variety of consumer electronics devices simple. Unfortunately, the Remote Control doesn't use Windows CE. Why? Because the Windows CE kernel is too large for the device. Therefore, Microsoft wrote a custom OS for it.
Realizing that no realistic one-size-fits-all approach exists for the embedded market, Microsoft recently released Windows NT Embedded 4.0. Aimed at markets that require a robust enterprise-strength OS (read UNIX), Embedded NT uses the same basic binaries that desktop NT uses, with additional DLLs to support the operating necessities of an embedded environment. These additional DLLs add features such as the ability to run headless (i.e., without a console), to run without a pagefile, and to be ROM-able. Microsoft also claims that third-party extensions will be available to make Embedded NT a realtime OS.
Embedded NT has a reasonably small footprint, requiring only 20MB (12MB of memory and 8MB of persistent storage) in a minimal configuration suitable for a standalone embedded device. Adding the pieces necessary for network connectivity, storage, and console support can double the storage requirements (to 16MB) and increase the memory footprint by a third (to 16MB).
Microsoft uses the Component Integrator technology it licensed from VenturCom (http://www.venturcom.com) in Embedded NT. The company based this permutation of the NT OS on the concept of componentized services. Here's how componentized services works. A developer using the Target Designer application picks and chooses among the available components in the Embedded NT OS. All of the features and functionality that the full releases of NT Workstation 4.0 and NT Server 4.0 contain are available to the developer, who need choose only the pieces that he needs or wants to tailor a version of the OS for his device. If the developer needs to add features that NT doesn't natively support, such as device drivers for proprietary hardware or for the application that needs to run on the embedded device, he uses the Component Designer application to package the features for Target Designer. After checking to make sure that all the pieces are in place, Target Designer's design and creation tools build a runnable system image for download to the target device.
The idea is to leverage the experience of Win32 developers to move NT into new markets. Unlike Windows CE, which runs on a variety of processor architectures, Embedded NT runs only on x86 architecture processors (e.g., Intel, AMD, Cyrix) and is not specifically designed to run in devices that require low power consumption (although the OS will support any power management you find in NT). We should soon see this OS turning up in devices such as network switches and routers, as well as network-appliance-style storage devices. To users already running NT-based networks, the biggest advantage of seeing Embedded NT in network devices will be the ability to treat the devices as they would any other NT system, at least from a management perspective.
Whether Microsoft can penetrate a market that UNIX dominates and that is known for the stability and reliability of the devices and applications it runs remains to be seen. In single-application environments, NT can be a very reliable and stable platform, without the blue screens of death and unexplained lockups that desktop environments with dozens of applications installed on a system experience. Will Embedded NT work? We'll let you know. As soon as business-targeted Embedded NT devices become available, we'll put them to the Windows NT Magazine Lab test.Corrections to this Article:
- In the July 1999 table of contents, the description of Lab Guys: "Embedded NT" incorrectly states that Windows NT Embedded 4.0 has a smaller footprint than Windows CE has. The article correctly explains that Embedded NT has a reasonably small footprint requiring only 20MB (12MB of memory and 8MB of persistent storage) in a minimal configuration suitable for a standalone embedded device. Adding the pieces necessary for network connectivity, storage, and console support can increase the memory footprint by one-third (to 16MB) and double the storage requirements (to 16MB). We apologize for any inconvenience these errors might have caused.