Microsoft Windows CE 3.0  

Windows CE Memory Architecture

This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.

In a Windows CE-based system, the ROM stores the entire operating system, as well as the applications that come with the system. If the program module is not compressed, ROM-based programs are executed in-place. If the ROM-based module is compressed, it is decompressed and then paged into RAM. All Read/Write data is loaded into RAM. Compression in ROM is controlled by the OEM. Executing programs directly from ROM saves program RAM and reduces the time needed to start an application because the program does not have to be copied into RAM before it is launched. Programs that are not in ROM but are contained in the object store or on a flash-memory storage card are not executed in place; they are paged into the RAM and then executed. Depending on the OEM and the driver options on a specific Windows CE-based platform, that module can be paged on-demand; one page can be brought in at a time, or the entire module can be loaded into ROM at once.

The RAM on a Windows CE device, is divided into two areas: the object store and the program memory. The object store resembles a permanent, virtual RAM disk. Data in the object store is retained when the system is suspended, and devices typically have a backup power supply for the RAM, to preserve data if the main power supply is interrupted temporarily. When operation is resumed the system looks for a previously created object store in RAM and uses it if one is found.

The remaining RAM is devoted to program memory. Program memory works like the RAM in personal computersit stores the heaps and stacks for the applications that are running.

Effective with version 3.0, the maximum size for the RAM file system is 256 MB, with a maximum size of 32 MB for a single file. In earlier versions of Windows CE, the limit for both the RAM system and a single file is 16 MB. Also effective with version 3.0, the maximum number of objects in the object store is increased from 65,536 to approximately 4,000,000.

The boundary between the object store and the program RAM is movable. The user can move the dividing line between object store and program RAM by using the System Control Panel applet if the platform provides this option. On some Windows CE –based platforms, the system, under low memory conditions, might ask the user for permission to take some object store RAM for use as program RAM to satisfy an application's RAM needs.

 Last updated on Tuesday, May 18, 2004

© 2004 Microsoft Corporation. All rights reserved.