MMU内存管理单元(2)-访问权限控制

本文详细介绍了ARM架构中内存访问权限的控制机制,包括CP15的C3寄存器域访问控制、描述符的域及AP位等,并解释了如何通过这些设置来实现不同模式下的内存访问权限检查。此外,还探讨了指令Cache和数据Cache的配置方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

内存访问权限由CP15的C3寄存器(域访问控制),描述符的域(Domain),描述符AP位和CP15的C1寄存器的R/S/A位联合控制。
一级描述符
这里写图片描述
二级描述符
这里写图片描述

MMU把内存空间分成16块,CP15的C3寄存器每两位控制一个域。一级描述符的Domain=0000-1111代表这1MB空间属于域0-15
00 无访问权限
01 客户模式,使用段、页描述符进行权限检查
10 保留
11 管理模式,不 进行权限检查
C1中S、R位和一级描述符的AP,二级描述符的APX一起决定访问权限符合检查。AP对应于段,APX对应于各页的1/4。
域决定是否对某块内存进行检查,AP决定如何检查。

这里写图片描述

cache一般分为指令cache(ICache)和数据cache(DCache),数据cache一般和写缓存(Writerbuffer)配合使用。页描述符中C、B位。C:这段内存是否可以被Icache,等于1表示可以。
C:Ctt;CP15协处理器的C1寄存器第二位为Ccr;B:Btt。Ctt&Ccr和Btt一起配置Dcache和WriteBuffer。这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值