自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

WinCE文件目錄定制及內(nèi)存調(diào)整技巧

開(kāi)發(fā)
WinCE的文件目錄結(jié)構(gòu)以及文件的位置都是在DAT文件中定義的,我們需要進(jìn)行合理的文件目錄的定制及內(nèi)存調(diào)整,這里我們可以用一些小技巧來(lái)做,還是非常簡(jiǎn)單的。

WinCE的文件目錄結(jié)構(gòu)以及文件的位置都是在DAT文件中定義的。所有的dat文件會(huì)在WinCE編譯時(shí)合并成initobj.dat文件,WinCE會(huì)根據(jù)DAT中的描述生成相應(yīng)目錄。

這個(gè)說(shuō)起來(lái)比較簡(jiǎn)單,WinCE的文件目錄結(jié)構(gòu)以及文件的位置都是在DAT文件中定義的。所有的dat文件會(huì)在WinCE編譯時(shí)合并成initobj.dat文件,WinCE會(huì)根據(jù)DAT中的描述生成相應(yīng)目錄。一般在project.dat中定制自己想要的目錄結(jié)構(gòu),舉個(gè)例子如下:

  1. root irectory("Sounds")  
  2. root irectory("Movies")  
  3. Directory("Movies") irectory("Chinese")  
  4. Directory("Movies") irectory("English")  
  5. Directory("Sounds"):-File("hello.wav", "Windowshello.wav") 

應(yīng)該比較好理解,創(chuàng)建兩個(gè)根文件夾Sounds和Movies,在Movies中創(chuàng)建兩個(gè)子文件夾Chinese和English,將hello.wav拷貝到Sounds目錄下。編輯完project.dat以后,重新Makeimg就可以了。啟動(dòng)WinCE就可以看到所創(chuàng)建的文件夾了。

接下來(lái)說(shuō)一下WinCE內(nèi)存的定制。WinCE系統(tǒng)可使用的內(nèi)存被分為Storage Memory和Program Memory兩部分。Storage Memory用于Object Store,而Program Memory用于程序內(nèi)存。

關(guān)于Object Store,在WinCE中是指一個(gè)可以***保存數(shù)據(jù)的存儲(chǔ)空間,即使在掉電的情況下,數(shù)據(jù)可以在備份電源的支持下不丟失,達(dá)到***保存的效果。其實(shí)就是一塊內(nèi)存,一般包括文件系統(tǒng),數(shù)據(jù)庫(kù)和系統(tǒng)注冊(cè)表。Object Store的***空間不能超過(guò)256MB,其中所能包含的***文件是32MB。Object Store中是由很多Object組成,這些Object可能是一個(gè)文件,一個(gè)數(shù)據(jù)庫(kù),一條數(shù)據(jù)庫(kù)記錄,一個(gè)注冊(cè)表鍵,一個(gè)鍵值等。

在Object Store中,WinCE系統(tǒng)會(huì)分配給每一個(gè)Object一個(gè)ID,被稱為CEOID。每個(gè)Object的CEOID在Volume中都是唯一的。同樣,在Object Store中的每一個(gè)Volume也有一個(gè)ID,被稱為CEGUID,這樣使用CEGUID和CEOID就可以在Object Store中找到相應(yīng)的Object了。
順便介紹個(gè)函數(shù):

BOOL CeOidGetInfoEx( PCEGUID pceguid,  CEOID oid, CEOIDINFO* poidInfo),調(diào)用該函數(shù)可以獲得Object Store中某個(gè)Object的信息,pceguid和oid是要查找對(duì)象的CEGUID和CEOID,poidInfo為Object的信息。那么如何獲得CEGUID和CEOID呢?對(duì)于不同的Object類型,有不同的函數(shù),如下:

  1. Directory or File:FindFirstFile(..) /   
  2. FindNextFile(..) / GetFileInformationByHandler(..)  
  3. Database:CeCreateDatabaseEx2(..) / CeFindNextDatabaseEx(..)  
  4. Database record:CeSeekDatabaseEx(..) / CeReadRecordPropsEx(..)   
  5. / CeWriteRecordPropsEx(..)  
  6. Mounted Database volume:CeMountDBVol(..) / CeEnumDBVolumes(..) 

