How To Manage Enhanced Write Filter Function Within XP Embedded
What is Enhanced Write Filter (EWF)?
Enhanced Write Filter (EWF) is a component in XP Embedded which prevents write operations to another medium such as a DOM or Compact Flash card. EWF allows the writes to be discarded or committed to the medium later, as this minimizes writes to the specified medium. This is particularly useful if you want to prevent changes to a disk, or if the media has limited life of write-cycles which you want to manage.
How is Enhanced Write Filter functioning?
EWF provides a means for protecting a volume from writes. This allows the operating system (OS) to boot from read-only media such as CD-ROMs, write-protected hard disks, DOM or CF card. All writes to a EWF-protected volume are redirected to an overlay. These writes are cached in the overlay and made available as part of the volume. This gives the appearance that the volume is writable. The overlay may exist either on disk or in random access memory (RAM). If desired, the data stored in the overlay may be committed to the protected volume. It should be noted that if the system is shut down improperly (power failure) then all data in the overlay will be lost. Figure 1 is an overview of EWF.
The DyaloX uses RAM based EWF functionality so all data is written to RAM rather than to the disk. However, a small amount of disk space is still used to store configuration. This is a special partition on the physical disk, which is automatically created, but there needs to be unallocated space on the disk for this.
Why is the EWF function needed?
Using the EWF without committing the writes has many advantages when used for an IPC with XP Embedded. In this configuration the system works like a ROM based system. Every time when the IPC is boot up it will be with a clean XP Embedded system. Unlike a ROM based system XP Embedded can still be updated if required through a special 'commit command'. In conclusion XP Embedded in combination with the EWF function can make the IPC more reliable.
Checking the status of the EWF function:
To check the status of the EWF function, you can run a command, however this will fail if there is no space available on the disk for the EWF partition. See below how to handle this.
Display the command prompt screen, and then put in the following command to confirm the operating state of the EWF function.
Enabled – Indicates that the EWF function is enabled. This state will emulate writing to the drive.
Disabled – Indicates that the EWF function is disabled. In this state all writes will be written direct to the drive.
If this command gives an error message, check using 'Disk Management' that there is unallocated space for EWF information (some DyaloX images are designed to fill the disk - 4GB, 8GB or 16GB). Check by going to computer management - you need to right click on 'My Computer' -> Manage -> The navigate down to 'Disk Management':
If there is a small 'Unknown' partition at the top of the list - it needs to be deleted. Right click on the partition and choose 'Delete Partition':
You must now reboot in order to use ewfmgr.
IMPORTANT: Do NOT delete C: or D: partitions, you will lose data and need to re-image your DyaloX
Enabling the EWF function
Display the command prompt screen, and then put in the following command to enable the EWF function. This command will only take effect after IPC is rebooted.
ewfmgr c: -enable
Writing the EWF overlay back to the Disk-on-Module or CF card
Display the command prompt screen, and then put in the following command to write the data to the Disk-on-Module or CF card.
ewfmgr c: -commit
Disabling the EWF function
Display the command prompt screen, and then put in the following command to disable the EWF function. This command will only take effect when IPC is rebooted.
ewfmgr c: -commitanddisable
Using an easy to install batch file for enabling EWF function
For simply activating the EWF function and adding a REG_KEY that makes it possible to saves all data that’s in the cache overlay memory to the Disk-on-Module or CF card only by shutting down the IPC normally. The –commit command will be executed just before closedown of the IPC.
There is a batch file that enables the EWF function and copies the REG_KEY (ewf_setting.reg) on the IPC.
Unzip and save attached EWF.zip file on a USB stick and place it into the DyaloX.
Command: Double click on the batch file EWF_EN.bat (EWF_EN.bat and ewf_setting.reg that comes with this document)
The EWF function will be enabled.
REG_KEY (ewf_setting.reg) is copied into the registry editor of the IPC.
Note: If you request to disable the EWF function and don’t want to use the –commit command in the REG_KEY. You follow the disable procedure as explained in this document, for the REG_KEY you find this in the IPC and delete. (HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run)
Because of the limited RAM (random access memory) capacity that EWF is using this for storing data, keep in mind that if the memory is almost full that it effects the stability of the operating system. (that also uses RAM memory)
The IPC is running with enabled EWF function and you need to install new software.
• Because of the limited RAM memory capacity in the IPC it’s not recommended to make installation with enabled EWF function. When the memory capacity is completely used the IPC becomes unstable or even crashes.
• As the software will be completely be installed on the cache memory it will be deleted when you shutdown the IPC.
Recommendation is to disable the EWF function before installing software, and enable it after you finished.
If you have any questions regarding the EWF function please contact your local Omron representative.