RAM-based Registry Initialization (Windows CE 5.0)
The following steps show the process that Filesys.exe uses to initialize the RAM-based registry.
- Filesys.exe calls OEMIoControl with IOCTL_HAL_GETREGSECUREKEYS two times. The first call is a query to find out the required data buffer size. The second call is a query to get the buffer of secure key data. For more information, see Requesting Additional Secure Registry Keys.
- If the boot process is a cold boot, Filesys.exe performs the following steps:
- Filesys.exe loads the registry data stored in the Default.fdf file from ROM.
- If pReadRegistryFromOEM is implemented in the OAL and registry data is available, Filesys.exe deletes the registry data that was restored from Default.fdf. Filesys.exe calls pReadRegistryFromOEM in a loop until all of the data is returned. If the data retrieval fails, Filesys.exe cleans the registry and restores Default.fdf.
- If a backup copy of the registry was restored on a previous boot by calling RegRestoreFile, Filesys.exe delestes any existing registry data from Default.fdf or pReadRegistryFromOEM, and restores the registry with the contents of the backup file. If the restoration fails, Filesys.exe cleans the registry and retries restoration from Default.fdf and pReadRegistryFromOEM.
- Filesys.exe calls OEMIoControl with the IOCTL IOCTL_HAL_INITREGISTRY to give the OAL a chance to add data to the registry early in the boot process.
See Also
Filesys.exe Boot Process | Hive-based Registry Initialization
Send Feedback on this topic to the authors