Re: WinCE 5.0 RegFlush on Cold Boot



Hmmm. Well, item 1 is that PSM handles moving things around in the actual
flash chips to avoid repeatedly writing to the same sectors (wear-leveling).
It seems like you might be able to calculate how many times a day for how
many years a cabbie would have to reboot the unit in order to reach 100,000
erase cycles (or whatever the specification for the flash chips is), cycles
of a single sector. You'd have to make a bunch of assumptions, of course
(how much of the flash is free, how much does the registry take, etc.), but
I come up with something north of 50 years before just once-per-reboot
writes would reach the wear limit.

I suppose that, item 2, you could use a RAM-based registry, which I don't
think will get any RegFlushKey() calls during startup. Of course, you would
then have to implement ReadRegistryFromOEM and WriteRegistryToOEM in your
OAL, which is a pain, if you want the registry to actually be persistent.

Or, item 3 might be a combination of no persistence of the registry itself,
in combination with a configuration file or two that could be read from PSM
during startup by a start up program and used to get persistent registry
settings. Without knowing what you change in the registry and how often,
it's pretty hard to suggest which is right, but 1 certainly seems unlikely
to fail very frequently. If a unit lasted 25-50 years, wouldn't that be
long enough? ;-)

Paul T.

"Peter K" <anonymous@xxxxxxxxx> wrote in message
news:eIqku5WfIHA.5280@xxxxxxxxxxxxxxxxxxxxxxx
I would have to load a debug image and look for the messages you have
mentioned.

I am sure that the periodic flush is not enabled, this was one of the
first things I looked for when I saw this behaviour.

Our devices are Data Terminals in Taxi cabs and they cold boot every time.
There is some concern that the extra writes to the flash may cause
premature failure to flash blocks in the device. So the many writes to
the flash at boot up has become a focus. I am sure that 1 or 2 boots a
day would not be a problem, but user will try all sorts of things to cheat
a system and one of them is rebooting the device.

"Paul G. Tobey [eMVP]" <p space tobey no spam AT no instrument no spam DOT
com> wrote in message news:unLGJsWfIHA.536@xxxxxxxxxxxxxxxxxxxxxxx
Is there a debug message associated with the registry operation?
Something like "Finalizing registry", for example, maybe just before the
"This device has booted <x> times" message? You're sure that you don't
have the periodic flush thread enabled?

On the assumption that this *is* the intended behavior, what problem is
it causing for you?

Paul T.

"Peter K" <anonymous@xxxxxxxxx> wrote in message
news:Os0FiYWfIHA.5996@xxxxxxxxxxxxxxxxxxxxxxx
I'm using RAM and ROM File System. The nk.bin is loaded into flash
above the bootloader and is XIP.

"Paul G. Tobey [eMVP]" <p space tobey no spam AT no instrument no spam
DOT com> wrote in message news:OND4HXWfIHA.4728@xxxxxxxxxxxxxxxxxxxxxxx
What filesystem type are you using, RAM/ROM or ROM-only? How is nk.bin
loaded? Flashed into linear flash? Loaded by the bootloader into RAM
from somewhere?

Paul T.

"Peter K" <anonymous@xxxxxxxxx> wrote in message
news:eJJh$SWfIHA.4144@xxxxxxxxxxxxxxxxxxxxxxx
Paul,

I have 2 volumes on the device, one that is bootable and hidden where
the Hive registry files reside and the other for file storage. The
debugging I added shows which volume is being written to.


"Paul G. Tobey [eMVP]" <p space tobey no spam AT no instrument no spam
DOT com> wrote in message
news:%23aBmeMWfIHA.2448@xxxxxxxxxxxxxxxxxxxxxxx
How do you know that the command corresponds to a registry write?
It's a hive registry. Any write to the 'disk' would generate some
writes.

Paul T.

"Peter K" <anonymous@xxxxxxxxx> wrote in message
news:%23kWImBWfIHA.5280@xxxxxxxxxxxxxxxxxxxxxxx
Hello,

I have a WinCE 5.00 OS with IPSM 4.0 set up with Hive Registry, does
anyone know how to stop the OS from backing up the Registry on a
cold boot. I believe that it is doing a RegFlushKey when it update
the BootCount in the registry but I can not find any reference to
this in the OS source code.

I have check all my device drivers to see if any of them might be
calling RegFlushKey and they are not.

The reason I know that there is a backup of the registry at boot up
is because I added debugging in the OALIoCtlPsmFlashCmd function to
show when writes and erases occur in the IPSM.

Thanks for the help















.



Relevant Pages

  • Re: WinCE 5.0 RegFlush on Cold Boot
    ... I know that this is not what is happening and I'm sure this registry flush ... at boot would not wear out a flash block for years. ... a failure is most likely to just cause the bad sector to be ...
    (microsoft.public.windowsce.platbuilder)
  • Re: WinCE 5.0 RegFlush on Cold Boot
    ... Typical flash life is> 100,000 writes in a sector. ... Our devices are Data Terminals in Taxi cabs and they cold boot every time. ... Something like "Finalizing registry", for example, maybe just before the ...
    (microsoft.public.windowsce.platbuilder)
  • Re: FlashROM as a disk in CE 5.0
    ... FileSystem Starting - starting with clean file system ... Lower flash. ... 0x83fc8994: FLASHDRV.DLL:Unable to initialize FLASH Media Driver. ... I have added the Registry settings to Project.reg file like ...
    (microsoft.public.windowsce.platbuilder)
  • Re: WinCE 5.0 RegFlush on Cold Boot
    ... the highest risk when using flash is full corruption due to power ... I know that this is not what is happening and I'm sure this registry flush ... at boot would not wear out a flash block for years. ... constantly it would still last a decade before you had a failure. ...
    (microsoft.public.windowsce.platbuilder)
  • Re: FlashROM as a disk in CE 5.0
    ... It looks like you changed the MountFlags registry setting in the profile, ... flash and this fixed the problem... ... Applied Data Systems ... Some component or application means.If i tried to download the image ...
    (microsoft.public.windowsce.platbuilder)