ucosIII Fatfs MDK編譯記憶體不足

2021-08-06 06:43:13 字數 977 閱讀 8957

使用正點原子的stm32mini板,按照原子的教程先移植好ucosiii,使用正常,移植好fatfs,只跑fatfs,也正常,但兩者一起使用編譯,就出問題了。

mdk編輯器件報錯,記憶體不足。為了檢視是什麼檔案占用了這麼大記憶體,我更換了大記憶體device,編譯成功後檢視 .map檔案

total ro  size (code + ro data)                42160 (  41.17kb)

total rw size (rw data + zi data) 52256 ( 51.03kb)

total rom size (code + ro data + rw data) 42492 ( 41.50kb)

300         30          0         20      38080       4873   malloc.o

144 16 0 0 0 1869 misc.o

主要是malloc.c中的

//äú´æ²îêýé趨.

#define mem_block_size 32

#define mem_max_size 35*1024

#define mem_alloc_table_size mem_max_size/mem_block_size

太占用記憶體了。

因而我將malloc的記憶體池改小點,便可以編譯成功了。

通過對比原子的綜合例程,發現,原子的綜合例程也占用了sram 44.80k,我的工程與其的主要sram占用區別在於系統,原子用的為ucosii,我的工程為ucosiii,ucosii系統檔案所用sram較小,而ucosiii的幾個檔案的sram占用較大,因而導致了超出48k。

eclipse 不編譯工程

網摘 eclipse出現不編譯工程的現象。怎麼重新整理classes目錄下也是空的.具體都操作了 開啟project build automatically 試後不行,還是不編譯.開啟project build automatically 另外 clean一下就可能會編譯了,結果還不行.eclips...

nginx php fmp 記憶體不釋放

由於伺服器只有600m的記憶體,上面跑了乙個併發並不是很大的php應用,當執行一段時間後,發現記憶體不斷增長,其中一部分是pagecache的增長,這個可以通過echo 3 proc sys vm drop caches 命令來進行有效的釋放,另外乙個應用記憶體的增長,且無法釋放,通過top命名 輸...

MySQL記憶體不釋放

前幾天業務線發現一例mysql資料庫記憶體增長異常案例,現象如下 資料庫版本 percona mysql 5.0.67 資料量 670m 記憶體大小 16g innodb buffer pool size 4g 其它回話記憶體分配並不大,基本在100m以內,並且連線數非常少 伺服器負載不高,開啟bi...