ROM-Only File System定制详解
2017-02-18 14:54
363 查看
ROM-Only File System定制详解
在CE下,经常会遇到的问题是,当用户在CE设备上安装文件的时候,如果重新启动,Windows目录下的文件会丢失,导致安装的程序无法正常的运行。这里头,CE引入了一个文件系统,就是ROM-Only
File
System。它允许你将你的存储介质,如NandFlash、硬盘等,映射为根系统,这样你在操作windows目录的时候,其实就是在这类存储介质上操作,在系统重启或关闭之后,操作的文件将永久的保存。
CE下有关ROM-Only File System的定制,相对于RAM and ROM File
System,需要注意一些问题。(我的CE版本是4.2的,不知道CE5.0/6.0是否已经将其完善)
首先,在定制的时候可以先尝试使用RAM and ROM File System + RAM Based
Registry,看是否可以正常运行。
在能够正常运行的情况下,打开CE.bib,将FILE字段下的所有文件拷贝一份出来(这里头包含了一些声音、图片,以及一些EXPLORER程序需要用到的文件),放到你需要保存的存储介质上对应的目录,如存储介质是NandFlash,则在NandFlash的根目录创建一个Windows目录,将有关文件拷贝到此目录。
重新进行系统定制,将RAM and ROM File System 替换为ROM-Only File System。
修改注册表,将对应的存储介质下的注册表项改为类似如下:
[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\NandFlash]
"Name"="NAND Flash Disk"
"Folder"="NandFlash"
"DefaultFileSystem"="FATFS"
"AutoMount"=dword:1
"AutoPart"=dword:1
"AutoFormat"=dword:1
"MountFlags"=dword:1c
"FileSystem"="fatfsd.dll"
"PartitionDriver"="mspart.dll"
其中,我是将NandFlash作为存储的根目录的,故只需改NandFlash对应的注册表,如果是别的存储介质,请直接修改对应的注册表。
MountFlags的值的含义:
; MountFlags
- Flags on how the partition is mounted
;
1 - Hidden file system
;
2 - May contain system registry
;
4 - Mount as root of file system, "\"
;
8 - Hide ROM when mounting FS root; use with
FLAG_ROOTFS
;
10 - Mount filesystem as an external ROM
filesystem
;
40 - Mount as a permanent volume that cannot be
unmounted
选择1c,意思是加载成一个扩展的ROM根文件系统,同时隐藏ROM(这就是为什么我们要把FILE字段下的文件拷贝到存储介质上,但exe和dll不是必须的,因为调用的时候还是会从ROM中引导)
下载,测试。正常情况,应该能够引导系统。
在开发过程中可能会遇到的一些问题的解决方法:
1.系统引导之后无法显示资源管理器
请查看是否已经将ce.bib中FILE字段文件拷贝到对应存储介质的Windows目录或其它。
2.控制面板中没有任何程序
请将cpl文件全部拷贝到对应的存储介质的Windows目录下。因为控制面板程序调用的时候是去Windows目录下查找cpl文件,而默认的,cpl文件我们并没有拷贝到存储介质的Windows目录下,故在控制面板程序中看不到任何的程序。而在系统中,是通过LoadLibrary方式直接调用,可以调用有关的cpl文件。
在CE下,经常会遇到的问题是,当用户在CE设备上安装文件的时候,如果重新启动,Windows目录下的文件会丢失,导致安装的程序无法正常的运行。这里头,CE引入了一个文件系统,就是ROM-Only
File
System。它允许你将你的存储介质,如NandFlash、硬盘等,映射为根系统,这样你在操作windows目录的时候,其实就是在这类存储介质上操作,在系统重启或关闭之后,操作的文件将永久的保存。
CE下有关ROM-Only File System的定制,相对于RAM and ROM File
System,需要注意一些问题。(我的CE版本是4.2的,不知道CE5.0/6.0是否已经将其完善)
首先,在定制的时候可以先尝试使用RAM and ROM File System + RAM Based
Registry,看是否可以正常运行。
在能够正常运行的情况下,打开CE.bib,将FILE字段下的所有文件拷贝一份出来(这里头包含了一些声音、图片,以及一些EXPLORER程序需要用到的文件),放到你需要保存的存储介质上对应的目录,如存储介质是NandFlash,则在NandFlash的根目录创建一个Windows目录,将有关文件拷贝到此目录。
重新进行系统定制,将RAM and ROM File System 替换为ROM-Only File System。
修改注册表,将对应的存储介质下的注册表项改为类似如下:
[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\NandFlash]
"Name"="NAND Flash Disk"
"Folder"="NandFlash"
"DefaultFileSystem"="FATFS"
"AutoMount"=dword:1
"AutoPart"=dword:1
"AutoFormat"=dword:1
"MountFlags"=dword:1c
"FileSystem"="fatfsd.dll"
"PartitionDriver"="mspart.dll"
其中,我是将NandFlash作为存储的根目录的,故只需改NandFlash对应的注册表,如果是别的存储介质,请直接修改对应的注册表。
MountFlags的值的含义:
; MountFlags
- Flags on how the partition is mounted
;
1 - Hidden file system
;
2 - May contain system registry
;
4 - Mount as root of file system, "\"
;
8 - Hide ROM when mounting FS root; use with
FLAG_ROOTFS
;
10 - Mount filesystem as an external ROM
filesystem
;
40 - Mount as a permanent volume that cannot be
unmounted
选择1c,意思是加载成一个扩展的ROM根文件系统,同时隐藏ROM(这就是为什么我们要把FILE字段下的文件拷贝到存储介质上,但exe和dll不是必须的,因为调用的时候还是会从ROM中引导)
下载,测试。正常情况,应该能够引导系统。
在开发过程中可能会遇到的一些问题的解决方法:
1.系统引导之后无法显示资源管理器
请查看是否已经将ce.bib中FILE字段文件拷贝到对应存储介质的Windows目录或其它。
2.控制面板中没有任何程序
请将cpl文件全部拷贝到对应的存储介质的Windows目录下。因为控制面板程序调用的时候是去Windows目录下查找cpl文件,而默认的,cpl文件我们并没有拷贝到存储介质的Windows目录下,故在控制面板程序中看不到任何的程序。而在系统中,是通过LoadLibrary方式直接调用,可以调用有关的cpl文件。
相关文章推荐
- failed to copy 'init.rc' to '//init.rc': Read-only file system
- 第三课: 【新手定制ROM入门…
- 第三课: 【新手定制ROM入门…
- RAM and ROM File System vs ROM-only File System
- 第三课: 【新手定制ROM入门…
- adb push 遇到 "Read-only file system" 無法寫入的問題
- Adb connection Error:EOF,error: Read-only file system"解决方
- 第三课: 【新手定制ROM入门…
- 错误:chmod: changing permissions of ‘/etc/passwd': Read-only file system
- RAM and ROM File System vs ROM-only File System
- rm: cannot remove `/home/cn0000/log/formlog.20140417': Read-only file system
- 第三课: 【新手定制ROM入门…
- adb push错误 failed to copy XXX.ko' to '/system/lib/modules/XXX.ko': Read-only file system
- chmod: changing permissions of '/etc/passwd': Read-only file system
- HP-UNIX File System&Storage 的一些基本知识(下)
- ROM-only Files System
- (转载)File System Minifilter Allocated Altitudes & Load Order Groups and Altitude Ranges
- rche 033----unit 8 the linux filesystem in-depth
- mount: unknown filesystem type "smbfs"
- 实现任意文件下载 FileDownload使用教程