ÄúµÄλÖãºÍøÕ¾Ê×Ò³ > µçÆ÷άÐÞ×ÊÁÏÍø > ÕýÎÄ >
Windows CEϵͳ»ùÓÚHIVEµÄ×¢²á±íµÄÔÚÏßÐ޸ĺͱ£´æ
À´Ô´£º ÈÕÆÚ£º2013-12-12 11:15:11 ÈËÆø£º±êÇ©£º
1¡¢ windows ce×¢²á±í¼ò½é£º
ÓëÆäËû×ÀÃæ°æ±¾windowsÒ»Ñù£¬windows ceҲʹÓÃ×¢²á±í(registry)À´±£´æÓ¦ÓóÌÐò¡¢Çý¶¯³ÌÐòºÍÓû§µÄÉ趨ÒÔ¼°ÆäËûһЩÅäÖÃÐÅÏ¢¡£ windows ce×¢²á±íÒ²²ÉÓÃÊ÷ÐνṹÀ´¹ÜÀíÅäÖÃÐÅÏ¢¡£
windows ceÖ§³ÖËĸö¸ù¼ü£¬ÃèÊöÈçÏ£º
¼üÃûÃèÊö
hkey_local_machine Ó²¼þºÍÇý¶¯ÅäÖÃÊý¾Ý
hkey_current_user Óû§ÅäÖÃÊý¾Ý
hkey_classes_root ole ÎļþÀàÐÍÆ¥ÅäÅäÖÃÊý¾Ý
hkey_users ÊÊÓÃÓÚËùÓÐÓû§µÄÊý¾Ý
2¡¢ windows ce×¢²á±íµÄÀàÐͺͼÓÔØ¹ý³Ì
ÓÉÓÚǶÈëʽϵͳµÄÌØµã£¬Ò»Ð©Ç¶ÈëʽÉ豸ÊÇûÓÐÍⲿ´æ´æ´¢É豸¡£Òò´Ëwindows ceµÄ×¢²á±íÌṩÁËÁ½ÖÖʵÏÖ·½Ê½£º»ùÓÚramµÄ×¢²á±í(ram- based registry)ºÍ»ùÓÚhiveµÄ×¢²á±í(hive-based registry)¡£ÎÒÃÇ¿ÉÒÔÑ¡ÔñÔÚwindows ceÖÐʹÓÃÈκÎÒ»ÖÖ×¢²á±í£¬Í¨³£ÔÚÎÒÃǵÄarmǶÈëʽϵͳÖлáÑ¡Ôñflash×÷ΪÍⲿ´æ´¢É豸£¬ËùÒÔÎÒÃÇÑ¡Ôñ»ùÓÚhiveµÄ×¢²á±íÀàÐÍ¡£ÏÂÃæÎÒÃÇ·ÖÎöÒ»ÏÂwindows ce×¢²á±íµÄ¼ÓÔØ¹ý³Ì£º