所以,在WinCE系統(tǒng)中,對(duì)內(nèi)存的調(diào)節(jié)就是在調(diào)整Object Store和程序內(nèi)存的大小。默認(rèn)情況下是Storage Memory/Program Memory各占一半。有三種方法可以實(shí)現(xiàn)對(duì)內(nèi)存的調(diào)整:

1. 在config.bib文件中調(diào)整FSRAMPERCENT,具體如何設(shè)置在BIB文件的介紹中解釋過(guò),這里不多說(shuō)了。

2. 在OAL中調(diào)用pOEMCalcFSPages函數(shù)為Object Store分配內(nèi)存。

3. 在WinCE啟動(dòng)以后,進(jìn)入系統(tǒng)的control panel,然后打開(kāi)System,選擇Memory在界面中進(jìn)行調(diào)整。

4. 通過(guò)函數(shù)SetSystemMemoryDivision(..)來(lái)調(diào)整。多說(shuō)一句,可以通過(guò)調(diào)用GetSystemMemoryDivision(..)來(lái)獲得當(dāng)前Object Store的內(nèi)存使用情況。

關(guān)于Storage Memory和Program Memory的調(diào)整,主要還是看系統(tǒng)的需求,一般情況下Storage Memory不需要太大,可以根據(jù)自己的需要適當(dāng)?shù)恼{(diào)整。但是要注意,兩部分內(nèi)存都不能調(diào)整的太小,調(diào)整的太小會(huì)導(dǎo)致數(shù)據(jù)丟失,甚至是死機(jī),到時(shí)候只能重起系統(tǒng)了。

文章轉(zhuǎn)自程序人生的博客,

原文地址:http://www.cnblogs.com/Jade2009/archive/2010/01/08/1642059.html

【編輯推薦】

  1. 帶你一起了解WinCE 6.0 Cashmere新功能
  2. 基于WinCE 6.0模擬器的應(yīng)用程序調(diào)試
  3. 基于嵌入式WinCE的遠(yuǎn)程數(shù)據(jù)采集系統(tǒng)
  4. BSP移植對(duì)WinCE的重要性及影響
  5. WinCE編譯過(guò)程的四個(gè)階段
責(zé)任編輯:王曉東 來(lái)源: 博客園
相關(guān)推薦

2009-07-17 13:55:02

WinCE文件目錄

2009-08-13 18:30:45

WinCE 6.0USB功能定制

2009-09-28 10:28:04

Linux刪除目錄子目錄

2009-12-30 13:30:16

Silverlight

2014-05-22 14:15:45

Android系統(tǒng)定制小技巧

2010-05-20 14:27:22

WinCE

2010-04-27 16:25:53

AIX內(nèi)存

2024-06-04 12:37:18

2024-08-26 14:42:04

Python目錄管理

2021-03-07 13:00:47

Linux終端外觀

2009-09-24 15:55:12

打印服務(wù)器

2010-03-02 15:59:41

WinCE

2011-01-06 10:58:35

華為認(rèn)證

2011-04-25 15:18:39

打印機(jī)色彩調(diào)整

2009-08-13 14:21:04

.NET內(nèi)存映射文件

2021-05-06 16:35:12

網(wǎng)絡(luò)安全網(wǎng)絡(luò)安全編程文件補(bǔ)丁

2010-08-10 10:17:44

Flex內(nèi)存

2011-08-10 09:06:44

內(nèi)存內(nèi)存優(yōu)化

2010-10-28 15:15:08

oracle內(nèi)存參數(shù)

2011-03-22 16:28:25

lamp
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)