內(nèi)存管理單元 (MMU) 的一個重要功能是讓不同的任務能夠獨立地在各自的虛擬內(nèi)存空間里運行,MMU能夠?qū)崿F(xiàn)這個特性的本質(zhì)就是抽象隔離,對不同任務的虛擬地址空間進行重新映射(map)到實際的物理空間。
這都是由硬件自動實現(xiàn)的,并且大部分時候都是對軟件不可見的。
此外,MMU基于頁粒度控制每個內(nèi)存空間的訪問權限、內(nèi)存屬性和緩存策略等等。
MMU使不同的任務不用關心其實際使用的物理空間,也就是說程序員可以使用相同且連續(xù)的虛擬地址空間,而不會發(fā)生沖突,即使實際使用的物理空間非常零碎。
但是,MMU將虛擬地址空間轉(zhuǎn)化成物理地址空間也并不是完全地對軟件不可見,或者說對程序員不可見,但是對操作系統(tǒng)可見。
配置初始化MMU以正確地管理不同并行任務的地址空間是操作系統(tǒng)的事情。
一般MMU會有一種disable的模式,即不使能MMU,所有虛擬地址都直接映射到相應的物理地址,VA=PA。
如果處理器訪問的虛擬地址并沒有被操作系統(tǒng)分配,這個時候MMU會上報中斷異常,以告知操作系統(tǒng)分配相應的地址空間映射關系,從而讓任務正常地完成?。
審核編輯:劉清
-
處理器
+關注
關注
68文章
19409瀏覽量
231195 -
操作系統(tǒng)
+關注
關注
37文章
6896瀏覽量
123753 -
中斷
+關注
關注
5文章
900瀏覽量
41755 -
MMU
+關注
關注
0文章
91瀏覽量
18370
發(fā)布評論請先 登錄
相關推薦
評論