按照CortexA編指南安全模式可以訪問安全/非安全內存如何?
TrustZone硬件還有效地提供了兩個虛擬MMU,每個虛擬處理器一個。這使得每個世界都可以擁有一套本地翻譯表,並且將安全世界映射隱藏起來,並保護它們免受正常世界的影響。
頁表說明包括NS位,它被用來確定訪問是否到安全或非安全的物理地址空間中進行。
雖然頁表條目的位仍然存在,正常虛擬處理器硬件不使用此字段,和存儲器訪問總是與NS = 1安全虛擬處理器作出的,因此可以訪問安全或普通存儲器。高速緩存和TLB硬件允許普通和安全條目共存。
所以,如果一個代碼(在安全模式下運行)將被寫入訪問說地址0xA0000000開始[NS]和0xA0000000開始[S]會是怎樣編碼?
* cache行*有一個** NS **標籤。通常,* secure world *訪問將填充沒有* NS標記*集的L1/L2緩存,因此當緩存刷新時,他們將使用*安全訪問*來訪問內存。我讀了MMU中安全的NS位;這裏沒有什麼能夠回答到底是什麼...... –