新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應用 > 內(nèi)存控制塊OS_MEM的結(jié)構(gòu)

內(nèi)存控制塊OS_MEM的結(jié)構(gòu)

作者: 時間:2011-07-12 來源:網(wǎng)絡 收藏
為了使系統(tǒng)能夠感知和有效地管理內(nèi)存分區(qū),μc/os-ii給每個內(nèi)存分區(qū)定義了一個叫做內(nèi)存控制塊(os_mem)的數(shù)據(jù)結(jié)構(gòu)。系統(tǒng)就用這個內(nèi)存控制塊來記錄和跟蹤每個內(nèi)存分區(qū)的狀態(tài)。內(nèi)存控制塊的結(jié)構(gòu)如下:

當應用程序調(diào)用函數(shù)osmemcreate()建立了一個內(nèi)存分區(qū)之后,內(nèi)存控制塊與內(nèi)存分區(qū)和內(nèi)存塊之間的關(guān)系如圖所示。

從圖(b)中可知,內(nèi)存控制塊的內(nèi)存分區(qū)指針osmemaddr指向了內(nèi)存分區(qū),內(nèi)存分區(qū)中的各個內(nèi)存塊又組成了一個單向鏈表,內(nèi)存控制塊的鏈表指針osmemfreelist就指向了這個單向鏈表的頭。

內(nèi)存控制塊的其他三個變量分別記錄了分區(qū)中內(nèi)存塊的長度、總數(shù)目以及現(xiàn)在還未被分配的內(nèi)存塊數(shù)目。

linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)


評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