|
|
Windows CE .NetMicrosoft's ambitious successor to Windows CE 3.0 (May 2002 issue)
CE.Net was announced on January 7, 2002, at the Consumer Electronics Show (CES) in Las Vegas, Nevada. CE .Net is Windows CE version 4.0, the successor to Windows CE 3.0. Why didn't Microsoft simply name it "CE 4.0"? Because Microsoft marketing wants to make it perfectly clear that everything Microsoft does in 2002 is related in some way to their grand strategy, .Net. How exactly does Windows CE relate to .Net? CE 4.0 supports the basic building blocks of .Net - HTTP, XML, SOAP and UDDI. (See the sidebar on .Net for a basic explanation of what it's all about.) From a programmer's point of view, that's a good thing. It enables writing more powerful and capable software, particularly applications that involve distributed computing.
For the record, the Microsoft positioning statement on CE .Net is that it's "a robust real-time operating system for rapidly building the next generation of smart mobile devices." During development, CE .Net was code-named "Talisker," a brand of single malt Scotch whisky. The next version (CE 5.0) is code-named "Macallan," another brand of single malt Scotch whisky.
In the last two years, Windows CE has expanded beyond a standalone operating system to become an important "enabling technology." CE is the general-purpose foundation upon which other Microsoft groups build platforms aimed at specific device markets. Within Microsoft, the Pocket PC, Handheld PC, SmartPhone (formerly "Stinger"), Automotive PC, TV Set-Top Box and MSN Web Companion groups are all "customers" of the Windows CE platform group. Microsoft calls these "go-to-market solutions" groups. Each customer group adds value unique to their product and markets the resulting software. For example, Pocket PC 2002 is built on top of Windows CE 3.0. Pocket PC 2002 defines a target hardware platform (quarter-VGA display, ARM processor, etc.) and then adds a shell (APIs) and PIM applications that are optimized for that platform. Pocket PC 2002 also includes enhancements to Windows CE 3.0, such as multiple ROM execute-in-place (XIP) regions that make upgrades easier. In most cases, OS enhancements added by the "go-to-market solutions" groups are migrated back into the Windows CE platform, so that all the groups eventually benefit.
What the enterprise market seems to want for vertical applications is "a Pocket PC with a larger screen." This is a product that can run enterprise Pocket PC applications, but with more screen geography. Today a Pocket PC application won't run on a larger-screen device using plain CE 3.0 or HPC 2000 because the Pocket PC shell (APIs) and PIM applications are only available on the Pocket PC platform. Because of the strong success of the Pocket PC platform, the Pocket PC group has been able to keep most of their added value exclusive to the Pocket PC.
According to Kim Ackers, a Director in the Embedded and Appliance Platform Group, this situation is about to change. During a breakfast meeting at DevCon 2001 (the Microsoft embedded systems developer's conference in December), Ackers said that Microsoft intends to migrate the Pocket PC shell and applications back into the Windows CE platform (against the Pocket PC group's wishes). This would allow running Pocket PC applications on larger-screen devices. Todd Brix, a product manager who works for Ackers in EAPG, said that according to Bill Gates, EAPG's strategy should be to "let a thousand flowers bloom." Brix said this meant that it was better to open up access to the Pocket PC group's APIs and let many OEMs create products using them ("enable Microsoft software everywhere"), instead of letting the Pocket PC group keep them exclusive to the Pocket PC platform. Exactly when this change might happen is unknown.
Some of the most interesting new features that expand CE's capability include the following:
Bluetooth: CE includes native support to allow a device to use a Bluetooth-enabled cellphone as a data modem, and to use a Bluetooth enabled LAN access point for network connectivity. CE is the first Microsoft OS to formally support Bluetooth; it was omitted from XP because Microsoft was unable to find enough Bluetooth hardware to adequately test it in time for XP's October 2001 release.
802.11 Zero Configuration: This feature, new also in XP, simplifies setup of WLAN networks and enables seamless roaming from one 802.11 network to another.
Media Sense: Applications can now be notified of network status. This means that an application can be designed to seamlessly handle transferring between an 802.11 network and a WAN network such as GPRS, including provision for an offline mode between networks.
Real-Time Communication: RTC enables messaging, presence and audio (Voice over IP) between any two IP-enabled devices. This feature allows a CE .Net-based device such as Fujitsu's new iPAD handheld to function as a cordless telephone (using WLAN and VoIP).
Remote Desktop Protocol: RDP allows a thin client, such as a Windows-based terminal, to communicate with a server across a LAN, WAN, dial-up, ISDN, DSL or VPN connection. RDP is the basis for communications between the "Mira" wireless monitor and a home PC (see the sidebar on "Mira" in the "Tablet PC Update" article in this issue).
Internet Explorer 5.5 for CE: This is an essential enhancement; it brings CE up to the current level of browser functionality.
Enhanced Multimedia Support: CE now includes Direct3D, DirectDraw, DirectMusic, Wave/DirectSound, DirectShow, DirectX, DVD-Video, Windows Media, MP3, and Digital Rights Management (DRM). These features enable 3D graphics, DVD decoding, music & MIDI through sound hardware, gaming, multimedia streams, and playing encrypted copyrighted content. This goes far beyond CE's previous support for multimedia.
Customizable ("Skinnable") User Interface: CE now allows customizing common controls (buttons, check boxes, scroll bars, etc.) and other user interface elements. This allows an OEM to make a substantial change in the appearance of a CE-based device.
Multiple-Screen Support: Multiple screens can be connected to a CE device and can even function as one large screen. This has applications in point-of-sale (POS) devices, for example, in a retail grocery store where the checker and the customer can each have their own screen.
Dynamic Screen Rotation: CE now includes the ability to rotate the screen in 90-degree increments.
Microsoft Clear Type Support: This is an example of an OS enhancement from the Pocket PC group that was migrated back into the core OS.
Protected File Storage: The RAM area in CE used for file storage (the "object store") is now protected by the CE kernel. This prevents data tampering, and the protected-store API provides the ability to encrypt user data.
Integrated RAM/ROM File System: File systems can be supported on devices other than RAM, such as HDD or flash memory. The registry can also reside on any file system.
Storage Device Drivers: CE now includes fully functional ATA/IDE drivers for HDD, CD-ROM, DVD, FDD and PC Cards.
Device Notification: Device drivers and applications can register with the device notification system to be notified when a device of interest appears or disappears. This makes it much easier to manage peripherals on a CE device.
Security: There is a substantially increased emphasis on security in all Microsoft products, not just in CE. This new version of CE introduces 802.1x and Extensible Authentication Protocol (EAP). 802.1x and EAP together enable user/password, certificate or OEM-specific authentication for network log-ons. Kerberos security protocol and Secure Socket Layer (SSL) are also included; these provide the same client-side authentication mechanism that's used in Windows 2000.
Enhanced Language Support: A new operating system version, application support and Input Method Editors (IME) for simplified and traditional Chinese; enhanced Japanese IME; OS, application support and IME for Korean; handwriting recognition engine for Korean, Traditional Chinese and other languages. (An IME is the module that supports entry of characters from any device - such as a pen - into the OS.)
Emulation: CE includes an exceptionally good emulator that enables application software developers (ISVs) to build and test device-specific applications under Windows 2000 or XP without having actual CE device hardware. This can represent a significant cost saving for the ISV during the development of a new CE hardware device, since early prototype hardware is often quite expensive (e.g., $5K per device).
Real-Time Performance: CE has been enhanced for use in devices such as industrial controllers that require high-performance real-time response to interrupts. The response time has been shortened ("low latency") and the maximum response time has been reduced ("bounded deterministic system performance"). This allows CE to claim it has a "hard real-time kernel," in RTOS jargon. Other enhancements to support real-time include capabilities such as nested interrupt support and protected virtual memory.
Support for XML and SOAP: XML and SOAP are basic building blocks used in writing applications that access web services.
Support for .Net Compact Framework: This is a hardware-independent program development and execution environment for applications on resource-constrained CE devices. It's a fundamental part of support for .Net.
Passport Authentication: CE .Net includes Passport, which can eliminate the need for developers to build proprietary customer-authentication systems.
Standard Software Development Kit (SDK) for CE .Net: Using the standard SDK allows developing applications with what Microsoft calls "near-global portability" across all devices built with CE .Net. As noted earlier, applications written for Pocket PC 2002 won't run on devices running "plain" CE 3.0 or HPC 2000, so this is a move in the right direction.
Additional capabilities and tools have been added to CE to make the system developers' life easier, including such things as a procedure call profiler to identify performance bottlenecks, a kernel thread profiler to help track down timing problems, and a shared debug Ethernet driver that allows an application and the debugger to share a single Ethernet port.
Windows Embedded Home |
|
All contents ©1995-2002 Pen Computing Magazine, Inc. All rights reserved. Unauthorized reproduction in any form is strictly prohibited. Contact the Pen Computing Publishing Office for reprint information. |