wince記憶體分配

2021-04-13 12:15:01 字數 1561 閱讀 5020

目前我們的實驗板可用

ram空間是

64m,在

wince

系統中對應的虛擬位址從

0x8c000000-0x8ff00000

,我們來仔細分析一下這些寶貴的

ram資源是如何使用的。

首先,系統啟動時會自動將映象

nk.nb0

拷貝到ram

中再執行,目前我們分配給

nk.nb0

的空間是

29m(

0x8c200000-0x8cdf0000

)。無形當中就有

29m不能使用,但是如果在定製系統的時候根據需求,以「開發出滿足最大的開發需要的最小的系統核心」為標準,還是可以充分利用有限的

ram資源的。

其次,有一部分

ram可以由使用者自己定義為某個外設的快取區,比如:

display

、dbug

、camera

等等,這部分空間雖然可以修改,但是個人認為這部分空間沒必要做修改。主要原因有二:一方面是這部分空間一般都是約定俗成的(比較了乙個不同版本的

bsp後得出來的),修改後有可能影響系統的穩定性;另一方面這部分空間是從

0x8c000000

-0x8c200000

,大概就是

2m空間,修改後可能可以省出

1m空間。所以考慮到系統的穩定性,和節省的空間並不是很大,對這部分就不做修改。

配置系統記憶體和程式記憶體

在config.bib

檔案的config

區有這樣乙個引數。

fsrampercent

:格式:

fsrampercent = number

預設值為

0x80808080

。指定為檔案系統分配的記憶體的百分比。

number

分為四個位元組,由十六進製制表示。

byte0

的值(單位為

4kb)表示在第乙個

2mb中,其中每

1mb包含的

4kb的整數倍。

byte1

的值(單位為

4kb)表示在第二個

2mb中,其中每

1mb包含的

4kb的整數倍。

byte2

的值(單位為

4kb)表示在第三個

2mb中,其中每

1mb包含的

4kb的整數倍。

byte3

的值(單位為

4kb)表示在剩下的記憶體中,每

1mb包含的

4kb的整數倍。

計算一下預設值

0x80808080

表示的百分比:

0x80*4k/1m = 0.5

,因為每個位元組都等於

0.5,所以整個占用的百分比是

50%。

預設情況下,系統記憶體和檔案記憶體是各佔

50%的,所以程式記憶體就只有

17m了。為了提高系統的效能可以通過修改

fsrampercent

值的大小,來獲得較大的程式記憶體空間。

WINCE 程式記憶體和儲存記憶體及其分配方法

wince 下的記憶體實際上是分為三個部分的.先說這幾部分的名字,物件儲存,系統記憶體,程式記憶體.準確來講,應該用下面公式說明wince記憶體 系統記憶體 物件儲存 程式記憶體 這裡德記憶體也就是我們平時說的sdram,而我們的平台用的64m的sdram。在wince系統的控制面板系統中可以看到系...

wince 記憶體釋放 Wince過程記憶體和儲存記憶體

wince 下的記憶體切實上是分為三個區域性的.先說這幾區域性的名字,物件儲存,系統記憶體,過程記憶體.準確來講,該當用下面公式解釋wince記憶體 系統記憶體 物件儲存 過程記憶體 這裡德記憶體也即便我們平時說的sdram,而我們的平台用的64m的sdram。在wince系統的扼制面板系統中能夠看...

wince 記憶體釋放 解決WinCE記憶體不足問題

我們採用的ti的 omap3530,板上有256mb sdram 和 512mb nandflash.採用的是wince 6.0作業系統 執行應用程式時卻時不時出現嚴重的記憶體不足問題。在控制面板中查了記憶體情況,才有40mb可用,出了nk占用的30mb,其餘記憶體不知用到 了。google幾下,能...