MMU功能解析 深入剖析 配置與使用

2022-05-06 04:48:09 字數 1161 閱讀 2317

mmu = memory management unit

1、把虛擬位址轉化成實體地址,防止位址衝突

2、訪問許可權管理

mmu把乙個虛擬位址的20位到31位作為取出來,建立

一張表,叫做translation table base,也叫做一級

頁表索引,

根據每個

位址的最後兩位進行分類,在進行段式

轉換、粗葉位址

轉換和細葉位址轉換。

段式轉換是將最後兩位是10的虛擬位址的高12位作為基

位址,剩餘20位作為偏移位址

細葉位址轉換是將最後兩位是11的虛擬位址的高12位作為

一級頁表,第10到第19位作為二級頁表,0到11位作為偏移

位址。

#define gpbcon (volatile unsigned long *)0xa0000010

#define gpbdat (volatile unsigned long *)0xa0000014

#define mmu_full_access (3<<10)  //

訪問許可權

#define mmu_domain    (0<<5)  //

屬於哪個域

#define mmu_special (1<<4)  //

必須是1

#define mmu_cacheenable (1<<3)  //

cacheable

#define mmu_bufferable (1<<2)  //

bufferable

#define mmu_section (2<<0)  //

表示這是段描述符

#define secdesc (mmu_section|mmu_special|mmu_special|mmu_full_access)

#define secdesc_wb (mmu_section|mmu_special|mmu_special|mmu_full_access|mmu_cacheenable|mmu_bufferable)

void

creat_page_table()

}void

mmu_init()

intgboot_main()

國嵌攻略 047 MMU功能解析

mmu功能解析 1.memory management unit 儲存器管理單元 2.兩個程序讀取同乙個位址能讀到不同的值。因為程序訪問的是虛擬位址,通過mmu轉換成不同的實體地址。不同的程序通過mmu有不同的對映規則 3.如果mmu沒有工作,那麼在程式中使用的是實體地址。為避免程式實體地址衝突,在...

zt EMF edit功能解析

from 1.emf.edit a 說明 emf.edit 位於emf.editor 和emf.ecore 之間,他起了乙個中介者的作用。他負責把來自 emf.editor的ui 相關的請求轉換成符合 emf.ecore的ui 無關的呼叫。他需要提供以下四個功能 實現用於支援 viewer 顯示的c...

T BOX功能解析

在 車聯網系統的組成概述 一文中,我們已經簡單介紹了t box的功能結構。今天,我們來進一步挖掘,t box在整個車聯網系統中,究竟承擔了哪些具體服務?1事件資訊上報類服務 總體來說,這類服務就是在車端滿足特定事件上報條件後,向tsp平台上報訊息 tsp平台在收到車端上報的訊息後,向車端傳送確認資訊...