Multiple XIP Support (Windows CE 5.0)
Execute-in-place (XIP) regions are areas where an application can execute code directly from ROM rather than loading it from RAM. Windows CE allows you to construct multiple XIP regions in a single system. There are several reasons for using multiple XIP regions instead of a single region:
- You can break applications into functional subsets and install them separately from the core of the operating system (OS).
- You do not need to replace the whole run-time image to add new features.
- You do not need to replace the whole run-time image to fix a bug.
- The user can update the run-time image.
- Updates to the run-time images are permanent and not vulnerable to cold resets.
The growing popularity of flash memory as a replacement for masked ROM is one of the technologies that enables multiple XIP regions. In the Help topics that discuss multiple XIP regions, ROM refers to the flash memory where the system image resides.
Multiple XIP regions divide the ROM image into discrete, upgradeable units. As you decide how to divide the XIP image, consider the owner of the modules and files in the region and the functionality of the modules and files in that region.
Note XIP cannot span across physically discontiguous regions. Although virtually contiguous, some devices can hang when executed in place on code across physical regions. Also, uncompressed FILE and MODULE across regions can be direct mapped or accessed directly without copying, but the kernel only handles the case where the file is physically contiguous.
See Also
Loader | Booting an Image with Multiple XIP Regions | Building an Image with Multiple XIP Regions | Multiple XIP Regions
Send Feedback on this topic to the authors