麻豆一区二区三区蜜桃免费_中文字幕Va一区二区三区 _国产成人综合久久二区_丰满多毛的大隂户毛茸茸_国产麻豆剧果冻传媒免费老狼_无码人妻精品一区二区三区久久久 _亚洲中文无码精品卡通_蜜臀亚洲AV永久无码精品老司机

【ARM】RTX5 內(nèi)存分配方式-2023

1、 文檔目標(biāo)

解決RTX5 內(nèi)存分配方式


2、 問(wèn)題場(chǎng)景

使用 RTX5 進(jìn)行內(nèi)存分配方式選擇。


3、軟硬件環(huán)境

1 軟件版本:Keil MDK 5.38a

2 電腦環(huán)境:Window 10


4、RTX5 內(nèi)存分配的三種方式

RTX5為對(duì)象提供了三種不同的內(nèi)存分配方法


1 ?Global Memory Pool(全局內(nèi)存池)。全局內(nèi)存池分配內(nèi)存區(qū)域中的所有對(duì)象。這種內(nèi)存分配方法是RTX5的默認(rèn)配置。


圖 1


在System Configuration中設(shè)置Global Dynamic Memory size;(RTX_Config.h)


當(dāng)內(nèi)存池沒(méi)有提供足夠的內(nèi)存時(shí),對(duì)象的創(chuàng)建將失敗,相關(guān)的osObjectNew()函數(shù)將返回NULL。


2? Object-specific Memory Pools(特定對(duì)象的內(nèi)存池)


特定對(duì)象的內(nèi)存池通過(guò)為每個(gè)對(duì)象類型提供專用的固定大小內(nèi)存管理來(lái)避免內(nèi)存碎片。這種類型的內(nèi)存池是完全時(shí)間確定的,這意味著對(duì)象的創(chuàng)建和銷毀總是需要相同的固定時(shí)間。由于固定大小的內(nèi)存池是特定于對(duì)象類型的,因此可以簡(jiǎn)化內(nèi)存不足情況的處理。


圖 2


為每種對(duì)象類型選擇性地啟用特定于對(duì)象的內(nèi)存池,例如:使用RTX配置文件的互斥對(duì)象或線程:

1)在線程配置中為線程對(duì)象啟用。

2)在計(jì)時(shí)器對(duì)象的計(jì)時(shí)器配置中啟用。

3)在事件對(duì)象的事件標(biāo)志配置中啟用。

4)在互斥對(duì)象的互斥配置中啟用。

5)在信號(hào)量的信號(hào)量配置中啟用。

6)已在內(nèi)存池的內(nèi)存池配置中啟用。

7)在消息隊(duì)列配置中為消息對(duì)象啟用。


當(dāng)內(nèi)存池沒(méi)有提供足夠的內(nèi)存時(shí),對(duì)象的創(chuàng)建將失敗,相關(guān)的osObjectNew()函數(shù)將返回NULL。


3? Static Object Memory(靜態(tài)對(duì)象內(nèi)存)


與動(dòng)態(tài)內(nèi)存分配相反,靜態(tài)內(nèi)存分配需要在對(duì)象編譯時(shí)分配內(nèi)存。


圖 3


靜態(tài)內(nèi)存分配可以通過(guò)在創(chuàng)建對(duì)象時(shí)使用屬性提供用戶定義的內(nèi)存來(lái)實(shí)現(xiàn)。