<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > WinCE的嵌入式系統注冊表的研究

WinCE的嵌入式系統注冊表的研究

作者: 時(shí)間:2010-04-07 來(lái)源:網(wǎng)絡(luò ) 收藏

  摘要:本文首先講述了 Windows CE的重要性,它對整個(gè)的正常運行起著(zhù)關(guān)鍵性作用。然后又介紹了兩種存儲方式,并著(zhù)重講述了基于 HIVE的。詳細闡述了基于 HIVE的注冊表的保存數據方式及實(shí)現 HIVE注冊表的方法。最后給出了成功修改注冊表的實(shí)現方法。本文的對其它操作的注冊表修改也具有著(zhù)借鑒意義。

本文引用地址:http://dyxdggzs.com/article/151963.htm

  0 引言

  操作系統 Windows CE和桌面操作系統一樣使用注冊表(Registry)來(lái)保存應用程序、驅動(dòng)程序和用戶(hù)的設定以及其他一些配置信息,通常還存儲著(zhù)操作系統調用程序的狀態(tài)信息,所以注冊表起著(zhù)非常重要的作用,它是 Windows CE操作系統的核心。在沒(méi)有注冊表的情況下,操作系統將不能獲得必需的信息來(lái)運行和控制附屬的設備和應用程序及正確響應用戶(hù)的輸入[1][2]。

  1 Windows CE注冊表簡(jiǎn)介

  Windows CE的注冊表結構和其他版本的 Windows操作系統的注冊表結構是類(lèi)似的。注冊表是一個(gè)包括主關(guān)鍵字子樹(shù)的集合,它和文件目錄樹(shù)一樣具有層次結構。每個(gè)子樹(shù)又由更低層的子樹(shù)、鍵以及鍵值組成。鍵相當于文件系統的目錄,每個(gè)鍵包含若干鍵值項。而鍵值項相當于文件系統末端的文件,它由鍵值名、數據類(lèi)型和鍵值組成。鍵值就是注冊表存儲的數據。

  Windows CE對注冊表的值有一些限制:鍵或者鍵值項的名字最多為 255個(gè)字符,數據最大為4K,鍵嵌套層次最多為 16層。所以在使用注冊表編程時(shí),要盡量使鍵和鍵值項占用最小的空間。另外,需要注意的是,在注冊表中,鍵值項比鍵值占用更大的存儲空間。

  Windows CE注冊表包括4個(gè)根鍵 [2],如表1所示。

  表 1 Windows CE注冊表根鍵


  2 Windows CE注冊表類(lèi)型

  由于系統的特點(diǎn),一些嵌入式設備是沒(méi)有外存的。因此 Windows CE的注冊表提供了兩種實(shí)現方式:基于對象存儲的注冊表(RAM-Based Registry)和基于 Hive的注冊表(Hive-Based Registry) [3]。我們可以在 Windows CE中使用任何一種注冊表,注冊表類(lèi)型對于用戶(hù)和應用程序來(lái)說(shuō)都是透明的?;赗AM的注冊表在經(jīng)常熱啟動(dòng)的設備上是非常高效的,而在經(jīng)常冷啟動(dòng)的設備上,性能卻很令人失望,最適合有電池后備的個(gè)人電子消費類(lèi)產(chǎn)品。對于經(jīng)常冷啟動(dòng)或者不怎么使用熱啟動(dòng)方式的設備來(lái)說(shuō),基于 hive的注冊表是非常高效的,最適合永久性的存儲器和多用戶(hù)環(huán)境下使用。

  2.1 基于 RAM的注冊表

  顧名思義,基于 RAM的注冊表把整個(gè)注冊表作為一個(gè)對象存儲堆放在 RAM中。這就意味著(zhù)如果系統中斷對 RAM的電池供電,對注冊表的所有改動(dòng)都會(huì )丟失。也就是說(shuō),它們的有效性和 RAM中數據的有效性是一致的。但是使用 RAM注冊表,對注冊表的讀寫(xiě)訪(fǎng)問(wèn)操作非常的快速高效。在舊版本的 Windows CE中,大量應用了基于 RAM的注冊表。如果有外存且需要經(jīng)常冷啟動(dòng)的設備采用基于 RAM的注冊表,則需要在系統斷電的時(shí)候對注冊表進(jìn)行保存,等系統再次啟動(dòng)時(shí)對保存的注冊表進(jìn)行還原。

  2.2 基于 HIVE的注冊表

  HIVE系統包含了不屬于任何用戶(hù)信息的系統設置。HIVE系統由 OEM層調用。通常 hive文件為System.hv,但是它的存儲位置可能隨著(zhù)平臺而變化。這種存儲方式使系統在斷電前后無(wú)須備份和恢復注冊表數據,這使得系統冷啟動(dòng)時(shí)速度更快。

  基于HIVE結構的注冊表被分為兩部分存儲:系統HIVE,存儲所有的系統數據;用戶(hù)HIVE,存儲對特定用戶(hù)的所有相關(guān)數據。一個(gè)多用戶(hù)系統將包括幾個(gè)用戶(hù)HIVE。當一個(gè)用戶(hù)登錄時(shí),相應的用戶(hù) HIVE就會(huì )被激活,當用戶(hù)退出時(shí),相應的用戶(hù) HIVE也會(huì )被撤銷(xiāo)。所有的用戶(hù) HIVE都用 USER.hv來(lái)命名,并且被放在不同的用戶(hù)目錄中,每個(gè)目錄都是以它屬于的用戶(hù)的用戶(hù)名來(lái)命名的。

  注冊表中的HKEY_LOCAL_MACHINEinitBootVars下的鍵值項ProfileDir存儲著(zhù)所有用戶(hù)目錄的位置。HKEY_LOCAL_MACHINEinitBootVars下的鍵值項 SystemHive存儲著(zhù)系統HIVE的文件路徑和文件名。

linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)

上一頁(yè) 1 2 3 下一頁(yè)

關(guān)鍵詞: 研究 注冊表 系統 嵌入式 WinCE

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>