ͼ2-1
nk.exeÖ´ÐУ¬Æô¶¯filesys.exe¡£
filesys.exe¼ÓÔØÒýµ¼hive£¬´ËʱÒýµ¼hiveλÓÚnk.bin½âѹ֮ºóµÄÎļþÖС£
filesys.exeÆô¶¯device.exe£¬Ö®ºó´¦Óڵȴý״̬£¬µÈ´ýdevice.exe½«°üº¬ÏµÍ³hiveµÄÎļþϵͳºÍ´æ´¢É豸µÄÇý¶¯³ÌÐò¼ÓÔØÍê±Ï¡£¶øÕâ¸öÎļþϵͳºÍ´æ´¢É豸µÄÇý¶¯³ÌÐò´æÔÚÓÚÒýµ¼hiveÖС£device.exe¼ÓÔØÉÏÊöËù˵µÄÎļþϵͳÇý¶¯³ÌÐòºÍ´æ´¢É豸Çý¶¯³ÌÐò£¬Ê¹Ö®¿ªÊ¼¹¤×÷¡£Ö®ºódevice.exe´¦Óڵȴý״̬¡£filesys.exe±»»½ÐÑ£¬¼ÓÔØ²¢ÇÒ°²×°ÏµÍ³hive¡£Ö®ºófilesys.exe´¦Óڵȴý״̬¡£nk.exe°´ÕÕϵͳhiveµÄÐÅÏ¢¿ªÊ¼Ö´Ðгõʼ»¯¹¤×÷¡£ÆäÖаüÀ¨¼ÓÔØÇý¶¯³ÌÐòºÍÆô¶¯Ò»Ð©Ó¦ÓóÌÐò¡£ÆäÖмÓÔØÇý¶¯³ÌÐòÒ»°ãÓÉdevice.exeÖ´ÐУ¬¶øÆô¶¯Ó¦ÓóÌÐòÓÉfilesys.exeÖ´ÐС£Õâʱdevice.exeºÍfilesys.exeÒѾ±»»½ÐÑ¡£
3 ¡¢ÉèÖûùÓÚhiveµÄ×¢²á±í
ÔÚpbÖмÓÈë"hive-based registry"£¬ÊµÑéÆ½Ì¨£ºcpu£ºs3c2410;Íⲿ´æ´¢É豸(flash)k9f1208uom ´ò¿ª%bsp%/files/platform.reg£¬ÕÒµ½ÈçÏÂÐÅÏ¢£º
; hive boot section
[hkey_local_machineinitbootvars]
"systemhive"="system.hv"
; "profiledir"="documents and settings"
"start devmgr"=dword:1
"registryflags"=dword:1
[hkey_local_machineinitbootvars]
"defaultuser"="default" "systemhive"µÄֵΪϵͳhiveÎļþµÄ·¾¶¡£"start devmgr"ÊÇÒ»¸ö²¼¶ûÖµ£¬Ö¸Ê¾ÊÇ·ñ¿ªÊ¼¾ÍÖ´ÐÐÉ豸¹ÜÀíÆ÷device.exe£¬Ö»ÓÐÏë°Ñϵͳhive´æ´¢ÔÚ¶ÔÏó´æ´¢ÖвÅÔÚ´ËÉèÖÃΪ0£¬ËùÒÔÕâÀïÎÒÃÇÒªÉèÖÃΪ1¡£¿ÉÒÔÔÚÉÏÊöµÄ×¢²á±íλÖÃÏÂÊäÈë"defaultuser"=""£¬Ö¸¶¨Ä¬ÈϵÄÓû§Ãû¡£Èç¹ûÊǵ¥Óû§ÏµÍ³£¬¿ÉÒÔ²»ÉèÖÃÔÚ“; hive boot section”ºÍ“; end hive boot section”Ö®¼äµÄËùÓÐÇý¶¯³ÌÐòµÄ×¢²á±íÐÅÏ¢Öж¼¼ÓÈëÏÂÁÐÒ»¸ö±êÖ¾£º
"flags"=dword:1000
Õâ¸ö±êÖ¾ÊÇÒ»¸öλÑÚÂ룬Ëü¿ÉÒÔºÍÆäËüÒѾ´æÔÚµÄ"flags"»òÔËËã¡£Öµ1000±íʾ´ËÇý¶¯³ÌÐòÖ»¼ÓÔØÒ»´Î£¬ÕâÑùdevice.exe¾Í²»»á°Ñµ±Ç°Çý¶¯³ÌÐò¼ÓÔØÁ½´ÎÁË¡£
±£Ö¤½«°üº¬ÏµÍ³hiveµÄÎļþϵͳÇý¶¯³ÌÐòµÄ×¢²á±íÐÅÏ¢ºÍ´æ´¢É豸µÄÇý¶¯³ÌÐòµÄ×¢²á±íÐÅÏ¢±»°üº¬ÔÚ“; hive boot section”ºÍ“; end hive boot section”Ö®¼ä£¬ÔÚÕâÁ½¸öÓï¾äÖ®¼äµÄ×¢²á±íÊý¾ÝÈ«²¿ÊôÓÚÒýµ¼hive¡£
[hkey_local_machinesystemstoragemanagerautoloadflashdrv]
"driverpath"="drivers\blockdevice\flashdrv"
"loadflags"=dword:1
"mountflags"=dword:11
"bootphase"=dword:0
"flags"=dword:1000
[hkey_local_machinedriversblockdeviceflashdrv]
"prefix"="dsk"
"dll"="flashdrv.dll" //µ÷ÓÃflashÇý¶¯
"order"=dword:0
"ioctl"=dword:4
"profile"="flashdrv"
"friendlyname"="ms flash driver"
"mountflags"=dword:11
"bootphase"=dword:0
"flags"=dword:1000
; bind binfs to the block driver
[hkey_local_machinesystemstoragemanagerprofilesflashdrv]
"defaultfilesystem"="binfs" //½¨Á¢binfsÎļþϵͳ
"partitiondriver"="mspart.dll"
"automount"=dword:1
"autopart"=dword:1
"mountflags"=dword:2
"folder"="myflashdisk" //ʵÏÖ¿ÉÒÔ¶ÁдµÄÎļþ¼Ð
"name"="microsoft flash disk"
"bootphase"=dword:0
"flags"=dword:1000
ÉÏÃæµÄÐÅÏ¢Ìí¼Óµ½platform.regµÄ“hive boot section”ºÍ“end hive boot section”Ö®¼ä£¬ ÆäÖÐ"folder"="myflashdisk"ÎļþʵÏÖ¿ÉÒÔ¶ÁдÎļþĿ¼myflashdisk
×¢²á±íÐÅÏ¢±»±£´æµ½´ËÎļþ¼Ð£¬ÏµÍ³ÀäÆô¶¯ºó»áµ½´ËÎļþ¼Ð϶ÁÈ¡ÉÏ´ÎÓû§»ùÓÚ×¢²á±íµÄÉèÖá£
±àÕß×¢£ºÔ´ÂëÇë·ÃÎÊwww.bluemcu.com
½áÓ
±¾ÎÄÌÖÂÛÁËwindows ce»ùÓÚhiveµÄ×¢²á±íµÄÔÚÏßÐ޸ĺͱ£´æ£¬·ÖÎöÁËwindows ce×¢²á±íµÄ¼ÓÔØ¹ý³Ì£¬ÍêÉÆÁËǶÈëʽϵͳʵ¼ÊÓ¦ÓÃÖеÄÎÊÌ⣬ʹµÃĿǰµÄwindows ceÔËÐа汾¸ü¼Ó½Ó½üÓë×ÀÃæ°æwindowsϵͳ¡£
¡¾¿´¿´ÕâÆªÎÄÕÂÔڰٶȵÄÊÕ¼Çé¿ö¡¿
Ïà¹ØÎÄÕÂ
- ÉÏһƪ£º ³¬Éù²¨¾àÀë´«¸ÐÆ÷Éè¼ÆÔÀíÐÔÄÜÖ¸±ê
- ÏÂһƪ£º Ò»ÖÖеÄͨÓõÄSPI ×ÜÏßµÄFPGA ʵÏÖ·½·¨