What "EWF RAM REG" XPE computer can do???




I'm totally new to XPE "EWF RAM REG" image, but we need to build a image
for 1G or 2G CF, so I followed the instruction to build "EWF RAM REG",
after FBA, I can run this XPE( I use a regular HD for making image and
testing now, not CF), but after for a while,

1 "Delayed Write failed" keep popping up if I run Internet Explorer, I
have to restart the computer, I then followed the trouble shooting
suggestions, like disable auto defragmentation... but still same, I still
see this message pop up when I try to install program or go to Internet...

2. I save some files to hard drive, but after I restart computer, all lost!

We actually want to install some retail POS software in to this XPE with 1G
CF, so looks like we can't use CF at all for this??? What the usage for
making "EWF RAM REG" computer??

Matt Kellner \(MS\)

Hi XPEnew.

On 1: How much memory does your target system have? The lower the amount of
RAM, the more likely you are to see the "Delayed Write Failed" message.
This is usually a result of the system running out of memory. (Keep in mind
that RAM and RAM Reg overlays store all write operations in memory, so the
memory overlay grows as more data is written.)

Also, ensure that your configuration is not setup to use a swap file. If
you have a swap file in your runtime, this will eat up your RAM overlay very

On 2: This is by design. The EWF RAM and RAM Reg overlays intercept all
write operations intended for the hard drive that you're protecting - hence
the name "Enhanced Write Filter". Because these writes are now stored in
RAM, all writes (including files saved to the protected partition) are lost
when the computer reboots or shuts down.

If you want to be able to save files to the CF device (such as from your
application), I would recommend partitioning your CF device into two or more
partitions. You would install your OS onto the first partition and setup
EWF to protect that partition. Then you would designate the other
partition(s) for storing persistent data, and you'd configure your
application to save to that unprotected partition. This allows you to
persist the data you want while still experiencing the benefit of having EWF
protect your operating system and your CF device.

I wrote an article on a related subject a couple of months ago. Check it
out here: http://blogs.msdn.com/embedded/archive/2005/07/08/437033.aspx .

Matt Kellner ([email protected])
STE, Windows Embedded Group

This posting is provided "AS IS" with no warranties, and confers no rights.

Matt Kellner \(MS\)

I'm not too familiar with the memory requirements of various components, and
without knowing specifically which components you're using, I couldn't tell
you if your memory size is sufficient to run them. However, on a general
basis, you can achieve better memory efficiency by doing the following:

(1) Remove any components from your configuration that you don't absolutely
need for your runtime. Some Windows components do more writes to the system
drive than others (eg. to store configuration information, write to the
Event Log, etc.) - the less of these components you have, the better.

(2) Optimize your application and any Windows components to minimize the
number of writes they do to the system drive. You should save data only
when necessary - spurious writes will use up your RAM overlay faster.

(3) Format your runtime partition in FAT16 or FAT32, as opposed to NTFS
(unless you need the extra security features or compression capabilities of
NTFS). NTFS tends to update itself frequently and performs more write
operations in general than FAT, so it will use up the RAM overlay faster.

My recommendation would be to try these things above, and then evaluate if
you are still using a lot of memory. You might try including the Task
Manager component and using it to determine how much Available Physical
Memory you have. (The total amount of Virtual Memory will appear at or
slightly below your total physical memory if you've turned off the swap
file.) The higher this number is, the better, but keep in mind that it may
not give you a completely accurate picture of your available RAM because the
EWF overlay is taking up some of that space. You can use this value in
conjunction with "EwfMgr C:" to get an idea for how much actual memory you
have available.

Once you've determined that, you can evaluate whether you'll need to install
more RAM in your target system.

BTW, I re-read your original message and noticed that you mentioned using
the Internet, presumably with Internet Explorer. Here's some additional
info specific to that scenario:

When using Internet Explorer, keep in mind that by default, it caches local
copies of the pages and images you've visited. It saves these local copies
to the system drive, which means the data will be intercepted by EWF and
cause the RAM overlay to grow. You can disable IE's caching behavior, but
this can significantly increase page load times and bandwidth usage if you
frequently access pages not stored on your local hard drive. When building
your runtime, if you do not need to use IE, I would recommend removing it
from your configuration.

Hope this helps. =)

Matt Kellner ([email protected])
STE, Windows Embedded Group

This posting is provided "AS IS" with no warranties, and confers no rights.

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Similar Threads