S3c6410 实现Wince600上 Xip+Hive注册表保存

[复制链接]
2499|1
 楼主| ringostarr 发表于 2009-2-18 15:20 | 显示全部楼层 |阅读模式
S3c6410&nbsp;实现Wince600上&nbsp;Xip+Hive注册表保存<br />&nbsp;&nbsp;&nbsp;&nbsp;今天在6410+wince600系统上实现了&nbsp;xip+hive注册表保存,现在贴出来跟大家一起分享一下.<br />软件平台:wince600<br />硬件平台:深圳友坚恒天科技&nbsp;UT_S3C6410开发板&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;http://www.urbetter.com<br /><br /><br />实现方法:<br />1.&nbsp;&nbsp;&nbsp;&nbsp;必须加入HIVE&nbsp;based&nbsp;regiters这个组件到OS(在PB右边的文件系统选项里)<br />2.&nbsp;&nbsp;&nbsp;&nbsp;注册表添加,必须将一下部分加入你的注册表中实现hive<br />&nbsp;&nbsp;;HIVE&nbsp;BOOT&nbsp;SECTION&nbsp;<br /><br />[HKEY_LOCAL_MACHINEinitBootVars]<br />&quot;SYSTEMHIVE&quot;=&quot;Documents&nbsp;and&nbsp;Settingssystem.hv&quot;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;system.hv会保存到HDDDocuments&nbsp;and&nbsp;Settingssystem.hv<br />;&quot;PROFILEDIR&quot;=&quot;Documents&nbsp;and&nbsp;Settings&quot;&nbsp;&nbsp;&nbsp;;user.hv会保存到HDDDocuments&nbsp;and&nbsp;Settingsdefaultuser.hv<br />&quot;Start&nbsp;DevMgr&quot;=dword:1&nbsp;&nbsp;&nbsp;;这个说是启动device.exe,但是wince&nbsp;5.0好像不用这个<br />&quot;DefaultUser&quot;=&quot;default&quot;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;咱们只有一个用户default,基本上就是决定user.hv的路径了<br />&quot;Flags&quot;=dword:3&nbsp;;这个应该是wince&nbsp;5.0下决定在哪个阶段启动device.exe的表项<br />&quot;RegistryFlags&quot;=dword:1&nbsp;&nbsp;&nbsp;;这个就是设置注册表每次改动后自动flush到system.hv<br /><br />;###########################################################################<br />;这个部分是binfs的注册表项,如果你不是用的binfs那么不用将它们拉到boot.hv中<br />[HKEY_LOCAL_MACHINESystemStorageManagerAutoLoadSMFlash]<br />&quot;DriverPath&quot;=&quot;DriversBlockDeviceSMFlash&quot;<br />&quot;LoadFlags&quot;=dword:1<br />&quot;MountFlags&quot;=dword:11<br />&quot;BootPhase&quot;=dword:0<br />&quot;Flags&quot;=dword:1000<br />[HKEY_LOCAL_MACHINEDriversBlockDeviceSMFlash]<br />&quot;Prefix&quot;=&quot;DSK&quot;<br />&quot;Dll&quot;=&quot;BIBDrv.dll&quot;<br />&quot;Order&quot;=dword:0<br />&quot;Ioctl&quot;=dword:4<br />&quot;Profile&quot;=&quot;SMFlash&quot;<br />&quot;FriendlyName&quot;=&quot;Samsung&nbsp;Flash&nbsp;Driver&quot;<br />&quot;MountFlags&quot;=dword:11<br />&quot;BootPhase&quot;=dword:0<br />&quot;Flags&quot;=dword:1000<br />;&nbsp;Bind&nbsp;BINFS&nbsp;to&nbsp;the&nbsp;block&nbsp;driver<br />[HKEY_LOCAL_MACHINESystemStorageManagerProfilesSMFlash]<br />&quot;DefaultFileSystem&quot;=&quot;BINFS&quot;&nbsp;&nbsp;&nbsp;;binfs的路径为/BINFS<br />&quot;PartitionDriver&quot;=&quot;mspart.dll&quot;<br />&quot;AutoMount&quot;=dword:1<br />&quot;AutoPart&quot;=dword:1<br />&quot;MountFlags&quot;=dword:11<br />&quot;Folder&quot;=&quot;ResidentFlash&quot;<br />&quot;Name&quot;=&quot;Samsung&nbsp;Flash&nbsp;Disk&quot;<br />&quot;BootPhase&quot;=dword:0<br />&quot;Flags&quot;=dword:1000<br />&quot;MountHidden&quot;=dword:0&nbsp;&nbsp;&nbsp;<br />;###########################################################################<br /><br />[HKEY_LOCAL_MACHINEDriversBuiltInPocketStore]<br />&nbsp;&nbsp;&quot;Prefix&quot;=&quot;DSK&quot;<br />&nbsp;&nbsp;&quot;Dll&quot;=&quot;ONDisk.dll&quot;<br />&nbsp;&nbsp;&quot;Order&quot;=dword:1<br />&nbsp;&nbsp;&quot;Profile&quot;=&quot;PocketStore&quot;<br />&nbsp;&nbsp;&quot;IClass&quot;=multi_sz:&quot;{A4E7EDDA-E575-4252-9D6B-4195D48BB865}&quot;<br />&nbsp;&nbsp;&quot;BmlVolumeId&quot;=dword:0&nbsp;;&nbsp;BML&nbsp;volume&nbsp;ID&nbsp;=&nbsp;0<br />&nbsp;&nbsp;&quot;BmlPartitionId&quot;=dword:8&nbsp;;&nbsp;BML&nbsp;parition&nbsp;ID&nbsp;=&nbsp;PARTITION_ID_FILESYSTEM<br />&nbsp;&nbsp;&quot;Index&quot;=dword:2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&quot;Flags&quot;=dword:1000&nbsp;&nbsp;&nbsp;;这个flag指定这个驱动只在boot.hv中加载一次<br />[HKEY_LOCAL_MACHINESystemStorageManagerProfilesPocketStore]<br />&nbsp;&nbsp;&quot;DefaultFileSystem&quot;=&quot;FATFS&quot;<br />&nbsp;&nbsp;&quot;PartitionDriver&quot;=&quot;mspart.dll&quot;<br />&nbsp;&nbsp;&quot;AutoMount&quot;=dword:1<br />&nbsp;&nbsp;&quot;AutoPart&quot;=dword:1<br />&nbsp;&nbsp;&quot;AutoFormat&quot;=dword:1<br />&nbsp;&nbsp;&quot;MountAsBootable&quot;=dword:1&nbsp;&nbsp;&nbsp;;这个是wince&nbsp;5.0下指定这个分区保存system.hv的关键<br />&nbsp;&nbsp;&quot;Folder&quot;=&quot;HDD&quot;<br />&nbsp;&nbsp;&quot;Name&quot;=&quot;NAND&nbsp;Drive&quot;<br />&nbsp;&nbsp;&quot;Ioctl&quot;=dword:4<br /><br />[HKEY_LOCAL_MACHINESystemStorageManagerProfilesPocketStoreFATFS]<br />&nbsp;&nbsp;&quot;EnableCacheWarm&quot;=dword:0<br />&nbsp;&nbsp;<br />ENDIF<br />;###########################################################################<br /><br />;END&nbsp;HIVE&nbsp;BOOT&nbsp;SECTION<br /><br />;&nbsp;HIVE&nbsp;BOOT&nbsp;SECTION&nbsp;<br /><br />;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;&nbsp;<br />;&nbsp;Support&nbsp;BINFS&nbsp;Section&nbsp;<br />;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;&nbsp;<br />;&nbsp;<br />;&nbsp;Add&nbsp;BinFS&nbsp;to&nbsp;partition&nbsp;table&nbsp;<br />[HKEY_LOCAL_MACHINESystemStorageManagerPartitionTable]&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;21&quot;=&quot;BINFS&quot;&nbsp;<br /><br />[HKEY_LOCAL_MACHINESystemStorageManagerBINFS]&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;Folder&quot;=&quot;BINFS&quot;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;FriendlyName&quot;=&quot;Bin&nbsp;FileSystem&quot;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;Dll&quot;=&quot;binfs.dll&quot;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;&nbsp;MountFlags:&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;&nbsp;0x10&nbsp;specifies&nbsp;that&nbsp;this&nbsp;file&nbsp;system&nbsp;is&nbsp;to&nbsp;be&nbsp;mounted&nbsp;as&nbsp;an&nbsp;external&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ROM&nbsp;filesystem&nbsp;shadowing&nbsp;the&nbsp;windows&nbsp;directory&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;&nbsp;0x1&nbsp;specifies&nbsp;that&nbsp;the&nbsp;mountpoint&nbsp;BINFS&nbsp;is&nbsp;to&nbsp;be&nbsp;hidden&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;MountFlags&quot;=dword:10&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;BootPhase&quot;=dword:0&nbsp;<br />;&nbsp;END&nbsp;HIVE&nbsp;BOOT&nbsp;SECTION&nbsp;<br /><br /><br /><br />3.&nbsp;&nbsp;&nbsp;&nbsp;config.bib文件修改<br />MEMORY&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;pdwXIPLoc&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;00000000&nbsp;&nbsp;803FF000&nbsp;&nbsp;FIXUPVAR&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;XIPKERNEL&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;80200000&nbsp;&nbsp;001FF000&nbsp;&nbsp;RAMIMAGE&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;CHAIN&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;803FF000&nbsp;&nbsp;00001000&nbsp;&nbsp;RESERVED&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;NK&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;80400000&nbsp;&nbsp;01E00000&nbsp;&nbsp;NANDIMAGE&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;RAM&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;80400000&nbsp;&nbsp;07C00000&nbsp;&nbsp;RAM&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;FLASH&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;92000000&nbsp;&nbsp;00100000&nbsp;&nbsp;RESERVED&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;<br />CONFIG&nbsp;<br />&nbsp;&nbsp;AUTOSIZE=ON&nbsp;<br />&nbsp;&nbsp;COMPRESSION=ON&nbsp;<br />&nbsp;&nbsp;DLLADDR_AUTOSIZE=ON&nbsp;<br />&nbsp;&nbsp;KERNELFIXUPS=ON&nbsp;<br />&nbsp;&nbsp;PROFILE=OFF&nbsp;<br />&nbsp;&nbsp;RAM_AUTOSIZE=OFF&nbsp;<br />&nbsp;&nbsp;ROMFLAGS=0&nbsp;<br />&nbsp;&nbsp;;ROMSIZE=01E00000&nbsp;<br />&nbsp;&nbsp;;ROMSTART=800B8000&nbsp;<br />&nbsp;&nbsp;;ROMWIDTH=32&nbsp;<br />&nbsp;&nbsp;ROM_AUTOSIZE=OFF&nbsp;<br />&nbsp;&nbsp;XIPSCHAIN=803FF000&nbsp;&nbsp;<br /><br />4.&nbsp;&nbsp;&nbsp;&nbsp;必须将下列文件加入到XIPKERNEL里<br />&quot;nk.exe&quot;,<br />&nbsp;&nbsp;&nbsp;&nbsp;&quot;coredll.dll&quot;,<br />&nbsp;&nbsp;&nbsp;&nbsp;&quot;filesys.exe&quot;,<br />&nbsp;&nbsp;&nbsp;&nbsp;&quot;fatfsd.dll&quot;,<br />&nbsp;&nbsp;&nbsp;&nbsp;&quot;diskcache.dll&quot;,<br />&nbsp;&nbsp;&nbsp;&nbsp;&quot;fatutil.dll&quot;,<br />&nbsp;&nbsp;&nbsp;&nbsp;&quot;binfs.dll&quot;,<br />&nbsp;&nbsp;&nbsp;&nbsp;&quot;fsdmgr.dll&quot;,<br />&nbsp;&nbsp;&nbsp;&nbsp;&quot;mspart.dll&quot;,<br />&nbsp;&nbsp;&nbsp;&nbsp;&quot;smflash.dll&quot;,<br />&nbsp;&nbsp;&nbsp;&nbsp;&quot;boot.hv&quot;,<br />加入方法如下:<br />nk.exe&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$(_FLATRELEASEDIR)kern.exe&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;XIPKERNEL&nbsp;&nbsp;SH<br />其他项类似方法添加.<br />注:可以直接修改common.bib文件<br />编译完成后,将xip.bin文件烧写到你的板子上即可.<br /><br />本人在天津地区长期代理深圳友坚恒天科技UT_S3C6410&nbsp;&nbsp;UT_S3C2450&nbsp;&nbsp;UT_S3C2440开发板。<br />联系人:王&nbsp;先&nbsp;生&nbsp;<br />移动电话:15002281827<br />MSN:urbetter_tj@hotmail.com<br />QQ:1070615843<br />E-mail:urbetter_tj@126.com<br />
ptlsmile 发表于 2011-1-17 09:16 | 显示全部楼层
谢谢分享
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

3

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部