Re: HIVE registry in RAM under CE6

Tech-Archive recommends: Fix windows errors by optimizing your registry



Do you apply the following registry setting in your boot hive to prevent the
filesys to mount hive registry from external file system?

[HKEY_LOCAL_MACHINE\init\BootVars]
"Flags"=dword:0
"NoDefaultUser"=dword:0

"fd" <strip-f.duchesneau-strip@xxxxxxxxxxxxxxxx> wrote in message
news:OGiMwUgWIHA.5448@xxxxxxxxxxxxxxxxxxxxxxx
Hi,
I am working on Windows CE 6 and I am trying to enable HIVE registry in
RAM:
IOCTL_HAL_GET_HIVE_RAM_REGION
IOCTL_HAL_SAVE_HIVE_RAM_REGION

My system was working fine under ce 5.0 but with CE6 I have an exception
in Filesys.

If I use HIVE registry saved on a volume, it works fine.

It seems that the registry is not initialized after I load HiveRAMInfo.
(see in the log ERROR:
C:\ymzki\private\winceos\COREOS\filesys\reg\reghive\.\registry.c line
1087: FSREG: Unable to mount clean system hive
FSREG: Unable to load system registry! Registry will be unavailable.)

Of course my function OALIoCtlGetHiveRamRegion, initialize the structure
(HiveRAMInfo) correctly and
memory region is zeroed the first time.

Regards

******* partial debug log in Filesys (where the problem occurs)
FileSystem Starting - starting with clean file system
+OALIoCtlHalInitRTC(MX31)
FSVOL: Opening existing volume
FSVOL: Volume heap already initialized
FSREG: Mounted ROM portion of boot registry
FSVOL: Creating clean virtual volume
FSVOL: Initializing volume heap
FSREG: Mounted RAM portion of boot registry
FS: Creating signal event SYSTEM/DevMgrApiSetReady
FS: Creating signal event SYSTEM/PowerManagerReady
FS: Creating signal event SYSTEM/GweApiSetReady
FS: Creating signal event SYSTEM/BatteryAPIsReady
FILESYS: Starting boot phase 0.
FILESYS: RAM File System FSD_MountDisk registering folder "Object Store"
FILESYS: Starting boot phase 1.
FILESYS: Starting device and waiting for boot file system.
Filesys: Loaded device.dll
FILESYS: Waiting for device manager to signal BootPhase1 completion.
FILESYS: Waiting for External ROM filesystem to be mounted.
FILESYS: Device started. Boot file system ready.
FILESYS: NOT starting device manager to reach system hive.
KERNEL_SHELL: OALIoCtlGetHiveRamRegion
KERNEL_SHELL: OALIoCtlGetHiveRamRegion done
FILESYS: Storing registry hive in RAM region 0x90000000, 0x00180000 bytes,
flags 0x00000204
FSREG: Unable to read value "SystemHiveInitialSize" under
HKEY_LOCAL_MACHINE\init\BootVars
FSVOL: Opening existing volume
FSVOL: Volume heap already initialized
FSREG: Mounted ROM portion of system hive
KERNEL_SHELL: Checking cleaning system hive
KERNEL_SHELL: Cleaning system profile
FSREG: Mounting clean system hive
FSVOL: Using clean RAM registry region
FSVOL: Initializing volume heap
ERROR: C:\ymzki\private\winceos\COREOS\filesys\reg\reghive\.\registry.c
line 1087: FSREG: Unable to mount clean system hive
FSREG: Unable to load system registry! Registry will be unavailable.
FileSys: DEBUGCHK failed in file
C:\ymzki\private\winceos\COREOS\filesys\reg\reghive\.\registry.c at line
1147
FSREG: Unable to read value "ProfileDir" under
HKEY_LOCAL_MACHINE\init\BootVars
FSREG: No profile directory provided. Using default: Documents and
Settings
FSREG: Unable to read value "RegistryFlags" under
HKEY_LOCAL_MACHINE\init\BootVars
FSREG: Unable to read value "RequireCertMod" under
HKEY_LOCAL_MACHINE\init\BootVars
Error creating Comm\Security\Crypto key
FSREG: Unable to read value "NoDefaultUser" under
HKEY_LOCAL_MACHINE\init\BootVars
FSREG: Logging in default user.
FSREG: Unable to read value "DefaultUser" under
HKEY_LOCAL_MACHINE\init\BootVars
SetCurrentUser: Logging out (nobody), logging in default
BuildPath: Documents and Settings
BuildPath: Documents and Settings\default
FSREG: Mounting ROM portion of user hive
FSVOL: Opening existing volume
FSVOL: Volume heap already initialized
Exception 'Data Abort' (4): Thread-Id=005c0002(pth=8fa2f300),
Proc-Id=00400002(p
prc=80cc9308) 'NK.EXE', VM-active=00400002(pprc=80cc9308) 'NK.EXE'
PC=c010cbd0(filesys.dll+0x0004cbd0) RA=c010cba8(filesys.dll+0x0004cba8)
SP=d00bf
25c, BVA=00000008
ERROR: C:\ymzki\private\winceos\COREOS\filesys\reg\reghive\.\registry.c
line 2081: FS: Registry Exception Handler
SetCurrentUser failed!
FSREG: Unable to read value "RegistryFlags" under
HKEY_LOCAL_MACHINE\init\BootVars
Initializing Database
DB:Validation: Name already exists DB_notify_events
DB:CeCreateDatabase failed
Filesystem initialized!
FILESYS: Waiting for kernel to be ready to launch apps
FS: HKLM\System\Events not available, no signal events created.
FILESYS: Launching apps
ERROR: C:\ymzki\private\winceos\COREOS\filesys\main\.\fsmain.c line 2563:
Unable to locate init key for starting apps!
FILESYS: Done launching apps
This device has booted 0 times !!!



.



Relevant Pages

  • RE: Kernel hangs while loading udevice.exe
    ... Boot Device/Type: 2/1 ... FSVOL: Volume heap already initialized ... FSREG: Mounted ROM portion of boot registry ... FILESYS: Waiting for bootable file system to be mounted. ...
    (microsoft.public.windowsce.platbuilder)
  • Re: IXP42X NOR FileSystem Problem !!! wince5
    ... seems like the registry might not be valid, ... FSVOL: Volume heap already initialized ... FSREG: Mounted ROM portion of boot registry ... FILESYS: Starting boot phase 0. ...
    (microsoft.public.windowsce.platbuilder)
  • Re: HIVE registry in RAM under CE6
    ... the filesys to mount hive registry from external file system? ... FSREG: ... FSVOL: Volume heap already initialized ...
    (microsoft.public.windowsce.platbuilder)
  • HIVE registry in RAM under CE6
    ... I am working on Windows CE 6 and I am trying to enable HIVE registry in RAM: ... FSREG: ... FSVOL: Volume heap already initialized ... FILESYS: Starting boot phase 0. ...
    (microsoft.public.windowsce.platbuilder)
  • Hive-based Registry / release image / boot fails
    ... I want to persist the registry on our On-Board ... 1700 FILESYS: Device started. ... 1700 FSREG: Unable to read value "SystemHiveInitialSize" under ... 1705 FSVOL: Volume heap already initialized ...
    (microsoft.public.windowsce.platbuilder)