以前一直没有机会去真正接触MMU. 现在接触它遇到了一个代码实现上的问题,请朋友们帮个忙.
MMU初始化的时候,指定虚拟地址与物理地址的映射关系. 那么我在初始化之后,想修改某一段虚拟地址的映射,应该怎样实现呢?
举我的例子: MMU初始化时有这么一段: MMU_SetMTT( 0x00000000, 0x00100000, 0x30000000, RW_CB ); MMU_SetMTT( 0x30000000, 0x30100000, 0 , RW_NCNB ); 当程序运行一段时间后, 我想把0x30000000~0x301fffff映射到0x40000000, 但这期间希望0x00000000~0x001fffff这段虚拟地址空间要不受到任何影响.
如何实现这段代码? |