XML Core Services Registry Settings (Windows Embedded CE 6.0)

1/6/2010

MSXML is a high performance XML parser. To increase performance, it allocates large pools of memory and manages these pools for internal memory allocations. This process can provide a substantial performance boost by using the system heap directly. However this process also requires that MSXML allocate memory in 32 and 64 KB chunks before any parsing can occur.

For devices that have an extremely limited amount of RAM, this can be a very large hit if MSXML is only parsing simple documents.

The HKEY_LOCAL_MACHINE\Software\Microsoft\MSXML registry key enables OEMs to fine-tune how MSXML allocates memory internally. The following table shows the named values.

Note

The default registry values vary depending on which Catalog items are included in your OS design. For more information, see Default Registry Settings.

Value : type Description

Miniheap : REG_DWORD

By default, MiniHeap will be set to 1 only if the xmlminisax component is included, as xmlminisax is provided for devices with limited resources. Any build of MSXML that includes XML DOM will not set MiniHeap automatically.

If MiniHeap is 1, MSXML will not aggressively manage its own memory but will instead use the system heap.

If MiniHeap is 0, MSXML will use its default heap management functionality when doing memory allocations.

See Also

Other Resources

XML Core Services and Document Object Model
XML DOM Application Development