RAM (Object Store) File System (Windows Embedded CE 6.0)

1/6/2010

Windows Embedded CE 6.0 introduces a full-featured file system driver for the RAM file system, the file system of the object store. With Windows Embedded CE 6.0, the RAM file system driver (FSD) is managed by FSD Manager. The new driver provides the functionality of a file system, on the information stored in RAM. For example, you can view the files and directories in RAM, obtain file attributes, and, if desired, load a file system filter.

In previous versions of Windows Embedded CE, infrastructure limitations required the object store to always be at the root directory. Because the RAM file system, and the object store, is never persistent, this restriction meant that if the object store file system was in use, any persistent storage had to be mounted as a secondary directory. Persistent storage could be mounted at the root only if the RAM file system was not in use.

You can now mount any directory or volume as the root directory and mount the RAM file system as a secondary folder.

RAM File System Registry Settings

The following example shows the registry settings for Storage Manager to load the RAM file system. The default values for these settings can be found in common.reg.

; @CESYSGEN IF FILESYS_FSYSRAM
; HIVE BOOT SECTION
[HKEY_LOCAL_MACHINE\System\StorageManager\AutoLoad\ObjectStore]
   "Dll"="filesys.dll"
   "Paging"=dword:1
   "LoadFlags"=dword:1
   "BootPhase"=dword:0
   "MountPermanent"=dword:1
IF PRJ_ENABLE_FSREGHIVE !
   ; Only mount ObjectStore FS as bootable if PRJ_ENABLE_FSREGHIVE is NOT set
   ; in order to preserve backwards compatibility (hive files go on
   ; ObjectStore FS by default).
   "MountAsBootable"=dword:1
ENDIF
IF PRJ_ENABLE_FSMOUNTASROOT !
   ; Only mount ObjectStore FS as root if PRJ_ENABLE_FSMOUNTASROOT is NOT set
   ; in order to preserve backwards compatibility (ObjectStore is root of
   ; virtual file system by default).
   "MountAsRoot"=dword:1
ENDIF
IF PRJ_DISABLE_RAMFS_COMPRESSION
   "DisableFileCompression"=dword:1
ENDIF
; END HIVE BOOT SECTION
; @CESYSGEN ENDIF FILESYS_FSYSRAM

When the object store is not mounted at the root, the name of the ObjectStore folder defaults to “Object Store.” This can be overridden using the folder registry value:

The following example mounts the object store in a secondary position with the name "Volatile Storage."

; HIVE BOOT SECTION
[HKEY_LOCAL_MACHINE\System\StorageManager\AutoLoad\ObjectStore]
   "Folder"="Volatile Storage"
; END HIVE BOOT SECTION

See Also

Reference

RAM File System Registry Settings

Other Resources

Included File Systems